ELF                      @                 @ 8  @ ( &       @       @       @                                                                                                                                h      h      h                         Rtd                                            Ptd   b      b      b      D      D             Qtd                                                                              8       8                       Android %            GNU %&A
$>~                                              C                      n                      u                                                                                       U                                          M                                                               M                     z                                                               s                                                                                    u                                          
                                                               e                                                               	                     
                     h
                     
                     	                                          #                     {                                                                8                                                                                                                              ]                                          S                                                                                                         S                                                                                    G                     $                     !                     3                                          ^                                                               	!                     U!                     !                     !                     $                     %                     H'                     (                     9                     '9                     49                                     .    <                 t      D       /           $       5    4             *          $       #-          `       |3                 l                                  *    T      (       G	    D             -    ܢ             ;#    <             ,    $      d       0    Ļ             l4                     D                              &          `       J                q$                 	3    T      (       u    ,      (       )8                 E    8             *    |      `       6    4             	                                     ȵ                 0      @       3)          `       E,           d       Z                           \          p      t       $          |       W1                 6          t       #          |       '           d       3    $                       (      b"    4            1          `       g6                 7                 	    Ю      H      p/          t       F0    ,      (       h5                 x7    D                 4             (          $           0                       t       (          (       +    $      d       	    `            G                 "    8            z%                 /          t       |    0      D           Ļ                  X             %                 -    T      p       2          (       5    $             8                                                      T      p       L           t       "                     $             i    ̣             4    4             8            `d     7          4                t       D          \      &          $       -    |      `       =2    X                 p            ?&    t             )    0      $       f+           $       4    $                                                                                                                                                                                         F9         c    N9         K             (  @ @@              $@       @(@  H           I A@  H   @ !  $                  `   $           @@h! $   B  @       @@                  I              @  d       @!   @     B@ 
$K   M   P   S   V   \   _   b   d   g   m   s   v   {                              83Yb/ͮs4M/)BE\ʙ7af"-w֪>Z	5% lAG 	tXbp&k~hto+"Tv&Rh4G*|W=`Oo/,jL69WIZɜqD.ñӕ(g0<َ}]0I}$<^LfCSGݛ*8S?xk|CG7"Th OߖԲSuJ7x`T#SLDpp5H`PB8+sʠ,nVZeZ|,%djJeεJ%P Z<cZ         &   C          D   i       :       {   "           x   <          d                      Q      H      y       t   >         }   N   k           *          p   5   e                                 ;                                     M      r       Y   u   f             L       c                          B                                           b   w       j       3   m             +             s   U   n      ?       q           9   '   F   K      %   V       h               #       4   l                 6                                      ^       -   g         z         \   J          `                                                                                                                                                                                     )                     !                      /             
                                                          0       $                       @       8                       =   7                                 G      2   R   a           X       T                                      1   .   E   _               W           ,           ]   	          (   |           S       P                     Z      v       A       ~   [                    o   I                O    _RNvCs1MC5dvy6A6L_7___rustc35___rust_no_alloc_shim_is_unstable_v2 _RNvCs1MC5dvy6A6L_7___rustc12___rust_alloc memcpy _RNvNtNtCskpDkvhUlXjy_4core9panicking11panic_const24panic_const_add_overflow __stack_chk_fail _RNvNtCsb7Rppvwwyke_5alloc7raw_vec12handle_error _RNvMs10_NtNtCshHduDTGquA3_14regex_automata4util10primitivesNtB6_9PatternID4iter _RNvMs0_NtCsb7Rppvwwyke_5alloc7raw_vecINtB5_6RawVecNtNtCs9ERskLE0nwh_12regex_syntax3ast3AstE8grow_oneBQ_ _RNvXs1f_NtNtCshHduDTGquA3_14regex_automata4util10primitivesNtB6_13PatternIDIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvMs1_NtNtCs9ERskLE0nwh_12regex_syntax3ast5parseNtB5_6Parser5parse _RNvMs0_NtCsb7Rppvwwyke_5alloc7raw_vecINtB5_6RawVecNtNtCs9ERskLE0nwh_12regex_syntax3hir3HirE8grow_oneBQ_ _RNvMs0_NtNtCs9ERskLE0nwh_12regex_syntax3hir9translateNtB5_10Translator9translate _RNvCs1MC5dvy6A6L_7___rustc14___rust_dealloc _RNvMs4_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_9RegexInfo3new _RNvNtNtCshHduDTGquA3_14regex_automata4meta8strategy3new _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcNtNtNtCshHduDTGquA3_14regex_automata4meta5regex10RegexInfoIE9drop_slowBM_ _RNvNtCskpDkvhUlXjy_4core6option13unwrap_failed _RNvNtCsb7Rppvwwyke_5alloc5alloc18handle_alloc_error _RNvNtCsb7Rppvwwyke_5alloc4sync32arcinner_layout_for_value_layout _RNvXs4_NtCsb7Rppvwwyke_5alloc6stringNtB5_6StringNtNtCskpDkvhUlXjy_4core5clone5Clone5clone _RNvNtCskpDkvhUlXjy_4core6result13unwrap_failed _RNvXss_NtCs9ERskLE0nwh_12regex_syntax3astNtB5_8ClassSetNtNtNtCskpDkvhUlXjy_4core3ops4drop4Drop4drop _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcDNtNtNtCshHduDTGquA3_14regex_automata4meta8strategy8StrategyEL_E9drop_slowBN_ _RNvXsr_NtCs9ERskLE0nwh_12regex_syntax3astNtB5_3AstNtNtNtCskpDkvhUlXjy_4core3ops4drop4Drop4drop _RNvXsm_NtCs9ERskLE0nwh_12regex_syntax3hirNtB5_3HirNtNtNtCskpDkvhUlXjy_4core3ops4drop4Drop4drop _RNvCsbehE3SSdn10_5regex6escape _RNvCs9ERskLE0nwh_12regex_syntax6escape _RNvXs1_NtCs9ERskLE0nwh_12regex_syntax5errorNtB5_5ErrorNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvXs0_NtNtCshHduDTGquA3_14regex_automata4meta5errorNtB5_10BuildErrorNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder10size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder14dfa_size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder15line_terminator _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder3new _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder5build _RNvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_7Builder9configure _RNvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_7Builder6syntax _RNvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_7Builder5build _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArceE9drop_slowCshHduDTGquA3_14regex_automata _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcDNtNtNtCshHduDTGquA3_14regex_automata4util9prefilter10PrefilterIEL_E9drop_slowBN_ _RINvNtCskpDkvhUlXjy_4core9panicking13assert_failedjjEB4_ _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder5build _RNvMNtNtCsbehE3SSdn10_5regex8regexset5bytesNtB2_8RegexSet5empty _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder5build _RNvMNtNtCsbehE3SSdn10_5regex8regexset6stringNtB2_8RegexSet5empty _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder5build _RNvMs6_NtNtCshHduDTGquA3_14regex_automata4util8capturesNtB5_14GroupInfoInner9group_len _RNvNtCskpDkvhUlXjy_4core9panicking18panic_bounds_check _RNvNtNtCskpDkvhUlXjy_4core9panicking11panic_const24panic_const_mul_overflow _RNvCs1MC5dvy6A6L_7___rustc14___rust_realloc _RNvMs3_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5Regex3new _RNvMs3_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5Regex3new _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcSNtNtB7_6string6StringE9drop_slowCsbehE3SSdn10_5regex _RNvNtCsbehE3SSdn10_5regex9find_byte9find_byte _RNvNtNtCskpDkvhUlXjy_4core9panicking11panic_const24panic_const_sub_overflow _RNvXNtNtCsbehE3SSdn10_5regex5regex5bytesNtB2_5RegexNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvNtCskpDkvhUlXjy_4core3fmt5write _RNvXNvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB8_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB2_16CapturesDebugMapBW_3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter9debug_map _RNvMs6_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_8DebugMap5entry _RNvMs6_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_8DebugMap6finish _RNvXNvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtB8_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB2_16CapturesDebugMapBX_3fmt _RNvXs0_NtCsbehE3SSdn10_5regex5errorNtB5_5ErrorNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvXsi_NtNtNtCskpDkvhUlXjy_4core3fmt3num3impjNtB9_7Display3fmt _RNvXsi_NtCskpDkvhUlXjy_4core3fmteNtB5_7Display3fmt _RNvXs0_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5RegexNtNtNtCskpDkvhUlXjy_4core3str6traits7FromStr8from_str _RNvXs0_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5RegexNtNtNtCskpDkvhUlXjy_4core3str6traits7FromStr8from_str _RNvXs0_NvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtBb_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB5_5ValueBZ_3fmt _RNvXs_NtNtCshHduDTGquA3_14regex_automata4util6escapeNtB4_13DebugHaystackNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvNtNtCskpDkvhUlXjy_4core5slice5index16slice_index_fail _RNvXs0_NvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtBb_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB5_5ValueB10_3fmt _RNvNtCskpDkvhUlXjy_4core3str16slice_error_fail _RNvXs1_NtCsbehE3SSdn10_5regex5errorNtB5_5ErrorNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter11debug_tuple _RNvMs2_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_10DebugTuple5field _RNvMs2_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_10DebugTuple6finish _RNvXsh_NtCskpDkvhUlXjy_4core3fmteNtB5_5Debug3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter10debug_list _RNvMs5_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_9DebugList5entry _RNvMs5_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_9DebugList6finish _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter3pad _RNvXs2_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromNtNtCsb7Rppvwwyke_5alloc6string6StringE8try_from _RNvXs2_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromNtNtCsb7Rppvwwyke_5alloc6string6StringE8try_from _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvMsc_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_10PatternSet8contains _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs4_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvXsf_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_14PatternSetIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXsf_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_14PatternSetIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs7_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5MatchNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter12debug_struct _RNvMs1_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_11DebugStruct5field _RNvMs1_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_11DebugStruct6finish _RNvXs7_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5MatchNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXs7_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXsg_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_14PatternSetIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXs8_NtNtCsbehE3SSdn10_5regex5regex5bytesRShINtNtCskpDkvhUlXjy_4core7convert4FromNtB5_5MatchE4from _RNvXs8_NtNtCsbehE3SSdn10_5regex5regex6stringReINtNtCskpDkvhUlXjy_4core7convert4FromNtB5_5MatchE4from _RNvXs9_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_8RegexSetNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsA_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8NoExpandNtB5_8Replacer14replace_append _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter25debug_tuple_field1_finish _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter9write_str _RNvXs6_NtNtCskpDkvhUlXjy_4core3fmt3numjNtB7_8LowerHex3fmt _RNvXs8_NtNtCskpDkvhUlXjy_4core3fmt3numjNtB7_8UpperHex3fmt _RNvXs_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB4_5RegexNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXs_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB4_8RegexSetNtNtCskpDkvhUlXjy_4core7default7Default7default _RNvXs_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB4_8RegexSetNtNtCskpDkvhUlXjy_4core7default7Default7default _RNvXs_NvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtBa_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB4_3KeyBY_3fmt _RNvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsc_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexjE5index _RNvNtCskpDkvhUlXjy_4core9panicking9panic_fmt _RNvXsc_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexjE5index _RNvXsd_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexReE5index _RNvMNtNtCshHduDTGquA3_14regex_automata4util8capturesNtB2_8Captures17get_group_by_name _RNvXsd_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexReE5index _RNvXst_NtNtCsbehE3SSdn10_5regex5regex6stringReNtB5_8Replacer12no_expansion _RNvXst_NtNtCsbehE3SSdn10_5regex5regex6stringReNtB5_8Replacer14replace_append _RNvMNtNtCshHduDTGquA3_14regex_automata4util8capturesNtB2_8Captures23interpolate_string_into _RNvXsu_NtNtCsbehE3SSdn10_5regex5regex6stringRNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer12no_expansion _RNvXsu_NtNtCsbehE3SSdn10_5regex5regex6stringRNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer14replace_append _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex5bytesRShNtB5_8Replacer14replace_append _RNvMNtNtCshHduDTGquA3_14regex_automata4util8capturesNtB2_8Captures22interpolate_bytes_into _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex6stringNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer12no_expansion _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex6stringNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer14replace_append _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer14replace_append _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex6stringINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer12no_expansion _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex6stringINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer14replace_append _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer14replace_append _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex6stringRINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer12no_expansion _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer12no_expansion _RNvXsz_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer12no_expansion _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer12no_expansion _RNvXsy_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer12no_expansion _RNvXs4_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXs_NvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtBa_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB4_3KeyBZ_3fmt _RNvXNtNtCsbehE3SSdn10_5regex5regex6stringNtB2_5RegexNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvXs9_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_8RegexSetNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsy_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer14replace_append _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvXs7_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex5bytesRShNtB5_8Replacer12no_expansion _RNvXsC_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8NoExpandNtB5_8Replacer14replace_append _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex6stringRINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer14replace_append _RNvXsz_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer14replace_append _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder10size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder14dfa_size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder15line_terminator _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder10size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder14dfa_size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder15line_terminator _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder10size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder14dfa_size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder15line_terminator _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder3new _RNvXs1_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromReE8try_from _RNvXs1_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromReE8try_from _RNvXs_NtNtCsbehE3SSdn10_5regex5regex6stringNtB4_5RegexNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt rust_metadata_regex_82ceb078db1ba294 __cxa_finalize __cxa_atexit __register_atfork libc.so LIBC libregex_automata.dylib.so libregex_syntax.dylib.so libstd.dylib.so libregex.dylib.so    APS2
 
   
                  D$I H0 Ia      `                   h                   p                   x                                                                                                       	                   
                                                                                                                                                                                                                                                                                                          (                   0                   8                   @                   H                   P                   X                   `                    h        !           p        "           x                           _                                      #                   $                   %                   &                   W                                                         {                   '                   (                   )                   *                   +                   ,                    -                   /                   0                   1                    2           (        3           0        4           8        5           @        6           H        7           P        8           X        9           `        :           h        ;           p        <           x        =                   >                   ?                   @                   A                   B                   C                   D                   E                   F                   G                   H                   I                   J                                                                        . )E;
 external/rust/android-crates-io/crates/regex/src/builders.rs external/rust/android-crates-io/crates/regex/src/regexset/bytes.rs  no group named ''  external/rust/android-crates-io/crates/regex/src/regexset/string.rs ./prebuilts/rust-toolchain/linux-x86/1.93.1/lib/rustlib/src/rust/library/alloc/src/string.rs ./external/rust/android-crates-io/crates/memchr/src/arch/generic/memchr.rs external/rust/android-crates-io/crates/regex/src/regex/string.rs ./external/rust/android-crates-io/crates/regex-automata/src/util/primitives.rs / ./external/rust/android-crates-io/crates/regex-automata/src/util/captures.rs ./prebuilts/rust-toolchain/linux-x86/1.93.1/lib/rustlib/src/rust/library/alloc/src/vec/set_len_on_drop.rs external/rust/android-crates-io/crates/regex/src/regex/bytes.rs no group at index '' %Compiled regex exceeds size limit of  bytes. ../ ./prebuilts/rust-toolchain/linux-x86/1.93.1/lib/rustlib/src/rust/library/alloc/src/sync.rs ./prebuilts/rust-toolchain/linux-x86/1.93.1/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs 	RegexSet() ./prebuilts/rust-toolchain/linux-x86/1.93.1/lib/rustlib/src/rust/library/core/src/iter/adapters/enumerate.rs called `Result::unwrap()` on an `Err` value         Syntax(
Captures)CompiledTooBigMatchstartendbytesstringSomeNoneErrorRegexLayoutError()a Display implementation returned an error unexpectedly   ;D  g   (  \      #    $  0  %  h  '    <'    (  D  +    t,  p  -    -    ,.    1  d   2    2    2    `3  4  p3  X  <5    L5    \5    l5  	  5  ,	  8  t	  ;  	  <  	  =  $
  @?  
  @  
  @  
  A     TC  l  D    ,F    H  L  XK    K    @N  X  N    P    lQ    R  P  $R  t  4R    R    S    V  4  8V  \  V    V    W    8W    XW  4  W  l  W    TX    |X    X  P  Y  x  Y    Z    <[    X[  ,  [  H  \  p  \    ]    ]    ]  4  _  h  _    _    \`    `a  <  db  p  Dc    c    <d    d  8  e  h  f    g    g    g    $h  X  Hh    h    h    h    Xi  P  |i  x  i    j    (j    Lj  0  j  p  Xk    dk    hk    lk    xk    k               zR | @           DXP

,X D   D   \      l   D`X`

`X DD      $  t   D\`

\ D  4      P   D   D0L0

d0L D   4   $  \!  @   D0L0

`0L D   ,   \  d"  0    DD
XD DD p     d"  X   D0L0

h0L D
p0L D
t0L D
|0L Dp0L          H#  |   D0L0

x0L D
L0L D
\0L D
D0L D
0L D
H0L D
D0L Dt0L         %  d   D0L0

h0L D
`0L D
\0L D
t0L D
x0L Dd0L    4   ,  %  \   D0L0

(0L D  ,   d   '  (    DD
PD DD ,     '  4    DD
\D DD X     '     Dp\`

p\ Dp\   @      )      D0L0

0L D0L    0   d  P*      DPP0

xPP D  $     *  ,    DD\D    ,     *      D@L 
\@L D       $+      DDD <     +     DT@

DT D      T  ,      DDD     x  ,      DDD       t,      DDD $     `,      DDLD    D     T,     D`X`

`X DD   0  /     D`X`

`X D0   x  1     DP0

P D0     2     DP0

P DX     3     D@P@
l@P D
x@P D
D@P D ,   <  4      D0L0
0L  4   l  L5      DP0

P D 4     6      DP0

P D H     6  p   D\`

,\ D  H   (  7  p   D\`

,\ D  H   t  9  h   D\`

$\ D  D      :     D`X`

T`X DD   	  l<     D`X`

X`X D@   P	  >      D0L0

p0L D0L    |   	  ?  H   DD
lD D
pD D
D D
hD D
TD D
dD D
hD D
dD D   (   
  @  t    DPL 
PPL DD   @
  (A  \   D\`

\ D D   
  <B  \   D\`

\ D 8   
  PC      D@L 
\@L D
X@L D         C      DDD     0  C      DDD ,   T  C      DL 
L D  ,      D      DL 
L D  8     D  4   DT@
hT D  $     F       DDPD    4     F      D`T@
l`T D$   P  <G       DDPD    $   x  4G       DDPD    $     ,G       DDPD    $     $G       DDPD    4     G  D    D H 
` H D H 4   (  (G  D    D H 
` H D H <   `  4G  t    D0L0

|0L DH0L    $     hG  (    DDXD    @     hG  p    D0L0

t0L DL0L    $     G      DDLD        4  G      DDD 0   X  tG      D`P0

`P D  0     <H  (   D`P0

`P D  $     0I      DDLD         $I  @    pD$     HI  t    TDL    (   ,  I  t    DPL 
PPL D0   X  I      D0L0

x0L D8     DJ      D0L 
T0L D
d0L D   $     J       DDPD    0     J  $   D0L0
0L  0   $  K      D0L0

|0L D8   X  L  ,    DD
LD D
D DD  ,     K      DPL 
`PL D 0     LL     DP0

P D0     M     DP0

P D4   ,  M      D`P0

`P D   ,   d  N  |    DPL 
XPL D ,     N  |    DPL 
XPL D ,     ,O      DPL 
`PL D ,     O      DPL 
PL D ,   $  tP      DPL 
\PL D ,   T  P      DPL 
PL D $     Q       DDPD    $     Q       DDPD    <     Q  `    D0L0

d0L DL0L    $     Q  $    DDTD    <   <  Q  d    D0L0

h0L DL0L    $   |  Q  (    DDXD    $     Q  $    DDTD    <     Q  `    D0L0

d0L DL0L    $      R  $    DDTD    $   4  Q  (    DDXD    <   \  Q  `    D0L0

d0L DL0L    $     R  $    DDTD    $     R  $    DDTD    <     R  d    D0L0

h0L DL0L    4   ,  8R      `@P0

x@P D          d  R            x  R              R              R              xR              |R                 {c _WOW;@ Y=AM= R#H R " RR R6 R# h R99HR HRs9( 	  K  9#9	 H  x ! Ry    w R gY 	 @ TB K S@`CiR `
@a A`
Da@_	a TOOc@WN_M{K_ @Y \   R] {og_WO 
# H;	R @|	#RH   	 ) R#@R N
@	5B99B91B9? =   c9 3@U #X 7  Tb `C  1 9 6?@=*C#G@ <'9( R+9/9#9O _ o  c @ V	 	! TWw# 7@/@ T3@ U T]  @ 'F#@R ҿ9		VB9ZB9678   ?@	Rb#="	`C  	=v C ? T(c c A  / 6x	` T	A + #? ( #@+@  0  C? #@+@h HQHxѿ0'@Bx188@# G@ T <<< <<<a`= C@;@T?@	Rb#="	`C   	=T  A9GA9A9A9 q`  T	 qa	 TO  <@ <<<!<<( ?@ <b=#<<< < <"<!<(  G@u    c@^@<A<#i= `<@<a<A<`<@<a<`<@<+ww `<h% j	  G@  l   T;@  R|g WFU e  B T  )@- R-E8A9=8}ө#8%B8<=8)@8cѬ;6%D@y<:A9QGx8hQu  R      T  R#  R RNNBN~#Q=B l fk<NJ cNk|k|ӄgdNNN$?) AT  T	R	]	z( ) TS Ҡc    # HO@	 T( Rh(  RR    h   @RR   R     @ ,  L  l   @     RR  R `  \@ U=	  <  RR   ( Rh N@     =    <<@ < <!<< <!<E(m  :	  <<!< <h   T9խ @  R G     T;@  R|ӌ WF    B T/@  |R~ @^	 T
OEWD_CgBoA{ƨ_   RR  RR}  RRz E     RE  R@RB {3 g_W	O
C Y;ɪ(@_ 	먃" TH  R}_  A     ( R N=  Tc b  c N @ T < < T<b =HHc =@=T(@_	 TOJ3@WI_HgG{E_"   p  Մc aR%    {WO  @t  h@& 	k  TC  ` A  	  	ADQkH R( qL T q TRROBWA{è  q  T qT q T@I R( A?  h  Ta@R  v"@  u@s   T@h	`@R{Ӽ   `@" R a&@Rjh" R {WO  @ h@& 	k  T`" 	  	ADQkH R( qL T q TRROBWA{è  q  T qT q Ta@I R( A?  h  Ta@R  t@  #   Th@h	R{l   `@" Rg a@R`jh" Ra {  @	 i   T9{~ {_{WO 	@H R*}S)ADQ_A q( q  T q TOBWA{è_ q T q T q T @`   RROBWA{è2  @I R( A?    T@aR hh" ROBWA{è! @    T@(	{ROBWA{è   @ " R @R hh" ROBWA{è {WO  $ h@) h T   +ih8J	@`@RROBWA{è `@RROBWA{è s@a@( A?    
 Ta `@" RW  s@h@  	z`@R! RROBWA{è OBWA{ès@I Ra@( A?  
  !	 Ta@!
 RL  s@t@  B T  s@t@RR RROBWA{è s@t@   B Th@  |R 	RROBWA{è h@  	z`
@R!~ t.@~RRw RROBWA{èp   `@" Rl a@  R`jh" Rf RROBWA{è_ {WO  | h@& 	k T`" OBWA{è	ADQkH R( q  T q" TOBWA{è_ q@ T q T q TOBWA{è6a@I R( A?    Ta@R`jh" ROBWA{è% t@   Th@	{ROBWA{è   `@" R a@!R`jh" ROBWA{è {WO  0 i@J R(	 H1	 - T  T  T  Tt
@2     T	  Th@( ? i R R)`
@B!ɚ(   @ T A TtZA   T	  tZA    Th@H |  `
@  a@a  " R t@RR `@
RROBWA{è a
@`@" R{  @   @" R{ {_{  @ ?   T   @" R{ {_{og_WOC TA  "    "  T_@" R h@  R}{ t^C  R   h+@  	z`/@R!m uS@mRRf  @ TS|@ TuOA  ]s B Th@|u@  Ps B T  |RE a'@( A?   aT!`+@" R@h@  	xR!2 t^Ew $R   R`   TS|@Tu@  s ւT  R{ R` !T@h&@  R{ tVG "    B  T_@" R h6@  	R| aF@a `J@" ROFWE_DgCoB{A OFWE_DgCoB{A_{WO XA         T@% 3 , TH  T@
@" R	  T T@h
@" R@H
@}ӂ R@( |ROBWA{è OBWA{è_C{ O U;թ@H  T@
R  )	  RI	7 @ q T@t" @_	A TOD@{BC_] @[ V { $@*	@!@J J|j
@A {  {O S;i@$@*	@+@ J J|
 A `? h   T# 9| h@_	  TOC{B_+ { {{ {_WOV; @A4 @ T @뉂8@  Ti
@& :  ( R Չd R  r# Y ` 5<@=
   ҟ Tt@t R  ( R ia R  r# D @ 5<@=
 8   Tt
@   T    R`jh" R @_	 TOGWF_E{D_ ҟ  Tt
@4RjhRjh `UP a a R  { {' { { { { {  {{og_WO 	Y;(@H@  a TA9	A9 q`  T	 qA  T  
(@+ RK++E9	A9 =9- RC+9$B/= ='(@y; +$D=
@y <'	A9PGy'9SD@  R@=@s9   P Q  @ 7 RB N=L H R C    h R99HR2HHSxHR 9I#y;999 C ѡB  [vH  WS5  Tv^ uRE9 q T1   <<<w@<<B<A h   Tѿ9Ն @A`" Ѹ[6o7<<@B<<@@<< E9 q T	 q@ T@	 i   T9 Al (@^	 T	OEWD_CgBoA{ƨ_  ա7 e0# *W     {og_WO 	Y;(@H@   TA9	A9 q`  T	 qA  T  
(@+ RK+KE9	A9 =9- RC+9$B/= ='(@y; +$D=
@y <'	A9PGy'9) RSD@  R@=@s9      @ 7 RB N= H R C    h R99HR2HHSxHR 9I#y;999 C ѡB  [vH  WS5  Tv^ uRE9 q T1   <<<w@<<B<A h   Tѿ9 @A`" Ѹ[6o7<<@B<<@@<< E9 q T	 q@ T@	 i   T9 A (@^	 T	OEWD_CgBoA{ƨ_V   Յ# *     { OT;@ Y=H R AM= # + 3 h R#9k9R#
HR HR9( (	 C9*![ 9r @ @` @_	a TOQ@{O_<@ ՠp #  aR<  { OT;@ Y=H R AM= # + 3 h R#9k9R#
HR HR9( (	 C9*![ 95 @ @` @_	a TOQ@{O_<@ Հp   Մ aR<  { WO (@ qa T4@@ A T) RHI,@ T+@jyh* ?  Thyi  I  	 ( R  OC@WB{Ĩ_3@ B *  b T @I T(  T@j})ij(b T ` T	 ,@CT  OC@WB{Ĩ_ OC@WB{Ĩ_h	 
@T "  @  ՠ2  @/ { O    

Rh}Û( R Tu} k˿ T |    5     ( Rt   ` 
Rij*h OB@{è_{WOT;@  = R H v"    b   T_@" R C@  R}
 A9 q T	 q@ T+@	 i   T 9 AD @_	  TOMWL{K_
 {WOT;@   2 H v"    b   T_@" R
 C@  R}
 A9 q T	 q@ T+@	 i   T 9 A @_	  TOMWL{K_֊
 {og_	W
OA9
A9 A9A9 q`  T
 qA  T  m*@( R(nE`RG`
B|f@ qxRC /uZDoA9qA9zA9{A9 T
 q ThE	 i  T9 `B+>)=C ' = 
 @=}'@@C]C__})  ( R|f h`
xRuZm:p2 w9z9{9j9k9l9`Rq9o9OKWJ_IgHoG{F_   {og_	W
OA9
A9 A9A9 q`  T
 qA  T  m*@( R(nE`RGynA`
B quZC /zrDoA9qA9tA9xA9 T
 q ThE	 i  T9 `B+>)=C ' = k
 @=}'@@C]C__})  ( Rynh `
uZzrm:p2 w9t9x9j9k9l9`Rq9o9OKWJ_IgHoG{F_   {og_	W
OA9
A9 A9A9 q`  T
 qA  T  m*@( R(nE`RGynA`
B qtb@ /uZCoA9qA9zrD T
 q@ ThE	 i  T9 `B?)/>)7> / = 
 @=7~/@@]/~))  ( Rtb yn`
uZzrm:p2 w9h9a9j9k9l9`Rq9o9ar9OKWJ_IgHoG{F_   {og_WO V;@	A9
A9? q`  T?	 qA  T  (@+ R+E/ =R9$B9X R= ='(@ y3 + $D=
@y <'	A9PG y9SH9#=A 39h R c99HR {( R92RxHR{     9"y99	 	  CтB cwH  XW6_  Txf tVcE9 q T1  <<CѢ< <<x<h   Tѿ9՟	 E`" CѺc7_8<<F<<D<< cE9 q T	 q@ T@	 i   T9 AU	 @_	! TOEWD_CgBoA{ƨ_    {og_WO V;@	A9
A9? q`  T?	 qA  T  (@+ R+E/ = R9$B9RX R= =9 R'(@ y3 + $D=
@y <'	A9PG y9SH9#=A 39\h R c99HR {2RxHR{     9"y999   CтB  cwH  XW6_  Txf tVcE9 q T1  <<CѢ< <<x<h   Tѿ9 E`" CѺc7_8<<F<<D<<$ cE9 q T	 q@ T@	 i   T9 A @_	! TOEWD_CgBoA{ƨ_.    {WO P@ ub    b   T_@" R<    Th" 	 i  TR&R9}OBWA{è) OBWA{è_{ B _< h T	@9? k  TB  aT{_ N! =!n!( f  T(H  R{_)|_ ( )A C T
?
 T)@) 	) 	"@a<&	=!n"n%n&neNFNN%n f k)
T)A 
A ?
H T!=!n!+ fka T)A ?
	T?T	E  T(< !n 	 f)@T))	I  R{_ր f  T(	HA   R{_h(	H  R{_` f  T(	H  R{_@ f  T(	HA   R{_  f(	H   R{_  ~ C{#  S;#  F h@BT8c $AA    @ h@_	  T{C#@C_V {3 g_W	O
CX; @  y@(@	)@ 	%@(	@h )@| մ~ u7;!  ~   C  ZC {C s  Ti_  h@)A    !C  +@H6(C <C  < ZC {C s T  @_	! TOJ3@WI_HgG{E_ {3 g_W	O
CX; @  y@(@	)@ 	%@(	@h )@| v Օw7;!  s   C  ZC {C s  Ti_  h@)A    !C  2+@H6(C <C  <o ZC {C s T m @_	! TOJ3@WI_HgG{E_֨ {  S;	 h@ @	 T
  @ JC@@B# '  = h@_	 T{B@_@i@_?
  T{B@? ~ { { { { {; S; i@ $A@*   T? T@  # kCBX  C 
  c J!C  @  h@_	! T{F;@_ Ճe	 G {; S; i@A  @@i   T _   T
h8_1j  T    Tc   T
h8_1  T $b T # BX   C  @+C   'c  '+  h@_	  T{F;@_
 C{3 WOCU;	 Ҩ@ @	A T@ 	[0	R    \ C   @_	 TOH3@WG{EC_ ( R 	R# R$ R#>W_	R^	  T^s  Wi)8T   " R# R$ RB~s  Wi)8#TQ@! 	<_R@= ? 7C  շ B5 _>S ` 7#   B5 '>H   7C B5 _>?   7 M" R?  6@  @" R   R@  @" R *} {  @ @{M { WO T;Ո@ L@D  h Փ5} C b  = b T < @_	  TOE@WD{B_M { $@	{ {  EB R{% {  @ @{ { $@	{ {O @  @  " ROA{¨? OA{¨_{O @  @  " ROA{¨. OA{¨_{ O A ? 3 T5    4   ROB@{è_OB@{è_{ 
A) Rj
3
% 
	 {_{WO A 4 R Ts *   4OBWA{è_OBWA{è_{  *   {_{ { {# O U; @ a2p	 R#   43 Ձ1# cB  R  00cb b R hAb@)  T?  Tj@ A/ 1c H R #  @_	A TOE#@{C_ c,C ~ {# O U; @ Ձ*p	 R# f  T+ ա)# cB  Ra  (0cb b R[ bAh@i  T _   T
i8_1j  T    Tc   T
i8_1  T d& T a%0 (c  R; > @_	  TOE#@{C_4 { 5 *   {_  A@)    T?   T@	  _{    A   @@h  T _   T	h8?1j  T    T  " T	h8?1  T{  դ aT  _C{#  S;#  Ջh@B`c $AA    @ h@_	  T{C#@C_ {WO U@H @P@˟ Th@   Th
 OBWA{è_# R$ RDh@  T 
  { C S;h@  @9 q T  d 	  R h@@	A T{A@ _h@@	A T (p R{A@   {  աp R{ {WO @ ? qb  T5 R  ?  qb  TU R  ?@@qh R5h@˿  Ti@? q( T 9(  *# R$ Ri@*q(cT?  q) 3  T*|S	 9J2
 9  ?@@q+,3  T*|S 9		 9J	2
 9  ,|S*D3	 9	 9m2
 9 9*h
 OBWA{è_{WO @ @ _  Th@ )  T*h
 OBWA{è_# R$ Rh@  T `  { (@ 7 7{ { {! C{O T; @ 	 R  h&A   c A   @_	  TOD{CC_ { OT;@ Y=H R AM= # + 3 h R#9k9R#
HR HR9( (	 C9*![ 9F @ @` @_	a TOQ@{O_<@  p գ  d  aR<  { OT;@ Y=H R AM= # + 3 h R#9k9R#
HR HR9( (	 C9*![ 9	 @ @` @_	a TOQ@{O_<@  p Ճ    aR< j {WO V;	   @BT8c @ )C3P@   6  R@_	 T  @ @BL>c  #   @_	a TOEWD{C_*@_	T2 C{O T; @!@		R#    # C ѳ  @_	  TOD{CC_ C{O T; @!@		R#    # C ѳ  @_	  TOD{CC_ C{O T; @C  aB R@ q TAb"@  Th Th@@_?
 T  OD{CC_ Ճ  	  #  8)C  C '  C{O T; @C  aB #@ q! TA`Ca  T _   T	h8?1j  T    Tc   T	h8?1  T $ g T@_	 T  OD{CC_	  #  8)C B C '  C{O T;  @ @C   @ q TAb"@  Th Th@@_?
 T  OD{CC_ c +   	  8 B C 'u \ C{O T;  @ @C  l @ q! TA`Ca  T _   T	h8?1j  T    Tc   T	h8?1  T $  T@_	 T  OD{CC_  ~  8  C '; " {  !0bR{& { @	{ { O P@R   6Ah OB@{è_ u h OB@{è_{ (C@ @ { { O 	 @R5@   6Ah OB@{è_ u h OB@{è_{ 	 @ @ (C#@{ { (C@ @ { { O @R_   6Ah OB@{è_ u h OB@{è_{ (C@ @ { { 	 @ @ (C#@{ { O @R4   6Ah OB@{è_ u h OB@{è_{ (C@ @ { { (C@ @ { { O 	 @R5@	   6Ah OB@{è_ u h OB@{è_  7 ը   { OC @ @sA T@  8  *
 OC@{A_֠ # R $ R@@@  R _@    _  ` Ղ K  # L             {  .Cb      2C   6C   :C   >C   BC   FC"   JCB   NCb   RC   VC   ZC   ^C   bC   fC"   jCB   nCb   rC   vC   zC   ~C   C   C"   CB   Cb   C   C   C   C   C   C"   CB   Cb   C   C   C   C   C   C"   CB   Cb   C   C   C   C   C   C"   CB   Cb   C   C   C   C   D    D"    
DB    Db    D    D    D    D    "D!   &D"!   *DB!   .Db!   2D!   6D!   :D!   >D!   BD"   FD""   JDB"   NDb"   RD"   VD"   ZD"   ^D"   bD#   fD"#   jDB#   nDb#   rD#                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   _      i          	   А                            ]      B          -   ^      C          -   _      L       X  9   ^      J             _      L         0   _      L         %   _      L            :a      ]       A
     :a      ]       
  	   ]      <       X   	   ]      <       G   	                          \      `      Z         )                                                                                                                                                         N`      ?       
     _      @                                        D_      N                                                                                            й      a      l       R   	                                                                                                     N`      ?             _      @             N`      ?             _      @                                          [^      \       I     P      @      0             S9             n9             9             F9             9                    o             `    U        `    _       	               o    xU      o            o                  U                          H                           8                           l      
       9      o    P             ,             X                    o          o    0      o                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                .`            (/.` %3
,OPd5@jsb㣦0;E(ВBl]0;;#SЌ7FY\12:cA "SY>RT ]CPi˾l%F1b^@^=RH}`b>oD$y#&~qq=h*XkCn78tO,~dےdSe>s2Ϝ.)0wdc@0T)Zl|t.ݹm1@LXi|IM"B2cs<gE<yG1#[ pL
nn@tNgy@7fl'!" ;:'&32In zS!"99FrRI.CTzy)ǌ=?"-D[o:owb "[- ٚw~6'թ>/}A$yY|r	%"AHgȅąI]*9ˠX#Jpj &9NIqu4HEh'|;"#C8hjGjs+ǰb#'8Dr='.gBexv@vRUK}~80mzl8DźgY`$.K"yb]BVk
(]y8 ;o-y߷vzcnLOĿ0Ϙgb>bfՏC&KyyzBHowz <*&\CZPjۊCV,xvY<b覢"DNhZ8,~O&ej5M+#m3϶/Gl2YfېrqxTJE"6qr8#c߆ޟCCL}i$l&L<ZR!l;zлĹ";!ϱ(qKZm#"3.#{o (z_ba1ME\*8`va|Ah++RyE+z<jؔͿJwzzDp89fIhZU֜6d25kl46X|6*St8nԢ\9f8SDQ0&'Z#
aD!Q$j7D7l#_ԇ<g0nGMM1ҽ8NeϣHBPϓ,
X+^uN\nNS<M.k/Sl̒1#ł~Zbsm}E	Ϫ\f*UgxP<scsG6sgZzƌ1BRC%h4fALAUU/qi4bR*@ɜϟgX|>39rP	x`nMMohlcjXޜhG}#FQt:84jY1̳e}89dd2Aw. :fWhDMUe.LT$`8qRzC*B>g?dJaK#+JjTcҝN#P|>Fe*WOl
`d^}	k¤+=bI=	CȮ墂<9hBtn\<#s\lZz9Wk$瑫<|܄	xh@k@e1`V	+s%|; x]4Z`mƊ`:Ę"A5jB;h>ϱܺ1G̒/iQRC+{>IS	)&*T]&t>Ϣyϙy F#h,j&9z_ⶬ!ϻ&IjgNh,E|h2gFFzI/<Gv%=Q;j']aM4RSjƌYXRS	UR;]³(ͻzw.HD;
)Iye3a٣VX/aD>7~Bj']R#ڲi
KKI"ν9TH&`,rC6Բ'#f.pvR"kr]Eq	v\(RU!fwij]W+HF`x2Q)jĚϺ42#:#	GDVCl6,jqFQx1jqdٿ]X."._RсzT"xp(>,^WӴ?*FЉO,O)>H2>Hr\.QZFV2jCF6-7(j0T\B?.ťT2e?*J3^u7LW5_%/n_u=J>bN>JJiY6jhC=iPS)4'~0<-C}>	OQ`ĲvRy~%nˢh<j>g@ʲIˋ ]=+:fs;aMUR,iDaeC8daYyuuR7	+(r|(Q8ʠr@ZPvBϡй!(O `DHѹйHbm6f:HtHec1*	+IoDr+į㣶>oA(UC:f9k뺮뺮뺮뺮(tN3ss/^P8ge0@0VU!f$*.tځx	o   s05J(4y@a$   f0qI]BC{U%(Qy>05
\^r1
@WK,r^++m2HBl%KoIsֱBY%ʗ{#ʓ< +*GL8!7̙́xCT53**{e|pj,XV{[e5v9V.\y9E|aDCA27wJ[I,+-RYy 뛭kH Rw5^OD0P#	Tb&&{lJ::Z	fQM+0E XVv*keK4n	yĉF9~K:G0?^˨"vᵵbo~%ܺq
+mk57@F%9#XvJqﵮph{+<*&YXu`'ɜ㓉DǢFC,nf9qsd;2:Al9L<S(i=n|ێdߥ; \&PBLۥhOľ)D&|)I'/G(6<x.AΰdÕ#f.qw*aZ,j=_{sQ%*'[헙5Oy'$r#WqoXCˎxtȒ){c +6?z6lq0# l	
w<Ro%+A YEbh6<orḢY	?kxΙlrJ%?!eUs׫DrQ(o')Ǹh{4DMԔ]_9c&
ˆeǈT$[Qe0Y[bpj-R8/Ob)olr%|"i 8ؚΩu}84Z`wtj7\4Qs
Z{sZ<'Uyٮ[xIOWJ
g!x~5o1PxRnY`ZνTFnx)& EKʔH ȳG(`IbUAݼ!	wxշپ?2'^d R7F.iHI_ZnJiT,FE1Ir-\|L9+3q-W-RcpmKR&`nY1\H\z*Q+m)i]HJk5MPk.$@>߼NEk-\Դ S]m"u?L7NtBƴ.0$' n)xDSyR,Xm8\6C,՟)C>$'n6mI8D歸@A<`:x,hZC`HJ4Ndkf!:\ǁȼLPxfX#Y_a!bHt:<'(xJDw1Ѣb\&Iȷ'n &@l4+.uHPz)?ZY'eX)p暡-ALP?C&z!T T|ll^(BY6A*X$Dtucb*}3p#Mi09["Yp&K|hGSqn/`98:(
7ypGAo*<<0bF U!5
F%&qK,#R
v{ǋ_xI8Un2'%#Nelma"u._>q"
UbQl4OLL-!v%AhTvvpsoAٍ:G	9Z@9;-S'ߓY6tѱ[)iȄ[8Gr%TFqaLH0V9~,.qK`i,eZn/`Y!rDզ2A Q;	2g:a?$:|M5{TG>zlgCeŏFN|!2c@rFͼ2Tn#i,M	v@\"o])D~&F_AwZs|@+MW88cm	p
])f	@f!b3A݈#iڌ9W%&!KddbnukS5CiD4Q|B-*$=ZWHCXl`qFl`ȉ#:.)`&v1?Swd(AZ?C9*]ɔAU	C& Q'O+o>}1w9bwB?E8JڸeďM2@tԄyN)d[^Hꡱ_R{k&! C
KU:B$1qj$-npYBv#͟M;,eQ\Jq7$5fã`Q"?ta⤳s	7X/tFo>1 Az>(z58Y-fhN_=*WU.|()WURX|K$1A~԰Na%
pKp]UsvZE܍\(dlC|NKcCx$FȬ # RksŃ!2Pp-q&D,@	.E
X9FlpyݺබVh)ܮwivJϗzZ*elS(o[p+c^adhQ.Ks|s/ˢ7tV;z٘ %@D=摇FΉ
=U-{896*x\JVmTm̂ri81F[GVOk2M\~"3֜]ꠦ5Va
zdEJuY<Fv=M|pnS31VX{hT` ʳ_>OWHvߺp+dTdfc(^G _	-=w	EMqAΣ[c	ƣRU]ѯpD㵗@[PkYfu|`MKHOsDq0UtuWfGtF==FBnq;@bW2&	>#W
ܺ(n'vhbP;l~QF.%eBLo5xKS/J"=9h5=F*3}d>vHB4\@~v) sMԆ5`{Ey[<lQim"f&bvz}Tᩣ@&BiV;nVwـZ?֨R'ou_֑I@j=::(

*öt.No07N\LV9/{R(.Ht@5݂?{"&U}gZ,	V,%
⏰q77[ L8?@6r/Ba\=ZϹ"rLEԘM1	7/A&W=<^ǉSކEZKARKb{%n{U2l^(w俶`+Iԝ,֖lҖT|$cN}jßW%e=	"R'	Ѽ</Yom/A|GcQe\%=g'OrXa9A4|z30ch!}G`Neb&dwܜ4cp7#7?3D>~(m\uE&aW`@SIEaxHPр\7('h;]9ʨ
Afׁ1ϸ>iQ,{DdTC{/ P֪75_k((H&aRQ՚uQS2ҨlV-8 ]Z.1В@]@i͎q	Gujd]jiZĶ0'ЙzPT5:６sI_H>@#F<O&vFlp`ccCaKbӊrwwfzN29jOZ&&4U7N\_E{"rln;9a#HD+0) A|K$Xl~-V_/LZT,mil=ikK lZ6cK\IU:Q&<9B-zu}!}2MU_>n,BV$>8V6'P  /<3(3p=cljIǁz81ÖsɴI^5.
c!6ۘTqI\\sa܋Ԇ0̎_TH¸qK:0Iމnbޛ9XG-nȷ:G8QWf% LVt2Z;JyOlM#8mNR^:B4AS=-/rfzFG| mn|@6}qs:l𤘈jerZh-	U bB"ՆU)!O`QaӠ6Eq/Yr7k&<8t_b:1ص알ܐ_-.L<ْhbqoB":8;#hv N+Am0s1Zw%0
2Ly񓈱qzc}J}gb'@eube(2QnQ<&`{KHf4MJؙn,;	> Oʴ.&LMjjCWfS}ݐ_k"vh0A:a0ӘXE#t70؜r"
G@nBcolDښE~v1BP0(q]e澎QݱuM1B:mpٺRN	z2I)A=fҕqIkP4o(đaaia"qV/^,=&M 8OYE\atoEql>Ke1בPE'>Q1!ȈӲ:Wx̎\6`xEcp)-;;(~Ʋ*hV#FN+:#VfPa;˸K ҹi[GJs);PI]qccWncR F1:ksVK нcpC;^w_wv#@c?Bqda1%}Z
 ;#J6+\Qݛp+Kh Ms7}dj	E}!) 	9Ǥ$:*u(EJ85.d5	yP,Ƽ)GCͰrWM?1+pvz/k#aT+|S{K8u<(hy %Jz1"I"	\tMws76DkGג~%N51([Y٭kcG0ۮ7:*He3@rwa7{?jM*)HN{ЉsOOp)}5iWI=Y$܁dI?5'Y"Zp|,IqM"^A3]w_̨V@6cJIr)<[Y:cy4~mooju0[N].]aCaר	V%bw*
H,Кꂞ8o:(w U-zCH촫[!]AQK;"L-.TYD郾#Cdhzp71]aY!Ȩ90 f+bH]	A"F_b'&M}B~jI\{dʇo)2^c.~}RG*߉SЋ$sǪS0D%MQ;Lpƹ5%m
+Ҧ_u}JԪĊ޲Y;ViD\P4kQ,_LFNoi3	ryBM_T<XB:+ئ\B
{bA2HscO/J7+;j2ZSO(\l@.ZD.+.ԽlL Y 9.ʱ4@PA)M}ȅ˓ÕݽIG(T_0堛%ڥ8軀'0D]@:?@#	qheLC .d	9$i?"A0n:7 w.-M2o)J"yQNȭ>De6	8s57x:-ncK΅adK.n7/ Xx@?Fr`<.y*0T;a&ŒEJn0ۉ+|
ijmo2"R5?"vg kI|rj)W75D^pHp
DAȀmĻ9ϷDwm>oəJVD8^5&	<㿑^`56T(!u8ZPȵߔ:`ǊS]`W<smj1cV 
vT
À>zm^Jw                    (/`E g1ԑ<u 2gD"  (|jFa`P8TY!|QSy7)R \ a ?ZR;VWEMPTe~K0Jt^b"S 	?sbJ8?:gI7=UKzqJN/~;|!)qh`<4$\dYc=c9K(@t?4eӱ=$FMǌ$rnҗYqzw ~|<hTGPDÆ
eX13.M]ٕk*%BA22h <ENL
ޢ[?b/7阎6diQjMԣ'6E1MLFBQϥo!cE 1 i~\+^&\Ȅf&Ep`"!ev!Cit~VvMTiBvULZ*cJ<`7:nKP/NDP"}! OV󷗺pM@âr7&s['^6 ːT-h  :BȈw)+O`#H91ݬ肛@2v@R .AC(m̽<'}}h6UUو{B`d'!OCXf7]I̍6U       o            (/o \%.ZG;3';n~x{5nn>8uJ|[gk@26tZ!#> @$ɹ}*iQ|@vRBDA7!$5~-Y|\<wҜ5?^Ԅ<4!LDmPåhB%x(Ѥ$ƿWIbc_5GJVދW 	.¿?)Wܴ[	*%J(sw.o5$JJ`VI.*^CE0?H$Y~vvmY4dcQfѐ [rءeAe!ǐ?/XAϊD<,]^C0*<!70Ȟ#fP0Y	TI#bI5oD؉J&DB	1a̖gIH8A"  ~ʩ1hM3/ѳn:0Ӻ[{;dѠ
GAi/b<C( !g	A5X^CWD3ہ5I}c>r[1ZБ@Drxtb4iq+/694 _iEP'_oT_πk}H|0Z{2]F-g++_iQ
Sk(]1|j4A8*_Ft{D>[)3)Ι"l%M.2s3F {˼daQxj
m U΢q)#΢ʭM3 p5gPs33GF7h8raNC9Ewsa#9VVs:榦_nK|$HC&n94Cz^C/-3x^xZ`qauӀ g+v:`34؟KX0[BI]qcߓlCzR~>\C/-逹:BqԒP0S5ԈrҟBki皒x7,5n	voތ|x	qx(Q0}NT7K4_,3EQ,ZPE$VSHC
TP="EI(	& r0
H+"NB7BGY4AbKK_B߀f" A!H<}0g_ hA٪bc*jn
A6Ǌ6XmAP~VO=Ѽ O,@@@@A'N$"ЀH  "G^
K#,g!TQOp$#A#QsԴ 6N#~8,݌j;mCNrϡJ=tisݔp|;CaW^CtLw]og&L/~*~[~ 46E/DҚH1xlDHjb{N }<|o_1JCSk&W<&DV)RCHJs.qK#?4D#zt#	nDyLb51]!ӬaxQD s̽aia)9sF-S@	Zyƴ&Du}`E3* j&*(8
wgԢ	On/QLy[0s	"ѻ"\BDXoHFC9D꽸JWrBT{EaZfK\pRxQ1BoYyU|c-AҎFAz-A U ci1Q1Qsft[گ1U`%]as>G5(LT}	bQRt6/7}ݣEM*AjSKzSjk8+rQw2t.Ur!*U@?GijeNnT-Y}CTx>ien}}#*TP=.Vs_3<TuPfGշ}RT}\TɭïJU\
{Z_UsjK& >!S8њ,`>w0!5*53C).D[9WNY2q#ORψd$DԢ;RJ!eޢ}f'xצaBl$Q{'SҒ[G9dnQeDiYpzLfA޿)21%\yy({l`U*$JoO!VoC.>RWɼl6?dU0fw}0OL(g'ٚg(AQ/r2EI~uB!"D4i؋!h{ÍOoL%H<	3`"0ϒPB,;P )'l0<O G|4BOfPb@;
t=t=쭂C/|R"H`rWpeʌR
% FQ<2ٷ'&L`%ię݈DFzWծ6E=1L`3+z iҶc߮{Oo?S
S#<}{"=<<H`$;-pYfvo
f,+ͯlGhi_{SX {ɔ۞A|C
	׳oA'sQPDFdU2c3W囉&\Rgy"	+|r֔V,~@'寀aV__ΧplwkkE7o\v7$|ߑ~Hq2~7(<uID8SptR?'y'4񾣭E[</nZ%R:z[zQ)7FN%F8d^s:K%_\n~EduDI+V-3C+P@S$^mG	,$N\=SQ#V,*	j6ۢPS$%a)jXrsK:(ل~q|L#\s˯Pp=/@kr&T:5PoRV촄?|}T܂WQh-\ϋit@7E{:9C3&-}{n:i8Q8(r"Px%PBJ#wMe֊?WL(p{-$/3!_Zzq>0(E@ VL,g_"B&|;dU~?*AYMўYԦ/N~_j|_zI3iMߗ~E׿zW2W/M KXX֛9͢f|M?gY63|70@flEcdbU'B+9be+b0<A;dk+8~%`b(>0[.pzk|'d4ncc1$NXI,Bi&i͛HL2Og"4JѿIV4f˘.<̋ќ34l/?4 zƇu9AM}.UˁSSAyoCEs05DJ);~Ȋ=$zD߮5wS~3i<ʺd!yAs{oYЏ@u~=<ǎԍqF Gr|2׋^1<aKee$?o<5Cs<!Mcb~vA"M^C;%T 1{ɑ	0 ۫^t7o=+@@ ,ߞ7TH·<߶g({εHEg9~?4[+/N%d_XS*h9ylV%35T^D~oIm, ?Di9W\ށU
='7PI/"_Uɼ %Mٔ=,P&e"B88MƄyu| 2zx|ްbԑRǖ:(DТ@Auܼ;;^02NM fLuGg^#|u'+ɐ93e(o<T<<L,A)0jX+:#iCּ}shDQ"D"T=dZ8b&t+?<\&J`<(!I(D-x=RAQ2#F1Ȣڷ[U;QxnᙓՕ;Tȇg1S?)hz'DC*Ȝ5eLZr@[fYBrf-2\.lHLD({Ԓ@rxޓ%/{{^2&M$Gj[Օ7Y7[9LFA!bdz6_<QY[`9Xq{[4,oA }welOσ'@,hڼhRʴ.uOWEEM87(0m[`WǎOS>>h\Օo5&jꦮ[j57!]Iϴr_'}/oC)f?6<:0;YĘew]qR> 4_%^sCx#'QCN9XX`X/?}}3[-Xoވ>ν6ʮjv םmT-ߔWV@KᛛM
}㝤S ¼$ZSt%;]rP9{FEK
9HVAOu>Dc {ހPrER8g4~lKT{![eBƄ7@?GJ4%0θϑx D:REu1hRlT# }Q+C 9Oߢ$(;BhJ^-l_`O-QEL7mRnJ|ށ,MPs>'ĳ߽С{_x.`j' wqԚ?&rHbjg1aj7M=Ky'X+ :1	K78zB wuUс":;Kj_Ta-G}.#N?{ط;"oTIyuT\xY"W5>F{& JN&M%`3WsXP(H7"?ɉ;4yu ˚1ÿ}}Bmz:1meo^P¿FֈXto5Q7̻Jry-?P)S@0ox\sxC!6<]lCO7DNB͛lЗW	^C-+3!Mm@Q7X]b@
歹Cw5W|3]Hɿ~Z,3uWH䱣gza*wM#i8(è31=3{,JTJ4 ATMcnXoFXPg,Wao"$+|h3hKN-mffV~ZsY};Y˒|wXMK&%vU5%CsX"əaqc댹VI]8P3)nx>HkrjRAό5#Dȟ<6;;F!	zkAV&)s?u%$Oom>B>~=cZ[)g3B?@?|q6ELv7?<o \폒T%ђφg&IB1Vzұ5-e'yPI K>GJ|~4z:;fޗW>0#>|P]o"_\ɷϋn4g*LW='^ߖlA@c$uUz #Kʱ).yNttW;g8W|gF}'ls(j'}f÷mk	Bti޷ ~[WƬπ~Yqַ{Sʭ_+ފo
!Z<Z9O#8Z 3}W=-j
ދap-_A\BVm<)*Vo5$$|P.V?7]M4%mβLK(8e`'VN}|	9V
+.XYυ6)-F1pnmOnk\pK/߇	G@v+->팯;r2{&xPI%hu|GrRqb>JDB=?A<1/^/ǶԲzh[jLW%FϹV/*9S#}#ya˓=owcG!_hhpϣ<R.8d\?'pl}pQMk$0۵ >ᾥ`VLg9Xfmboa:oooa=G	kjҤ-N	`pX{s Q׻VJ272gQGߴ勸q{svN!MܞhT!Ħ&6nZ~w o>7_}@q]d.1?_}},p0o {!k|oYs]pߍhyVә?CnciwHvuWs00wmHhBmfJ:{y}&;ƈ
Vu%y3Vе>X3+sys n^E%/~7DϢ,CAZ:2ބGd09<[R·<#9̈u=߰Yt6v6}nzϷ Eib(怖1.75<߰UUr&5Ğw^oo{&o#4e)*tw-"=?¡yυ7礂?sC-e&)34.O;v~ysH#'㒣ck[6hG%D0Vnt Q̎2,r\ɬF_I=igP߰|ij2r} $0"3k+e 'd!r}ك@   :>zOy{IeFQwL=r#O#Gj!ۼZw.oJC:Ƀg V5կ);R$&PB@ eާLP_Wj	Tb?9$z3Ϳ=^IR^gB6&)SNs0=wN^d}3ǩ%ӝ+M@ZZȉCR[TAdv/
>Tsߠ:hP<eT(j)wP.*Ud	.3<Nz3T>?*L1yڭ\OsZ=
Zw#^'*^ Y!?f ʼ_l4\K-g'ZoU-}b+hB `A*{p*sFZHUwZbib[oiRUT iJCVRM/J(#jXPZA	k}D>ezۏR?4MIN0mw:~#s+kL*fb8Cn߇Kg'u¬¬#

Mh3%#0L!OZشeZ=7ZF
Ak1@qHc躟fW|͉h| p0,|*|=қ;V!X(t|oA3`	Zh--&]Lf}Ž$mByH6(yTxN?*<$7?
3h{[=Cۡ;&
R
;3/߆a~%	TxsEUȢ*`+\8R޻p:NgS󘣂	Ϙd>g8Ucj	<v"g&r7HlHz	22 lM|tnZ>p|<(?K4g!$	r7 .}ulesxmٜP
W*,5sw/K='| ->O9θvu;ޗ+}C8[g1;\~$WgK3HnaU%nOC,{Rp_r1Wsco#?rcwȍ^~8Rme
cEjI]CV	b__v Ka@ Xpl2͆J{`R`8U]KE:R CwR5SҎVǧ|!Ƨ|(\+O
Hkң:);}U>SU}~`_F9e*>pRr@(8%vCqeu6tNcnnM1ʴgОļAۃpn7vHYJ$Y.#e$2C&"0#;Đ.]+vE qAj|vBA	j Pwzw P=|?Hְ&1'0ZClP <1,hhuB{Cf/\`.PQnϑ)Ӭi{$u۩\&|
W0&T=FvI PJ2%UI6=x%`~BZOd!?WHDBMͿ"g!qcl*k԰_c@ZQ_(_sGsFf!,hTYfeFsAG_Оi+hCק6l qdLͦ5W3o70=alSX&پ~H뽻zFaN	dz6f٣TA͟RUl%XX?0mgxD`E`M"5I2o^LU;"Ǧee"eav
pTK,%y|6!x-:F1m?9z>
'͏%?:0|2SppX7JU.~~.6D`=aX>4BMW[	2`W*~&ӇJ$
7;WpӪ>}KyCHA`{|`!mϦ=~=8`PE빲e&Ab+01@B;&_qBm0EW'/Z@ʓ7ϡ<X{(ό<%\$%	3973H In
$pTQ(Q(	g{j< ԋ8	RV%K PS4Ȯs/Etj7S+U L-Xrg{;l9bgVwjX!Vڠ@jgMVb}BMvDechcQvP1lgPPʥJm!69J]ۃ@	ַ]z&3Z叇9sy:xt:S
t(
zȹEAzwQY- 5T&gqxD8o`> lmNƪ%jj12t>꡽/dSȥz,*31BF88j8T;Vd8YVGQ3ڝ{(p'k$pJd!ֶtx#Ek,kaIF	 $^v3dT,]S*sm%ME}XGyOUF6
h7Ɗ*?=U~wM3"%怲M7<ԓM%o6)lڬ8/-2Wfs5o0 y5kĬ=N NJQTP>Sx> .)&oV͏ǣ`͔Q DAk 
$v_OwOkW޷Dg5s6l}``V}*u`{<p|ػ0ӳN>{N}&y&8t![сg47zyQu(UiF[dhMTuKC9# kA԰[zd5@(/M17f5ߦ>7ƁemER5R* J8K~[vm=y^4$Hw'Nv=:s61le&&_sǿcܽ?}Z#>×7BIJe#<y"IĘeI3㻬.9vo~<l	i^gUzs:_g֓h=7C #B	<YI ZLZlТڱ|K=EOX2*<g#jJ,b1?-C8Tc#g84~	0(yE{-5w>+ާ;C8὚P/}z彚s@g8W޻PqP=	nzTY 7+L^A<	U;Co=~=$!Qh~6o}y`AL(p*8rlDQ6!{{,lD<Ð1ahyهwkEo)$%/tz
$]0An4rN&k@:Ap|!+XF&*oQ[T
P!*)Xy_UL W^oJox^iKAx5CDai3ퟰ:z͹UV}2Et'gtZ 8Wb(SuB^d)rސ4T%Cޱ buD؅ ,&O'[~+A4zKR$PdC"[2Nh8AOKͽʁ'?DNHpr_L*OA'DϿJ'MDUx2٭^cǃX3\m.KXzQʕo$}'Dp8=)Q,Y$x&M4]~R/tjDCdF#zpF-o~~+	\b"_EIoMϠ'[>F#XGe㈏jX=8`yAԌg!?<|!U'ln"aM$}s[&GBJISuAUꨊ3aA`}:(xaźD?b =9Zx6FU1Lj$fbhCK\@Lߢ?6س!b7cS6LPR5͓H9	4.m6{3fdژPZ4tNY4'm620<f2z2QvK&W&YKcp"F1N8lɛ%Kkу	0cƄV_4|}}}}}-\%ާ=ïxd鈽#H#|}".K62b.{p0b^0^P璻߈pz:@K\T/^lb!S#me_dSHH"..-$u6v dgzŊDXFxm=!I緳 ]F,7O?g3ذ=#JřyYJ҂Fo-R,eA<G=Y;E_9բnoCLF>S	
@Fgj`s'4"#2;&7cAl'Nt<H,S"MD5hD1@k YbC(
1[	p귒  Q
Y*tݩHb+Nz%'|h+o\1qS8K!fPOaSQ8Ifȟ)
	s(sK&&H @@&xxtxM gw@O6@,5QU zJ(lMaP{AO~4^8z?'MPgX0e'bbE"yY+FҭOWeШ'As 6t+*l=]kGنPYn[E/.Th(RDC	]P"ѨРA1(Pb"&0'QO"$ c0 c$~4qАkT U>gf	pO74H LJ	5N ;8r 3*N4MZ4	!MfNZ\T|0I`!vpϿHTOf͚3hޜ9C!:o6@'0# [4'$BmR4'6Àp0Nͯ/?BPMQ6	yK`pC(S	Aor5ʺRz[#"mPyzuGXP"&EXRSqЖ?@	~CohOPY?YGCC0k~pS#.m!,g#ʲ\/*A؏	o@"2fWFzW1,i~И=g`=@!yࠫY< 0Cz -9C	}va<wDCC`<jZY(Gͮ3}pb7aܞ7šm b<0la!'63>ch<w>hq?<|aC?_982"|b*j'D;3?Oy|!q@cgL/	a3w1L3\umH:)#t!:8 9~>Qz-&¿ l^vZ4	u4&`t{~M'qds^˙I{+YoA>|[uP_]099lL5!V]¬Bs	),WAs5 \;ݪp6 헡7(&J@R@ӊ@{D&L'i=x͓ܹ?z-G]pP3?2<9kkhV0w5Vuz׭Eg)3s(wv*[iY.z[2ސRFe?B0'JCCWXT!ixԧ?.&LGt[Y
ce"5M`-pS&WLmLvA{nCġ!ױppf7b 8-M^-.l5!NNR6c:(۵4Fo.~&s(rh%@^pAh9h2Gp<:OG\/ ;Wo0+LsUoC!H9ͅa8,V "\&aM	C!^W{H$xi)n'	~AkvZMM8.;;>wG۵aL߇"O|%(
Y<\N gX5\xs	/6Nz?p8DHGDF0 ň0#IIo-`QmbhۣbHo+ps\-ˑfst+*#A
9?s-a(\ȍ\Br2j栂È[Eݡ*5kܘ, AKsvv")k(Ey>'
RyVq)uA	9@Q8cV'X}0`58C9_SmX;͂@$/`@9[N,e6\kA©bOӻ]=4} ۻMꄊ7
)` YBƂ`=0#JyZ!~L-wdEMzNa	T4Qēn7{'{jxý j6M&mB9s,Z)ۄ)T(;sϖ3-k<(	#f웱on<>o}w}|b#O yh@CCCtC"RYE4vPMJz(y"0MweoZԾNOx7 C}>!Cݻxy?N/͛nKo|{l@
V#l׉XFl#,#M<>)T',-,W"~B +QHEWN<oJTzʤ@XnB6/N/^YzZ⼻y{r?
SMa%2r[֞(MnSe,)QsY8⬉3'0_'owVXy%eZRQOļ:⤔|7*NѰʰc-}AsgN ?88:Zc.mxC	精/xC Hވ1g$^$FIZ@*5>UMO*R^اK٩y L LR&0N8dBĂ!Dvq*|SJֽx+d&qۥN{	Zz8ZFn69֪mCHASEl@rh6 Z'wv!5쿢n\C;f 㥙!݅#6+
1[OBcjDcNo
UUfVqVf~Lj'f:x
z?'8*m|?Yg71?&i*L\ʹdBFt`)(Q&Q%`9O"?gIlb0?횾3q' `'e4?q7=ab'6ҜW l$eD2c558 L-3M3`!q`il	6N9/:4۱fN\nQKţZHuw]x	;Z}H5ҨՈNVÍ>FӞ{(E0<;~v{aj&ş̢&>aCk{yR7P,I{=u;hz~=tV@75P|^q~"a~`,`j/Aczd='<{x.<<cx
"|#[Fo	_ X# 򎰀jTZ6}SXЧ)d(t!QQzFq~)^~gPlD?0^'8o~'i>qZ{?V8<yjU. y$6\ޕK7-y;٦ٻ@Cm#N߻)dG1{dҶvxnk^jǃ=A9{9s5Ed5Ulމ{+,x+/Ck!Ԟ_`HZ;wb'8
Nh-њ+C1X"Z{"Z6xx4Ι>kh?3^WW	Q)	$'6gB_LW+<,tWT7o*F6V}'}w@׷Z"U*lL&fo& vo 73di54?{ymRK;NmuVZzuo%53	LoMj=4-JIwύLYKUk74urq'xԞ))f=e`pc6*\{$_0"Ev<P'YF6$!Y{y k%Ht~(mJ6\K#sCWlM9`kVI]1bKlv'Hb1/=`^K-pHV]fɪhȮ7<sP=eKX`ZlTցL
^{V")AHIk`6y{w/(P"t_nPG  Sg鉝ǝ&$v;Y&w;]6k
evنfoڰvEL0ih~aͿ67}SUZRDU߸3TnJ÷Im[o%+JMMv|c؀gOacY=eTFƒ]K@F)
r!!(Ɏ?'OcA?cCNZYLkgn6Md.5?#2*[[G}~dZO꿈oP:}W^zb\d`:&˂gqfQhDʈrT"<wh4{ *ѹ=wH/g7,xV0^	tn/!uTw"鿨Kew+e}4w4C]t]C+7]CIM>;Lu͞.>Oe(CV283;RxNE*F@珞Oϴp\'jhs݇3u<.ꔢQg:s!pQL|pA5\kd\;2#Be{GL8gP^h+
rX_[L\L=aa_˚5/T$ϰ4;ERa	 z;C/N@=!;2];~=j}1Bhdar6Vc&*C!5~nW(H?uٙ׫-jwQdhىDM] Zf7-*µ
D}gt@3w8s?D'.fPG5'qn<FOI(F?#F'?1#!ۿ/=A`W/:DSٵ;-yO$CS5~P庄$Pi!=?'7gq,9+ L$ݒ#M,u?'8*Nr"LGm?'*jwtᵒumzgpG:,Fy>g'rf?]v]:LRo*ha_	,6;Q4>sPs!|GGvvJz<B<跳vg&:{.yfbo/ܬYy<Q27E
qqe%LtoUG1ǷL?0^mjR|!$a1}>)yPۊmN*V͈_Zm#{jfj-WZ]k6~X6nZ

R<8+~N?`uE9>UKUQ;kv7྅H~RRc*a[l؛ZۻUimdvAcQ [pWg}=uS{ʡLC6oWO{sҞRcY#Ad󟺼E,Ihc X>c*b[\z8/ˈ߼3~zJX~XZ@H*d	)ZhxvXc;(B9ʾ"(oī0ꊎac| "%[?}$U6ySG 0'eQKAJqHq
$xA;Ҷ0%(
omb߷J6Yy"oAu˷3\|HwFo)H\'~0%o	)/uSQodmoYyv@MfAG΂	1=HP<NT+8jp%B`8j08,r߾\StRF\ͪ1ͪ=A;QYp+ezQߖ;1M[.K߂%?_eV#R4z5OfS[k?Jo:0s/RލPϝS;Cs# ybJWԞ%'pvd~ogdewϙI& JQK~{YDG`ؔu.DSOQ)r`Mٻk/Ur~obwH%ӑ!N;PViG{'`۷VB:
]Yv #نCP+{J RT]՟3d;	f@\lI$Hd1TKQq>O=euY6$k]Y2eao/zzr,)&ůS\ Jʊ8
}8/+{g4$Cw& VU27-e΄W&'KsNre;)(Q	@%J(1ECyNV_#+GZLP^_DL6GbdkЕ$GGLRH.*1z]d\hŔHoL?	1UrB7$+ZO.4 B&ޘF1{cPgoL^#2> Όx6k >ܐ?7LxxOXz
[qJl/草da ?DFxU 0(mMr'69h$@[Yr)xjK4p$_l>{	6ȦuV528Xطш11~Tno-~@=;A^ߣ@?-{()@7){	OYzHߌEK`k|	K0C&π)PE,Sx% Af1]eAܖy(8@"ȝn Q0Jb
J0Ek-;!,B2~i"Y]:v~VyCpxW@8߮	Ln-1j6D/=rjQ7-yHmG	H2|rㄣT ehZ%BQT-gUڂ۾_)rmoz.SzP |xr#삠hh҈l	N^gvTСW$zix7+=*᪌3n".ʠ0&J[DQ]^<]\[?[EDZTbO ?Q?["n"YcsgZ}'_GO\^3}qIaUA  >W݊)}pK $\Jpձ%[_zuR2ՑӔyb9av"04õ-"?窏yD>FZvv.`%B&OhHK%Dt=\1PT.ժq!5I5ۊ@Ax+@VwS$:aZ >߆fR=r-},W/*/V}[~'FO=1nY<OS!!BEH|#.@<CJ"((xse"⟽04!.&qAߏ(ąђP/k%M?zBAjIw.B@dtQb!Y]WyF~/.{aG0ӕ!Y-Z3,O/{bic{1|ۑveVێ!%Jfd}X!dɘ
xl	hv&j.Yc*ԭnT|ۙ2}I\1$|YS-wN6be;
:{6^"ŰbN$ӷ/F}PK3`:Zu2ˊϖ.	7<XV{RG"YQ߅~&V>5MzAz|Y?̌6b
0ev#aeէ|t%Z1bƊۇmsS?A( KVꖥ1`XgX tuY'g= xy7;!*WK/t[~,꿵_nEpWbw5l]b.\~8R7g]:$.	vE[e'2V	kɒ>p!YH#u化+B(+bfɖ(1cB(z霽3DC<5i0^`:$>6:W$gd{xxssc?'Js	~9~9+?E{-c7]XbB6?xIW޽Lḁ3&P>޼Zƪ,Jk XŋWK4z
>YPT|Ȱ̒Y v&p֟tR%~EqI1,0e酵	%oҢ{0cm}M"Zo93|K!MqеJ ʀ8'w
w#}*qfʆʚV_m"90aMp<8K7vۧ~Au~ӥ~SZE5h~3dJR׍JKI AE2*,=]
ON&xVaK貽ݤQ"1Y87jGbFqO,*+)fR<T.|BZTXB(PZDbb23b[.~wJ%-FoJwbK)dľ -<m׬a~+"\SMRwumuȸj]\2Mk\ʍVsGj4 
0o5xAVZEe&ϔ*ǂ}d?IY(Vo2b#ݛbtkQ=zN<<k\GЀqfJh#qɱIg@u:/cUա;|pF FeWTVRAy_ۀ
Am#aUEg< gȤГ[͘^Cˍ/_T \okb&CYUw<L]ŬT䯀&lMbKbn{#Ns@&)]@+amg:A>Oʶ3K[f
38R}Fv!.~N)*!	D5}$_&It^+JfT3%E`xjr6h>VSTfZB5;duzGʂ(aC"j EQVTrjl-,,w`ye:Kl.c٬0߅2N+,\!:,>S#qj(rl$E
eBdܐTs(!˨8-ȒMZnȅ.-*vBz8Ye3^FJd|I"opH˶@R4Ԉl4(N"&N[9E"w8휫ιivH',7o ER&ʙߢn"3腼d*fN9@]CjL9p_}ͩ˜PL{CtY 0KH>| ylbAB^$^&JxDį&f.8t6ӡyDalÚlC:dyVQAdEC0A	)
klN 'Zu\{8!!oB@37P`&Ss<C0{Q!F/C[3:P ßZ,A}d2gV@/ye<I/	o05e8vQt]⮙nՅo0Tlf"T-epgҊm|,>q@ShqRɌ+gv'5Pb81bb
g!MBSZJB!Ea=柭?b//!-%IP)00Hs$`-&Gb[%"0H"~2#oXlէDV?m3r7Zbc,f7jz ucZo~5/\^( @.g$eTgȟGL]9,b6ݦo/ޣ	Kx9}	^&N5ӿ
T܄`AA}|.amV_-`!dn$V:mdOg[xШh&	5`asȚ@*ϢgɂR,H\paW[S[@twd Kl,Yfs'O APr6O:7s,yTIA֩AK/<zH!8H2PJoҶM(rS!#)M6's*ll|#xp6eqGZSVnsD%%F!ǤaRsYNQv4hY}e mVEMYxƪU{ڻ.HzD\Ak-gvZwc`6#:NC2=a$=w<J=z:Blf盷ܑc|yP
TcՓrt&y>;6~/ޠK?G*G%۝qLqqqbs9_.bσG׏(%sDra\7(vQo<@'ҳ[oc߷s-j~o{m{m[]li>bvWi	3mh]9>Onl*)⹑>w)mVi:_mj3܁ۖ׼gm2Zcl(ۉW+"GP*r8-hX,8a)re};|ߛф3	= x
֭CV[v0$Gz^c=yە4yB\.p?w;k?*GO!R]`u?BRy!ŎVO]|<P6Wco-*RƎw`TX|K1|d?:ǼzKOF8E
*pCvg(5<"=	O̎-cV 6蹄"<[Mܻ跻դ  vt;
 kmv]Zqop/}Kq@H4e>J&NGR@OR"8<9ǆhPoGz_2"FyQU&))N8**LI<ؔ,nAiXiLYae:QV?hwtQ\US$J'2yձ?pm3#A`TmuV{PpVjJygjߛ\T{	]mjokmV58Y<7hOL4|`>C|QDsiIwc7Z4޷ab6zy(lWۭnOځo3ك[w&-D	"ڶ[	hܺ<pƦnMۦ&T(3[X?w$np73<i^+>FcBBxI`53!=Bμ_c6>/;LK>)ڋ,7a!;,̎HX+uzK;f?=뭀yߎ}|mϜԳrSTEG	G(!ޮ1R?u\VfECmYuюU{S^Wg.	T3UǷ=6d8rJ(h3D
Ly|]p۔"/exRAp[$=<O"HdW~!᮴.ܑGY7}j!(b54Gte>ӱcN෩*D(S;:	>"zGѪx>ϭI"q|T_*4#Ҭfw([Ag-N8N~g (<el*G9IEpXGG\,FHo#=?!+H ?AS.9*3R㋬;ZMVTBOHJG/t+$"Sff   C @xT4̲{IB43D( B        e^/d6<䱐\<9rU6w21۵v-iȓAl~L
+&~(K0DaHgÞ#×%vb|̉vLE-nX= <ͫR}?wraxF3R[Js^NzO.*eO}Jd0G8+vmpQ`rmvfF]
zp	ר#CJOLppIc"D"Up{OK܏2X8ѐؚ(:
U`t!gKa#z=wNҋ!zYF[q*[}\}znj\(y:Jzxs_>BO4a*#yKl1C?JnS7""c lq\"Ȁ6Jb+!yA6-ahX.Sߧ骞Vb |YXHs ʹhXjgtlb-Օ ڨf8'\+//FA*iNQO~iS	arQo@4Jsv_,Lb-)NzЙ4Lޣu:LvߨD9>P:WMgN'}dz}DiY3eJWb	?[RONx	"9qK.ObCL(֓ѣ4'b$ΘYB#j<i,Op?)#FIQS='0L{/W|zo, D;̞hy*>nuTⶖDIu^`dI(atdYP&V%BڡƎ`Ee5NW@k\)Ԑtl:O;`)@๮T3Ttàq,'	gD(o
)R~Վ؎@#@T}.K([$#ILu4?f{ϝtC⒵)٥t	չR,FT?oi?*.rZ裁}xU+lGjhK/V88:l3QF*fRv7MFHȋZ%_FHjqnEHm1qSY\0C0v<ho}`8NsǺ^<+Y@rIz83꺄yǎK8`?DNcǣ@pރTɘUPLtd6|:11˩LW
%S9,"'X7C͒1W]w6J">^kI؍
C~W3e<˭lFգϑt::u}&5#d#OUӦޅiO{ >;7CՀ#G<΅;+)>G;ԑAR
sŞ^oDňjPkbhjDLfDy:HG]sL'sH|0%};xTH$E\]l̀C.*/íRpB=FN'cFϒjQط$̻0BhDڦ&1S;fAWU	=
6cI!K
x"_D
#	Q 	AqYI'-dJtb(ԁ)[TLfGIr۳%5,,ue1e}:Qᙺ`>G﯇ZF՛yvᬄ5VƎ٫ Ћr+2.Ј
HL,ORJ[T=1i=9٢79aՁ뇨jn4H&\eh>ur@CNgnP˨4;Dx:v
8vER?={u揄=Gr,iM,}]+ِbsmʋ	$)N!EEx8/9"(v.
a|6czu=~"J0_r%mD`bG 	{o6:_
H^gVzz{\ބK'f*3A=+so[3ոnBK~+TB%PTiR.ǑrxaAED*OC~fKM^\ғ崵0uMX ^ʛgaE1)L1i`	]+LnBHc㰐$4x9Ĕ?,n@+k>q#JDź:	3	+	嗴*J0#Kp{UCw˼3IW#"#]Oޖ~S?TkȚ*DvfF.#bʹ<~͆,ClIZ'H9+%FΡҠgC0(Rng%Poc$XvWmO0ؗu#a7~͡UM
:eolg*BRB9}ʆ~:ˠC?p1BSf]o`Q*dHH8́sr`M5S<P0+,"@!	q&n>|a2"匫_G.S}1`nhN;=
ĂJ6堃.KF{7JU$,_as/ +K\U!J}/!^OMsܡl	\KkEpn{wN0ͫ9X(vB9߳<kt AN`0d1W\؟ʘCI9N^];%;l5V18E`%ZwrǓRS,DzӥπKJ-2ͬ I!cL~": /Ss#><	(Q;LDW>ˎ*e
4/@fuM)LZʟvh  dd_bh
]
BG贩,9
s #A`*L%IEk=&'D3|kYACbnKv.}m7=JzW?=MO|.bhPьONF&ڄwxwg?ζzrC9T*tkKrS
Q9+ѿ1ao'+bL8-3>.4N4hvw)]UoM\"Rp^Sn6|$lwlYc)E)|QoMXYa8PQ2gRWZrS>3 AkUf^DMaa:us'Ѭ:wjϠRlWS_cGVA3$ei+4y	eVOȗ;NY]D߮Nep췫iMR&&פXG:Pz^u#N·Q#")8]s8܋FgQ!Ӯ31QFK=lR!و||ێJ-V$FSv]ٌI)\d& QW؎dZ:
M>F9$]Ćh-XVF"8^V@178SO{ρ^1.F22]Oup*s
XTteذ٥!&rj[-G<T@Q?ߢ~lSC}q4WJ]hIQ|vtM!OkEE©a+lmܗBZ7,FFjaI\A4+1"~M[zڒ3}jKHU%bger%c5nh}HVBq;We-;hQ26pn30;'#?oȈHr9J ƕ^]ZM۰(Hb,xG1m"D됅䷽Y7Z55<ނ$jx[![1k!kRHZRnJ;"wtՆ;knD/1\޺	]||iT9|S|ɭl u+xMirpY0gJ|OJr\Kpե|-)|P;C9)ly6JјfrKLJChNce:ܺHL0\D:2cvC?T5v'gDOmZpA7%n-UGn8.6Q!̡'LG&̤f(+}"]2޻׆4G`Qs{À n+HJ6ZlA51u?ː;qT%jt5c:#QTJϢŒ(ZFK;d)PG 1Pk>[V6E<W(f(WBn>(WU,	QefcXڛObh/(⑾YgkZ/مwCbT2w_Ϳ@x8!?QDGeP|6p^;p9$h\Ԁ`Xg᧎eR4$
Eg|4	.j#;Rpf8u_72| #0qMTDFFVay1OFH=%{6G2:= ]Ks"|(2z|X*0[*@JrQe|j۝PU9ޫKK6ZP8ia "Og k|Mϊ(3S$,m
*8Z@W;o?44B/c9VjL;.=BO|+ww=AvV6Q)l`t7hCJV?</#H@vq.cIa	2h:;"d@Rei1 /ſޗހq~U:NS=
#IƼ?XzLXXKY,K+.Ħq4t+%ᰣ_<a$%,jnJ-ܧpoBM 3';ূKMYjHYS+RSnż%<MB(B@+t#^&VB AliZ Ow+UG(#IֆAp~.Wtō>G	S[Fj2s1w(Gۿ"0_8>$g KqXs	zrOc \Fî7n4NǺUΕ	NWۑmWڈf:q:l,?oE9ѓ}pݗq(^Ȫԅ~ǫz|cJShndKE+*MX˦*F}ɥY?[:NjBGU}b~Q(Dl͂s_n !L+HB;zrJ©J0X=Wq;`8Njؐ1
}I'>6f'CR*&76ⴢ>gȶ)x{r,fRN5[~`4ibSpy.tIQXEr[#*R^P`'k!;*[jTx͕Ê쁋+^o⎪s怺N
ȩ6HVl_s;Y_+zϨ[top|n!0qU| 
Fگȭ"e1tK׽'R;vķ]vC3H˰?`2.҈fGOR_d5B.^eWXgj),݀P.[fqPheo8w10t2]z5=-bU|R{z `Z|8PUfI3G~f|Jj<Ԫ-
M. KDQZ}DFm!C+`إ;pf.#^f2¾*WQB?VW>)&@ēչ't$]=RfUZ@K,cJS>e)]"#a:`[I6XgO#l+iBs0֩w!(v'!erW*R+jW٤OAM)pE*Hb~M:&&Fg6
?1LTQn9йfűB
\5D}	r/^~̕}t e	WCL.O}sq%e
SMZt&==;zD|]; A:	4hQXh><J
+}bȿ	'ʹE*lO+/NiJ;zSo4yDlty[lY; ?aP/M8Xfư%E.E/=(4Bf0j3b-BVN1Os VJ cnGv#Bq|'uDr.S9'ELPL%3xH|#>HWխ+K^r^D{&/uI@8LF-.Tߟ-ծE *WC3 Ű41l Q%Q'$B̒l¿Ȑ㺍%LIsr_2/Smx46*i&iOÚ*n LrNx&ϱ!"}& oa .n^ߘ"ӲuZXC&06SI/kpR^,&!^8@NWV|hL%0
^mDΘ'~k	/h%XR$?VBʞBlXZ}A_L*l7o<GxYc'6hQ|cVVZP:2.Z/D;f%YTJz~́S	q!g-V(
UlyWd`06$q!dKսVқtmM8 ;y`ΚZW+|;Z[Cq\o&yNljׂ:{0tf	NDRbU 1o2kFJe ;)_HG$` }AІ` =a'xo?*ŀ/pľ֥I@ZVM}I?I 1&yťt坎Og[b3]Z$Q)C'$6,D*}.˝ !i2P,AX,Z]A؃n]k(5M^]F\@oc~rt;t|Eedv	0}#B_1o\VWJ"	5v5>g^6kCrkkt[H똟|0{TXjҒA(pQݶD1 2Y ᐾҳ*Jc{̠-Ef/>J?hmj߻xȾ94*	A'ݸϰ[A74r5&!p8+	xLʀ+ɚdŹ6ޅ;0f"glK.	8$)I&j&UYO1ܟ[ \%Ioc7d{&.cxZ`ߗu0)j(VDA%;,:쇁I=^q]'o?Ҷj(Q'`\
asљV<1_=h'x.P4JhJ=q 7=ņ}"ՑoZx⻩݃r*;?It$ǶE 03ݦUǰޢs^ug`ޖ./|y5aA0b_\y=%̘yTz30~œGvgU,zD:R ʎe^sP!#$Y0nd>-:Dy@/JGveAP`sѶ~,BÝ+3
	D93<tSmi'Ƕ(|Bݙ(K ]YhlwIVho4fub6~') `ID1u*b(PC!>hA<XtO
I'0	<-t8X䂈L΋:ס}B=	Ƈ	ÌFѭ!Y40ODykcPv8)k72u1-=N,v?)|i^ʭV6ІrD~]{SgkҢ|{T^`䧃%l%Aۍ^:Qy8n(>~MĭMXD#[jPט
=)Aaht}>c;9]$uy&hpO
\X̺(쑞-S:Pm6h?JJi3S`"~H5Ot־@uo`bMkSN9c[:l"&JPmp)/ckٛɠǬ`}5!ZsYZ9 iȒ$'(62("ne#
Nx᷆kT}XdDPG]<&!SڜL"[j%*wiPb-Or5CͪvliNɢ:ǶY
GB8rW2B(PVlܯL, Ps.HmHN=͓;z;d?;ϨWŒ5`8?N籾912M9,;wg匿
Fu
;!#raȟ2O#箱7Kt_=Yo9T<dE=0)7z7hp*x pt0¢m*Km&kq0X<xRX4D]Q="[=5x,\k{x<86&$QAh}m ߻rM6K7Iv%# nd{ZCǮ
+S=IFLr^s|"ˌ'.=u0afA.|H zd9aǃqImTPcW,N5f/Ϝa'x1[C-^s0p/0Dfd.NgagY$Rfj^ݨ/'h_ȗX;TVTM/ŶK@s-S)b q*GF XsE߲^KwxIR X$E ^ײ(-:G@<RM#Vwg̪0̍XW[|IpV8&v\I`d"
X.j92DЇ{Z}/G~B7R
{"j~rŚ"LF#ChIu^Q`8*	-)P`B,T߹hE2zBW|Wh>>[]@* Kr<uun##g9>27 qF;MDP~cńӅ&	vrVb_w!mГ2c7&fi|8zrn|ѭl륰KTߑRP5鼺&mKYbI~
׸)ExqhArc3U`CilsMD!NR\8b4p!`]h|;]ƫn;o >@JJur!NB=W:Bq)<WܞNh'E%k
&e9\\RMδa$+яH~"
ͥh<K)ݿ|tTnq7}<x˚$<*n{YodIB|^ı\R<En8|on$H]M!na]rMKLݤjiA|,أt+7aɋ8 ;D(/yFߔ()8'?K2CHZ#W֭	&gTejo*cB{Uak!j[4YSʁx.>Q(u͌ڄJ*Tq
kF=K<w*ܞB/aB+)S_}5g@o39LCS=ސH+\bL[/1`# pL\9Z6k8Ո(ng$'1 p֋S]8ȆNxGNR#rtU*'UbUzNubR"~b%|b%vJgې, J¬.lUNMC*Ԋɔ_,DcZ97T(v8Wr%~U&":|a2 `_Lmf,pSSi}O^,)KD&%	;Yū82ɪ6sfփ>)>lkL$H
5	-֛wq؆U- ֑TY5hޟgğsԒSP91HdȌ4s's693
;˕2^#3泋]ڪX	kr)qp'|&WR	 	$VKߔ:TSp!o>1u6޺XM4+KL'w)4??#T_dI+7ǽ1C`9ɀ%+cݿhpd#d؂(ZĜ
̮Xqٌ =XjMG&x \sved[1r!?	cURpAyABcD/KGi"xˡ[ZGm=4z,u}uxr%`Ɔ0VFa8IiŶAH8~7t(.1h5LZ+_F~,H=ND5^t6@Χȳ	 .vMfYIa9JG9Kxݿag0"q<x9Ev넕JTi=uZNer> csI|gGv(Ŏ#:$3葐Ltڄ`'9҄8{VfA͈t
-!fFjp5
M}RNx8,/2Er@N ,e1" sa:_X"y#LCPuS6+y+tK_?0' #u%͑ݒ?qlR\o}Yd6ov"^_w	/^Ȁ`_Ǩ 2xIlWkG+WwЃ~q¶鞃wF'n-ZiyxlB9nJx/-VbS9HhҴI.~
Zxm6=Ӏivm4*0d{WVES&oTu56ՃZhp$yXٺ+I=*Cx~>6fIL:J|5=yVF~	>5\\_Қ Ԭc!sR92/>5's6G 6(:5$R"qA[p>S35h@/$/Sx`~kGxXzevwUZʣ ee"QH5b z|#Pxm|lnlS'@d^8D[tCd*^YD(vr[6v-k[>RCMĆMf}y~%b^3*
i@!4|,X#DSpTUJH'NDKk+\5F|4z|zԞE哆;QRCFyΰPq$TWebWaRj 꼫!>_G
G 
%vSϔVIՍ9Eu8VÖA0\ѐ&6'>~IK=XhHun8RFyPd[oWH KJ>0:aѐ' MOE~81c> xW.'Ȣ[8w@.C㷅|C 3-F*eVuE/
mE	BjvT+'Qwa12مqi=pM~2Ãȵ.7u"rqؖqc!%SWF#933\8%Y1mnLZ^b]{%vi<.Nb&OHo{].Ћ}\s%$<"dyݠxHjT׾-=I(>wUYeOR?aob}Bl:<AˏJӝC|l>&>n93ckPH|~A MeDP\<{Gg{떒ϖu=Kx^S](bkw
۝&9&p_Ǩ(_S*)r4NOn/m yIz\ofT
v,|A)ͧ[0C4W@uTuWCG+s(8"WOm0Dx'Ы#K
4G@K}&;_橞,	yr8	H@ͻ0zERNf	r{e;vt\FҺ", 55zvk]PTU.\}Sk[	jտ(&itp}zˊ~71	Qsi[8;}F+ǶGM1X~Ml$GGy1Њ[8;y#	İ}Lѳ̊ZѐA[p<GGE߽+D=S9?EFBy51,;"[άpy`6_'yT#J*("FzqՎ>n+XJF$6^p~e+meز87#L .-$?.eL񝡮`W\zaҷSJ"wbP	੢grFX>O	S\Y~H|dl|9 u9ʑ1Xሄ`Q2H9񐹲üE0=WxC̪k$%wXAP6kTb;ݻĳf&IxJ	)n7bFH<klNS,ԟQE%=aK!'>?6Z(˼	˖$ī-JQ FXenk4ٸ¾s71ӳPt0k*	M({vǘ+l*<BLV1#6mlDfe	0GO3:ÏONpkEjmP9g|$TZ1:zB1)䍓w
iJ{#mv&2D<n<!8%!n-Cy}`oC+A`Z$1jyJym
XM7_܄	Fn躼h26F6%4٥J>f><	O1C9(m|#Ӥ
w\7J ًQ4;@(K8}|^x֥ش=MMC.xr͘>$RrzQtمE[=Cς/hYy)Xx qto 8t෱M7.aEChn7%ArrxeNLK	}m4ĹTjZ^xKeUKUByWVd=IꕟL"p@K^eV(FcvĄo'׼l/0'hIL5m{?|pK:{hx..DY"#4RkW#B%SqcF,9:.@RղsKp"q\lߟ%ʩ<2*ɮ,J6?jm>Ǔ'FHb\ILOQQ6|D,q4qYA#q!H}ʼ1ش@vY7ag֓pKxcVQ5kV y=A-A𭑊a
>PZ[1wvda8/H5G WY1N?g1@$p8,FP,$|[#;e\?C#ԉ+C'cfB7]B~W3dY{U0mHMkXJwgFO[ݯqb@4RJ-1&+1ᣩ)bѶV\4jO Nf*M̷qȄC/mgFbLZॆ.11g8KG	Bf8KC'':vu_5ҭn2I_\'F'(II.8ϱ۲,ܸLsAW{C#Ǣ 9- >#uЈt(r`vjgf(0u)s;uof$z&"(q+PȧA̡5@[8$,!8ե>Nf3H@BYu ,O7p+3 ctݢy`%Gu(Byyr!T.
B*iF^M@-/~,סZ'i0:0lw[鋆c5ѺCKѧMP*r
q(+l4Ԡzռx!]W3]-rڼ_r?Pt7E+󆹯=XcEr7nSzHf`h41m0J[j,%2diN{Xiq`"}T5a"p%Nl,l
0oԼ'G!y:([{~xQ˵},@'oPs17ʈ=6]BʎJ<$;.o:3+$O+:+[NWo	U~*5v zɷ8h
2Hvp-ti~%tvچR'
TWǯ[7jǟ
j|mb3fZ:!h;tGݞ-N'5CÉ	Ҋn#9RZB#0[R}aې,O;ʅىVw4h	c&C٘	2G.^y@ϕd_J>x:NUi3Hݞ-Q*y1(>^_G4Qyʹ7gDkDIxsc%$BߖkF1Qʧ'jX<s왐k~m:qbmg+d7L2"·ۄmIY7ŻF7A"jRPJQ}3dTm^WöԸ*YgmT/0GX-m"[AHh"s~5t N681^*}",$Xmhr' |z굝fGSrC^$_Fml`0XlM}j6.v$ tb:wȤbź@Ziiۍ1? &vBΡWf<_.:Z\|kۖq	CJs	ȳX4ѝ<D%iuP/`- RIw_ڐ{AE]]JQ.5<@ciV`Z8W~`f[=h)0LA;26EAuPa4Zh{HB>3TYTOs,t%
9x> [c+_qFSLx/s'^*s֌b&ufbO' jq5$CXho`0<`|6ʹZpǾTIo%m"CIE!h1`Xq<q߱/8dm3V"ʿTV-? o.y00-h:`6Ȗ "2ݢ'2Fϊｾ672D !G\Hw&E3^L8&XW"UȲ6-I;Dr:i}sG?},cmmG̋`9<oEKbCƪ֭yV!x J 	G'"p
 8DD0"u4eFpq &Zڨs)R'ٮCWVЅjTBmW.FY*~[[w1jW;p#=Bm|,TǲUo0+B:RbŘ9cW?S1ƮȮA6p!#5c	oVAxj.Ky_D
=a9ULs ̣Oml\0>d$P!hy%x4'*{G*JY:7^^E#edwjD@^>DZMȔ%PN&\KפaQ3Lldv>N#`hoV$uFŕ,aQ1l0DbiQS ;>GT͹hnG[/(GjnR|9\{Cx,gq/T  PcZaAu(if}wmG0Y66o-Hb=~ ^i4b*'l#lz~O9>x7nr1s-\K1:у
I2h^v+EܦD7{MM2!ܥ	j⟠3ڹ}=y7JKߒ[}3.Ej=(Kip[*-J" 
Y@A.k⽷Mpxnu/CVm`*Y8Nz;>සZT!t x89*%rWFGjy1WJXmcNq/.0N}_`v*/ HpLPr*Atxw)$^8Fcr|<k
':~?ssLh.)p#ESɤx29Ih+ڂa	_$`+] Z{#ss-?'ۗ>{ϣP2g"YbW
+/PݲN~i4h@ 5uq(hS;@ɽF5!,B ^%FCDd=9>-^mLVǋHKTz@&6ЧRSD"xL}EBmOL+gU97ײ[Ep4!UCz7?zî&CsJfVǬ,idkT%4C3gZ|⒂eSxIŘ|cB1\OO!ש-9 &[#Tĉ@/bE$83peQTߌm\4h,#eZMlp*% h?n"C*ʰr FD:
8uA%g@uM1vb;}g#4%0u.]ZRy=Y! .N"c<\/1)C)a6mf$m_Fixwrb(p6>ngeCgxЋv=/| ud	ר`̼wOm	Do8ANl/`lx25dpO֍׶iQWz)nh(ONcfL1FfH:7q˥,}r3@BZ{qF%sw)== %G3aV<OWf]2!~f8,#cϓ%iS>9^Rq)f>@8Ch-ۅ )`P*JyR\_V>7fβ;dV:F01t8l.mzRO8j0y}-S{+Hp_z^@~c ,go2QnOp	ְyKyUBh,ONb(6ԈHX_>H^͜7}DUjGc:E'q]PYdK@{$dWj@-~XTBQL#w#U!CW/YrW)46^`-=ɉ,1@z* >̒RnC6&p%fR@a8Iѧ1%C.mSQN1bP%bZ*,?4\Pࢳo9#n6JCS̄=J8'H3'~&
$ȡcBP;&"f+EFx1,G7G[dhB1 9hr4'3"w䂝vRf>-CM N.DU"?4#;_U2іMXdʿr1ZǏ/XP]	N=vwl|/9v_[jƷ,FGxS$P,Yb0G[C1&EŪޢ\%\gL
0ߕEuK{1yvïMr=Qh&f ;qY\0Ex֔吂.|8	,l`j++N`
 $-@ +dUfma!oQO@S9O
ŝSc #@g"#Ljy	N=,4-78ړ#Z1^kGbʧuh@ilp8j!\o]<r! ^)琶bg9`;hA 8DYB;CV-2NUI_2Xi>Å4-ۀʦTadM;_d{-$;9MsT 	N6BXgweyE"1L( ~m4HVВ  y'ITJg[DR2IG@	!&n@Zn ?	񭂍uVBፕ \$y^Y,s~D J/yk-#(8ZQט_D	q^	A%\F(6؋aY:p0ArQTrZ c*~P+ԠEIM.w` 'BD&Ȇ1rC^V0{+L^>`xr~:QKCt;)C# c #btR>tY-58%+߯6}C pjw6ΨC~2x<B0%RAl2QѤSHɐZI2=K
D2USӹ(ϫvy_ᢐ2녉1`ɏsᢈ@Z:̝)*+$#\r7RW>Q,6ͅ<O33=YHF-8(y:[u܋c\=L/cn# naiJip8p.4wzVqSRsw,WZ)v<`{0?1.{esܬ{	$HҷsYz]U"_6+/miCJ)[}</ʲ'\#7%Ҽ8DsRg%.uԚ8g:f#ƽXW:y8)G89
f(~SwW{Q4\W37Ȧ
&IŴ/ǷϤVE_>l}ysQN*b{ȩA3SFrd-`C)xʿuC\~b3byg#|JjuwA	(I>5<lɀ8"aǫol}x	N1K0aiYUTll_4m5&lnA߅7jlK	\BL`&j>=Q`OoζJ>$UTXd}P҇eRB8OMXq "T1u[zR*ZY7d A~O/7d*]Vyc8I)H&D&WrN }1Ktb3
!B1cKkc1Ͻ±O'"7E立?t,	h
$)U$$e("T^)=@O2t4~>[$JS;լY`y&@,KPAHc+3*=x^
QeHm&#ckf~ͪV+E	&8ePK,
Z[܃Yx4OJj<$E
/>Ɏ*cx3OI-vLHvVx\>C6+HʥL+=^Xe8q!|-#{JbpYRۿ/ނ7y>>j8=2VM-vF>`((-L6Ԉ"l"Bn{z/KwuTDy$[\@>i tšEi+x.s?$l:%R$(Md<"ȿXMgB}!h"_]ȶ^paMf>l\;=`cnCq5ŵOXn*jq:4b?o1V:'t9giH2$PI0.&armLWŝ@ptUEvheRd[:3jZ5_pEUwacYHLcr!ScB&Y-Էp8+p.*S(cdxT5	@w(x*aE]'VAMo-T^	liĬ
eJF4dA-,#Ԫ_&ڦƃzȋrF&	i$ƀ!E̕G'ʔZDUo9#d{l=6Clm?k$R"J颕'KXN<L	FT7Q;풑uCpR} ;#vqN&~ۅ6V?޹IlA8Diu45n7ug~Ün'FZV./ vYH臆M:}I"Δq'Bã) Q	'þ#t:3ݫX,\0Q%r2#scAj]7Cnbl:'lEZO8A9\S^lP%]N	bjP$rеd;]1XZ$azcJF+ڮ~ÙYwy=A:4@?뮈EtkӞ*N?UĤH 8Suo@Ac%GRsYMZ0Ø6^h,<ǫYze%9ȪϨYn_ȖUHU03A፶}ş7"I<EʒP	?8"iUjK%`~v%0IHR!ِ8{Dm+Y;Oǲ-w0İU"Xav25@7IJ
`
 m<D]EO:A#U=7TtT/WaDFD̅I2RFPA*MSaSWMWZͽ!%[C㺇]HPhG։,7U\0TqVSq1ރѹG	qD*SF|^yigW{ăzw,y[3pX\*Wĵ~`-ӬTPN,jDfvV17.og<CIxnxѺ{z!@,2L|}&	7PrymvIPq
dDV,mJL?D_m[i,z1˵C;w!\#\UafM7ig*e
wF	W,MaXvI	vR!5+N3 aE`P@Xqvq>E7]WnhqJ7$aGqJZh.P*h{T'\x'J|(9D)@n8рT_ܒC>L;Ss1؊9f#?hP.,D	7ka
?@7YoXT%! Kk1܌9s\Iq
Se#jFCݦvtрi#836<;hŘ7)mhe=AtPuV?ZV薭Vv4>UD\J$"Ʉ<CguX1~z(HrRZ\>wj v]ND0/킖`nhGE0<=T+
頴!stLY8d)sa7FWqe*R440f..9N~֗3/i%SH[OϒdM\ce)VI{Kh_]\'4_HQr}b4FR]MCp
&s)sc&,ЩpIS)Z<KuPl
҃nF:$m~j6)LBj1sk dQgmخΤG	M*vaxru	U_^-H<l͛⌒.C6l(3FAd{HfbۧqE8+42NvTM]JTk*ZdVf> 9FWDz2NRe N ~އݚCtn$9`/TnoK H}2.V=%-,h
ݏx0Si(mA_V_t?umݍ=} ̋=J㜥A݋ʊ!\ 9]	o4:.b!KWNet%G![r!32^=06w(Xvh\.u\x4.Q"Ƨ$FJN5p@t&5뱫V76TLlCwyFcёG6hډXG2VFq)Gk6.\/
(ѻT.WK_?:)PP>q包 !3w$ݪRnU]i9jJ7v0#:2DRfe5?8=%?a}f)-EOm=!>sQxR5GDo&˼{/e
88-zv>'[C5sW!5i@ŕU<< $ O,RQ	r BK6uD[|x{,/Qy"yH 1N>hfBv~p	=Ax$R :hy|ɒz
77m5*@mcȏd0_锝lLU[(XyS[L*Lû=guI`l}+ !}Yë=\BL!SX=<X~I"G؏8(%sPYw
d:fii-piM\prd?Ʀ	KaR(I茡A &C$sc
FTzW-4QW
:1[KpjuZEV!*[c~locscrbFIq12caNtO\Ol=qLL%1^?1?ht18a"++c^9gVd{m`Eš5`kxRÑ9
k0b|v^װddZJYac{!IX/I7e^XDÅ{[2GW}N`,@*2jJ>4	8:0|E)u}t}n8>1!ˀ$0?Ǐux͇B]%#F/n鿄߉ םJrld;QD-u7o@Fށt,l'Q2&8V6y͇5ߍ5Ob+hL t G{"4e+˅0xgom?]9MAPguG$y7Mh=bT	e!/I9P$(ٿ*cDXH7%{U#F5tW`ڍq$Dz-4v؍4h2-3/M	!(@PPd(
ڈ+#FFlMW,Exeec1;1-iR4JE&.p4kiشk5MVM[q6"6$
#yVdfUmfKY<7svKTE,CBuw&-iG+<sz2fGF5Bhe
.
g]3(dSN̤SuNr>r?uԴ,,k6tt*%MyC,%)SdRy`)J,T7,\8'܈;lkĆ!?9`#89'J1Ւ!݌fEC^TiK8z@%Ѯ
Q7ިHynw풻АѠbz%vmYh4qd,,\M >rX?Rd!4Eyےk(ZʯcCspHIBFRRl+,9ϯMV> vvCxկfkde
@JKJ*.VFG_M	_@A)&Xj Jy&V'6)Դb?vSf6i3ym5h%n}^͟!5^㟭.vN;i/Ƥф}aHI#]B6Ï ,On /?/@=p0 C0ii <@0OfjԄyV@?B~4?gbtIg!k䟕 U[:Y%`q#D$QI4鸡5EDt$@od5"37+"P'$G{KȫYw(q8J>"F0_Li2 ;$gpԑ&3yؕͮQ!SLXEA)F>d$0_ݿ33~`=$x};@$I݉'D
Fn4
J$X5zT?AX)ȬIGg	<<00ǳYM۠q<TpETýn"g|]to_n>"f'NhTM 8v8k5jZ pP4}gU:
1.67@m.[bp_袁EW~_w!M+psd]8b\)ٹcRgP!nkFJ3cck(Y~GekG=1Rve$30%7
u@fK[WbuŢilXJip PSSEߴpCwMM+H/S)PQ
[^͌(	c;Gà-R0%l-}p[}Kwtm[Gܼti@Q 1}~6Їwt,7}mlCDR"5Eԭoh7M{A\LC%B$Zy}CANR[mt۴-~
m:[xlkkE[MXZNYD?=4 W*oh_,\Sގ\syzq8LڡÄo`HA5UyUM⯮n+qSK՚vFQ0a^ѕdSy),Kتl_FKV]`D[ld0~/iU-= Ɵ)&2SIJ<ΰi1Nە}l[STxۙたNo:5@j$D?5Nf0_ƠJ3"/Hȋ{-4.~:Vi[Na*ؗ6aUiQg},it\2qHt+Askgz0HXǑ0g40䷳ㅃ¡a&%.ZԹVĂˢb*&6t`¨}Quᩱ UfwgʮiifȄIƍFQ,@F]nA{bÑ+Cί6\V#{~V"&'8S]ĩ&
B .?!0p{38+xsm@yd[AXr_!Jom!"9ٱ}#E+n=$Qj,@2<l~9`c|?Akdbk}ZZ΢3Op7"̠W,dH|+VBeFhl5xJTr)gȏs%b,q4g&D8Ea9Wrr9rg5,\S&yTػ$83 _=: !lT8vBǁE,,XH/Â`qv$I{!+O`

Lwh	2 Xe/=
W}@ypoi3^|Hqc_=
󻔊8]J !`q@eP1=Ǝ}fN2$Ro:y'0a|39jc!N?5DOօqq猼8$EI<pO)MxP'"7梗OfqTYz jHRbQZE&>Tt{ Y5mN_

U9TLyHq$hg<s'<=<7PU}:Ӟ'X<=sA{=zoTDִ[$!E\4B5n||DctMw[3 [ic^,,,uZ4	z'OU@?XCAoy<~)0)b|#!Yl+\j^ c`0|V7R>)<H=7OO>%^Zz+x88u=5fL+82d51s@PXQXX J66,2IEAIs   @  = ؉ѯ x=9 lzTǌE.Q/?ZVn#4\̄+w~<5#X+n>dE`{͢_#PSN'N1۝-٦`yz&;֣]982T]ge(v-ōլ8ajO9(Hetp3!Ѭ\
S(cP`:̄!{"sGMh9
T	 3Uō!B[9ioPƬzRZRXpl7VsVLZ@
;1prN !VN]h(ݱ4wP1ąD.o'*!^21E=E	$"=(T*&~UQ,n~4`7ϸXjp [6Hi7SH	@~;8OƠT&<`[ט<^)"W9ܙ$8,/Aq10YXHWhj)`Y
Ƀ,>{%{QNV96>R9pz(Xn:xw*ـ]k
&_Y>EK_tL+yncG\fB/^mdDM(2ů[p D81h,5OP77Ѕ(WXDh+0M@#or@tT&DZLK:d<d>`	HeK^,0A{AhKoQ+LCP51=Vt4xړl	r^MJUo *9GAsB'-<loH{0&'3%eAS/%#Q""P--ͽ? X1w^3QI7)v-]{:sfid]E C]usVJa=ڻ(eȣQ5MnڤI<Mx]¿Dd Z]a	d;A#\5ʉ eϫ%NF_$ -Io\ (3Pi8gV܌SYjd&߽sw*	e#PAYsnӐ'#JUK87-E%C$.7Rnp$+@GI^\bk"RPY<Mֶ7d~TN#KsNfhDB@ti.D6lN%j5/yn+L!Ff`;ڤE -+<#߄O0ځٍ2]237e|<$ cz Q[5(-H6ShK;䄈>Bu8X6γaf%CZ\\,ӘOO%Oy}w$15\Hܐ?K\gH)h S.·p &\[?-[}>,1âSl9BF	Q6NOT<֩1AY %$r4%ejU-aX-qJ򉬛AV6,:5z_I{1h91بɣ%Yǧhm1kp=cWtWAcMT17L [0i)tV #F	Gtrv%Epd>y/4	zO4lV=vqb.JZ>7T-K,Bt
q}ǦiKNQ):|%hK:l B$[/Y,Mx3!]nĦZ~m݌ 7hKW~7rKzU>^BH]hI觼t_9+DɅ^n:H?1.^0'\x55K<a@y?lT-ص:ھG%_}.rֵCx%ѬzܶOpc*(VylزC> =
3]B9H-׆ =M\}.y8JSJ%wWbuxΈ/IA11O:1($cq51Ow$u=T,jɶ4]OHTԨYltP-2|vܬk)We*րCa4At	*4#uod
 2<zhƵԈ/%h=0YQL7g#1%QmgLs_Xԩ7g{EzhzB6#0:0%acGN(sNsEg p=i\`]w|iT40<*c	sYMȓ!X*߮~Մۄ%YGr%[H8hase IG0ґeL7_ХMs*HH?C{RAs'Yx8,Pt;8j8rG)9GQ+ !{i2be~iDASټREyB9vމ9%-Hj0j>jE
EO
f*_(KǉH[8H	fU:к(uu:=iՄ#tuj##X$Ƣ-i	1pѳ94mff΃Ӗ4f?Q\,kmEm]xB$5 BIǙ
UY#~z-J322_,\i.ĜxE5L|qc1q92PS)j0~Lگ9nߧ,NK=s}1 d/Y1'{?@XI,d$wEނJ19pRȹ)#A~,2s>X[zN
rb;7+;`q6ޘ:-q#ќv:"g#+fҟ"`\8FY~tw7~>5Vx2I1=AD T?dZʡĜBTРI^7Z`%d}s+ХFC_|9#{]|!=E8T+}!`TT vHS" `Jy(/ႁ+$	vuۢnk͔ n6-	8TqH'[ѽEKþY	+j+P0Bi+fh=)/L*˭|ۢ!B9Dئr(gͲ*^;΍E=/} &`;\fr,VJlҨ..-b^coaI^;b/K~aK `V`'YB2<?(: !'*rljmik[\h0s]Xm9Hhxv\[HµN@O*;J[2˶FoH;ЁsX")m#$v=ל]4o 3 n8
wZk٧/BS-?ÒSy2;(y
;
z	r_tNQi7LPZ@s%ЄLS8	̺R|0KY$E-^yBxC/4⼂-w,:4fIwbipҊ\BB\B0F}D.fCղcdeT0b57Os`M|'W.F*ފ.U08%tǃ?4."EST[Ag^_/繀'e-*+7h{:vr{ V v:J-UQYW'7m{"bcOkSF[T^=phJHpfw-H5^ZW
yW~˓麖bD'4RYМd|Џ̹قǁ.NKؖNi#rC?3&IҞ˗R*;tJ)NuC|n	
=^@aCZAEs@v؀xE
>;Kӯ5֩ݛs]d%9v\854zyZ ḇ(ߊ'M~LQuG	[M͠>Smxjg,B"([	Iş]UwBifr9W4Z6ணO489d(9F"B_:)	;`P}(WI;0%armH%CD]/ǣ!ʐŜ5Φ+8OIӄwBB)-9kV/9
FW8<}???+1u&Ct>H̕¶2/~S,HQ
H"(ϏGb,ŖS%I̶FZ< &8 *?K2s+Xxl%ym`ҠoO FLcpq	ڷXfSՑ5UOv
EcR1kk+e`1;=`AbvΓ7~S2q-qf23\/BԱN}haGM)LӗyY
"zxZu]}K|j`;`p۱"`WZ4?HNހRm'->C:L*W"es"tAo^ݥj&`Yh/       @             (/`@ <         0h (HH0x  |}lt`D@Xl|dL\( А4  ؔ,  8 H$4D`p ̣p,h0Ht D 4й0Dtt,(Tp(0@ptX $,48<  Ǽȸt\ |`$ d($`0$T(|`$ $dϨ0ܳ$V8zdA:GV4T@9eTJ hXGxj2Gۈ٪4w%7:ݨon>5(HP-Y\Eq0                    (/` 
"Feq0*ڀP2e,ԭY{	sh9,O &R	0.`\*@%q0V6[Kt	]i3 1A #n{v~	Fڹu[ԁLhO t6=+%;n}X	!DdXL Zo< XL|p  vMqM㷍" h,,O$)Z[53ʭ} ]kZour|&G%уp܀Ҁp>q ͡s@]o[}sUQ5ꦵۆnhsHz6&uo߰udi^<0ːjq@2t8s:r}JOzUMRkY؄&O}p$4bdijhJRL͒<nRMJjW5S75qA]@P8R
,BR8S8ץ03sM!(*
(KL
!,;zVeu[~d0e0鉲}ip<&IH3&yM!2cql $ݖESHM!i${'Mȝ%pY'DpH*} X@0A<Z]6n>_qW^'M%kh,Z5|8;ZH7Pφg#5ui̱FcYtGQƗ24۰1(042>zK)3.{vy:xk`kz5TT ix2#,hߋc/ЅƉͲEl-jHƅ"D!h1i{Z{~t,8L{~] 1>bۊByЦUxUxUnbY:1
ESvvKtB V(05=5-۲Ynjnïˮ;ibHGgp6hBHzJ)aJAG)_D)QF%N^<'쪚&H
|']+Ư$z7a0&:.umfϐgt&ܛ,IQ9,˰dWB%aIW$,UO"%r$$%P7=ny>_;:z-~UӌNs$%pĩg}|<^=(9~HiD!ِd~V]shMch$4zcX~EJ$EBpŇ`55OTt2tei6}(,/dK<i$
yL&Za	G CohDDY(DD{t@<4nqhus~hA|df2U*귏U*~U{=˱۲x*HSmzcjUjUT$O /2~JU*%83gdy*Y3g<tq̮iX=p;H%-8Ñ+GCiuėswKHZzqL2;w] X_30|?^Ŋ/XǑz; w#`]+"C
 t#z=Ƿ^on
^.e(B''&rzݢfy
G">kϴv!`CՂC5/2|/)IӞ^ }P>tI]P2.u^u[7I%wkn[ʓ-E{$R9qLqXTK±l1S}Vrzuͽeu4KrE$vJRⴏ:+j_{˷\Y*Z-bUJNRe>*QT>*SRȁ tPr)@K_] R=cx-qmkW]f_ ZJjN}ݻEӼTAgO϶U6JS=oɤR`w]LR64(?HF   xrӘ3$( (8P (dhwys_h\=amJ}L͌NPقEp8G#}նa&_gK
<e0Sy6yٮ$߱ hܐפ	kp]WҟiM60>/݉K;ς.J<1O$.`L|\pzQ8]Cr:/7VBK|wW- aUJ}{&̘U:dR:ѩQKx4ZŬ>KS
`KU੡2H\~<sv V~@4ÓL$.IӒ8<Rsj#4OW-`"l^K".2Օ4LQUm\ϡr8~GSL뮝[9i#ycl ~uLXʞ>HKBEy&0Ŋ	{6iw^ H^/_XY{P3ʴ
ݳ޲+wfL^R}p%ψOycB5]8`Amef~usﺄ6hZm{ȷV&շwTXdׄI<SɔC(y~-V2v[vBo^)V̌5b+YhE%G0	P{6p$ϹЂkpkHLla?[1gHu1P`7 N|,_]r1}E0MnUXӅA;7	s\&	
?jM|bY/7{N6'"9qy	zWr5_a{~GR(c"eW<KXXG)o}`y>ͻ9TY8wgnAE;%^bEErGg2$OywlS\9tFsD/SL蛔᫠ H2xt{zh_io|ۻP7rl4?%E??[פ<	^\!k]3и9`50ŕ}UMOOp)| ;r~QjJUq[;\Py܁aarz.hQ(;z95D9B6;#i{,:㞵t1yE?9k(̮4zs;ZG?1_xbrjRܿ5Y n +-agV/ֹ[,3>	7woF"5$$nkNuƊ+^ڭ7 mI>)SG]gή5gp]ʃZD^pHc!B{ 1æb;7(vS?2> up']xڒskc=zH&+vȅxט)3u9i>Wov
y&/5%;;I^Ez^;M*טEw܁tpgҽuUB瀂
΄i4b[ ֭5+>L͇!1c 9|>%z!$:chөXy)!^h51K牭(&ѰfIDL =eekp\Fd1*
 #O >v~S+:4!`W{(wahwUn7#ى >L!ׯǓ5]<Du]dlq8˧}=x31;`O<xnv6Q`xOGΰ5_c	+/Oḛ։<=ֻ>@B"X:0nçXvprcz=m]GPl}wM8L7j	ԳݻjH),ݚ!@ RyģYK48W~k nlP1|*Ł!I̧[69cV$]=2y(m1X&TR,ĨĄCExu~^W\g@v~@|<)8a)PIHT^ƭ[wsNZl=iQ6Na_#wL;!±lEZj6P_&ww2NxC^Xd&_GA#ҞH+[$9o:UklHol.]rC?5ٚ~_3-ݔ&`;Wwis                   (/ D
w1D2FȪ;֣)+DE  fuEۭ`[x9^30-<}&]f\\ydY{mm4dL0Ir|/_cD
1bBb#O?%e!{5PB˙Uqn\8N>c'~Wjr^_.&n<j%~NOB|V%ƭҗe)uUBة&3:3/.8.s|n6A6wŇa]xP)uzn"U@AS*a3*0KpC5P8yEZaCaaZ&g(L6U()8rH.ʨ\ -9Qk9	th0}TN 56C&kOf%zIiTLȁll6@{޵pP>e῞-ǜ7~֗^oUDHKMqthKglʝZ_WƑYA5c.?0g#,Hq皦>`"\[:{u}qeYG\9_<Ɩ7r05Nh$XeYAw^aOIsLxN<yљ;)EG. C9hyxx:Zr?,˲,|1x,|γ,7˲,R< T \@	<`7xs\%xo<J8\ʞϛ	|CD0GHg"O<4JIڋ6
o߅Wk`3:;K5jVD']&F8ڋsqE~b+Ir΅2^B	*'knsE@c,Q}ݥy6C_.kUC `nr넘vjgY9kEcĐFjW1FF	7cy#%+KXg-K~Ʋ4*G,R+s ua:3ceu m flYU|cE /Z:Az>UK,zUك.I{JU D<F"=G=?\>.U5Dm2Z<Oz URq0͸*
So˲,i]0$c+NVNVqF@c r'Q,8iY71HAn (ylbmg6k&gC9	΍un0@$\2G7$DL yXx>
ÞR1yvNܠwơvbzN=͵CS":]~@SgCvi7YZg5~}irj	Jceє>l$k7s֝866]=QꌚR42(lڛA=C1=.YF]s|F ^ډg1A He]|rCHϧ: ",)8295v!(nS*<M2ZBM򈰅gV֟ Y-87ZO˺c,`&^ƌ_{#~' PY=	+R8bzyZEiüA4؂0U*\/W#^^Vmw=ﻌY+0wιvՙ:mu{ћ&æqvߠ7lEm1̤"4fXJ#F`>bN#ٵ	Zfj#gKqo6{\-kwi qSϖՑ%lqhY5= w\gD:fWu_ս&(&8W\>g)sQ`_"/ߓ\QVQv֊ z"򞜛͑{)8BS=@g	aer"zղn+/8r_eKMsq~Y/0|-uVM#DcL+]#=g_vFs(][>xy-?&bYjGp,˲kYc/x]6EWֲ@aceY'}]xb1-MOٺ>dCc	#DA*?@{w
[Lxzd ;H )gjoWK'08OKWe_+3%/$$M(w!S'EZmug%ҍx:ㅌFz'ID^B8h.lD_)3ȡcDyE@BMg1i_jDO0r#I@ϡ#TDS(7 zMA a]m*ɡH&cN4Oţ1@h$Mj# |^IBW+T8}HfAX?cYg
wvcw`CYg5UC
%q
2ؿk<03m 4`A$QK%G;+q_5UƉμ3@(9A/򤂆h/(bxo]Kg@$-ϒU
 ,0`NX0@cb2IAջ<K|*zA,^@6YY)ZLh+ R5Fq-S	Zh$DQ:cxdgʢs
bCph K=Mx->Y +MvJDeZgxMHQ{׹Q+4fn1d𺬝`y"Ac0u_˶0_)BT$DXcD̩zwˣ&<I=^jK>%CFD4IЃpPh)wH' D̗@pѝ(ʮčϻSK U	JNa$%@Ϋ׫{Ar+;6U7jط-Krޯ,\r	] _cd[]dtnÝgȝ9bXz؅?`*^j4Xaw:Dwj_וefn{1ub<''f28<%69Wj=?uFR<,to|9yj	ڊ4]on1㌹@bs*T )'N#^ q.jcHa#,CV|H҈1)l3A(aRhJA5{M`pP*.B@A83~M&iғh# }4.4MPwkѮ)?LԜҩGnQ;Mv	@vE$̋ ajdpg;t7'5A}u`4͸\;&nHA hΑEAfI=0	Re[(TpcB$AHāPF<t8)6wLh-Eq#H#vxÃ_'
 ADH3B=TvuunAGwg3SpWUࢦҏT5<ޔOL!eYV`6Sa84"H552eNPD>tߦz
}ao_G4DBhY'4EͩgاUΨF2GUEebeY[1&GW_3[mi̲2Sb9(>d5= NMB5(^Ҿt`>Ruآ \qrjÌIOR{%Ead@\<u|*.פ1G#k*Л$G_;MTvآ_k^EAAH8QPu>.lJwPLݝεeN[6+	i\` vTd-L$r3HpLsqq`,n6@@ >іH)(Peu-Hp(=ߖV	|q]~ĢSQ1U$*Xovbbص<|"	J_IѣXzI5y F|M?t.Qsɧ-22SHx.
ApcZ%wJN<KeuccDqJdE7ɕ*	~;;5   0cH #,5HEcI(
 )cV Au3bGfN?4nkMi=nHHJpcD0:3]k*QԉQSŠœa@JJokgQaR7ޔRn	Z`t|~ؤҺ:Gq&+VZSHPX*qzu)[͂J.wEV`?͌Lt9AAq@-[-M̎I¨4tDS	oq= !|{]\8#8q&2A>kK1Y/rv"$˭dF m1.cפ%,u;P[y"\-PLÏ$a(aNTqaF.SPUW'뫰[Z-.i 9DQKW8)r(Vcקw y-GDM6:?9!:t7ѡ;6ޭ$j\f=,/6#W/>D'?*܌EXtF:H0Y\kʀ	-ȾNDM[kZ0|l/lM|$Sřml\ɈB!$(vONTc덇gcweʓN-7j)3}6x(Ļiy
4{yuA+_]7C ;h邧e	\9F"}R[t61xb.'GSj+ȏsۍt{MI( qOeuA/{4]ؠgL
Nt>ӯpzuWs**67BNK4jF+v]BkOJ{`	~w
B`U:l50èfkl hjk걊~@Y1T;^+/"X`YjQ\Ll֞Yj閔 $p'oak~|Fz>5t@LPz4<ϯ1:uYV<Ax6qsl?{C9y{HF찃D\0Jezr H+ϲu#ͣ&} P՛S؟/"URnR(>#D1@RHFsuεH:o.olKPRxWn> \hq
FI ,ทHkJR0`e8ޗB_1I[	_~w)Z318>e2_R_AfQvrKZќZW],ֻ#ӕO4D*}AOO&k0]ʴu3sǱ(=5h":oGUئFU<QFW<f+N*zh׍|Y Qo!-~EPEHѡ.G+Pԛ
>Sg{GꢕNI2XQW)u,t"m \(2(uubdd/1n΀(tXprB0k\)z)BfBE͉2b.ʫvb𴺼my؆jzzhA{.SXOjs9ǬF!k.KǀMV1&9I,^P{A"-$d.*Cx3~<n[+CE^k'8RwQЛca/:w7u˥N6BDDzf AܮKVW~XEG3(闉Zk;*?F㑨ۭSaX|6$^PEXA!fgwz6X|Qckθ1L Cic\ô~ۚ/L.Oӄa TјK6"jUh5=UKF`5r^m_!.f{xۓCl,WX\Y">zU1٣-4AAߑV^'PnAE׷ziq[ve`|Zy`sD\ѐab-<e1 ;PfHJJ۔B0nP@칭Az.ֈth.$q('ʣ9.⻹$p6e"<r1r=20-Wuu4C?"$˷a2x^TAQy"(_@lb@Mt?Ɨ&REQW0iZ[
P0'Xl녡΅;	X AW `Y!XH,骧-H=c轉
߮csɇr,)M? CCe	dcmYrgGE˞Q

ݸ)KUe+
TWdM;tgo]úfHMHj@pSBOxdO-(Ol܍LdJZPWW?U']vsg`dW#[~7^lC/IH8U*de JrKRoewq}9턔eѐܢw'J$2^
GQtr/-5wzɜf'HSwY
qB1GxX_;P݅7,\dPEeBz}Wf1}1ny-%DQZ*yvZRW\n0.z߮*ϹG,8ozÅeF!ďQv턑Ub2c@RE8Z<F#a5HiWDW9}C/#珜Ч[voFZ R֌dH;ւ@VF"^)Zaä1/9ۉmYu|dGp-J F
HPCEiypE&puV]H}'Ǻ({We暇KSj	愥> a'rý~{`gFPc}FSRnuhmo%7B4^k2EpLh^oYjC(L?Q<E!9c";iXHJuU@:ϔ6O#s@XDiձ5vㄮe1nȮ$BFu:hylH=pNEq,so5ԯ(`xr91ϊ۱8kk?P8%wFlo"*΁J~RA7SU$S6;GM#LQZ9(3LlukFc-وH;j4LX|qw1}@
L|6*}$`3IyGo&MVֈ0qlx `6oVo""E9IB>ETX0}-R'Hb(}~Y]?I>/i*WwP8@=,b9Vvq3d@Jd;4\Li@~T|{
ݫp[aܨ@ȱUbU|uDZ$n!ZMpM]l˳ S`_HBmjEY'hs~ujjq`ĝ@3%GbpW U!kP׎[ 8h4Gэ"̯E_r}I o*84(T<-tJ3V""~@21[P@'64 2ܭW:d8lSKEKi0u܆|c~Ʈ1QRijXЮR:4r
9F) G l nZ[/6#"QQVV 
ge6f읳|ңƸlʹP:4->fզ^X$%ʹsx:)]j/((:bɀD.^佇|]&nX 9[TjeRЎcǬtcBvelD<ދ3k3Zg}J
l1\fWECB
33LkM뽂BG}XMʥSHqTIM/<V*MX).>3>e.(ieXۓ9`z7'1rNBzJvT1X*ۮb&++2yvP(uWPb!"y~܋y-RΉ=Q|!Q垐W,KY8~Os:J^6hdXf=T1^Q@>y:~_׺noIЩ;oح{wwWv.FDR[)=u
AP_wWe(N/(FxmZgdh
kS椴l}A޾HU]:zE)R5{d ibXb?@G0ga5r`lII2Z4LdպzJdJyI0r@`{FV50Asu=FАILǌS\uT(sv)ڷ2ZSTa{ĸ+,yڙ3t(dp!Rd9gope@.
b{耺:9N8AP1 `3;`ls|	*Fm6PjtDHӵ@@8 ~ћ8X弞twk<ls/P.@"_crLriΌM	G2KJ锒ALP}k7+"dLқE@'!(h`<Ɔ[*3̏C$<u-!c|FPx΃m?$і0ોr823h$*č1y6B5UZ=jX]?4q8Qi j|Mΰ1Q`񄖚ĔKVjWp[3Y^rnQHx!A]NjHMBHqz/Ef}Pã^5Lf}q>ɤ͙;}0'ݱ&7͠/A֏7=Q{F94Ћ9Ä(,50C=TԟuΤaBua7H*x,v2'B%fhbrlJ/=X}۷BlDU%
LK;J/Yt`}m3@2ES`&ļK(=뢇ԢLա/-]ݫrN.pDc =p}pUpL=Y]$UgE˹6xbfui]xѭZ>kuw2 .IgNbr>,R+%b8%D,8֨a[zP(9uF$wi?[rni	x^&C^|Xs&jfqеYP$BpH +A}NH)x΂2zQ3j5#)	(N}nN.d	2at}%]nA5}XF-PwX(eQTL@YϻpQ`Y^o:N-J+zKW}ǂ)MkV&ҧJoi4Bhyr@ʳ:-$\ǓaOBWjCJRdޖDFV p;Ar@z-m[m|	g%ne+q)2
EVnCP&npOkϵZnۻl2T@Bİ
Ș%^^)gD$2/ɇAZfcRXKI{ÓWㆲ[ \e (KYҬ0C"]䲘LAC#dvHjS;2``LBWC5ϐ>Up	~}e;WB{<IoQ{bi9+ш%6A;%H̻of@F;2KaRTiXCC(vȃ4-&->َ\Opr	5!ajew#C^@7%#0ckx5QA>eNӡPDEn&>f._W/EIњ|"Oȉs]pJJ"m",:Fl" Tm2i3[tx0Gf^V:S<"=Q36[TŐ֦x\NƀqQq]!Á)GP}=68z: h8 HR',>J'H=wHCww˽w	؄bi ÆmO<~1Pq^cr(]Ց͇Or2{0Lу{Qsڢ[Vq)=K&9KuҥrZNGlוy&q`\V,pP|JUuKYa| (qJCð?<1iU;5Vc9b{Yv"Wj![&~d:`nXӃpt]P@9n
F s1zY^UdGbN!˿YiCϥare|xPGNfi	$w<H)OUKXN4 TЕ<B'`xX:GH[!('%z3p>_|e<S@X	6	at:?[k >6/%jq/jHgLdºfmov-\[1pƗ2<67aA	P(ya򗒦d>s#*aun`Crv Lj5)FaY@y~
 i 2w3(& mW^L^2栄?	*2	)HQ@hM%6UW#q֘ylN~(cO#Kձgf}̈zYO\ap(=$drSrrތsY\F?ܭ@i>:K,A!t"FY@ȂXxN& N=4̙/:,Д<My¦qׁx')ܞ(1$*q@haN:H[@u6H5	Z/r(`?lL Thi0.VLux3nmeˈXdCjMn(Y`ůK)[EC9q̹Y\ɵ'۠bS.P1Q5xq25=} &-*Y?`s4Xly5x@AЊup9LfТF e$mvGM #8\ǇLQEWMa<vc+҇o^v:=ycQ*6HWi%P|6A _pwm<`<Jhv"D|B$^ISdpėɥZ߀8Bt;"qr 0nnȿ1c/S"iңпF^-N;WKGĠ
z0QIgsxr8s(e6&&_=
нJ:M0"ɋò0lARP]-k7!w?[2
E12o+_
Q7؉m&c(iz!	]
2J ST'1e$0ĎKx2bGdueBGq<S֤<b>Q[r	E9@~X&Ƙcr.mF뽾D@r@tAx&d: qiS#Or#Ǉҽq|CnuOKdA%U@2$TY@6H)1PjYwcXn
`	Pb}PdF
XVCkeS>&t>⒲TiӳJGUT..@QZbY!YS!_61q*E:<}qwx:;Mi_u쾒ئ{{bcfNwir4)g*[p;9f}Tf^\i64.uGGDRnhg)D!KUmL49]Ӊtkq	Xgۜ219DPE	6}_xEJP$(Ҽ?X7=`Zlw0]ݒ̈ثWZ˱hIl&:o	":{+0<_ U7K:?Әi9}h"/'YZ ޅ41+p^e9

rioxӲ͖T2qϜ%_"4L	PY	}TitНJ܁Ƞ3t/'O8J?VfLZDOTMbT-_pFV;+K\Q:<b(mm|olޛH\_"RT*Lu!z˟.csD;Y2ǒ}ft~qQW)g-dс[D1_^l#PLZyɴELbXDVeȚ5B<e-ܹ["Z~5gf?	޳v	Y8<J5ÙAmvP-*@	ʫı(t<Rt 5ZrcA;y~.=i{U]PqXc&O=wꁵ/%١M~XZfhS՛_`:Khtg8pӷL _Dەɹz	>\}u~Bc.P~qwJ@4NP*z4'@N&/i\8(`up Z%5~EI.3 ~Q!!0J,a{`0¯Z)Mڹd#,4"ݾ:)k15CT;`Q*g!9BLQ: 5ʪzFd=UM}%i:F/ |_;ق48'n%'bĨq56uЛnP+V*H00|s6U9{b%A	 !5^OLӼ?L	99|l;,&P;|M%]p;I.?׍EMg٬6 d҆btkU2"		/qG2Ī06:5G*aE<at!&%a<d"fi3NPXUzAc9$DL_^-$45N5Wgj{Y7mf:&&M=A8Q<Tb6w@XDm,t,1?pPPiIT]fⵁ`Lc 6gI.&$OB)NϮyZYQuHi]@ʯ'>M 17N+{ p:h03Z-sNk^&O^UNYZ 'hh.L1=X',YL*Ly"E9@
Kt|6,M3GIJnDȕHaU⋼7mg9i_igד/2%~}~?:,{
јҖ@é(,Ii?Dd+dĭU/xVZW9`8 ZMv="JFZ(&\cg@IB, J$~s7uwKg{fAI5msSy!jV@~qhR2|6MWdr(ȇ\_LDp>$у`)_k7y8 OsVpjd6?vb*<H	ڎ5g
24A;A u(ќӽ&[guฐ3KG䯶:4Aft+xX aUp6Uj'+t.>W|r>G"	ٙ/R
pkcW[X_*<hΣ8x2A3]Ji4 ,I@rQk;$c܁ϸ)BD_GgiDfap?HN 4(Цjr/6ÙM'4(ڬX!0!?7$ mLWaxnML^,Lq~x@HS"#-\r_gm_:DfTow(}9D4U6fvۆ$vaoT]INSOEijgmk`˰
F|h݅r&mwitg7=Cii*nQp%r>9үK"a`X7\#P+I 
l6*DqЖUt.z(qbU04brkJ̵I k@_DC^M~(iӒ4$p@p'W@ohTe T!)Pê`-dOHq8vx5/R#Ⱦ:	ec{tToy14jBHFn^K:>$Ĳf
G+$~5/Xq|t8hWc`Ც;aSxeGuUkYk"퐰g*LZP$sFSOf:p+q(CX/S:0%=0akB	;UR~tZv8LM7k=NY Yx<'5P`g'6ex!+M70ցp3RR
4=ev-H`ecMSZvV[OMJ2U|TŊA [m#	Pq
ǵAV#L]f*qhO0vHN8;YsjFp~;˥뒞1`۝٨$h8A$@?o[U;z`!tA{KΊƜu84gVCK{0 {Rd;"-틳2c _YcʙF(ڃ;S#tU7nkp(@O1+"DGбo!L̰xd@X+np'!I܊uoh'Oi_JK
MUatt)䦌6$U?k%8No4;ڈο+jֈ0VM£@xR,c${*Caf
 <Go2h!'zvw)n{ONR(3 ]hKs9sĉs$J*ekY o%BKe_2K"u`os;Wڟ`$X:uR]AHs"@Pw	EwHY(Ǭ*d?RSt;ӣpx[O6(5O%ȓhR7eFdɻ]q|yUއUeEiGMx4R
/
%P:'Ő扁 7&9Vdԋ]]\`=HsO>iVB;) }k'aՅGOD!+6|]w߰A'O(r\A	T ף1Ԧ}H\=(15lvl0tsFD*=x3 =leu%ovj 4{Mqd5-@E	Í@ѱ:Raߒ0g
6m~V^Ǹ/4.ډ^>/4 PznC:Emy" b)
+0=I{#u![0_N-
!rlL8H~OG4(ʹ%
,*o_YHSY҂EI27U2L;NGrR 87z~bu,c<smsH['pM@rgu[SI@+W~qSZyTQ5:[A|ƓxHzEطE)Y@e"CN8fOz0bV͢^_̿kb]D;zU!`}Hi\{Ɣ16FbWhXcΝpﳿĻ3?=N\$|q#\J5wog].C@9Gr<,΃[l~wB;i *.x;7suan^$4O؝'k`б"M;fπʙyQUg AׇU0NI>D"vrn[SI[Zo5+].?XUkppCEy'*wO8ʾiwoS\<5OV9&ET	cJkVwim{RMtV%MI[i$Lg=Jx23eaPf<:.[%mYTbΘ'tZHꅊ<~p W ɼ*[_Y{-Z(LmClΔsPaк>ziTuEF7\dQ<ك@)ڣ8\&ip((#za}ы1d~
wiFǌЌ}Oe㿠cL/
T`L_%aPͻ_(݁6 ״!գu_T2d9@^,% CDbskT,9C  Z4-rh;Ͼ&EI1:FrciJ~舘ʃ7?vmyS:z\`H*@+7n,ukג9@\rt魨H|=gaX!e Lk@bL⸂Mj7t^ ܡD,pR&0J/o%jaIY=|(.a# wCj{]:W>2}49.&Xe"6("V0Qm)6Y𵗱dԀ9l^蝵"kqP.86SݽT6B~A_҅@_MjlRTu}!?>yh	ݿh-eߎ>+:h4n ~.ic7`e8;Ld¨,q[MX%fi@&^qYxj^dJ"i70_jߟ|z@%0vY_j뤮p%j`Š=^5NJ3nX%=lI뛠"x1*KOw_{ZjoZ:p20)<|?!beA ?*Y%؈5("l2&TC\ycZ&fEYL94?@jz~籯҄0)~B8r pM$ΰ`8fJH,\123ͯ
 *3]ՒA&cF1{'_Q27A^׋C`tj
-k<gKjRuЌddITw?[ZcnT(>?fr6i=Pl*B.ABٻ;	7+kם\ֱt[_-L=4pWuҨu![AhyM%qk[cqA~w\u$rX!f9K2Np^Wn|)?@j]
T媭nM(z`~uyι̲^zNba۳GWno%,<	2IP:RΆBg PУ*WNJ؈|BZ破|,܉}ZøLMmh1ǨkmrTD|e_qqgQuAܱ=F#"ڙY{vǒ`ygBsX$q\Q+$,D{PfZ7aEn%]13r
"D=)ϝu^)Fb8bvQ$~wjxh`'<@6d}h.14퇳M
.e*>>{ۭ}W[m7}6Cznl(+)άhl/n+}dR㻤J>g:٬l}Ze.
<8y!&_<abͣ]q+o8n>g$2LP+&X)hi9M[iAO	tX{*ax9]	&|1x'= wz8YTZ?Anډ3GiGYh۶k 'r}ŅGA;#<JzA(#99fւ:t )Ai}jry̈Dy\fo5HWch1?:,l!|B^vSClt\%x_.UTUqWM!d
w@:XiD/tZ_!:oIlIeYIR]4`()KZﰬ!dKmYevQ],⪶sŋJVy#\jߺOmFI8[2p2!ੱTKtt]hOpNH:-m9$=
WMn#iIg%>J"e"
&Tv!UuG`	wH>enFc|`sh~G[Mn"x~jؕmq>C$a%FQwr>Uum6|'"6piE⑊AH842#հ0iÑ?)8᭳\М j2~,$,qE'kD,Ri;O?Ç^v$h:#B{|%k>܇7D/K$gO
m-5NX@W>3
=z;冽EM9=4M?nqLc	^8Q Nv=l)Bnm WN TMӂg<'8G/aP`HFGŋ b[:C6bV؄iD Yz>^/-ilpi[A29%^I/@_5m Yz/`G~sBMLŰw]L9@NC7>0ћq.bi-ȦjATqGDʹJkU=m*8vUubAd̰g9ѭP{/}ŃibZ_s25*OE^]}mIN.n5"Bʵٙn<0268+1!.5?w $XVam *Ѭ4&3eAdR}Z2)ϔ+2\h.;S+W_	_BpIzG,tDRXW,u/>Ϭ߸U>*	Xfs%NyuT|<LgD0JY.PU#&ƐA({őJl368Ktc'GD0Uo/l\lsM-rȢ3JźO\*BQ>mFsֵN^ RGvKah+󡪀'/98F/U*gzr0HK	2~Ozl)BgB2@txE#x nkY^ /?i_Lęʼ 9}G $=lMDER<$!K
.{0
y
$q-bd*SPk'}6#YU*%#)3uBxG٭K ZNrA#n&hB|V^^g?r{?3 Re$U4}2$בX5kޛS 䈯Bb'96>I_$¯{N^WU"M
dǞd=fDs<TmhP┓\87 ̅Z8ǋ7黉<ªA?fǭl%2% fdq3w  [s#LkXk9 lo'Z]bn--@%:-O{#U7%tWUX$rj|Cq]))8h!U~hkU@٪agcg<_1ܷ!]3*
D	(@b[LZ#b##X|`[F̭ycc]sRxO(Q3~-8}E`Bְ̍Zv9N%/D:èA݊h[lqny2:;+6z4{ʟЦ㏿@*y"@>;X$?п+y5-J: NPr"${tFYn<ϩ]o\#mCfl'$wR{0!Q蚲G4k(ʎ+oA))D;(T7/st؏Es(Y+}k#~Uխ2	V7of`>sC~_NK35.	0Z?JgTʉD4[y3W=s6߻qx|vFM:Jn:fvQ|M hxy ?iF\xԖ[C @2/ki/$jeDN0-԰rZ
knx\km947[*lhfK>(7A-LI(YC>oEcrynH,|8z>BZQ)-F֋*k3zNl1ɑ`x`G*h`y.dسJۉ odTzn	}E1zWT`6DE@y_BbSTbUf0}u aeIwd%$)+˥^KَzGl6zkx_~U&VnCxMJ,׻n
be?d\2~pl/D_iRX|",ji)Wp/΄PQEfBOeˌ	)H>>7n>?kI6uwtMf&HYtGk@66H0TXEvz^Z+ 4~6#3t+ `U&P '&2+r)'5hm׿&NLL-mHIF5^zaO+bhtQ=!|,G#ꆴf?p*@#jnZ8_o[#d%/xw?9xui:5o*/R7 1V荠)gIkp4kLF>}> R9Xn܏ӵx#'DH8Xrň
.`ʔݑ*PVVEW#I}KW(϶#` T̸QJh!ZQ !l#VtQ&TF!){U)7@e	컪`$ڕذa"@v{Z>hYɊ*J / g@ Pa
,e4bֲ'/H> ȞĤi&z$Y>eoIvA)aw>
Zm<~	 (u5ˁ4RHktE69+כF;*1r(z~s4Jze{Gjq@McXo:8	Y]}y?kB@7g  q{=tد@֧WQe`fPĮB@C^ܼa)?Ӹ_NP,6ꪭH[H<"o4Z'>C   P"o  <]LLgB/cyl,ūHo00"cz*$#NZ!СEyы h$L
VlD~|{+$[Mz]_tCwƑΘqdl|y7o;*$θ}H=#?&#e6k<`rVR֮z^[=[WP$ѝEzG&*zYsQJi9Z#F@ǧOl#GЕDP@+P(Ƹj4=E1U&#OzQ~[<Wfv>ً9ȑ*^fj-=]~c7.㽌;󨪱93$D2ng(;5;\(\s>'utus1B7Н2.G@,=$Ǵ*-vWU"/IWjP/<HD&\BB 348@B#&$$9.u!}e*CpUycb*3uσ{FZ!D2LP#
&u^Zʢ	O4A=uihԋ|е1AGdQׇдD:yQur@LȤ8'(ND;{eEk\Jp_JjF%ϻxpИ"!)2& @
|\}e9ĕp6	 P}X]M(tmM5 @  CD FCP(q q! q(L
i/Ԫ E >wgL64dhf#ZPXLxrJ PRhMr~!frA,{mɊEKIg1ծO˂^U7z'ۈa;@VP%2&?U"k+j#J	&tlG-@R&DxAle|~	!M,ơc.	$S,wPUe0ە6:Ȫ=I".q05S:{m$|_zm,[pi![wEr#'a^ 긭.[H5%VwcB&q)9杗G:E_oSdZo+AYiiaqwL^O:e\τ珂
pD`.#	-<?ً^_KMV""BghÇDj͘ѡ´WVшB{nM4ka 7(w&%qt;`{ԑU/ebg%'ŧSLbJWa?T!&Éi7h%BwX>gĪ>Efւwm-
7ő\D&~{Tʞ}H7˯"8o6}A-Xވ
X=[^9XL2*JQy6v+,4I-lpΰ/׍ΐyj!MDwcb.ь@q	4WmQbG;x?epZU
D
%3w F3>^^#o^4&X8uOtV+B[)=p)o`RFgQG\ *O *]Xm*(ruE븲B{ZͦڷPX>"CVu5*<=?g(78iV4m$mw7pTj N/ՈG'ps}J'PBP4O3jXoD|;Ӫ]ou))e.2``YGYpk<fBr:~QX^d_-⸃\ڭeDeKx,kjOCMx.Ϋ Ğy9c6!&t\4_XQ!-؞NBf9=0^V;{`}DO^W&)/{|&ZQM	g(/
E.$zb@DW;i`٠}
wݕ50QUFԑL%[.gxȰ۠M,Ak$JF(rJ#]XM,oKY2-vO?~lk_UDptΪ;*}xuhÿ`V1>j2d#Y^%v44No@=\O>n`'Cqp&xpRN׉\+I!lSE4v N(+, \sA%I,(tCYOUms:FQ@}|T)tB1V4|r%m8J"\nw
D&ѢM$L{ǁق3	ZgF4wKN`NFBƈKR̹# DqV{E<;*,oLHi/9P].W%ː(H[ASf2ՃPRǙ:'@
T]o-8+sS/73p!kq̭t""qjdnj,b@/kQ:httH:vPԚp{b:}37)u<;ʏ~=,BcRIU=OE#+D?3;`+:.::Dؽ2d`HςOаs?[$@7;&0Hfau`<W y/pq;ѨrbLWKbFeQS ݽȩiϠcuCn&z-Y>UԃI_yS^2.G`UgsL?Gy.h|nz3<.a\m~YlFetQ|K.l^6O+ZdMP>#y) bApXFCMɌ9reu{%bS"ۧӰWhL8M uLsEf>༚ڇV(%h hҪl c*|"kREXc|iWfLK!66@QECqvpDk?a@i]Le1E4'AtP>jynGb\IBOwi?
$x3Z\)S5{ÌHSoEgLV3xNș*r:vAC{H6j4`HECrɅtK͐ZTjIG=," T-cDi/"A\_*ue	m,\ddr;kf~0S.٧$lIXk7VD2=AB{x>VocWK5vxlP$q.?lamĒ#nG_UxкrU"ǉ2m1h`a"vvßGV.HuL4Y]b7L!Cɼv-I5h$!xŘoV~ؽ .Hs7(4V`Ioy"Zm;BnWKP+K9?Ye/z) J@E,m#z9cZQsl?wtK5~8 _K[)'.JH3WBu&&['|+yYj*/,i0eRf$%2vgD*\}<'/ž6wԄYО.vg<9.6%y
}!gq;aH0&$<HI'枝ƅ@dQP}_%މ8vK"+ M|zYd^8D؈|(e6pBDl0x\Qu<RL	@),vq(ڙJFInycvͲq/_='(nU!ci Mq8bxoE2~c0rp2vQK%TZ2[YFTEEwXBǥN1T`A֗*hj_Gp:0&6hɺ BO	Ȭ]?a;\c.xBw3p"%@|N՞l`a5͜+D$ܵ9^I,!^ƃRlD"D&Qb	5&f^VR0TX5p(ARźWiREauhżCю߼L(.hPz_BR`+yu猪yւ[-Sz.%6h-VOr1
)|v|c6QD J:]]^np`,Sr8Mgטκ!!2` -cMGcȚ8Gpr z/[gh^yx Գdu;CDII-tO7|Um 8}ù<-)=-c&61KccC
z mx(nvɑ!²L8QE'3cwRiɻؽϨ.<m3X`o.%E9oX< xK"vB+>ʤ.Ih7zL̯
H8~rr^H)|(u \<_&b@gx,-Z9²vIRW%}Pf˺8wѽńyFPiI*)ub!6{[:Ixz8ahFL/N)ʱrr4PGom?eNs͡Pd 3G?hqDQh~''/H)/7eh3藇~F!ɝY.yCP/2	~ޜ\Yq1H-߇&2G'y!9,˫QU{!R!̼o'uHNú1V7^\tSуRV-]h;][?kykRg#$4󮛷t`x3n|8:kgh藲v؋=N2\G4	>7q	vt@;BǓg:<"TGLE:Ӷ.V$)x'a=wӏL[D	
%c	k0{,\
KRy9\xH)?g`iGXӅXrO@l/<ᆡe0KTbmtLDy{1cӹCjI1ᒞY!"a<|$@凲!]3hƺW]L/RtmlgΥ9; ]Dr!#>D_> ebCGꡊw<
BiۋE; fA0bWHՆxւSjѱ<cvsٌ#vvCJz.YgokQPu%ʑcN"3^j=@iFC*_[r%6=Hw	z5Bbe"Iư8zM[zBi><J[pZtyLP]~e&lu{kv-#0{Zs$|SVՁi"\kM>/#>a$`ꐝ9B,CFb3&₹	dP&J5	×lԣ?{lG_m6+p9@=MXM
II,bZ"7PwA@%XTHmU8?W3֌I(FzƲA?L)	YLx`,u};uuz*,>.Q?c-)]>2##K>C>dhm(m@/5m0qwWVMu7r寢3 Z]ߦao(}z")~ʁ|%W`%K.;;K,2iV+n!_9{yJ;׵aX
` X4{H+{*,fqk&Bb?n̵F:14X\aLCYm6Tsx^(RjAp{ S7!q)I4E>β{hu*Mi_&g<xdɉ6U0`(-
IH<_=Zob O[6ܨNd()4<m)7G?R'/pE&vi%pOpSAŉЇ(Q^yۖ.,iJye V'B?0C?H%9/ exg3;H4HBܹ|OKA-UC(aBT4U3{@7^,h(9:"s3LIp*'RoPxG $$ND65%u/ٌ&&eg	 ʎy?I}G%p"FPg-hg>i_)d3mLQ놬u0: a	zbN9M)^x/s%EX4J-D9RGB6B-u%TNzfQ 6"	ޘ_@yQPR,@yX6S$+Mļz)!~nTlNuÂ_>PCɶ:%Z*@wqUceQw-"EJGMdBh&!0_ѹRPMTk(w!Zen/?%b'!qbedDUܦHƁo}{25{SȚNcG;b"B%椛	6wM%ekb\~"{PҰ}aէ 4cf2Yh"pՑf_ђ|pnO#W֢&*PR\W`~ZB(C+{J.TkLAeՇ$pԻE?L_Jn #^ŀuxTe`8\Yw<sJK8wTff/özg'5! N/=n1OfvNclp;8#ުlj0B\I cc	'.eCIJ(ސw_
!"Va31ͼEPPgNbBN}3TvG5^!]DRZͣ$8zEH>'aA.vٖeK!x5R0@0v3c7Y
7XlE8D~aMo=a>dgU*@6q۲;?O0b=C16 z/@Θ)z	l	隰3y*$؇n3 hZT	e,	x>Ē[U];&`lt
c,?{wZ8+aKqC?ufwH9M8$w-vaŏU֒e4
X{b, qt<:1&궆j|id&A%Bw#OevM[G)#z|{"Է!~6_]{M:R*q|UU*WF%PPvŲ+&*4*q`PbMw^`@X-80nID&'ͨ	;!|{ ,1h@8brtDےnM}](&j|ϱk{u`PŅM܅vb3@*EDa"XB<"^WuRژ՛(R^Z',qv/#U4Rj)Ch=u_Bm
{$?R 3\oF *Mi
fRMʳM|fG|q[VLj^Hx(%
n-vIΒ8L5qM0}KU<EޮҒ޺?kT.yM9=f6IDv!tAdUTRZ7sv%u>ip#\ |D b':TLzĶDv1G<ۨ	\gLՒnͧ[jdS59PI>@r~1jYC
bKl(2#IM!8	_"-	뒇dYPu{AzQ#,NcBc|~x}0MOĕ)Q?Jfb>jAXZ?IV&B:&9wpf$0#-&	#Π(eYJV]Pns'Vûp.Ɖ,|
'+>jwql8^fS wdbWV)x4t4?x,ѿ<c)Wo䦌QEq8\#PY1y3֐e2I-ւ=UBdߨ݇'=
)K1Qm$"`*}$:QO#{+O$z@gz!<WfY8Ar]VK.owk^{:p``C!DŇ HϮEƙJ:lZWP4)H`ƈW)ytgW `~?@f}\oOv]\NIy ٟ>v*N#emNծt"1i$:O_*;Wr4p-`ox24~3c?TgԡXÍ\hFJUG! 8ExuYH#K,uD0+v1MMl@u
55^A;Pq|CE@oJOXR:i["AF?럪]4"X*hD:R791X_5ҠYs튐E]ξl%{S޼mҿr!]_i:}ʐU?7+'+Xm)DH	
z/Z"kR:#ef	X#Ly?n_3kb`<cs Hڧ׊ߦ&#5"Vdd4E; C@*qxg@eԐovB
Vt6w}Aiv\ځ4=)Cfc9Z6<L\n(W
Bl9܏G6{QcR68~"vgIF qF	Lል㇁bҨ7'^rpS\_usD;TZbl/{i3ltʮrewZzKp	(=>IR k)W\mW#17`,T^x!9ґkhzf#qHQ937VA[XY`R@i.Dj =L磣lcJ8G$]Xw Ʒ&Jw[01eMQz[dL/ANA!gJ~y@h&+FcIuT܈tEin_v)0nK$)!.vߠ{͔d
	բĲ,% UxqCrustc version 1.93.1-dev (01f6ddf75 2026-02-11) (Android Rust Toolchain version 14933020-linux-x86) Android (14863223, +pgo, +bolt, +lto, +mlgo, based on r584948b) clang version 22.0.1 (https://android.googlesource.com/toolchain/llvm-project 2d65e4108033380e6fe8e08b1f1826cd2bfb0c99)  Linker: LLD 22.0.1 (/mnt/disks/build-disk/src/googleplex-android/llvm-r584948-release/out/llvm-project/llvm 2d65e4108033380e6fe8e08b1f1826cd2bfb0c99)        V             (/`UWY Ntיu$bv*
qv9ReӠwub{け@ԏS`2 ?m雵 )w"ds?[6%.n۔>g6)砕Q]9[PeY[gùo9kMy:7\tyJ0wWbm;62
s1ܵHpAˬ(Bz8RO`{*Ñ6-Q1hg=q~Uq&
Fh=̉7 ͹*yf9{=T'=EH'H`e@kD-DkD{ÅA##6vs'rY"D*%|D+-e?kDl*e<2VF3΋Jx/h=¢Μ\ƾ+g2s}qZ%wDю5V0Tl0+ˍVD*m%esZm!N̊!2ܻEۓK?%sGkUmm	hp[*	?0Ͳ#[5EsD	
<\"`hr!CKіs׶ʋ6NX61/Hyh{hԜI!Sch-q!E[rm#s+9LD<YIpʨMr6ڏSFi9kܣzK৽t"U~=#xKc	pO{9l_G}t
~}1S/vc)yn|@'9p893(9\UmNsY#mn65'̉d6' h̀)jfdN1`.iN
ȏ 59^.ɆYl55
Ȝ.(]Ԝ=Q5*!s¦M*jNͦj9]6MV%5glpIL~LpB~DnQܜ1ڔM5']F5頤r5(՜0)7Ou6s٤j?jڜ/.
jjNMGns3KlQs6T8sjPHfAj9YFhs.GN7'ߠ>Pt9inEtHf?fܜn?tTSs.9\Ҝ9\͆fQIrs~3K
bӛ9\R7"E273RE)A᠆~L~p RRRRR7>PjJ:vAA)ADMͦfSܔ-w)A	Er5NWIфp7%)VцrPJPZUnEItTPjʦ1s:NWAl9Lw
h8mE͌8eRAФp9% 4) 4)IxCiHj4)jHͦÑIѨp)!}`SRpf:(\ 4.HJI)IAp377<ϛ/ϛߜ@W,(`pl9hڻ(A[w9U>#.Yf*ϹirZZڊV%cWC,$>2o xl@;7uP,:h%574<śv&g.g%).A;6E5=\O֖z?cNy;*uP:=|*Lpv@sh%-h+Bayh'a$<Hk=JsD̄9,Dٽ@$iTBT@E'*LT	"AgkEڞx
:5GA$+ޥ`x|V=|ܪ3m@k*NݩzK>rȹuGs9sLD||Bm%&g֫Dpضxm\Àл6AfŅŇ6<:F\ɮYSDYS2.a֔'}ڈ7~(Ux'(XO|":^Pz05Qpz޼ժ8:pˑIμI$Op#SY|V'mq6׈v߇Hj̙pkK|M˜]U_DpՁn}V6-}H} Bp&)]O/8]	Mw9'P,\򅓃2cC2>`.cMp
Ήm7M	jr֒rq['~5iGInVQ9o]mr3m+58\h[m9o=.ml,O|/lfk-m*ε%+\V-'-0\G^#DҠeKn6sXcK_GKr|Y$2VɒɲaX[G}c,/✟~>Rɹg>=rmXr7~GE6BJVA;DOتLT+6vVlQ'=}u:ybs&u`7gy)z1O<sMZ\ߑH$r(79kD:ׁ#
΋T4yiҰ+ZUZ:" )ApoP%#)
⌴Dz]^qd"sKn˹܈h-Nފx)9sZ$ZZ8VTncmPOwQ	ZYTH8˖-0ț-G&WVbEASh"v=6BhD?]tԜsGP;7IAu3w¹hiβr<VrEZ8|.J~#|GOaHEVD.J;D{Ķg(':Ҙm94#c`~p.;7U_|\*3X+@pMʢBB'S	938義О6T})hN	X\hh#=ڠ
-W-A2v$nsqα%ipdg)9ܑ6RsO̝_l9sl~ b=d[37 gҍ-_}8	y9vrhh-crRj?[mt0s2] 9hS<\'ZXk@	/hJ3M9vǮ	,skAI_"8В;UhmA[|//Mxl).- 	HHkIrfKMCBWی.a4%/IGhquzC&tTu2NRoKC%^U\hmܴ-\m]EcUcۄ$k-pV(Mns>הsC	1q[8&Zw0V6H')wa97%,GYvi&_8[&>uMc)vDK9vV-T7gSłCA]4xp8 1yƨuy.yQ9 D^8wKVtm6 &uk}dAܜ}ܹ97m-j`@nMl#=uiyޜwoTfs¹wM^w*1h9w-hk2\m$9l@5 %anh~@;+ɹxlctٵ.9-8?zS.qi|E)mH9l= )/Z_vSrWd
fxLmٵHdS5Hc1\f1b*O%4^*=usUJYt%ۗϭ(ʙ<L9@kC{%U?VB('Uy9h3DքKJ$Ai{ȮߖyI1t|<5 ȻzUz^6L!bj`" ۀp z7>"-lC5E;TMܻDyaQ#'1_8XNt,DۛY`4|.DH36xSE9{7Ї6xa/M/h#s=D"r4gm$d(jSZ#[-3Esl+ӖXj.XPك%9OAI\	wG8<bsNoR ɖ6K@ޤ@R5R65e1$
&Eh@0霓ǌ!_8EqO=o}=q%m]Frh|Y)~' ,rRю!9<<D,s&1"Ť'1 ZMFPB6:A_Ƞ1>9gC<oi5szFuJ͛vyRs~w*[
GR`λD<]q]ލGy.0\t%Υ:N4tĭZ3.t#<PJ&oPI˶6Ul*֓)_8D'~%9WYMM2E֓IgeD*`땓+af-oxaU|\'43p:5˶<ܦR\hɫ(7XOf2Ac@[Jy9WY&"MDqz24ELĵֶS֌"6ӆ-O=ŹC,K9AIN%"O	t&|n?'me9Zx[+7a`A#gS+fl(|4r|SͲED]&V.]X>#/>6Ϝ3oYy6-p,,a!"g;\ӉmB[
C<[('p'1umlpm%f(w*86 Ù/M˘q3Bd֩-/MtyQ'@q\o	b%n|h>x5vp7g-b蘏We*sޑ֘[Gvl}|iS }Emϓsh=zkyh'ow|R87- 2`h#,k{PEd-h:*'!Hm"i=j5u9ˣH2dp"zs
2V+.ϖ*N۸,	nşc|$4ipO l{za}*"e⯍AIQRP/1d
_s&/+dúb׈3Y\gϵ(cs(
B /L98=x{(HuQa	s]ӂ#2(m6xu@4a[,/6ö_2|PO4Z$/MC󑗉( ԑ{K+$^G 6lkPgYp<-[@/E60DU8l.2[+a8T\Z1?VN[+NM{a, غk./_8b8 NX}tzDQ\x%\R p6},ȃ92)iSG0;|\ҁ4#>W`{ĨrS,NTdfh@08$u] ʴy "B!H LÀ`+TA2޳\c)W[z&phMНQAjDF2W/ieׂ4]Hp՛p\\]ggfS_&nR8Ыil^b7NNw:"fb7yd[_j7~Lͱint>[)%\!#q#hE&?`ewIcIO*LkENDrn͛NJ֕:f:VrķVH9ʛrxuz	nB㠬5d .eJ@m}$1&avCRBSI!3=`M G2A+5g&@vUB&_:ȫ`3O,3CoXPK7S;GrM̤aZ0~5!xׁٙww*.!G.A#|=i}6}ɥ'o|4@[ԮMzgOv$ESAL00;)nmoF3un3a%>"TSNN䯰+PT0)6>[Vqθ
)wEU5J򈯘M3If߶0Fcq9@׭ے#q+l)ΕJjZ)|	W(]nbf4BaܨX5~ B)RYW')m u`kGڅx56b3"Im}Har	ZԁYvNe v}KJ 㳡'/1PjbSJ#; `*A*֝5xr!ݮ!#fD{ b+i.ľ>_G.Wnww*f9A5Xq! mPա\)3g"D\Y!;Oƪl8C缸aίi.I\CIz>>T4!9Fv,*EOY5GX;B({,'Vq[H9to/EEgwKxSt&9yH\|9HIqDIhkEQsaPk-pprkq PGɄ12@R`heFJO	B+˽v&
`,Ͽw@,3'i)XM֛3>HJvo	$QSV://~/s_&ZVȸ:ukkrz5
Ů%8&ڷ58㵺CaNwii4\\2bTш.AGngz|b̳K:}]ul$7tH|vy6t?m[ZC(?4h}pp*5[KSmoc bD'a4}Rx%([h>N2<Kh$RXl;v'NoTGM4ދAȻv AY@,ItBFUU	~3/Jړ h6#drψ	)YFR`{y۸/8Gi!kskEh#>;%P3X1k@lJomgKdqy`<X%#D$Ý<$t_aYtK`*'8H[5zlN6B{\2Uh7/>N/++FEp*,VQJDnSYQU#%LCђV`˗{Ev p=[0Ifm#Z8ޡ6,@|p,[񕔺*^'(
lq+C٪`r71v$HR`T9-ׇlXv-t8g	*9W'Lx3b@#s&;1^DWUxkE_RhzҶZn'@{`ʅ
hs	ŗt"L}qP،#l!pv݋Ld䏙Xb "M5x~úդ&6%$hR-3;ɔXT:h #R&u-/$+>ҿ5F6ײ뗰8^XNCvfs!jD@[
PQ!cә!M&xS__Vujh{QEUe]1D|yzd毮is	=/$^6&Ss^@?i彿;$LT@^u;'wqq.o,XK&	˔xޘI?1@%4`պ,U#FJZF!l;zc'.tl#%0!@r1%E^֠]YArdK#OFޑB;A/X2z Ĥ	qeT{y`\~,3v:8:"MtCo 3gx_>=7* +5 jSއuv8"rust   
Pd     rust   
sb     [rustc 1.93.1-dev (01f6ddf75 2026-02-11) (Android Rust Toolchain version 14933020-linux-x86)*˝N   i@|W
   ӥLBٿ   \hRꋔ Y   	|pȲΦxJ    $l3< P!97,    	hashbrownpp|S\M    
std_detect;!QRX    rustc_demanglec.0"g    cfg_ifSLU   {"tĪg=/   regex_automatap#PK:%	d    regex_syntaxJZ-:r    aho_corasick).Ѣ~s!y    memchr`ZD,_~k:JFK                    pattern< < L   tests,$                   builders 
 








	




 > 
  I  S 	  build_one_string 	  build_one_bytes !	  build_many_string #	  build_many_bytes %	  case_insensitive  
multi_line  dot_matches_new_line  crlf  line_terminator  
swap_greed  ignore_whitespace  unicode  octal  
size_limit  dfa_size_limit  
nest_limit 
 string 3 33333 9 9 build 9 9 9 9 9 9 9 9 9 9 9 9 3H I I H	 H H H H H H H H H H H H 
 bytes Y YYYYYY ` `	 ` ` ` ` ` ` ` ` ` ` ` ` Yo p p o	 o o o o o o o o o o o o  
    error    from_meta_build_error  description     	find_byte   imp   regex 
  	
           is_match  find  'h  	find_iter  'r   captures   captures_iter    split    splitn    replace   R  replace_all    replacen    shortest_match  shortest_match_at 	  is_match_at  find_at  	  captures_at   captures_read   captures_read_at  	  read_captures_at    capture_names  captures_len  static_captures_len  capture_locations  	locations     is_empty 	  range  as_bytes  	   
     Captures   haystack  caps    get 	  	get_match 
 	  extract    expand 	  'c 	    CapturesDebugMap  'a      Key 
       Value 
          	 	  'n    	 	 	Locations  	 	  pos     	        	        	       	  	size_hint              	 	        Replacer  replace_append  no_expansion   by_ref            !   "   #  $   %   & F   '     ( 's       	
                                      	    	       	             	    	  
           	  
 	     	  	          
       
         	 	     	 	  	 	      	        	        	       	               	 	                    !  "   #   $    %    &        regexset 
  	     empty     matches  
matches_at  matches_read_at  read_matches_at 	   patterns >  matched_any  matched_all  matched 	 	  IntoIter  	  2  	     	next_back    	  	 3 	 
    	    0    1 1 1 1 	  1 > 2 2 2 	 	 2  	  2  	    3    	  	 3 	 
    escape 
 Builder  pats  metac  syntaxc 
 
 3 RegexBuilder  builder 3 3 3 RegexSetBuilder 8 3 3 Y8 8 Y Y Y8 8 Y Y   Syntax 
   CompiledTooBig 
     Regex 
  )  Match     * + ,  -  . /   CaptureLocations 
  0 1  Matches     it 2    CaptureMatches    < 3    Split    < 4    SplitN    < 5    CaptureNames 
   6  7   SubCaptureMatches    < 8   9    ReplacerRef 
    :    NoExpand 
    ;   <   : 
  ' ;     ( ) *  +  , -  < 
  . / <    < 0   =    < 1   =    < 2   >    < 3   ? 
   4  5  ?    < 6   7   @ 
    8   A 
    9   :    RegexSet 
 1   
SetMatches 
     SetMatchesIntoIter  patset <   SetMatchesIter 
       H 
 1  H 
    H I <  I 
        ! # % ' ( ) * + , - . / 0 1 2 : ; < = > ? @ A B C D E F G L M N O P Q R S T U V W X a b c d e f g h i j k l m n s t u v w x y z { | } ~                                                                                                                                                                                                                                                                    7  7 
  8 
  8 
        _8  `` `    8  8 3        x%6  `a    8  8 3        Y~  `a    8  8 Y        l=lvN  `b    8  8 Y        ˂ D  `b     9         :         B&  c cc c `c `c    :  
              73U>  `d `d vd d  8  dHH  H3             ;                 &9QF    e  e e e ee `e   
 e              AUuNk e `                    2ʾ    `              4
Nd    `                  ؃gj    `               Nz;2    gg g       <           Γ'  `i `   <     <         Z@f      Kj Nj `   =     <         80Y      Kj Nj `   =     <         <ت*      Kk Nk `   >     <         ª      Kl Nl     ?           1DSj5    `m Km Km Nm    ?     <         RT]      `m Km Km Nm    f    f      f     AA  A buf< A	<        <AI/~fEEE Global         s^%#    o    Borrowed       Owned         tYF.   f    p      `    @           `nQӚ     q     A           ex.3     `q  q    :  
              3J'  `r `r vr rd rd    ;                 ~Z    s  s s s ss `s    s fs `                    1&8k    `              i    `                  +u    `               ҵ9-    tg ti     <            ѵ`  `w `   <     <         S`jЇ      Kw Nw `   =     <         Qx,N      Kx Nx `   =     <         +O      Ky Ny `   >     <         r.`      Ky Ny     ?           /_O]>m    `z Kz Kz Nz    ?     <         Bjm5:I      `{ K{ K{ N{         d   d   o      o         tYF.       |   q `    @           5͝   q  }     A           ꉠs     `~  ~    H  
    1          pE  ~     H           DDj  ` J J    `   H  I   <         $(f  K J N     I           -}N    ` K J N `~    H  
    1          D!ͶM       H           3<cJ  ` J J    `   H  I   <         漴Rm
2  K J N     I           	o    ` K J N `                                                                                              
 
                                         
 
 
 A
    
 
 H
     
  
     `,`vKNpKp 
 7J.J  	      AA  An< A	<        <AI/~do  X ]  o w   	     ))  Config ) 
match_kind ) 
utf8_empty ) autopre ) pre ) which_captures ) nfa_size_limit ) onepass_size_limit ) hybrid_cache_capacity ) hybrid ) dfa ) ) dfa_state_limit ) onepass ) 	backtrack ) byte_classes )        1ikV          )"6     55  5 5 5 5 5 5 5 5 5 utf8 5 5        Zz   (    
           	           E     5 $  ' /  ` w  `          )    5                     |         	              `     	           Ж   	 	   	    !    	  -     Ж  (  a     &    1    d  	 	                 
ٳܳ ݳ ޳    ߳          i=2*          O'"}        ``  `] `n]        9ֹ`  c Ж     Ж   Ε  Ж                      ЖwΕЖLޚЖ* ח       	%2  
               92g22  	Prefilter 2 2 is_fast 2 max_needle_len        󰽣֕     5  
)                     92g777 All    77 LeftmostFirst       [mG G                 92g                       92g+++    ++ Implicit   ++        X3m A                92g              92gg                 +   8   E                92gf  "  
A do    &&  RawVec ) inner * _marker        $b0pdoʁ           g  &6$  
5    -&6     -&6     -&6     -'6     -'6   
f-'6     -'6     %(6    %(6    (6      -(6      C   
                  %      8    9 ) .2 R R 3 R I Rٛa R؟%z R% R) Rg$ R  R  R%	 R&# R : R Q R h Rfz   $    $ M Ady  F  2dm3  <do!  d4 y  To40 z    ez #% fz/ #% w	H 	g-$%`I f$*%I  fI  pg fzF 46   %6#  m6# ` <   ,    O               92gٛ    .8k    % 
    #    B$    aܬ   vX    w       	      	    .
   M0   lO    o            limit-  
  %     #    B.    aܬ   vb           	      	    .
   M:   lY    y           -            g -3   o -y  
 o -z  2 d  	Alignment        Tj   z              Unique  ̢       FJ5f %  d   addr%#%           		 	 		       t p7g =#% R          f  %wH q           ض%I            g ض%I!           g = g"                    OBIf 
3<  =do    d E{  #    UsizeNoHighBit 
       Q7lju         ,     
 	 
 
 ٛ    .  
)              
 	     "  .  :   G   T  `  l   y            
A do               g 	 & 	 
5                           
f                                
        	  	   
   4       
L J  D \   4 K ƿJd ƿ d   H     I'1 Ad  Map 	  >        ^;,I %                  )   |         % #   )  R+ R = R O Rٛc R؟w R R Rg R  R  R R R  R " R 4 Rf     Ad1 2d <do d To    f  	g f~" fy"v fsp  }m%  i% Cdo< M,]' J]' ` <  ƿ D ` h    C  s  +  k     (ܬ   31`      b    8                 ܬ 
  &	    F)   eH   g 	      	    
      !    A$    aD    d    | 
               ܬ 
  $    D1   cP   o 	      	    
           ?,    _L    l               g   o   o   d  m            ,  d  ض( '             F          Ǹ ! b           ض"           g ض#           g $           ˹ M'    	%'    %M](     =do    d  #   
 O
 	               T 4  3 D   U <   	  f   	M 2fo % o- =     
   
H       <            
   Z  5\  I ,݇I 7 5 y<o 3 " y U<: 2fU<ׅe 2fE 2foa 4 <7 d            ! o   }<   p5     -    )    	        -<    -ǂ    -    -    -	    -Ċ	 G! o 
-
      0       d%       ,6       %1      $&         &    ' %   ,p6   %  ` d%   L%    %                E,6    ,6             d&       16      &+      $'         '    ( &}   1d6   |'   d&   L&    &                E16    16    }         d(       :6      '5      $(         (    ) '   9x6   ̒(   d'   L'    '                E96    96    ~         d)       }?6      (%      $)         )    * (q   ?X6   L)   d(   L(    (                E?6    ?6    }         d+       L6      ++      $+         ,    , +}   Ld6   |+   d+   L+    +                EL6    L6    }         d,       P6      ,2      $-         -    - ,   Pr6   ,   d,   L,    ,                EP6    P6    ~         d-       X6      -(      $.         .    . -w   W^6   d-   d-   L-    -                EW6    W6    }         d.       r6 
     .&      $/         /    / .s   rZ6   T.   d.   L.    .                Er6    r6    }         d2       k6 	    2-      $2         2    2 1   kg6   2   d1   L1   ,1          !     Ek6    -k6             
6  	      `   ! ` 2 : (
6    
       
6    
6     3    a >  a  H `       `     j         6  	        `        ,     Ж  (6  a  * '* t y  B 6  	    6     h     t   |    Ж                      Ж        dS    `      `          `   L  $S         S    < R}      .     a S   LR    R  dS  I  &     +                              \    `      `           `   L  $\         \    = [   $   '  (  %  [   L[    [  d\    &     +     b    h    I    G             |h    `V      ` Y      W   `   L  $i         i    > h   h   (  m  j  h   Lh    h  dh    &     +                              r    `      `          `   L  $r         r    ? q      )      r   Lq    r  dr  O  &     +                              L    `      `          `   M  $ك             @ w      *         L      d    )     -     <    B    #    !             |    `1      ` 4      2   `   M  $             B    F   ,  K  H     Lɡ    ԡ  d    )     -             r    p                 `      `          `   M  $̹         ڹ    C ɸ      -         L      d  9  )     -                              T    `      `  
        `   M  $             D y       /         L      d    )     -     E    K    ,    *                 `:      ` = 	    ;   `   N  $             G    O   2  S  P     L   ,  d    *     .             {    y               
      `   "  . 6 (    
                6    a A  a  K `       c     m           
        ` !      -     Ж  ( 	  7 $7 r w  ?   
         g     s   {    Ж                     Ж            d  ƿ D 4 3    
              I     a |  ƿ D `    1     9  Ї      d    `      `          `   M  $             M       .     a ɚ   L      d  ~  )     -         %                         `H      ` K       I   `   M  $             N    ]   '  a  ^     L      dܣ    )     -                              |İ    `      `          `   M  $             O       (         L      d  M  )     -                                  `      `          `   M  $             P       )      ȹ   L      d    )     -     ;    A    "                  L    `0      ` 3      1   `   M  $             Q z   D   *  I  F     L      d    )     -             p    n             |    `~      `          `   M  $             S       ,         L      d  7  )     -                                  `      `          `   M  $             T       -         L      d    )     -     &    ,                     T    `9      ` < 
     :   `   M  $             U |   M   /  R  O     L      dՆ    )     -             y    w                 `      `  	       `   N  $             X       2         LȻ   ,ӻ  d  B  *     .                                
      `   "  . 6 (    
                6    b A  b  K `       c     m           
        ` !      -     Ж  ( 	  ^D $lD r w  ?   
         g     s   {    Ж                     Ж        d    `W      ` Z      X   `   M  $             c }   k   .  p  m b    L      d    )     -                                  `$      ` $       $   `   M  $             d    $   '  $  $     L      d  %  )     -     2%    8%    %    %             |    `'%      ` *%      (%   `   M  $             e    <%   (  A%  >%     L      d  %  )     -     %    %    h%    f%                 `v%      ` y%      v%   `   M  $             f    %   )  %  %     L      d  /&  )     -     %    %    %    %             L    `%      ` %      %   `   M  $             g w   %   *  %  %     Lȏ    ӏ  d  {&  )     -     &    "&    &    &             |    `&      ` &      &   `   M  $ƭ         ԭ    i Ѭ   &&   ,  +&  (&     L      d  &  )     -     k&    q&    R&    P&                 ``&      ` c&      a&   `   M  $             j    u&   -  y&  v&     L      d  '  )     -     &    &    &    &             T    `%      ` % 
     %   `   M  $             k y   %   /  %  %     L      d  &  )     -     %&    +&    &    
&                 `&      ` & 	    &   `   N  $             n    /&   2  3&  0&  ΅   L   ,  d  &  *     .     u&    {&    [&    Y&               
      `   "  . 6 (    
                6    b A  b  K `       c     m           
        ` !      -     Ж  ( 	  eK $eK r w  ?   
         g     s   {    Ж                     Ж        ΍    d΍ Ї Dۍ + 3    
              p     b |  ƿ D `    1     9  Ї      d    `+      ` +      +   `   M  $             t    +   .  +  + b    L      dש  U,  )     -     +    +    +    +             ݲ    `2      ` "2        2   `   M  $             u    42   '  82  52     L      dв  2  )     -     v2    |2    ]2    [2             |    `k2      ` n2      l2   `   M  $ݿ             v    2   (  2  2     L      d  $3  )     -     2    2    2    2                 `2      ` 2      2   `   M  $             w    2   )  2  2     L      d  s3  )     -     3    3    2    2             L    `3      ` 
3      3   `   M  $             x z   3   *   3  3     L      d  3  )     -     `3    f3    G3    E3             |    `U3      ` X3      V3   `   M  $             z    j3   ,  o3  l3     L      d  4  )     -     3    3    3    3                 `3      ` 3      3   `   M  $             {    3   -  3  3  ͆   L      d  ]4  )     -     3    4    3    3             T    `3      ` 3 
     3   `   M  $             | |   $3   /  )3  &3  Ғ   L    Ē  d  3  )     -     i3    o3    P3    N3                 `^3      ` a3 	    _3   `   N  $                 s3   2  w3  t3     L   ,  d  4  *     .     3    3    3    3             (   	         "  (        : g    0     9  d   "' d 8 @    
       b  j                     c   c       d   d   g  (         __self_0    .    B  gF 	       H   	    	           0     @    P    eK       e  l    x             	   aX  9  d  9  d 	  
 1    9  d o L R    9  d o  ot oo      
,  	  8    E            X	   )"  : g  : g    2     : g 1"      : g y"      	"     
     	X   .    ,     	;   A   H  O  V  U"   gg( 6"  外"9   dd0 IW H 1                         X  `  k  s          g g o     j   q   {           __self_discr     __arg1_discr         __arg1_02    s        -"    -"    )"    )"    F  	  B  
          y         ,   	   \      #       eK      E  9  dU
  9  d om Eē  
    9  d o &&  ) *̢        $b0pfo ++  RawVecInner - . cap /        +a8o  ˹  9  d o  	 9  d o  %
  	 
 Ǹ E 
     9  d og )$[ #)X  
f      )&[     )[  
 
 )   	                     5 5   4 " Bfo$ BfoETI  Dfo-N  [of-U [  ]of}ޒ -g ff5͓ %	 ff5.g	}%
 fE%
$Mg fԓ 3 fE #[ o f.*F  9$F[  4_K, fu'[܊M, f}'[pI fe"X ffI( s џ-  $   ,      <    EǸ g   E  UU ˹ 8 f    w      errt    -    -    -    -    -T     -   	  -   	  %-g	 ˹ 
  	 PhantomData         kti@feK  %%
  
  %}%  
  %$g ˹ Ǹ   eK  H˹ Ǹ    data%#[    	#[    %ŰI    	հI     data_pointere#X     metadataE#X     v(    ` , f g!, f g  %F          	      (( : ( ( pool        j'X   V [  m u     	   77 I 76 7 phantom6 76        ;!oe  E            OBI77  ArcInner 7 strong6 76 76      ~+6U\m% %%       $%  	   M'J  	    ˊ%  a    b Z      q1H% )    ..  
UnsafeCell .+      NjUg%      2    g   :	0 gg        G    F             Y'       ÈeK          gȈ    =-   	   
 E
 
 
      Z)
  
7 o   
 eK          kti@eK o  oЬ
     (     
           	       	 ի 
    e 7  g  (      ~   ߜ  8oc 
  8o=%  < E%'CJ e%   .gg [gg$Z~ 7o1) E =ɬ d   d                g E       o  U  E  ղ%     1  娫  t     -     old_size    -    -%    3    %'J    )     eK          g  order) eK        ´ô   ĴŴG   ƴǴF   ȴɴ       dqB  -     dst߆	    	 eK          g -	 eK     Z
  
  -Z
 eK o     4 7  g   gg    ۊ9 gg    9 gg    : gg    : u         : \:    $: D::           g  Ğ:   :     9]      $:   ,9   D9             C           B <B    $B DBB           g  B   B     Bi                  92g   ;                 &9QF  B   ,B   DB               ,       K  LK          $ LK   7  DK K K  K7    
          L   L     J       <     <         Z@f   |K   DK   DK ))  FindMatches ) re ) cache )<        4w,   R  S   ~                     n \n    $n Dnn           g  Ĉn   n     mt                  92g                    2ʾ  m   ,m   Dm               ,       !  L  	        ' l   9  D̓  Ճ  B    
          ׃   ރ            =     <         80Y      DƂ   D؂ ))  CapturesMatches ) ) ) )<        g[-n   k  j                        L  	         M  %  -  0  
)                 g    ީ1    
                        |     =     <         <ت*   lƩ   D   D )) = ) finder )	        Z&r         q     s     E     input-             !  L  	        ' 4   9  D ,    :    
                         >     <         ª   t   D   D  g , )) > ) splits )        )P;5E   [  Z   s     u     y       ͏          D    $ D          g   Ԝ             o      o         tYF. f l   ,   D  ے    "     $      rep)       Ւ#        փ Dۃ Ւ $փ D           g   ۃ        Ղ     l   ,   D  ے    "     $     Γ'     c  Ւ      Yښ ښ 	     !dޚ  ے 2 tޚ  S  	   LΚ   Ӛ 	     4	 $
 Ĉ 
K 
L 
 L     
M 
O -S N    Pool         3h5q))  Cache ) 
capmatches  ) pikevm  )  )ِ  )  ) 	revhybrid         tsVP   Box     l    H	            oBT eHQ 5HR 	 T     Ø       l    H	 ї  create  stacks  owner  	owner_val        Te\k4o    ̢       FJ5ݛ          OBIݛ G S 	 T ݛ  Y R  S   rH R Q &-H ڛ    
  f       eK % 8  < )$` 79 %a  %7  Uo V E7 eK o-7 M7  f   ~ ~        E0n Ka +  d  
'b &,* b                 92g              92gg c,,+   W  ' d 	b   ŋ
'd  ,-   eK        g  	       	    T,    g  Q˝!/j / j       /j  32 tٞ! Lޞ" 	 #             g  ,	#    (          g	 R "  # g j !   "   {!  
 k" ! 	    eK  "  eK  2! 8  /       #     0 $ 	 $   ų.n n     V   n  <;   4 & ( ' 䌡 ( 9 8 A       b=  m  5 ?4 ޡ+    
  f     )  Ʀ &     @+ !) <- t .    a _  j`  . ZeK oXV f f D 
1 
 20      0              92g              92gg 0˨ 0˨      	     EF 
 4   1 ө g 
5 	
 5  1 ө 6 T7 4 85   # L    500  0 
group_info 0 pid 0 slots        fzeY   L   eK           g Id = D @   6g A6 LB 	 B              g  ,B   tC LD 	 E             g  ,	E    (          g R D  E g j C  4 D   {C   kD C 	B 6  
5     D  eK  7C =B 46  <
5     I
5 
 I 	1   
I  "" p
5  eK
 $ 1	0 	F 		 F -    )   @  .   =  VU z &  eK    3	  <      J  Q   eK        !      Ǧ  
1  
  
1  	0     
 J 	1   
J  ##   	     !HR H M 
    Q  HQ T S e˼P +&U u+ V     U 
6    +           g V  + P 
6      U eK  777 No    77 Yes   7 7 Pattern7         N>̣_! -,      ,U >(# O 
1     P eK   ׼P # K 
)      L  M  O  O M L   
        K  K _ 
 
     _           g  % W 
      	 
   	6 6        Y q   
  W  
 ț Lț 4˛X 	 Y u2 X  	 յ ]2Z 
 Z 	 u2[ 
 [ 
@յ   յ X   2.2 R@յZ [ sY '2" 2[ 
Z E2\ 
] -2 \ 	Y   ]2\  )* 5] ;\ Y !X u2 ^  M2 _ -2" _ 	  ~ " ^  _ eK            < _ }2    ^  2 ^     %2   eK                         92g   i ( -2 ]  Y   =2  
   ]   2 ( 	7 % ` 
& fo  a eK  8 %a >$  
A fo  `            g $`    eK           g  H  eK         	  C J         M
'e 
' e  յ  
'%
 Kյe = .5
 
'   b   
' / 
'e  ' / 
'b d   	      !-..h 
. h   4..l .m }.0 l  h Ǹ &.1 m  l    ..2 g 
f  m  k  M.m S.l ..h ..f 3s e3n }-4o 
4p W%9 s g  _/:t f/: t  s Ǹ ,%: o 
 f   t  ˚%:t ^7q e^7r (> r  s f J? q  r  k  ^7r @7 p  q Ǹ ^7q .^8 n 
i  f  o  p eK          kti@f  4p 4o -
@u E
@v 	@ v  n   !^BU!^  fv %!^u 5e!^   3... g  U΂. Eڂ.V ].i  9 	!/j  m.. 1 ܞ$!/ k      //j ..f 
. f    V   .f  10 	
Ax 
@u 3n 3s   	    $y  -RC y 	   ]QCy  87 
@v -
Ax 	A x u   
A}
 Bfo %
x >w 4
 y  \ ] ] ] ]^^     b    X2c `2c    Ǹ c  
 f     c ` ` y+g     h       ` 5`    Ǹ ` a  
i  f     eK  ] ] ] i i i      k   : UH zo o}4I{ z4M    o o    ˹ }o o  ~o o  3O { 	  Ǹ 3I| 3I |   o og 3S 3Y  
f  {  |  3S     3S 3I| 3I{ H  uRE 6 ERC    o    RC 6 Mj Li K\   l    g  L̞  	     Ԟ           g  ,    Si Rj Zj     TjR  H  9I   ڢ6.nڢ.  U. V ].V ].  8 ".n 9.n   V    -.o o    դ4.o o 
p    Ǹ 
q       	r  
f      No Uo .o * s t 	t y    `6z h6z    Ǹ z  
 f     z  w w /~            w =w    Ǹ  w x  
i  f     eK  t t            > 
3 3 3s b ޟ$ % 	 %    |   
 f  %  % ]  f H  % > > G     BA $ 7 t =8 }$ }$ ( 
          |$ o ' 
    ( n           g  ( l  
     k & 
   	6 6        Y q   '     ' ̡) L̡+ 4ϡ ,&  k   &  j s  &˨ l u  
@       ol R@   @n j s l u n  	   n  BC   $ , u *+ t s  	+  r    eK             t )    s  )   r +  eK                         92gө    A r     ө r + 
      q A o  
& fo   eK  n n - 
A fo   l           g i  @  eK           g 	 /  &  z	0 	 0   /   >
  U ^  0   WU K 1 GT Q 1     P H N  Y H O !
 )
 3 	1   6
3  $  0    5  5 %2  	   U2  KL 5  _ g o D %д2  	7   Uʴ2  MN %2 7 
      2 J 2    66  Span 6  6         |,Ԓ  g T    g %2   
            U2 7 
    2  2 J   }2m2 R     2 6  7  u 7 9 	 9 -  $ :   6g ;6 # ,   :  @   @  RQ !           Ǹ      @    
f       
   3        @ #@    Ǹ   
 f        A9                  Ǹ    
i  f     eK               T    @ : .       P    :  @       :  .     PO 	    9 Ф= 	 =   $ >  5  D ?  -   Ф"tԤ  ے= U> D? :< Ԥ         9   S   b_ @ \ . Y. V   "T R   .  @  O X    O X X    Ǹ Y     @  Y  
f        U *	 V U ^ W    C C    Ǹ ]  
 f     \ [ [ <     ]       ]     Ǹ a a  
i  f     eK  A J > > G      BA  8 X7    u	 	F 	G 		 G  -  |	   
 f  G  	G "- "" &  +"  !            F   W                #         ڢ  	  
    
5      w5 ] GP *>e#  !0R 66  6" 6 span" 6 anchored" 6 earliest"        _ 5ѼJ " fmR( " f+ -R fE+m` L\ `_ 6`j` LյT b @յ͘`1 @յ@ 2` 2 R2 C2 RLқ L2  Rj ~` ! !f Af" # Afoʒ(#6 $ >fo)$:c J  Peekable 	@  peeked@        @յ) 	 @յ) e
' '2' R5
',) 2),* *ռ7   <۝ I. gff̝ .- hf].-!.  (.... gfN..0 0q.1 0_ Bfo G-3 qf53^4 i f04^5 5^6 5^7 5V%6 fő^5I6 ff5^5I: fI:<U7 f^5VU< fiU<BI7 fE^5˯
J7 fE^5	3 A fo3
V@ @!C^@ i fU
@Q  f RC CR"C C2E 2foERCWF Cf         ӽ@3 o%F7G Cfo5ȩG%KH BfoH KI BfoKIKJ DfoKJKK [ofKKKL ]ofKLKM ffKMJN ffJNJO fJOJM fJMKL fJLJI o fJIJS  JSJT  JTJS fJSJS fJSJS f"MSJX ffJXG gf庩G9.Z hfZ Bfo |\ qfx\u] i f]q^ ^m_ ^i` ^e_ fa^kL_ ff_^dLc f`Lc<U` f]^VUe fiUeL` f[^Y` fT^R\ A foN\Ki iHi i fEi3   , % gfϘϘ  ј         D!@gtП .m hfPm.n n?o gfn;p p7q p4 Bfo@ 0s qf,s)t i fU t%u u!v uw uv fuNv ffuNz fNz<Uw fuVU| fiU|QNw fuw fus A fos  i fl<       L\  6  LT  @ @   Rө`%  RL֡  R8%  Af"  Afo >fo2:c	 J  	@ @        @-. 
 @@.   R ˨    D- 2 R    j2    ۅjp   +2 Rj 2 ^	   < [	 gff X	 hfU	T	  N	K	 gf$I	 G	 F	 Bfo B	 qf?	=	 i fj$;	 9	 7	 5	 f2	=R ff2	8R f5R<U f4	VU fiUwR f6	5	 f1	0	 A fo-	+	 *	 i f(	   , 	 gft  hf 
 gf1
 
 
	 Bfo 
 qf

 i f&
 
 
 
 f
S ff
S fS<U f
VU fiUT f

 f

 A fo

 
 i f
  l   ,   DΕ  g , ے <               92g ; ے ;   ;   ; t;յ t;  s;   G,   J,   S,  ț o ?8 )  7 7  7   H5  g 6  6o 6 g Lٝ   ٝ ܏ (&   &    '& g <     "   6 g 6 g  6 ܏ 5 o R   v5  v5  u5           ̡ o 4g 4  4  4	 4  4   r0  g 3
  3
  3 3    ܏  g L            ܏  g <     3   2 g 2 Ȑ 2 ܏ 1 o $   6   2   2  H H   	PoolGuard          %#K\s  -Ø  M 11  Searcher 1 1 last_match_end        2V   ~1 Ӓ    discard        0  e=ݛ  h=ҝ -G  1g 1 m0  %2  t/ /շ /  ]2  .  .   =2! <$ 
<% n;' ]
'  =
' C-'  #*.  ,. ,. *.  V:/g Ӟ/!/ Ǹ .0 Ǹ .1ii  Iter ii i 
end_or_leni i̢i        SUK" f ,3 ˹ ^6 Ǹ U^7 b,5 b,5 mW%9Ǹ \:  +@  +@   d*@ *@  RC  MRCǸ R]Ig T\I ;YJ 5YK˹ k]M  P\S ^-\ g ^^ ˹ _ Ǹ ` -^ -^ bǸ \c  ,i ,i   +i 7+i  :n 'n g =.n  O'n p'n Ǹ p Ǹ q .s ˹ [v Ǹ Yw -u -u WyǸ p]z  $- %-   + +ډ 7J 7J˨ y3    2˨ 2 2    1  2   ? ?˨ |>    N0              92g q9  r9 ,  =2 y  g   g    M2 4   -  70 W0 `.  	>g  Ǹ  Ǹ  0 ˹ Y Ǹ X / / YǸ s_  (/ )/   - -  Q= W* g   ) * Ǹ ] Ǹ \ 0 ˹  Ǹ  g0 h0 Ǹ !`  / /   j. .  	     
     
     Γ
     Γ8E    <%E  	  A     
last_matcht    	8A    =@     m-@    <j>  &  =  -  tޢ	  @  	f=
  0  t<  4  d<  5  ͡M<  6  O    O    Eƻ  L  -ػ      M  <  O    N  ->#  P  %R    E    E(    E+    -R    %`    	%_    %`  
  	%  
  M1    	  X  -2  Y   x5  ]  -2     -2!     capacityE#  V  Eȍ$  V  -ٍ$ eK o E6 %  V  -6 % eK o ]i&    M	'    4(    M2)  c   dest%,*  c   src,*  W  5,+  b  ,,    -.-    -.-f g   -fg   %..f g   .fg   -..     new_len=..  k  !Ӛ!/     rhsٚ!/    .0    5.0    	.0  k  1  l  2  m  M3    -3  g  --4  g  -^5  g  	.6  k  7  o  8  p   rW%9  g  `:         OBIf  g  `;  g  ض[<  k  ض\=  k  a>  o  %J?  r  -J?  k  M	@    	E	@  n  n5A  u  -!^B  v  -QC     borrowed1D     owned	E  z  -F  z  -G  z  -G eK  -H  z  bI  z  bJ  z  bK  }  bL  ~  bM  ~  bN ˹   bNeK  ~bO    {bP    ybQ ˹ Ǹ {  bQeK  bR˹ Ǹ {  vbS  {  	tbS  |  rbX  {  	obX  |  abY  {  XbY  |  Z    Z eK  %.[ eK  -.[    Q\    N\    K]    H^    	t_    5`    8a    ٩Ib    cc    cd    ض[e    ض\f    3dg    h    h    i    	i    8j    k    ,l    tm    rm g   %.n g   -.n    Go    p    p    	p    q    r    s  $  s    t    u    	@v    w    x    ٩y    ez    e{    ض[|    ض\}    f~              $  	    V:        kV    oV      (  	  (    '  	  '    ,  	|        j>      *    *    .    .   eK o   .   eK o ]i  /    2  =  1          Ȧ          8   eK           g %2    2Ѕ    . g   .g    sp g   g    self__haystack$    D    ,        %2  7  .  6  	  ;  	    	f g @  	fg :  	f g @  	fg :  	    	    	  :  	  @  	    	  @  		            	  9  	    	    	    	            ٩	    j    j    ض[    ض\    j    	    	    	  9  		    $?    	      A       g @   g @                @  	              F              	            ٩    pl    xl    ض[    ض\    l              F  	    	A        +	AR f M^ f  Ql f gNl f g. f  ; f  R f X f  e f  9  W pftɜPN N 0aKhKےOOے-O5KO ]U I ˷)G yS rD ]. A A h@ @ ;B =m @ @ WB ]. g= e= = ]. @ /A B _ G T E NЅl5 4  rB B A A B  = = ,>  RA A %C        Ƴ# ˳    $Ƴ Dݳ           g  ˳        r     l   ,   D             I         ,  #    K K     K  
6    K           g   K  
6       eK  K      K    eK      %       Ⱦ     
 g       %I 	     IEI " f 6 %I uI 	  8  	   8   I %I     ݾ  	   L	 	 	     4 
     5\  	 B
 ,           R9 8    eK    8  8    66  	HalfMatch 6" 6"        w1Y%c  8	 ]̕    g  8	   
g    8	  8           0  " f / / f/f  " t N " Hl  " fþ % Rg  g  U v% 	   99
 " D
  l   ,   D  g ,ؽ        f [               92g         RPg PP %      o  U;g :  
                                  E     eK     M     eK     EI    %I         eK  g<	     hm
    -    $  tϾ  Q  <            g             "   g                             L  	       0    R R 	    R  
6    R           g 	  R  
6       eK  [R      YR      
 g     	           
    	     ~ |       	   D D   d O  :       f5  " fx ^5 Z5 fV51  " f܆    $   ,   D  g ,       f z  Tg T      f     h     k                         ,  t  MU        
  sU	 pU 
    U 	 
6    oU           g 
  mU  
6      	 eK  U      U	      
 g     
  [	 b	     Z	X	  	 P	 N	 	 	       	   L 	      \ e R      m      5   % 6   r  1 B	  	   B	   (       B	 PB	   
      LB	  HB	    66 ; 6" 6"        		:  $B
 L M     g  < %    g  eB  
             	 mB
   
    hB
  cB	           9  " f2 9 9 f9	  " f p  U : 5$R l:q/ R   : e/	 	,
  C	گ> " <4 " 5: " ,- " 5Ǳ/   (     ,   D  g ,   ,   f >               92g     Zg Z          $	  E	 "E	g   g    
                   !    !    !     
    	    -    -ĭ    y"     tR    	    	    F
    ͡        -    -    -                       t s\  hG       D              g        g  >G   
                           "   "   "   " \3         >    g    g     r   	͡                                               _ref__haystack 
  {^ x^     ^  
6    w^           g   u^  
6       eK  ^      ^      
 g       c j     b`   X V  L	 	 	      
 e !      m     ҵ$  u               92g33 3 	PatternID 3       %]  eK   uǙ AA  An< A	<        <AI/~              92g33 3 NonMaxUsize 3       p|vv o -ޛ  &&  ) *̢        $b0po        ˹   N  	    5  	    E 
    g =([ ')X  

     =.[     >[  
   *	e  	 % -  % %( "  %- %3 ǔa&# (* &   77 I 76 76 76        ;!((  RegexI ( strat ( info        Vy% o '             OBI77  76 76 76      ~+6U\)) |) *        ~* ) 	 *  z+ ( 	 *   x)) f(* m./ %( (( ( 	RegexInfo (        GjܗjW  +(  77 I 76 76 76        ;!))  
RegexInfoI ) config ) props ) props_union        3a% o ,(            OBI77  76 76 76      ~+6U\l/. i/ /   (    p0 . 	 /  l1 - 	 /   j/. X./ &0 $-   
Properties         hO P&1 ʞ#2 1   -        l    H	  PropertiesI  minimum_len  maximum_len  look_set  look_set_prefix  look_set_suffix  look_set_prefix_any  look_set_suffix_any   explicit_captures_len  static_explicit_captures_len 	  alternation_literal        I|8G o    ̢       FJ5          OBI 22 0 	 1   D2 #   0 	 &1 &0  &2 mT3 2 	#   gT32  	
 $   
                ( &       	  D L 	       ܯ|   6  
     .
 5
  y
 	 | Mn"!    f$ ! 	 f$   ! eK            F"!  W   |&2 Օ&# %3 %- %( 0 $ 	       
           6   
           V3 V3   eK    U3  U3 3  # g U44  %!6Ѭ! g3 !!eK          g!4 L U4  
g  4  U44  U3     7          EM  " f =M 9M f5M  " f ִ     Z	 	U	  	Y	  ]	G Co} Bo Boeg Dob [o_] ]oZW fTQ fMK fGD Br A7[ o 6?  9$F;  5/ u;[- }<[ԼtI 5&X I
  	NP 5z  O mA  T N" R"N# #b    %  U%8& 8oǔ&1' 8o='.(  e() ))&) #)X&  m&, 8o,- 8o-.  ./ // /o&  	&NF& Rgg gg  ;&>F3 3ݺ4  Z3r!5  ĕ5 5    ,   D  g ,   ,  3 f   = =  l  L     $    q  p  qg q   T$ u$      	 	  Ig   E՛  -˹    Em"  _?# L% &   ǔ5&  &  Eǔ&  (  ) ) )  5,  .  / / /̓ -2 2  ^<3 g C]3g \3  B                   I	        9    9    9    !    !    -  	  -    %  
  -	  	  -	    %	  
  ٪B
    M  
  ٪ eK   M  
  M    M    M    ۘ    ٘    ֘    Ә ˹   eK             ̢       FJ5          OBI    !         kti@eK  s    %8[    	8[    %I    	I    e&X    E'X    !  
  ٪    <     5!    -m"     <#     ,͞%    -&  "  -'  &  _(  &  \)  '  *  *  Y+  )  -,  %  T-  +  .  +  /  ,  ܚ0  /  1  .  Y2  $  23  #  23 eK  a4  3  	5  3  !!6  3  !6 eK          g j  g  g	 t = pw * 9  %Fsb X         (     $ $ D           g  #                ,  i $   D   $      locs(     *     h  ͡       ,    x x     x  
6    x           g   x  
6       eK  Hx      Fx      
 g       , ,     ,,  , , ,  1 e  	   e   , ,       	  L 	      4 	    $ 
   \    eK   
   0 -              ˹     Q  	   6  	            g    
             
    	               4 	       &L   3 \ b         g g   
      g  g     f L $!     g  <  $#     g ! f$  
               	 f   
    f  f     %      [^  " f S^ O^ fK^&.  " fܕ   b      	 Co	
 Bob
 Bo7 Do2 [o/- ]o*' f$! f f B  o           jU R  SU ,  i% " <%  " % % " ,&" " %"U   ( "    ,  Ƣ $   D  g ,   d  d f   A   / ד \      Cg A   3 3  #Ԕ  	 cg    A˹ 3   J  k (kg  g q   20     4     7     ;         H    H    H    0    0    8    5  	  2  
  ٪q    /  
  ٪, eK   )	  
  &
    #                      ˹   eK               ֦eK          	        	              
  ٪    ?    ?    =n    ͡        '     '!    '"  !  '#  !  Y?$    U?$    Q?$     O  gM  g t ݩ ) p7 ! %o       D         ,     g    ,    g  n   
                         |+  "  u+ " q+n+  "  + " h+[             g 	   g     A   	͡           )    )    )    )    oA    kA    gA              ,  ͡ $ $ D ,  '                ,  Ƣ $   D  g ,   ,     /     1     4     z  ͡       
l   L   ɨ ƨ       è  	     	                   :     8o  8o  ͮ ޥ ۥ  $   ,   .        9     N            ׬                 5  d     	          
           
 	    	 	   
  ݛ 	  77 I 76 76 76        ;!   o 	            OBI77  76 76 76      ~+6U\	 	    	    
  	     	    	 Ԭ -     `  iU  u e C    
          Ƌ  [ 	 b   u l   | 4       Ê   R     8oҩ 8o̩   ǩĩ  8o> 8o8  o	 3	0	 -	     ?           1DSj5     ,؊ 00  GroupInfoPatternNames 0<        һ  8  00 0 	GroupInfo 0        Lj     L      z E "      I  F	 B	 A	       -                A      
      U    R	    
    O     4           d      ϰ
         `	 ] 
        _ 	 	 
  Y  	 
  U	 C
    `    	 ߰	        
  	   ۰  	   װ	 ű      Q  Z    S  Z  Ԛ     77 I 76 76 76        ;!00  GroupInfoInner 0 slot_ranges 0 name_to_index 0 index_to_name 0 memory_extra        vAz2{` o             OBI77  76 76 76      ~+6U\           	     	     ݳ 6
       M   5eK         u +        Ւe       X# 8os 8oQ#|   wt q# 8od	 8o#  	 		 ݰ	V   D C$ 8oQm 8o<$g   b_ \ g ,   ,     L   o
  y        	 	 	   C  W                 f    °        K  
    	           	    K
        -    ٪ eK            s    p    K    m    M| 4   5        #  #            $  S3         C'     lמ      e$   -      y'           L  	        & |  1    ٤-    
               q    i    ,            @                          
              T       Χ  i    ,               _         ($         $     $   )   /    <   D   M     W            %     %   	           #   ,     6         
&  
       $  -"       5"       "+ 
  ͚&+ U&+ 	     ]&+ 	     3      D   `&  
        g    &      g 6       G    	&  
  P& 	 
  	    g  
    
    g 0    	 
  &ʸ 
 
 	  Q   h  n   eK   n     eK          K  Q    &  &+ 	 &+         eK   E K B g, 	     g,g, f 3 	$ 	)+ 	 (Q+   )+         ; B I          g, (L+ (+ %-        Ǹ (+ (        Ǹ  Xm(+   d A %)+     H&   F    ffy T+ gffw%+ gffW(+ f, f(+U- pfE(+ pfE(+               )  2   } g  g  g 0 g 8     g g  g %(+ Ǹ Ǹ   -   r                  -+    -+    -%+    -%+        f,    --              e       !       g       }    g ,   c   c     }                g       x    g ,   ^   ^     y         T  	      g D  	      g          	        E      $   , g  g w        =         D  	      g T  	      g           	     +      g   	        @    g ,   , g  g  Ȑ    "     F         T  	      g D  	      g     
 g               S    f    , g  g         >         l             g      g W ^        p   . ћ            Ǹ          
f      . 5  6.             eK  g
 n 
        
 	  Қ              $Y +Y                  O       < [  gfft X hfTR  KG gfC ?   D   ,   g "g   ~g Z   	 g   g kq Ǹ eq Ǹ cq  u         vi    tif g   ifg   sif g   ifg   ri    ji    gi    `i    [i    Yi    	Wi    Rr    Sr      \[  L           
                  {{     L   2a  g (a  g a   Ma     Ia     Ea     {         3  >    g 5 <    g 3   
 g     / 6       J   5    <  f       g g   ͡)     t    m         g  b  i             ג  Ӓ        ϒ  ʒ  	   Ē                
        |     g  	   g A <  
          	  5   
    0  +     ~   ~  RЅ u~    ۅْn~   j~ 
    r  g 	e  :  7  r   r 6 g  g   r     ]e     Je    EeЅ     g   g 	  ;e g   Reg 	  )e    %e    !e    e  	  -  OЅ       l       D  	      g 4  	     g r   
              	           S    O    Ѕ (   of g  g   H   f     af      bf    ^f    Zf            _ref__self__haystack \  4  	   	 Ʈ  Ȯ      j  eK           gf c F B       > 9  	   3     eK  ږ  
      M  	      
  
  #      g  	   g ɖ Ė  
          	    
     :   	                   I   }     y RЅV    ۅO   KG  RD D   L   ,    ; 8 w  w 7 g  g    X     x    qj eK           g nj    ijЅ    & g   ;g 	  _j g   vjg 	  Mj    Ij    Ej    Aj  	  =j    Ø       Ѕ        .  L  	       '    3 $    0        5    	      (         U ֚   
      Қ  Κ     g  	   g    
          	     
      }          R  ۅ) چ J   ۅ>ӆ   + 
    ,   $       (   -{  g  g #  R     
T     m    m    l g   g 	   g   g 	  $    m    m    m  	           l       D  	      g 4  	     g ߜ   
              	        N            w   7 g  g      Z     :      n    n    n            	ē  ēi  ē%  
       6  %§2  	   U2   	'  	'  L 	     l        &l   Q ;  䠙 7y '< 
 (           ӕ         $ "$ +            *  
       & $ !$    `g       g    ``  `] `n]        9ֹ`      $  	             OBI     ``  `] `n]        9ֹ`       v  
       eK          kti@   	 $  $  
      	 $  (ҕ #   ! 5 $   %  %  $  3 ! 
     %  /% 	"  #   ̜Ԝ  " 	 #     
    !  " eK  " !   
         #   
  K _       Rz,    	   Z     Ŭ& 
 & 	eK     fg )        ˹ ' 
 ' 	           OBI¡ L  
    & '  ' 
& [ 
 
  	Arguments  template] ]        r\[^6     	'   '} '   UggeK    ʱ˱̱    ͱα Ne   ϱб;        RAb !'  Q'  Y' 
 _	         eK    2m2 R eK ,2  / ڧ2    g          eK          g     !!   eK   P Ȕ   	 eK ,    u    eK          g Ξ5!  
g    	! ٲ   	    g   1'         9'      '  I'  
              1            '   '   J  Q  2  Rga է2    t 4  Rgה6 1	 	 t$ _ g $ y g$ g 1$ gi _ g e ך g^ g Y g ` g )       g          (  ̖   ,  g   	 g 	  	      g    t               92gԣ 	 ԣ 	  h	  ¡g         n	¡ l	 ¡ `    	  I
  	     Mէ2   g  	  Placeholder _  	formatter_  	_lifetime_     Count_        IQvY  M
ɝ I
 
 Ԝ 	$g  ȋ  
ɝ 
 =
 Ԝ ;  ˹ r E  9     	=     left_valA'      	right_valI'     	!'  eK     N    h   }    %2     msg2 eK , B         eK          g e	    ɱ_	 eK , 
    !$        ٩    ;         OBIg    K        +  #  ٩    ;  $  K  $  E eK      %      g   g   ʤ   ̜ ̜     C    K  g               n      g        g             g  P        _         | g         g       L  	      l         A    K 5 \  7                  ,   \  ܏ ԭ        0   9      replacementF     I              lԷ          L  	       & $   3 4   C    
                         ?     <         RT]   ̒   D 00  CapturesPatternIter 0 0        mMa  9  9  g   p       h       L  	        L   6  \         @    g ,   ,          8  ս       8  
         #  5 = (8    
       8    8     6    i A  i  K        d     n         9  
         "      .     Ж  (9 	 a  eK ( n  5 9  
    9     ]     i  ܿ q   y Ж                      Ж          4  	        & L  1  d        	      '         :    
 gg            g ѳ    g {   
     e   
    `  [     v   ̟  R  ޅ  &       	              92g   ܿ ,  g        5  g # g +  I     L          eK  r g   g    g   g            D  	      g 4  	     g "    
     	                   g  g z                 Ԗ        <     Z	        	           	 	  -  	 	  A Z	 E     <  <:  :eK       :  :            G   d 9   G 1^ 8o?=c 8o*^  Z  ĺ 
g ,  ܿ ,     4   = ; ڻ      	X     -    9    ٪ 9 eK        X    ^    n    K  	      | 4   >         \     $   4        Q       ܿ ,  g              H         :  
            Ж :և  
        "      .     Ж  (: 	 a  eK (eK  eK    V :  
      :                  Ж    " Ж                       ЖpЖM        	܄  4              m    œ Uτ     (   
        66  6" 6" 6" 6"        _     ٳܳ ݳ ޳    ߳          i=2*77 7 
MatchError 7"        vUM+  œ      4=      i 1        4        9 	 z 	 	   t	   ( 	         5   
      1  - 
    ӽ TЉ {    
 g 
 D܉ {	    
g 
 
  
             	    
           ҈       k }   R         /{ " <Ӊ+{ " '{${ " ,߉M{ " !{Ҫ   /     Lڈ  P  <  "   G  6  &   P  6 οg  Љg  ܉       M            <              
    
  $߈    4z    1z    .z    Kz	    
    
    
    q  +}       l       E  ~     g  C      g  S   
            A  H        b   }  "  } " }}  "  } " }q             g ;  ? g *  =     	           |    |     |    |    ȓ    ē                <  	      | , K 8  <             g ,   $          9         ;  
            Ж ;!         ډ #      /     Ж  (;Œ 	  eK $eK  eK    R ;ɒ  
      ;ʒ                  Ж     Ж   ډ   	                 ЖmЖJ        
Д  =ѐ     ډ   ډ  	    Gx	 Z                  	   -  	   A Z Z                    	   -  	   A Z u 
 u u       Ђ  u  	  ̓ u 	    	 :v Av s   		       s            x I  	   C  	 t r	      '  t < 	   ډ  '$ Kډ 8 4   eK  ]   eK    W  S   	 g   \rVr  LreK          gGr r   
g        C           
               	      l  
               
              ̔   8    < 4p   3 .p 8o*pc 8o'p  Z  ĺ$p   pp	 8op	c
 8op
  Z  ĺp  yf Rgg>wA p   p  o R                 L   /   |  <               92g 7 ډ :      ~ ܕ o ~r o ڻ     o	 ڻ    ̓ o o   g g ]     w   W         -    Gl    Dl    ^    n    K        Al	    l
    ^    n    K        p  
  ;  	  6 eK      	?l    <l    7l eK          g            s    $    $    	       x       lЕ                          
                               7            	      +
     K        _ref__static_captures_len <  	    ډ  | , Kډ 8  < ƙ   ͙         g ,Ȗ   $ ډ         9         <  
            Ж <Ξ  
        "      .     Ж  (< 	  eK $eK  eK    R <  
      <                  Ж     Ж                       ЖlЖI        t  <  	      ' $ K 8 4   ܅           J  	   D   (              eK                92g  C  	?      4	 	
  - 	    g   
   g 	 	   
  	   	  
	 G         
    Ǹ      	    
f         G        
 	    
         G  eK          	 
     	    	   
  	  	  _ f        
          f     R    ޅ       AJ " iF " =ʀ^ " ! gff}  hf   gf
 
 
  ן   Lɟ  U  X         6  -g Lg T  g     g   	g t	 Ǹ n
 Ǹ l               S    $    $Ο    -    -    -    %Ҁ g 	  g 
  %    #f g 	  8fg 
  "f g 	  6fg 
  !        	  
  	  	  

    
  	  	
            d            l                  g      g             L 	 
  
        
 Ǹ        	 	 
f        
 L    	  	           `M  eK                             ޥ                   
T      "   "  " . gff* hf&$   gf           
	  g &g .  g     g   g N Ǹ H Ǹ F                          g   g       f g   ˶fg   f g   ɶfg                           	        	    
          =  
            Ж =  
        "      .     Ж  (=Φ 	  eK $eK  eK    R =Ҧ  
      =Ӧ            ̐      Ж     Ж        ߙ               ЖlݙЖI        t  <  	      ' $ K 8 4   Ǩ        è   !  	      (         [     eK       	     x 4ܨ	 	
   	    g   
   g 	 	   
  	   	  
	 S         
    Ǹ      	    
f         S        
 	 X   
     S  \  rT  eK          	 
     	    	   
  	  	           
          f   v  R    c      " Z " } " y gffv hf   gf~
 
z 
    ̐ L          +    pg g   g     g   	g 	 Ǹ 
 Ǹ                    $Ȩ    $    m    j    g    d g 	  {g 
      f g 	  fg 
  f g 	  fg 
      {    x	  
  q	  	  l
    j
  	  	h
    c    d    5  (6 {         lϨ       n  u  |       g      g             Y 	 
  
        
 Ǹ        	 	 
f        
 
Y    	  	  d  k  r     Y  eK                             @ G                  
     " T } " yv " r gffo hf  { gfw s   ͨ         ?g g   g [    g   g  Ǹ  Ǹ                            g   g       f g   -fg   f g   +fg                           	        	    W
           ɳ  Uγ 
     g 3  
g    س ų   
Ƴ           g  ٳ  Ω     Q   S    \  g    , ߙ <  g   &     -    x         >#  +   E%^    ii  ii ii i̢i        SUK"               92g                 OBI }%^ 	         %J^  
i       eK          kti@  %^ 	 )  
0      	 (>    
       >    >     8   e  0 
 $r^ i   m    x  A    M  K   W I d           -$^             ?#           #      /     Ж  (? 	  eK !$ k  1 ?  
    ?     Y     e   m   u Ж                      Ж        4د  	       lد $߯ K ;  4߯         K                  92g              92g    L                   4  	         L K :  \ Ȱ   ϰ     P    ұ    ,          9         4               = 
 8b  	   m% 	  	   % 
  	   )% J  	    2U$U  %U 5U  6 Z % 
         6   7   < MBb   	b 
Cb qb .U 1
b@U  e1U% b E% E%J U JU   9$F,  >I uU 	g ,   $  
b  !b߾ ` M 2      S     %         8 eK  !Mb       /eK  	!
b         %.U    %U    %%     
subtractedU%    K	    K
    %J     origin5ġJ    %U    5U     pointee_sizeeU eK          g jI
b   UU    8  g  %F % U @U       @͹        @%            7 9_    	6 6        Y qO 	  S    s         
 
        
  
i       eK  
 
 
  
0      
 a_
  
    g )_  
    
  	_
  )Ȅ  
0        	̄   (@    
          @    @     =   t  0 T  0 0 5/ i C л   л                     g ~       #     b        v  	      b   k        A͹  
            Ж A%          #      /     Ж  (A 	  eK "$eK  eK    R A  
      A                 Ж     Ж                      ЖgЖD 	       	t  <  	      ' $ K 8 4 »  Ȼ[        Ļ`    	   $   (         eK     
             1 1
 1 5   	   $   ( 1 1
 a   
          
         
     g      g 1	 = 	 
        
    a  
  	  	            R      w     1 R   ۅ 0    ۅ1   +               92g ̑  л L               92g     d      1   1 g  g        :    5         group,ɻ    $             g 
  g    g 
  g       k    g  
  c             q       4    	   $   Y           
              g      g 1 =  
            a   
                R? d     ۅ1_     ϻ  ;   j  M    1 g  g              1    ,     g   g    g   g   -                L       l       D  	      g 4  	     g =   
              	           7    n         g  g           b      F    B    >    '        <  	        L K :  \         Q    ұ ռ   ,˼          9         <Ž  	        	      B  
     f    g     	 
  

   	  ߾ 
 
  	 	  
   	          C
 
 
   ӽ   ڽ     7   :   <ͽ 9_ 6=Ȉ$  =_!  <       
 

 

 u
    ,  >I  g ,  л $    ߾ .
 
    g        \     %        	  =   
  a  eK  g   %_    	  "   
  A  eK  gg      	    
  5 eK    	   
  *eK  	             	    
    
  	  K    K  	                   eK          g >       8  g          $    
           O         d        5            
              V        @           `nQӚ     d        d        <  	               ] ]     ]        ]]  ^ ^ ] ] ] ] q          o   ]      	    n  L   $  ܏   	  *    ^ ^ +^  M     O     R     \^    `^    d^      _      $  	        d   5  %         V        L           <        4  	               ` '`     `        ``  a` L` ` ` ` ` q          n   '`      	    o L   $  ܏     o      ` a u`  P     R     U     `    `    `      Oa      $  	        d  o 4  $         V        L          9        l  	       
    $ <  q  H P T          4 f  D   )  " ,	 ,
 , & 	    <         Ǹ b 
 
 f     ~             	       Ǹ    
i  f  
   eK  , ,
 ,	 A J J      ai         / 8 A f   2                          Bfo . qf@H i f,a m y  f ff f<U fVU
 fiU
 f f  A fo7? J i f]     q L   $  ܏    R          " g  ˹  Ǹ    Ǹ   A J                                     	  	    
      ٩    ;    K	    ض[
  	  ض\  	  K  
  z    w  	  t    	r    A    p     f    9 &  a      HB  
        q $      0     Ж  (B 	  eK #$ l  1 B  
    B     Y     e      @           `nQӚ q      Ж                       Ж:       4           t  q 3 $   ̨        u         L   $  ܏   !   *     ,     /     l        4          d  q 2  t        `       ċ d          9  Ռ      (C          C     $        A           ex.3  \    g   p     z  `C       `D  
         "      .     Ж  (D 	  eK $$ j  1 D  
    D     Y     e   m   u Ж                      Ж          4           
  f     ܒ    
            _        L            D            4  f \ D .  ܥ   $   $f  \ = A  	   4     c Ԅ 	  
  f         
        $   
                          ̒  \   \  8   <     4     7    t  ƒ }      E  	         "  . 6 E  	     Z             	   -  	   A Z Q                     	(  ȸeK          g      	   
 
  
      >
  
7 o   
 eK eK o  o
     (E    
        E  	    E         7  g        u   =  8o+ V c 8ox  Z  ĺ̺  ߺ .g  [gg! 7o4= E L r N  r  Y  =   F       g        ˻ ڻ     Q          ;        ^    n    K             eK          g ռ eK     [    p	    	 eK          g 	 eK     
  
  ν
 eK o =     7  g   ( H h           7 \7    $7 D77           g  Ĳ7   7     6\      $7   ,7   D7             C           ? <?    $? D??           g  ?   ?     ?h                  92g   ;                 ~Z  ?   ,?   D?               ,       H  LH          $ LH   7  DH H H  H7    
          H   H     G       <     <         S`jЇ   |H   DG   DG       %     (       ˤ-         j \j    $j Djj           g  ļj   j     is                  92g                    1&8k  j   ,i   Dj               ,       ~!  L~          % l~   7  D~ ~ ~  ~B    
          ~   ~     }       =     <         Qx,N   ~   D}   D} ډ      %     (       .         L  	       $  $5 ˤ E  N Z b  
)                 g    ޡ1    
                        |     =     <         +O   lơ   D   D  M  M  $  2     4               ˤ$       !  L  	        ' 4   9  D ,    :    
                         >     <         r.`   tѷ   D   D  g ,       3     5     9       ]          D  ے $ D          g                o      o         tYF.  d   ,   D  ے    "     $     Γ'                D  $ D           g               ܲ d   ,   D  ے    "     $     Γ'     c        Yҏ ҏ 	     !d֏  ے 2 t֏  S  	   LƏ   ˏ 	    ܲ 4	 $
 Ā 	R ~	S 	 S     R	T Y	V Z U  Ø[ X Y  [     Ø  ՜   Z 	 [ ҝ  Y  Z   n Y X & Ґ    
         eK % 7  < y&h (i )j  )   ^ eK o"( f (j +  m  +k . k                 92g              92gg lH/   _  + m 	k   i+m  ,-   eK        g  	        Tҷ0    g  %  
 g       ]Z1p }@Z3o  3@Z hf %@Z  -@Zo 0U@Z t" LǓ# 	 $   ϓ          g  ,	$    (          g	 R #  $ g j "   #   {"  
 k# " 	!   eK  #  eK  2" 8! /       #     0 `' %  ' 
Ϙ g     ys }Zu  uZ h' %Z  -Z :UZ   4 ) ( *  +               ? . ؖ   
       ,   )     ?. !, <0 j  	   % 1     Λ Μ  Μ   1 eK o"( f (ϸ D 
4 
 53 Ϟ ϡ    3              92g              92gg 3HТ 3    Ϟ  	   iО  EF 
 7   4  g 
8 	
 8  4  ̘9 TИ: 4Ԙ ;8   # L    8  ,L  6eK           g Id ΙB D E   9g F9 LG 	 G              g  ,G   tH LI 	 J             g  ,	J    (          g R I  J g j H  7 I   {H   kI ÚH 	G ͚9  
8     I  eK  7H =G 49  <
8     I
8 ͚
 P 	4   
P  "" p
8  eK
 $ 1	3 `	M K0 	 M 
Ϙ g   E     ( M    T b )  eK    	  #      1  8   eK        !        
4  
  
4  	3     #
 Q 	4   0
Q  ##   	     "?Y H T 
    X  iX [ Z W j \ 	   ]  ^  \   ] 
6               g ^   W 
6     \ ] eK  L      Y] b V 
1     W eK   W  R 
)      S  T  V  V T S   
        R  R  
 
     	           g  ' _ 
     A 	 
   	6 6        Y q   
  _  
  L 4Ð` 	 a  `  	  b  b 	 c  c 
@    `   8B R@b c a 'z c b d e  d 	a   d  )* e d a 	` !f  !g # g 	  # f  g eK            !g 2!   f  B!f  |   ]   eK                         92g   ] (  e  a      
   e    ( ) i 
& fo  j eK  ;)j D( h 
A fo  i c           g y(i y,&  
H    h  y&h    eK           g  O  eK         	          a  +n + n    + Kn  .$ ,+   k   H+ / S+n  S+ / f+k m   	      *3 p 	o   @Z3p  12   A*Z3AZ y  -AZ -AZ AZq  4 !@Z3    o  AZ3o 1p Ԓ *s E5r 
5 r  o j6 s 	   $5z "7t ,8u ,8v ,8w &9 u  s  <= z s  >{ > {  z Ǹ b> v 
 f   {  ~>{ ;x ;y B y  z  C x  y  u  ;y ; w  x Ǹ ;x < t 
i  f  v  w eK  ,8w ,8v ,8u AD| JD} JD }  t   aFi } | 4 /E 8D| A7t S5z 5r s $    ~G  	   G  76 D} E E  |   E r  ~ 3 v t ` %`   o ja  	   ` "b ,c ,c ,c &d     <h    i i    Ǹ bi  
 f     ~i f f m     n       f f    Ǹ f g  
i  f     eK  ,c ,c ,c Ao Jo Jo      aqi   9 EK o dܮL o d oM Q    o d o    ˹ o d o  o d o  S  	  Ǹ M M    o d og 'W 1]  
f      HW     YW bM bM ܮL y^  	   ;K  %9J 5 WG    o    rG 5 	/p 8o Ab ` ` 0 r    g   L! 	 !              g  ,!   o p p     p    8 ,u  	   Zu  ;<   ܝ*ZuܝZ  -Z -Z^ Z  8 !Zu &     Zu 5s ' ! y y   o jz  	 &  y "{ ,| ,| ,| &}     <߁    쯂 쯂    Ǹ b߂  
 f     ~߂        ߇            Ǹ  ߀  
i  f     eK  ,| ,| ,| A J J      ai   > / 8 A{ y y  ߔ( 	 (    |Ԕ   
   (  (    O  %            = T  U  + 
          U  ٍ * 
    + 	           g  + 'ڏ  
     Aڏ ) 
   	6 6        Y q   *     * , L. 4 /)  ڐ   )  ڑ ڑ  ) ڑ ڑ  
@       8ۑB R@  ڮ @z ۑ ۑ ۑ ۑ ے  	   ے  BC ۑ ۑ $ , ۔ -. ۔ ۖ  	.  ܖ    eK            ۔ 2ܔ ,    Bܔ  ,   ]ܒ .  eK                         92g   ]ܒ A ܒ      ܓ . 
      ݒ A 
ݜ  
& fo   eK  ;ݜ Dݛ  
A fo   c           g yݛ e 0 
H      d ՗ E  eK           g 	 2  )  	3 	 3   2   
  ݞ ݞ  3   ݞ K 4 G$ ,ޞ 4     Hޞ H Sޞ  Sޞ H fޞ T
 \
 6 	4   i
6  $  0    8  5   	   $  KL /     Dۘ o  	:     MN  : 
       J      g     g 1   
            a : 
       J         9  :   : > <0 } ?   9g @9 $ > 
 g   E  ?  | |  ~ > u  s Or   	     PQ     E ?    ! =      . > *    0 o j  	 =   "߱ ,߲ ,߲ ,߲ &     <߷    쯸 쯸    Ǹ b߸  
 f     ~߸ ߵ ߵ      ߽       ߵ ߵ    Ǹ ߵ ߶  
i  f     eK  ,߲ ,߲ ,߲ A J J      ai   S 
/ 8 A    B 	 B   $ C  8  Dƙ D  0   "t  ےB UC DD :A             R e  	   :  UV   85  2E /1 ,  a !* L     ( [! 	M ۚ!	    0 o j  	 L   " , , , &     <         Ǹ b  
 f     ~                    Ǹ    
i  f     eK  , , , A J J      ai   X / 8 A H  	 	N 		 N  0  |	   
   N  	N !0 %! )  .!  !               W                #           8	  
  Ș  X0    8  0S ` l    " " 6> " RZ 9 z x3k y U L\  6 LT  @ @*  
 R# . RLʐ G! R!_" "%F y ,͑ 3k$ y U%$xl 4 % l& Af3(&' Afo'( >fo(:c J  	@ @        @V(  @i( 3+ +>+ RR+Z- n-v. .7   <͒ IZ uf ?Z1 u f'1@Z2 2e@Z3 2f 4  3k5 y U55 Bfo5.7 qf@7H8 i f,8a9 9m: 9y; 9: f9: ff9> f><U; f9VU@ fiU@; f9; f9 7 A fo77?D DJD i f]Dd  j |G GG G92I 3 GRJ 5KJհK 4 KL BfoܮLM BfoM#N Dfo6N>O [ofROYP ]ofmPuQ ffQR ffRS fSɱQ fڱQP fPM o fMW  #W,X  >XIW fZWaW fsWzW f'W\ ff\L s LBZK u K 4  3k` y `` Bfo`.b qf@bHc i f,cad dme dyf de fde ffdi fi<Uf fdVUk fiUkf fdf fd b A fo7b?o oJo i f]o3   ,  ut Zs v  ,sZt teZu t	t y -Zt3kw y w 4  3ky y yy Bfo|y.{ qf@{H| i f,|a} }m~ }y }~ f}~ ff} f<U f}VU fiU f} f} { A fo7{? J i f]6       L\  6  LT  @ @?  
 R# . RL G R_ ? y , 3k y =< 4 % l Afm0 Afo >fo:c	 J  	@ @        @, 
 @, 3 > RRZ nv    + 6 R   ޅ u ,   		1o   + R     <  uf  u U0   4 : 3k y  Bfo". qf@H i f,a m y  f ff f<U fVU fiU f f  A fo7? J i f]   , 
	 ut  v 1   y 3k y 
	 4  3k y 
 Bfot$. qf@H i f,a m y  f ff f<U fVU fiU f f  A fo7? J i f] ܲ d   ,   DȊ  g , ے <               92gܲ 7  7   M7  ܲ C7	 -7 -7  ,7   *   *   * 	  d Q6	 '( 	 5 6 ޥ	 6   u3  g '5  5d    t f 5 g L˒   ˒ 	   ܲ  % g < ٦	    !   4 g 4 Ȑ 4 	    Z	  3 d : ՚	 3  3  3          ՚	  d 3g t ՚	  ՚	 2	 2 	 2   .  g 1
  1
  1Ģ 1   И 	     f  g L ٦	       "  	  	  g < ٦	    i1   61 g 51 Ȑ >1 	 ך     @0 d `   4   0   0  8C 9C œ 	 	  	   ҝ p
 p
   g  '  
  8    
    !  
"o {9& ( ) +	 +  + + 72  =@Z2 *2܏ 6*5  5 "7 g 9 ˹ : Ǹ ; 9 9 =Ǹ >  AD JD   D D  5G  @G  mK  L LǸ Mg M !N 0O˹ Q  'W܏ +`  ` "b g d ˹ e Ǹ f d d hǸ i  Ao Jo   o o 7t  =Zt %t܏ +y  y "{ g } ˹ ~ Ǹ  } } Ǹ 쯂  A J    ډ C C 'ڏ  
  8ې ڐ ڐ  
  ܒ  ۔  
  }%o \< Λ Μ Ϟ	    ݞ G6 E6 ,   1 g  g     ;  A -܏ w-  B "߱ g  ˹  Ǹ  ߳ ߳ Ǹ 쯸  A J     M:  h (܏  .   " g  ˹  Ǹ    Ǹ   A J                     Γ     Γ?    <?  	  >    t    	b>    t=    ͡d=    <:;  )  :  0  tė	  E  	:
  3  (9  7  9  8  ͡9  9  H    H    O  S  a    	  T  <	  V  p
  U    W                \  -    bl        	      
  	(  
  8    	
  `  T  a     e  q!    "    -%$    bl%    Ey&  ^  '  ^  (  ^  ( eK o )  ^  ) eK o ]i*    +    ,,    $-  l  9.  l  ȦM.  _  ^/  k  ,0    -Z1    -Z1    %?Z2    -?Z2    -@Z3    @Z3    24    M5    5˪5    bl6    t7  r  7  s  8  s  9  s  	:  u  ;  v  <  w  ٩=  s  ;>  s  K?  s  ض[@  u  ض\A  u  KB  v  nC  y  C  u  D  r  	D  t  AE  |  F  }  G    ׫WH    @I    -9J    -K    -K eK  yL    M    N    O    P    ȳQ    سR ˹   سReK  ;S    KT    ZU ˹ Ǹ   ZUeK  KV˹ Ǹ   W    	W    δ\    	ߴ\    ]    ]    %^    %Z_ eK  -Z_    8`    5`    bla    tb    b    c    d    	e    f    g    ٩h    ;i    Kj    ض[k    ض\l    Km    nn    n    o    	o    Ap    q    ,r     s    s  '  %Zt  '  -Zt    -Zu    Zu  ^  1v  &  fw    blx    !y  %  y  &  blz  &  t{    {    |    }    	~            ٩    ;    K    ض[    ض\    K    n            	    A        O    O      +  	  +    *  	(  *  8  /  	
    T    ܓ    q  -    -      bl      1    1    1   eK o   1   eK o ]i  2    5  ,ޟ  4  $    9    ȦM    ^    k  ;   eK           g R    e	     g   g    g   g   $    D    ,        7  :    9  	  @  	    	  >  	  >  	    	  E  	  ?  @<  =  	  <  	  =  bl  =  t                	            ٩    ;    K    ض[    ض\    K    n            	    A          F        M    M        E    1  7  L      bl      K    L  bl  L  t                	            ٩    ;    K    ض[    ض\    K    n            	    A        :)	( f y! f  8 f gJ f gy! f  y! f  ( f y! f  y! f  3 bQ	L՚	pK -HHےKܲ:LےK՚	G	OL   8 K   @N @ &  a f &  a M : K &  a X 8 L   OJ	  N A &  a M A; tL &  a        #     $ D           g          ɧq     l   ,ߧ   D             I  	       ,ֲ  #    j  	           
6               g     
6       eK  L      Y $   eK      $            
 g       <%
 <%
     T%
\%  <% w% % ϳ	 ѳ   	   $   %
 %
       	  쳳 L	 	 	     4ɳ 
     5\ 	 @
 *                eK %          1 &    g  a   
g           ڱ   Ҳ   >  "  Z - z x3k y -r'  " t ' " ',  y , 3k y ,'  " f܎ 6 Rg  + u ճ   1( " Dݳ  l   ,   D  g ,        f '  q  q   _    g  (   T%
 <%
    g 1 ڳ                                 bl    )    ) eK     )    ) eK     p    bl	    )
    )
    R    e eK 	     ֳ    D*      .   S T%	       &     g           (  " |  g ٳ 	              D*             ,  #    j  	           
6               g     
6       eK  L      Y $   eK      $     ڼ       
 g       <%
 <%
     T%
\%  <% w% % 
 	 L   		       eK            4   	 	    %
 %
       	  쁽	 L
 	 
     4      5\ 
 @ *	     ֻ      >  " 8 Z 3 z x3k y 3r'  " tͼ ' " '3  y , 3k y 2'  " fܼ G R _    $   ,   D  g ,   "  "  ! f j           }    g  (   T%
 <%
  
                             d    bl    )    ) eK     )    ) eK         bl	    )
    )
        ~    X T%       ,    j 
 	       
    
6               g     
6     
  eK  L      Y      
 g       <% <%     T%\%  <% w% %  1 	  	   $	   % %       	  % L 	      4 	     64  @	 * t          	 	   
      	  	     1
 L e0     g  < e0    g  A  
             	 a
   
    
  	           >  "  Z 	9 z x3k y 9H8  y , 3k y E8'  " f 6 R   	p u	 	,
  		1	 2 " <2 " %2-2 " ,2 " M2N/   ( Ģ    ,   D  g ,   6  6 f            g    T% <%  	  	 1	g  g                             
  c"    bl    !    bl    )    )    R	    e		    
    ͡        4    4    4    4    5    1    -    i    ^ T%	       D       U  e0     g  S  e0    g  \E   
            Q  X        m    2  " U 2 " %2-2  " R 2 " M22    O    	     g S   g A       	͡           4    4    4    4    (    $                 ,    j  	           
6               g     
6       eK  L      Y      
 g       <%
 <%
     T%
\%  <% w% %  L	 	 	     4 
    "   E8  eK   8 9 9          ˹     	     	   9 d: d:    g : :   
     :     : : : 8  :: 	 :
 : ; ; Օ%( "  %- %3 ;;&# Z(* &    '    )) ) *        * ) 	 *  -+ ( 	 *  A)) Z(* Z./ %(  +(   ,(   /. / /   (    0 . 	 /  -1 - 	 /  A/. Z./ >&0 $- >&1 ?2 1   -   Ђ  ?2 0 	 1 ̓ ?2 #   0 	 >&1 >&0 sA&2 3 2 	#   $32  	
 $   
                  %
 %
       	  D L 	       ܿ|  4  	E8!       	 | B"!    $ ! 	 $   ! eK            B"!  X   sA&2 B&# 5%3 <%- C%( 0 $ 	       
           6   
           3 3   eK    3  3 3  # g 144  C6C 3 CeK          gD4 C a4  
g  4  44  3     7          >  " = Z E z x3k y ED  y , 3k y D'  " f܋ AD   <D 9D  6D4D  1D/D Co,D*D Bo8'D Bo#D# Do9> [oRY ]omu f f fɱ ڱ "D o D  D,  >I Da DD :D DE  DC  T G" RB"_# #b    C%  @%C& 8oC&c' 8oC'(  Z() )) ĺ)C&  C&\D, 8oC,c- 8oWD-.  Z./ // ĺ/C&  >&6& RggsA&u3 3C4  13C5  C5 5    ,   D  g ,   _  _ f 
     
   o
 ד L   T  $          g    T%
 <%
  CԔ ; GE 9g d: C 0 ˹  : C"  
# L˕% ;;& ܕ C& F& C& ڻ(  ) ) ) C, ڻ.  / / /̓ C2 C2  3 g 3g 13  @               V                    3    bl    s2    bl	    )
    )
    C  	  C  
  C    ٪E    C    ٪C eK   ~C    |C    zC    xC            ȳ    س ˹   سeK  ;    K    Z     ZeK  K    B    	B    B    	B    B     B     E!    ٪D!    B"    #     ,%    B&  "  B'  &  ^(  &  n)  '  K*  *  +  )  B,  %  C-  +  ^.  +  n/  ,  K0  /  1  .  G2  $  R3  #  e3 eK  4  3  	B5  3  B6  3  B6 eK          g 	8  gJ  g	 ,  r T% : B C         (     $ $ D           g  #            Ģ    ,  w $   D   $     %     '     e  
       ,    j  	           
6               g     
6       eK  L      Y      
 g       <% <%     T%\%  <% w% %  1    	   $    % %       	  L 	      4 	    $ 
   E8    eK   8   9 9              ˹       	     	   9 d: d:      g : :  
     :     : : : 8  :	:  :	 : ; ; E8           4 	       &L ݩ 1 \ w               
               1! L" e0$     g   <"! e0& !   g " g]'  
          !  "! 	" a!   
    !        (      >  "  Z eU z x3k y aUT  y , 3k y T'  " fܕ D   D	 	E	  E	E	  )E	1E CoGEOE Bo8kE BoE# Do9> [oRY ]omu f f fɱ ڱ 5F o JF  ^F,  >I Fa FF :F FE
  F	6 R 		 u   ,!  		1  2" " <"2# " %2#-2" " ,"2% " M2%{M"   (" #Ģ    ,  
 $   D  g ,      f [      ד \        g    T% <%  I	Ԕ ;	 GE 9g d: J 0 ˹  :       1 g " "g " "  5D     H     K     O     3	            !A    bl    @    bl    )    )    K	    K	  	  K	  
  ٪I
    L  
  ٪+L eK   DL  
  TL    dL    tL            ȳ    س ˹   سeK  ;    K    Z     ZeK  K    M    	M    M    	N    N    +N    L  
  ٪+L    R     e ܶ
    !    ͡"    "    4#     4$     4%  "  4&  "  8'    8'    8'  !  8  gJ  g ݩ(	   T% : Pܶ
       D         e0     g    e0    g  "f   
                          2  "  2 " %2-2  "  2 " M2cS        ܶ
 s    g 	   g 	       	͡            4    4    4    4    :    :    :    2          ,  
 $ $ D ,  '            Ģ    ,  
 $   D  g ,   ,     /     1     4     z  
       
l   Z             	   -  	   A Z C              :   vG  8o c 8oG  Z  ĺ  $   ,   .  ڻ      9     N    ^    n    K                 5  d     	 Z         
           
 	   - 	 	   A
 Z C 	  Z 	   	 	    	    
  	   -  	   A	 Z E     +D  5DB  B B C    
             	     l  | 4          B    vG 8oCc 8oG  Z  ĺvG 8ouEc 8oG  Z	 		 ĺ	     ?           /_O]>m  ́   ,  '   y  L   :F D FB ڻ     ڻ  	 	 	       @B    N    ^    n    K      
  N    ^    n	    K
        d 4   _ \G       d      Z
         	  
         	 	 
  -  	 
  A	 Z
 G   Z    	 	        
  	   -  	   A	 Z `J     H  H6G  .G ,G Z  a    HB   Z               	   -  	   A Z .K     B  B@  @eK       @  @         e   G   j vG 8oeHc 8oG  Z  ĺvG 8oYJc 8oG  Z	 		 ĺ	@    vG 8oFDc 8oG  Z  ĺ g ,։   ,̉     L   fK I rG ڻ     ڻ  	 	 	  :E LC ڻ           G    N    ^    n    K  
    	  N    ^    n	    K
        @    ٪@ eK        N    ^    n    K        P| 4   (M F       4!  ;!        ˕ Օ  h!  V+         W$     l   G  !   Z     $         ܮ  L  	        & |  1  ȝ  -    
       ɝ   Н     ߜq    w    ,            @                          
              ןT         w    ,               _         (Iͱ         Iұ     $   )   /    <  ٦	 D   M     W            Jֱ     JԱ   	          ٦	 #   ,     6         
K  
       $  @       @       w w j  	   j  	    !A  -A 5A 'A &A .A     'A /A     [A      nA   `K  
        g    &      g 6       G    	K  
  PK 	 
  	    g  
    
    g 0    	 
  K 
 
 	  Q   h  n   eK   n     eK          K  Q    K  
,A 4A -A B B B w w :  A   eK   A A A CA	 KA	     DA	CA  pA 	cA AA IA BA   @A        PA |C C C w w   
       RA	 QA OA NA
    eA    Ǹ NA uA    dA    Ǹ  ASA  A A TA A    HKر   F     UZ u w3k y UZ3k y UZF   ff#ZA gffwA gffDA A fAA pfAA pfA     ٦	   ٦	         
     g  g  g  g     }Z   Z    Eg Eg E g A CǸ CǸ lC ZD	 A
 A                    -Z    -Z    bl    bl            B    B    B    B    B    B	    B
    %B      %G G D E       M       g       t    g ,·  ٦	 [   [     Bt                g       o    g ,  ٦	 W   W     p         T  	      g D  	      g          	        E      $  ٦	 , g  g w        =         D  	      g T  	      g           	     +      g   	        @    g ,  ٦	 , g  g  Ȑ    "     F         T  	      g D  	      g     
 g               S    f   ٦	 , g  g         >         l        d       g      g   
 g              ~ |   	        ڞ                  6         L   {    < 5x  uft 2x u .x *x  	 <  ٦	 , f }   g dg S ݟ  h   	D     
    g`    e`    c`    a`    _`    ]`    ڒ       r -           
                  p     L   W  g W  g W   W     W     W     /q               g      g    
 g             J       <  f     ٦	  g hg W  ͡)         m                        r o ʆ  Ɔ            	   $                
             g  	   g 1 y  
          	  a   
           s   6  R	Շ u    		1s   s 
Ģ   	 h  g [  b  _  i    1 g  g   Ei     [     R    e	     g   g 	  [ g   [g 	  [    [    [    [  	  u  z	       l       D  	      g 4  	     g    
              	           u    u    	     \ g  g   @   ]     \      \    \    \            \  4  	   	 ޡ ١       ա  eK           gӡ С + '       #   	   $     eK    
     h 8  	        
        g  	   g 1   
          	  a  
        	                   I   x     6 R	u ˌ   		1x   x  RD    L  	 , Ģ   W T n   1 g  g    Y     Mn    ` eK           g R    e	     g   g 	  ` g   `g 	  `    `    `    `  	  7           	        .  L  	       '   1 $    0        5    	   $   (             
             g  	   g 1 Î  
          	  a   
              6  R  		* u L   		1'|   + 
Ģ   	 ,   $       (    1 g  g   S     
U     R    eє     g   g 	   g   g 	  $    d    d    d  	    є       l       D  	      g 4  	     g    
              	        S   ~        є |   7 g  g      Z     :      We    Se    Oe            	  i  %  
       6  @  	   @   	L  	L  L 	     lϔ         <ǔ   Q ;  ǔ 7y L< 
 M  ݐ                ܐ  @ @ <          b  
       ~ @ @   @ ̜Ԝ +@  	    A  
       eK  ? ? ?  
      }?  ( # A  A! < $   %  %  $  b ! 
     %  ~% A" A #  A ̜Ԝ !A " 	 #  B   
    !  " eK  y@" @! x@  
       s@  #   
 ¡   	        Z?& b? & 	eK     ˹ J?' R? ' 	   ?  
    & '  ?' "?&  
 
ԣ    	L   L} L   ʤeK    !L  QL  YL 
 C	  H ܔ      eK    |>z> eK ,v>  > v>    g [  ӏ       eK          g     t>   eK       0?	.? eK ,*?  W? Q     eK          g y>  
g    t>    ?	    g   1L         9L      L  IL  
              1            L   L   #  *  q>  Rg2 m>    t >  Rg6 >	 	o> _ g m>  gh> g e> g> _ g >  g> g > gj> ` g )       g        `  (    	 ,  g    g         g       ԣ      ¡  ¡        K     > B  g Q B	 Gɝ G G Ԝ =   Hɝ H G Ԝ =  ˹ E D  d     	h    AL     ͰIL     	!L  eK     8    M   b    }=    ɱy= eK , C         eK          g =	    ɱ=	 eK , D
    =    (?    ٩    ;    K    =    ?  #  ٩    ;  $  K  $  X= eK      V=    ɐ  g ݐ  g  ؛
 ʤS kE sE ̜6J ̜>J     G    O  g  
        
     U     
 g      
  g             g  7        F         c g      s  g       L  	      l         B    K 5 \ ˩ 8 Ω   ֩     ɨ        	 ,ר   \ި  	         0   9     <     ?     z         lϲ          L  	       & $  1 4   C    
                         ?     <         Bjm5:I   ̍  	 D         $              L  	        L ս 4  \         @    g ,  	 ,          8  ս       \  
         #  / 7 (\    
       \    \     6    w A  w  K        d     n         ]  
         "      .     Ж  (] 	  eK $ j  1 ]  
    ]     Y     e  Թ m   u Ж                     Ж          4  	        & L  1  d       	   $   '             
             g     g 1   
     a   
           v   6  R   u    1 	   Թ ,  g         1 g  g   J     M     R    e eK   g   g    g   g   F         D  	      g 4  	     g     
     	                   g  g z                 ԏ        zh     Z	        	           	 	  -  	 	  A Z	 `     zh  zh`j  rjeK       j  j            <   d k   M vG 8ozhc 8oG  Z  ĺ 
g ,  Թ ,     4   zh rj ڻ      	Z     <    m    ٪m eK        N    ^    n    K  	      | 4   zh         \     $   4        Q       Թ ,  g              H         ^  
            Ж ^΁  
        "      .     Ж  (^ 	  eK $eK  eK    R ^  
      ^                  Ж   
  Ж                     
ЖfЖC 	       	  4       <       <    œ <     < <  
        ;;  ; < ; ;       4        9 	  	 	   $	   ( 	 ݃           
         
    1 Tȃ e0    
 g 
 Dԃ e0	    
g 
 /
  
            ܃ 	 a   
           ʂ   ;    > {; 6  R   		 u     		1 2 " <˃2 " %2-2 " ,׃2 " M2   / Ģ    L҂  (  <     ?  ?  ? ?     1g  ȃg  ԃ       ;    J@    >@    </@    R    e      
    
  $ׂ    4    4    4    4	    h
    d
    `
    x  ?       l       O  e0     g  M  e0    g  z   
            K  R   ݃     n    2  "  2 " %2-2  "  2 " M2             g M  O g ;  M     	           4    4    4    4    G    C    ?            <  	      | ,  2  <             g ,   $          9         _  
            Ж _!         ډ #      /     Ж  (_ 	  eK $eK  eK    R _  
      _                  Ж   
  Ж                     
ЖgЖD 	       
ǎ  ;     ډ   ډ  	    ;;	 Z                  	   -  	   A Z Z                    	   -  	   A Z > 
 > ?       Ђ  ?  	  ̓ ? 	    	 > > sA   		   $    s            x   	   $  	 sA B	 $  +  2  t < 	   ډ  '$  2 4   eK     eK         	 g 1  CC  CeK          gD C a  
g        D          
             1  	      l  
            a   
              Î   ;    < aG   ; vG 8oGc 8oG  Z  ĺG  GvG	 8oH	c
 8oG
  Z  ĺpH  >6 RggsAu H  1H  H6 R      u     1     L   B   |ݎ  <ݎ      }  E  ;; ܕ cJ G J ڻ     J	 ڻ    ̓ J J   g g 1     1        ^    \;    N    N    ^    n    K        N	    N
    ^    n    K        J  
  R  	  e eK      	~O    O    O eK          g R    e    e       $    $           C       lǏ                          
                                           
      
     %        <  	    ډ  | ,  2  <    ē         g ,   $ ډ         9         `  
            Ж `Ę  
        "      .     Ж  (` 	  eK $eK  eK    R `  
      `                  Ж   
  Ж                     
ЖfЖC 	       	t  <  	      ' $  2 4                	   $   (         eK      eK &     	     1 4
 	 m : 
    g 	 ;    g *  
 g   
    y  y	o  f  d  b 	  	    v	     t	q  m
 k i   h	          

        e   6  R    ޅ 	 u     	1I " 1: " =.: " +: uf} u  	   |̙   L            1f F -g N=g W=   G  v     R    e        $    $Ù    -    -    9  	  9 g 
  9g                   	  
  	    '
    y           	l            >     g  >    g   
 g       S	 Q  ZP  G  E C  	 	   W	        ^[  W U S
   R       P 	                 " # = " = " =$ uf  u       +     = f  Tg @g @                         <    < g   <g   ʤ    Ȥ    Ƥ    Ĥ    ¤        =     U         a  
            Ж a  
        "      .     Ж  (a  	  eK $eK  eK    R aƠ  
      aǠ                  Ж   
  Ж   ݙ   ߙ               
ЖfݙЖC 	       	t  <  	      ' $  2 4   ܸ             	   $   (  Ӣ   ڢ    eK      eK '     	     1 4͢
 	 M	 HD 
    g 	 ]D    g J	  
 g   
      	       	  	    	     	  
     	       R F	  
        e   6  R   	 u     	18	 " eC " 4	_C " \C uf1	 u 4 	   |   L            1f t .	g yFg F  ӱ r  s     R    e        $    $    +	    (	    B  	  B g 
  Bg   ٪    ת    ժ    Ӫ    Ѫ	  
  Ϫ	    L
    ]  u         	l            H     g  H    g   
 g       x	 v  u  l  j h  	 	   |	          | z x
   w       u "	       Ӣ          "  F " F " FI ufE u A =           f  yg Ig I   '              A    >    E    E g   Fg                           b     -         4  4 4     g 4  
g    4 4   
4           g  }4       Q   {4    \  ұ    , ߙ <  [5g P5  *     x4    s         b#  v4   q4    4         3 3        3  
i       eK  3 3 3  
0      3 (b    
       b    b     8   3  0  3 i 5 
 n  
  y  P   Y  5  5 5 4       t4    3             c#           #      /     Ж  (c 	  eK !$ k  1 c  
    c     Y     e   m   u Ж                     Ж        4ɩ  	       lɩ $Щ  5  4Щ թ   ܩ     K       
 L          <         4  	         L  4  \         P    ұ    ,          9         4               2 2 2  	   2 	  	  ߾ 2 2  	   2 2  	    22  2 2  3 '3 2 2 3 3       Ԫ6   2   < 2  32 2 2 2 22  22 2 2 22 242 22   2,  >I 2 	g ,  
 $ݪ  2  2߾ 4 4 4      P     2     2    2 eK  2    2   2eK  	2     3    2    2    2    2    K	    K
    2    2    2    ~2    q2 eK          g o2   l2    8  g g2 6 c2       d        dճ%     ^2       Z2 U2  d= 	  i=    =         < <        <  
i       eK  < < <  
0      < 2
 '2 
    g 2  
    
  2
 #2 2  
0        2   (d    
          d    d     =   2  0 
 2 F4= 0 M4H= i ]?           t   }   4 4  4 4  4g 3 ?  ? ? >  0     3    3    >  	  =    s  S 5 .4       e  
            Ж eճ%          #      /     Ж  (e 	  eK "$eK  eK    R e  
      e                 Ж   
  Ж        	              
ЖdЖA        	t  <  	      ' $  2 4   [        `    	   $   (         eK     
 Ģ            1 1
 1 Ե5   	   $   ( 1 1
 a   
Ģ          
         
     g      g 1	  	 
        
    a  
  	  	          6  RĢ    Ģ 	 u     	16 R   		u ص0    		1   ݵ+               92gĢ ́   L  O  O       Ģ 1   1 g  g   c     R    e        ,    $    R    e     g 
  g   ٵ g 
  g       *    &  
  "             ,           	   $              
              g      g 1   
            a   
              6  R u V    		1   S Ģ      n      1 g  g              R    e     g   g    g   g   4    к    ̺    Ⱥ           l       D  	      g 4  	     g    
              	        J       .   ܵ  s    g  g           i      
                    <  	        L  4  \         Q    ұ Ŷ   ,          9         <  	        	      B  
     f    g E E E  	 
  E
   	  ߾ E
 E
  	 	  E
 E  	    EE  E E  E "F
 E
 E
 F F ÷   ʷ     7   1   < 1 61F  1E  GE E E E EE  EE E
 E

 E
E
 `G
E EE   E,  >I E g ,   $  E  E߾ !H
 H
 G   g        a     1    2    	  32   
  Y2  eK  2g   1    	  2   
  >2  eK  f2g    G   	  G  
  8G eK  G  	  G 
  0GeK  	G     G    G    G	     G
    F
  	  K    K  	  F    F    F    F    F eK          g lF   F    8  g F J F       $    
 ܲ          N    	    d        1            
              V        @           5͝     d        d        l  	       
    $ <  q	  H P T          4   D     	   #     o j 	 	     "
 , , , &   	  <	  	  
 
    Ǹ b
  
 f     ~
                    Ǹ   
 
i  f     eK  , , , A J J   
   ai         / 8 A
  .   	  B                     y   n  4   3k y j Bfo+. qf@H i f,a m y  f ff
 f
<U fVU fiU f f  A fo7? J i f]     ǃ L  	 $  	      %   .  7 ܏   z " g  ˹  Ǹ    	Ǹ 
  A J                     
        bl    t      	    	    	  	            ٩	  	  ;
  	  K  	  ض[    ض\    K    n            	  
  A        ~y! f   F A &  a      Hf  
         "      .     Ж  (f 	  eK #$ j  1 f  
    f     Y     e      @           5͝ q      Ж                     Ж1       4           t  q 3 $           t         L  	 $  	   !   *     ,     /     l        4          d  q 2  t        X    	    L          9        (g          g     $        A           ꉠs  \    g   p     z  Xg       Xh  
         "      .     Ж  (h 	  eK $$ j  1 h  
    h     Y     e   m   u Ж   
    
               Ж          4           
       ܊    
ܲ            ^    	    L ܲ           D         i+  	         "  . 6 i+/  
   77 I 76 76 76        ;!
dob  Z            OBI77  76 76 76      ~+6U\          	   -  	    A Z Q                     	(  ȸeK          g      	   
 
  
      >
  
7 o   
 eK          kti@eK o  o
 ~    (i*    
        i*  	    i*         7  g        u   =  8o V c 8ox  Z  ĺ̺  ߺ .g  [gg! 7o4= E L ~ T  ~  _  .   7        g        ˻  ڻ     Q          ;        ^    n    K             eK          g ռ eK     [    p	    	 eK          g 	 eK     
  
  ν
 eK o =    " 7  g   ( H h         ܪ1      ' Ї 7  1   1         1  F  
       ^ ~       1# ,1  s    <1    0   y   pƿ  ٳܳ ݳ ޳    ߳          i=2*~c 0  ƿ ,0  B  b J `    exprs*     1      bF Ї                g    0  ? \?    $? D??           g  ğ?   ?     >]      $?   ,>   D>             C         LI         I0  I    	      
6               g 	    
6       eK  L      Y J  
   
 g     	  <% <%     T%\%  <% w%
 % J     J  % %     J     ID DI  \ H  I:    I   >  " fp Z f fx'  " f܋J    $I   ,I   DI  g ,I       f o  g    T% <%  e     h     l                 )    )    .  tJ u  T%         V TV    $V DVV           g  V   V     Ua     TV   ,U   DU             D  ҅       ,b  b          
6               g     
6       eK  L      Y b  
   
 g       <% <%     T%\%  <% w% % c Lc       4c     \c      c8̣c   Q < 3
 c. c 4c      c   
       c c    c  % %     b    Tb b lc 	  Z	         
 
           	   -  	   A
 Z	 =  Z                  	   -  	   A Z ^"  AA  An< A	<        <AI/~o  "     &&  ) *̢        $b0po   ˹     !     	 "        g b ^"  \  b(|b "   !    &a   b   b  >  " f Z f fx'  " fܱb N   vG 8omc 8oG	  Z	
 

 ĺ
L  mN  vG 8oec 8oG  Z  ĺ Com Bo^ Bo# Do6> [oRY ]omu f f fɱ ڱ  o   #,   > I Za sz '$ 
$ # Ta   ,a   Da  g ,a      f 1 77  
PatternSet 7	" 7 which"        ҴU  .g .  Lb      /         g    T% <% r E ڻ	  
 
 
    5 ڻ       ! 0˹   *               8	    Ip                )    )    -  	  N    ^	    n
    K        -    -    N    ^    n    K        5                   !  ȳ  !  س ˹ "  سeK  ;  "  K  "  Z   ̢       FJ5          OBI    Zߜ         kti@eK  K        	    δ$    	ߴ$    %    %    8  gJ  g tb ˏ $  T% p f       Tm  n  ln    Z                   	  	   -
  	   A Z 
   Z"       !  "        ! 	 "  -   	 "  A! Z" ^&   #  &         ˹ $    %     # 	 &        g b# ^&      n( |n ˏ 	  n  Ln %' %( % (    % ' 
6               g(  ,%( %  
6      ' eK  L      Y%' ,n	  	   ѫ!'* }'+ M( +   	 g .' * 
6       +   ë0'Eȫ " 	 %ë* r) 	ȫ+  o 4o5  ), )- U) 5         l    H	
 o    ̢       FJ5
           OBI
  ) . 	 5 
   ,*/ ,*0 ,*1 &+ /  .  04 0 4  .    b0 0 
     4  ~04 -2 -3 4 3  .   5 2  3  /  -3 - 1  2  -2 . - 
i     0  1 eK          kti@   ,*1 ,*0 ,*/ 7 , 
 ii  ii ii i̢i        SUK"     - 	           g )- 4)  
7    ,  ), 5 ho 
       oE  # )      8= K77  PatternSetIter 7<"        eE|      	         o <     33 3 
SmallIndex 3       A>+   ,o 8 9 Ӡ96 }D; 6  < g7:Π9 8    9 9  6  8   #9	9  8  6 
 
p 
 p U<;  E= ;    g }<  ;            g <; p      p p  
         p  '* '+ n	 Lo       4o     \o      o8̐o  O : 1
 o. ١ɠ9    6 	96 9 8 o   eK     p t       >h   m   n    o,     '	 vG 8oc 8oG  Z  ĺ    vG 8oc 8oG  Z  ĺ Co Bo^ Bo# Do6> [oRY ]omu f f fɱ ڱ  o   #,  >I Za sz '" ݕ"> " fn Z$ $f$ fx$k " n 8' " U'm "  .) q 5)H* i  ,*a+ +m, +y- +, 
 +, 
  +0 
 0<U-  +VU2  iU2-  +-  +) LԪ])6 6Ԫ6:c J+ k 4 2 W9 4 Q٠9C:  Q:> " Tp 3< " -< =  $i   ,h  
  <i   Di  g ,i   g   Ln   F             lo   4o  D M  Y   J   [     4p    ڻ      -  ڻ     ݘ ! 0˹  $g $   ' ^'g ['  	6 6        Y qԪ )Ԫ ) -) g +          OBI  ,  - + + 0 o) g 9  )Ӡ9g 9  9  1:g <  	  E     1               I~    e    	
    ٪	   <      N    ^    n    K	    
            N    ^    n    K  "    !  5              $    %  ȳ  %  س ˹ &  سeK  ;  &  K  &  Zߜ   #  ZߜeK  K  #    #  	    δ"  #  	ߴ"    #  #  #    $    %    &    M'  	  -'    -(  	  )    *  .  +  .  	,  /  -  0  .  1  ٩/  .  ;0  .  K1  .  ض[2  /  ض\3  /  K4  0  n5  3  5  /  6  -  	7  -  ]i8    I9    )9   <  ):  7  -C;  :  -<    -=    v8  gJ  gy!    	 ˏ L  ٟ f   p &         s. |s    $s <s Ds ,s  s)   s     r      $s   ,r   <r   Ds  g ,s   (     1+     .     2     q         Lw          w \w   3  lw w   w     vB    g ,v   ,v  }        5  ~       y  Ly          $ \y  / ly z  y     z           g    z     yK      $y   ,y g           ;         
tρ   Z             	   -  	   A Z `              B   vG  8o c 8oG  Z  ĺ   L   ,   7  ڻ      9     N    ^    n    K                 Pj  
    Q        g          &+  = E )  
7       	    (j    
       j    jÃ     6   p  7    N    X     " g                  N 4       Pk  
         "      .     Ж  (kŃ 	  eK (
$ j  1 kɃ  
    kʃ     Y     e   m   u Ж                      Ж                    g               g *        ч   ؇     D     " Tȇ  "    $   ,     4 g   %     +    (             U   %       g } U 
 U         $  	        S Y        
       B   K  " L  " -@ "    $ۊ   ,ъ  4 g 2g  -   ;     -    	    >             
4  	           e@ 	     @  
3      @ ށ'  
3      	  0 D "     )   	        l   y  4  ?     $   ,͑  g ,ԑ  8  &  %    9     <     )    -?             T͚      "         C  	          W  ]   ݚ     <     "   g ,   ,  4ƚ     )         h         l  4  	        & $ "  3 4   숥    
               դV        I           -}N     ,            p         Ѧ  Tئ     -        M  	   *     U  [  Φ   
 g  Φ           g    4 	     )   
                   ŦV   a  "    t   $  f ɦ g ?  4Ѧ    h q  C     <F          s         x   Y  V  S          t   	   , , ,	 &     	 	     b	  
       ~	 
        
        	  
  
   
i       	 eK  ,	 , ,   
 Ԫ    	           g A >  
7      :     
         Ψ     @       4¨ h " V. q eH i  ,a m y  
  
  	 
 	<U  VU  iU     LԪb 6Ԫ  t   $    C#Ԫ B# . g        	 o  z     M                	          	  ٩    ;	    K
    ض[    ض\    K    n            	    y!     &       l  
            Ж l  
       f !      -     Ж  (l 	  eK )$eK * eK    R l  
      l                  Ж     Ж   f                    ЖjЖG        m  6       	     Ԫ 	       Ԫ  ޟ
  
       Ԫ   
i     	  
 eK  
 	         g   
 Ԫ       )  
7      	 (m    
       m    m     8   e  7   Ԫ i  9                 Ԫ  Ԫ  g `         &    s    L    %         n  
         "      .     Ж  (n 	  eK +$ j  1 n  
    n     Y     e   m   u Ж                      Ж        q)  	         "  . 6 q)/  
     Z             	   -  	   A Z Q                     	(  ȸeK          g      	   
 
  
      >
  
7 o   
 eK eK o  o
     (q(    
        q(  	    q(         7  g        u   =  8o0 V c 8ox  Z  ĺ̺  ߺ .g  [gg! 7o4= E L  U    a  H   Q      )  g        ˻ ڻ     Q          ;        ^    n    K             eK          g ռ eK     [    p	    	 eK          g 	 eK     
  
  ν
 eK o =     7  g   ( H h         ܕ/    7  7G Ї ` 7 /   /         /  o  
        ~       /# ,/  L    </    .      Iƿ  ٳܳ ݳ ޳    ߳          i=2*c .  ƿ ,.  C  a K ` 7  &     1      aC Ї7                g    0  < \<    $< D<<           g  <   =     <\      $<   ,<   D<             C  ψ       LG         G0  G  j  	   	  
     	 
6               g 
    
6      	 eK  L      Y	 G  
   
 g     
  <% <%     T%\%  <% w% % G     G  % %     G     GD DG  l X  G:    F   >  "  Z B z x3k y B.B  y ,G 3k y +B'  " fG    $G   ,F   DF  g ,G  4  #  # f     g    T% <%  o     r     v             ++    bl    *    bl    )    )        f T%         S TS    $S DSS           g  S   S     S`     TS   ,S   DS             E  ǐ       ,_  _  j  	           
6               g     
6       eK  L      Y _  
   
 g       <%	 <%	     T%	\%  <% w% % ` L`       4`     \`      `8`  O : 1
 `. ` 4a      a   
       a a    a  %	 %	     _    T_ ` l` 	  Z                     	   -  	   A Z E  Z                  	   -  	   A Z ^#     #        ˹ !   "      	 #       g b  ^# F   `(|` ˏ 	     )^   _   _  >  " , Z yI z x3k y vIH  y ,_ 3k y H'  " f_ 8E   vG
 8o4E
c 8oG  Z  ĺ1E
  -E
*E  7HvG 8o&Ec 8oG  Z  ĺ Co#E Bo^ Bo# Do6> [oRY ]omu f f fɱ ڱ  o "  #",#  >#I" Z"a" s"z" '"' ݕ' $ T_   ,^   D^  g ,_   N  O f   g   L`    C     t  o  0    g    T%	 <%	 UH
 D
 ڻ      G D ڻ     ݘ ! 0˹   -=     A     F         I            )5    bl    4    bl    )	    )	    D
  	  N    ^    n    K        D    D    N    ^    n    K        5              !    "  ȳ  "  س ˹ #  سeK  ;  #  K  #  Z ߜ      Z ߜeK  K!     "     	"    δ'     	ߴ'    (     (    8  gJ  g ˏY 	  s T% ٟbD f       Tk  k  lk    Z                   	  	   -
  	   A Z O   Z"       !  "        ! 	 "  -   	 "  A! Z" ^&   #  &         ˹ $    %     # 	 &        g b# ^& ^P     k( |k ˏ 	  k  Lk k' j' ' 	   %( %) % )  '  % ( 
6               g)  wD%) %  
6     ' ( eK  L      Y%( ' ,l	  	   {D(+ wD(, tD) ,   	 g D( + 
6       ,   rD(nD 	 cD+ D* 	aD  l 4l6  ]D*- ZD*. WD* 6      rD* / 	 6  ,+0 ,+1 ,+2 &, 0  /  15 1 5  /  b1 1 
     5  ~15 .3 .4 5 4  /  6 3  4  0  .4 . 2  3  .3 / . 
i     1  2 eK  ,+2 ,+1 ,+0 8 - 
 Ԫ   . 	           g ?C*. <C*  
7    -  8C*- v6 hl 
       lE  # )      8=  I Q U  	   a     s l =       ,m 9 : B:7 B< 7  = g8;B: 9    B: :  7  9   B:	:  9  7 
 
m 
 m B=<  B> <    g B=  < B           g B=< m      m m  
         m  B(+ B(, l	 Ll       4l     \l      l8̴l  O : 1
 l. B:    7 B:7 : 9 m   eK     m Y  F     ?f   k   k  s  m,  sS   b vG 8ooSc 8oG  Z  ĺlS  hSeS  rVvG 8oaSc 8oG  Z  ĺ Co^S Bo^ Bo# Do6> [oRY ]omu f f fɱ ڱ  o   #,  >I Za sz '" ݕ"> "  Z$ $Z$ z x$3k& y Z&B " l B( " B(B " 	 .* q B*H+ i  ,+a, ,m- ,y. ,- 
 ,- 
  ,1 
 1<U.  ,VU3  iU3.  ,.  ,* LԪB*7 6Ԫ7:c J B 4  B: 4 B:B;  }B;xB " Tm tB= " pB= >  $g   ,f   <f   Df  g ,f   g   Lk  	 6	    ^         ll  4l  w      z ռ       4m  gX T ڻ      W T ڻ     ݘ ! 0˹   $ $g $   |N( N(g N( FN*Ԫ EN* 1B* g ,  -  . , , 1 rB* g J: B:g J:  J: A;g J=    F"     1&     *     /     I        	_	    ٪   =  U    N    ^    n    K	    
    U    U    N    ^    n    K  "    !  5              $    %  ȳ  %  س ˹ &  سeK  ;  &  K  &  Zߜ   #  ZߜeK  K  #    #  	    δ"  #  	ߴ"    #  #  #    $    %  '  %H&    bl'    B(  	  A(    A)  	  wE*    +  /  ,  /  	-  0  .  1  /  2  ٩0  /  ;1  /  K2  /  ض[3  0  ض\4  0  K5  1  n6  4  6  0  7  .  	8  .  ]i9    A:    A:   =  A;  8  A<  ;  A=    A>    
8  gJ  gy!    	 ˏ5  q ٟV f  S &         p. |p    $p <p Dq ,q  p)   q     o      $p   ,o   <p   Dp  g ,p   (     1+     .     2     q         Lt          t \t  1  lt t   t     sB    g ,t   ,t  {        5  |       w  Lw          $ \w  / lw w  w     w           g    w     vK      $v   ,v g           ;         
t~   Z             	   -  	   A Z `         ~     ~B   vG  8o c 8oG  Z  ĺ  L~   ,~   /  ڻ      8     N    ^    n    K        	         Pr  
    A A       g A A       AA  B B A  
7       A A   (rˀ    
       rπ    rЀ     6   /B  7    P    [      g B B  B       B      C B       Ps  
         "      .     Ж  (sҀ 	  eK (
$ j  1 sր  
    s׀     Y     e   m   u Ж                     Ж        Ƅ  U   U       g U   U           g U ń       ք   ݄     D   mP  " T̈́ jP " fP   $   ,     4Ƅ g V  %     I    I             A   V       g A A A A         A  	   A     B B A      A A       B   A  " L Q " AA " xB   $؇   ,·  4 g Bg B A A  9     A    UK    A      B       
4  	         A A A     A  
3      A A  
3      A  0 D   ~  )   	        l   A  4  A  hB   $ڎ   ,  g ,Ɏ      B B  9     <     A    zA             T      D         D  	   D      W  ]   ʗ     <   ID  "   g ,   ,  4  5D >D  )     TD    h  5E       l  4  	        & $  1 4   ѡ    
               V        I           	o     ,            p           T     F        F  	   F     U  [     
 g             g    4ң 	     )   
         ݣ       ߢ   V   F  "    t   $  f  g @  4    F F  C     <F    G      G         y   a a a         a  	   , , ,	 &     	 	     b	  
       ~	 
        
        	  
  
   
i       	 eK  ,	 , ,   
 Ԫ    	           g ` `  
7      `     
              פ@       4 Z " W. q ZH i  ,a m y  
  
  	 
 	<U  VU  iU     LԪZ 6Ԫ  t   $    dԪ d X g        	 X  z     N    Y            	          	  ٩    ;	    K
    ض[    ض\    K    n            	    y!     &       tҫ  
            Ж t  
       f !      -     Ж  (t 	  eK )$eK * eK    R t  
      t                  Ж     Ж       
              ЖeЖB 	       uѵ  qA       	     Ԫ 	       Ԫ  
  
       Ԫ   
i     	  
 eK  >
 >	 ~        g }  
 Ԫ     z  kA  
7      fA (u    
       u    u     8   A  7   ԪC i               NC  WCԪ   g          B        J             vѵ  
         "      .     Ж  (v 	  eK +$ j  1 v  
    v     Y     e   m   u Ж                     Ж        4    
               %    c 0  d 7    >        L    
        b       o    c z  d             t    
              %    c 0  g 7    >        L    
       b       o    c z  g             t    
                +                      ؃gj  r  g y                   
                       g                    
               (                   Nz;2  c   k    r            
                                       
               &    i 1   9    @        N    
        d       q    i |               ܀    
               (     4   <    C        Q    
        i       v                    %    
   q            ,     8   @    G       U    
   q     p       }                       
               (     4   <    C        Q    
        i       v                    t    
                +                      +u  r  g y                   
                       g                    
               (                   ҵ9-  c   k    r            
                                   ܍    
               &    w 1   9    @        N    
        d       q    w |                   
               (    
 4   <    C        Q    
        i       v    
                %    
   q            ,     8   @    G       U    
   q     p       }                       
               (     4   <    C        Q    
        i       v                    ̓    
               &     1   9    @        N    
        d       q     |                   
               (     4   <    C        Q    
        i       v                    ڀ    
               &     2   :    A        O    
        e       r     ~               쳵    
               (     4   <    C        Q    
        i       v                                                                                                                                                                                                                                                                                             
      ,              ,      D    L    D    :,2    HD3    	8d    8|z    ;,    <    <<    =tЌ    =,    >4ՠ    ?d    ?    @\    AD    A      HT    	H    	It    	      
This crate provides routines for searching strings for matches of a [regular
expression] (aka "regex"). The regex syntax supported by this crate is similar
to other regex engines, but it lacks several features that are not known how to
implement efficiently. This includes, but is not limited to, look-around and
backreferences. In exchange, all regex searches in this crate have worst case
`O(m * n)` time complexity, where `m` is proportional to the size of the regex
and `n` is proportional to the size of the string being searched.

[regular expression]: https://en.wikipedia.org/wiki/Regular_expression

If you just want API documentation, then skip to the [`Regex`] type. Otherwise,
here's a quick example showing one way of parsing the output of a grep-like
program:

```rust
use regex::Regex;

let re = Regex::new(r"(?m)^([^:]+):([0-9]+):(.+)$").unwrap();
let hay = "\
path/to/foo:54:Blue Harvest
path/to/bar:90:Something, Something, Something, Dark Side
path/to/baz:3:It's a Trap!
";

let mut results = vec![];
for (_, [path, lineno, line]) in re.captures_iter(hay).map(|c| c.extract()) {
    results.push((path, lineno.parse::<u64>()?, line));
}
assert_eq!(results, vec![
    ("path/to/foo", 54, "Blue Harvest"),
    ("path/to/bar", 90, "Something, Something, Something, Dark Side"),
    ("path/to/baz", 3, "It's a Trap!"),
]);
# Ok::<(), Box<dyn std::error::Error>>(())
```

# Overview

The primary type in this crate is a [`Regex`]. Its most important methods are
as follows:

* [`Regex::new`] compiles a regex using the default configuration. A
[`RegexBuilder`] permits setting a non-default configuration. (For example,
case insensitive matching, verbose mode and others.)
* [`Regex::is_match`] reports whether a match exists in a particular haystack.
* [`Regex::find`] reports the byte offsets of a match in a haystack, if one
exists. [`Regex::find_iter`] returns an iterator over all such matches.
* [`Regex::captures`] returns a [`Captures`], which reports both the byte
offsets of a match in a haystack and the byte offsets of each matching capture
group from the regex in the haystack.
[`Regex::captures_iter`] returns an iterator over all such matches.

There is also a [`RegexSet`], which permits searching for multiple regex
patterns simultaneously in a single search. However, it currently only reports
which patterns match and *not* the byte offsets of a match.

Otherwise, this top-level crate documentation is organized as follows:

* [Usage](#usage) shows how to add the `regex` crate to your Rust project.
* [Examples](#examples) provides a limited selection of regex search examples.
* [Performance](#performance) provides a brief summary of how to optimize regex
searching speed.
* [Unicode](#unicode) discusses support for non-ASCII patterns.
* [Syntax](#syntax) enumerates the specific regex syntax supported by this
crate.
* [Untrusted input](#untrusted-input) discusses how this crate deals with regex
patterns or haystacks that are untrusted.
* [Crate features](#crate-features) documents the Cargo features that can be
enabled or disabled for this crate.
* [Other crates](#other-crates) links to other crates in the `regex` family.

# Usage

The `regex` crate is [on crates.io](https://crates.io/crates/regex) and can be
used by adding `regex` to your dependencies in your project's `Cargo.toml`.
Or more simply, just run `cargo add regex`.

Here is a complete example that creates a new Rust project, adds a dependency
on `regex`, creates the source code for a regex search and then runs the
program.

First, create the project in a new directory:

```text
$ mkdir regex-example
$ cd regex-example
$ cargo init
```

Second, add a dependency on `regex`:

```text
$ cargo add regex
```

Third, edit `src/main.rs`. Delete what's there and replace it with this:

```
use regex::Regex;

fn main() {
    let re = Regex::new(r"Hello (?<name>\w+)!").unwrap();
    let Some(caps) = re.captures("Hello Murphy!") else {
        println!("no match!");
        return;
    };
    println!("The name is: {}", &caps["name"]);
}
```

Fourth, run it with `cargo run`:

```text
$ cargo run
   Compiling memchr v2.5.0
   Compiling regex-syntax v0.7.1
   Compiling aho-corasick v1.0.1
   Compiling regex v1.8.1
   Compiling regex-example v0.1.0 (/tmp/regex-example)
    Finished dev [unoptimized + debuginfo] target(s) in 4.22s
     Running `target/debug/regex-example`
The name is: Murphy
```

The first time you run the program will show more output like above. But
subsequent runs shouldn't have to re-compile the dependencies.

# Examples

This section provides a few examples, in tutorial style, showing how to
search a haystack with a regex. There are more examples throughout the API
documentation.

Before starting though, it's worth defining a few terms:

* A **regex** is a Rust value whose type is `Regex`. We use `re` as a
variable name for a regex.
* A **pattern** is the string that is used to build a regex. We use `pat` as
a variable name for a pattern.
* A **haystack** is the string that is searched by a regex. We use `hay` as a
variable name for a haystack.

Sometimes the words "regex" and "pattern" are used interchangeably.

General use of regular expressions in this crate proceeds by compiling a
**pattern** into a **regex**, and then using that regex to search, split or
replace parts of a **haystack**.

### Example: find a middle initial

We'll start off with a very simple example: a regex that looks for a specific
name but uses a wildcard to match a middle initial. Our pattern serves as
something like a template that will match a particular name with *any* middle
initial.

```rust
use regex::Regex;

// We use 'unwrap()' here because it would be a bug in our program if the
// pattern failed to compile to a regex. Panicking in the presence of a bug
// is okay.
let re = Regex::new(r"Homer (.)\. Simpson").unwrap();
let hay = "Homer J. Simpson";
let Some(caps) = re.captures(hay) else { return };
assert_eq!("J", &caps[1]);
```

There are a few things worth noticing here in our first example:

* The `.` is a special pattern meta character that means "match any single
character except for new lines." (More precisely, in this crate, it means
"match any UTF-8 encoding of any Unicode scalar value other than `\n`.")
* We can match an actual `.` literally by escaping it, i.e., `\.`.
* We use Rust's [raw strings] to avoid needing to deal with escape sequences in
both the regex pattern syntax and in Rust's string literal syntax. If we didn't
use raw strings here, we would have had to use `\\.` to match a literal `.`
character. That is, `r"\."` and `"\\."` are equivalent patterns.
* We put our wildcard `.` instruction in parentheses. These parentheses have a
special meaning that says, "make whatever part of the haystack matches within
these parentheses available as a capturing group." After finding a match, we
access this capture group with `&caps[1]`.

[raw strings]: https://doc.rust-lang.org/stable/reference/tokens.html#raw-string-literals

Otherwise, we execute a search using `re.captures(hay)` and return from our
function if no match occurred. We then reference the middle initial by asking
for the part of the haystack that matched the capture group indexed at `1`.
(The capture group at index 0 is implicit and always corresponds to the entire
match. In this case, that's `Homer J. Simpson`.)

### Example: named capture groups

Continuing from our middle initial example above, we can tweak the pattern
slightly to give a name to the group that matches the middle initial:

```rust
use regex::Regex;

// Note that (?P<middle>.) is a different way to spell the same thing.
let re = Regex::new(r"Homer (?<middle>.)\. Simpson").unwrap();
let hay = "Homer J. Simpson";
let Some(caps) = re.captures(hay) else { return };
assert_eq!("J", &caps["middle"]);
```

Giving a name to a group can be useful when there are multiple groups in
a pattern. It makes the code referring to those groups a bit easier to
understand.

### Example: validating a particular date format

This examples shows how to confirm whether a haystack, in its entirety, matches
a particular date format:

```rust
use regex::Regex;

let re = Regex::new(r"^\d{4}-\d{2}-\d{2}$").unwrap();
assert!(re.is_match("2010-03-14"));
```

Notice the use of the `^` and `$` anchors. In this crate, every regex search is
run with an implicit `(?s:.)*?` at the beginning of its pattern, which allows
the regex to match anywhere in a haystack. Anchors, as above, can be used to
ensure that the full haystack matches a pattern.

This crate is also Unicode aware by default, which means that `\d` might match
more than you might expect it to. For example:

```rust
use regex::Regex;

let re = Regex::new(r"^\d{4}-\d{2}-\d{2}$").unwrap();
assert!(re.is_match("𝟚𝟘𝟙𝟘-𝟘𝟛-𝟙𝟜"));
```

To only match an ASCII decimal digit, all of the following are equivalent:

* `[0-9]`
* `(?-u:\d)`
* `[[:digit:]]`
* `[\d&&\p{ascii}]`

### Example: finding dates in a haystack

In the previous example, we showed how one might validate that a haystack,
in its entirety, corresponded to a particular date format. But what if we wanted
to extract all things that look like dates in a specific format from a haystack?
To do this, we can use an iterator API to find all matches (notice that we've
removed the anchors and switched to looking for ASCII-only digits):

```rust
use regex::Regex;

let re = Regex::new(r"[0-9]{4}-[0-9]{2}-[0-9]{2}").unwrap();
let hay = "What do 1865-04-14, 1881-07-02, 1901-09-06 and 1963-11-22 have in common?";
// 'm' is a 'Match', and 'as_str()' returns the matching part of the haystack.
let dates: Vec<&str> = re.find_iter(hay).map(|m| m.as_str()).collect();
assert_eq!(dates, vec![
    "1865-04-14",
    "1881-07-02",
    "1901-09-06",
    "1963-11-22",
]);
```

We can also iterate over [`Captures`] values instead of [`Match`] values, and
that in turn permits accessing each component of the date via capturing groups:

```rust
use regex::Regex;

let re = Regex::new(r"(?<y>[0-9]{4})-(?<m>[0-9]{2})-(?<d>[0-9]{2})").unwrap();
let hay = "What do 1865-04-14, 1881-07-02, 1901-09-06 and 1963-11-22 have in common?";
// 'm' is a 'Match', and 'as_str()' returns the matching part of the haystack.
let dates: Vec<(&str, &str, &str)> = re.captures_iter(hay).map(|caps| {
    // The unwraps are okay because every capture group must match if the whole
    // regex matches, and in this context, we know we have a match.
    //
    // Note that we use `caps.name("y").unwrap().as_str()` instead of
    // `&caps["y"]` because the lifetime of the former is the same as the
    // lifetime of `hay` above, but the lifetime of the latter is tied to the
    // lifetime of `caps` due to how the `Index` trait is defined.
    let year = caps.name("y").unwrap().as_str();
    let month = caps.name("m").unwrap().as_str();
    let day = caps.name("d").unwrap().as_str();
    (year, month, day)
}).collect();
assert_eq!(dates, vec![
    ("1865", "04", "14"),
    ("1881", "07", "02"),
    ("1901", "09", "06"),
    ("1963", "11", "22"),
]);
```

### Example: simpler capture group extraction

One can use [`Captures::extract`] to make the code from the previous example a
bit simpler in this case:

```rust
use regex::Regex;

let re = Regex::new(r"([0-9]{4})-([0-9]{2})-([0-9]{2})").unwrap();
let hay = "What do 1865-04-14, 1881-07-02, 1901-09-06 and 1963-11-22 have in common?";
let dates: Vec<(&str, &str, &str)> = re.captures_iter(hay).map(|caps| {
    let (_, [year, month, day]) = caps.extract();
    (year, month, day)
}).collect();
assert_eq!(dates, vec![
    ("1865", "04", "14"),
    ("1881", "07", "02"),
    ("1901", "09", "06"),
    ("1963", "11", "22"),
]);
```

`Captures::extract` works by ensuring that the number of matching groups match
the number of groups requested via the `[year, month, day]` syntax. If they do,
then the substrings for each corresponding capture group are automatically
returned in an appropriately sized array. Rust's syntax for pattern matching
arrays does the rest.

### Example: replacement with named capture groups

Building on the previous example, perhaps we'd like to rearrange the date
formats. This can be done by finding each match and replacing it with
something different. The [`Regex::replace_all`] routine provides a convenient
way to do this, including by supporting references to named groups in the
replacement string:

```rust
use regex::Regex;

let re = Regex::new(r"(?<y>\d{4})-(?<m>\d{2})-(?<d>\d{2})").unwrap();
let before = "1973-01-05, 1975-08-25 and 1980-10-18";
let after = re.replace_all(before, "$m/$d/$y");
assert_eq!(after, "01/05/1973, 08/25/1975 and 10/18/1980");
```

The replace methods are actually polymorphic in the replacement, which
provides more flexibility than is seen here. (See the documentation for
[`Regex::replace`] for more details.)

### Example: verbose mode

When your regex gets complicated, you might consider using something other
than regex. But if you stick with regex, you can use the `x` flag to enable
insignificant whitespace mode or "verbose mode." In this mode, whitespace
is treated as insignificant and one may write comments. This may make your
patterns easier to comprehend.

```rust
use regex::Regex;

let re = Regex::new(r"(?x)
  (?P<y>\d{4}) # the year, including all Unicode digits
  -
  (?P<m>\d{2}) # the month, including all Unicode digits
  -
  (?P<d>\d{2}) # the day, including all Unicode digits
").unwrap();

let before = "1973-01-05, 1975-08-25 and 1980-10-18";
let after = re.replace_all(before, "$m/$d/$y");
assert_eq!(after, "01/05/1973, 08/25/1975 and 10/18/1980");
```

If you wish to match against whitespace in this mode, you can still use `\s`,
`\n`, `\t`, etc. For escaping a single space character, you can escape it
directly with `\ `, use its hex character code `\x20` or temporarily disable
the `x` flag, e.g., `(?-x: )`.

### Example: match multiple regular expressions simultaneously

This demonstrates how to use a [`RegexSet`] to match multiple (possibly
overlapping) regexes in a single scan of a haystack:

```rust
use regex::RegexSet;

let set = RegexSet::new(&[
    r"\w+",
    r"\d+",
    r"\pL+",
    r"foo",
    r"bar",
    r"barfoo",
    r"foobar",
]).unwrap();

// Iterate over and collect all of the matches. Each match corresponds to the
// ID of the matching pattern.
let matches: Vec<_> = set.matches("foobar").into_iter().collect();
assert_eq!(matches, vec![0, 2, 3, 4, 6]);

// You can also test whether a particular regex matched:
let matches = set.matches("foobar");
assert!(!matches.matched(5));
assert!(matches.matched(6));
```

# Performance

This section briefly discusses a few concerns regarding the speed and resource
usage of regexes.

### Only ask for what you need

When running a search with a regex, there are generally three different types
of information one can ask for:

1. Does a regex match in a haystack?
2. Where does a regex match in a haystack?
3. Where do each of the capturing groups match in a haystack?

Generally speaking, this crate could provide a function to answer only #3,
which would subsume #1 and #2 automatically. However, it can be significantly
more expensive to compute the location of capturing group matches, so it's best
not to do it if you don't need to.

Therefore, only ask for what you need. For example, don't use [`Regex::find`]
if you only need to test if a regex matches a haystack. Use [`Regex::is_match`]
instead.

### Unicode can impact memory usage and search speed

This crate has first class support for Unicode and it is **enabled by default**.
In many cases, the extra memory required to support it will be negligible and
it typically won't impact search speed. But it can in some cases.

With respect to memory usage, the impact of Unicode principally manifests
through the use of Unicode character classes. Unicode character classes
tend to be quite large. For example, `\w` by default matches around 140,000
distinct codepoints. This requires additional memory, and tends to slow down
regex compilation. While a `\w` here and there is unlikely to be noticed,
writing `\w{100}` will for example result in quite a large regex by default.
Indeed, `\w` is considerably larger than its ASCII-only version, so if your
requirements are satisfied by ASCII, it's probably a good idea to stick to
ASCII classes. The ASCII-only version of `\w` can be spelled in a number of
ways. All of the following are equivalent:

* `[0-9A-Za-z_]`
* `(?-u:\w)`
* `[[:word:]]`
* `[\w&&\p{ascii}]`

With respect to search speed, Unicode tends to be handled pretty well, even when
using large Unicode character classes. However, some of the faster internal
regex engines cannot handle a Unicode aware word boundary assertion. So if you
don't need Unicode-aware word boundary assertions, you might consider using
`(?-u:\b)` instead of `\b`, where the former uses an ASCII-only definition of
a word character.

### Literals might accelerate searches

This crate tends to be quite good at recognizing literals in a regex pattern
and using them to accelerate a search. If it is at all possible to include
some kind of literal in your pattern, then it might make search substantially
faster. For example, in the regex `\w+@\w+`, the engine will look for
occurrences of `@` and then try a reverse match for `\w+` to find the start
position.

### Avoid re-compiling regexes, especially in a loop

It is an anti-pattern to compile the same pattern in a loop since regex
compilation is typically expensive. (It takes anywhere from a few microseconds
to a few **milliseconds** depending on the size of the pattern.) Not only is
compilation itself expensive, but this also prevents optimizations that reuse
allocations internally to the regex engine.

In Rust, it can sometimes be a pain to pass regular expressions around if
they're used from inside a helper function. Instead, we recommend using
[`std::sync::LazyLock`], or the [`once_cell`] crate,
if you can't use the standard library.

This example shows how to use `std::sync::LazyLock`:

```rust
use std::sync::LazyLock;

use regex::Regex;

fn some_helper_function(haystack: &str) -> bool {
    static RE: LazyLock<Regex> = LazyLock::new(|| Regex::new(r"...").unwrap());
    RE.is_match(haystack)
}

fn main() {
    assert!(some_helper_function("abc"));
    assert!(!some_helper_function("ac"));
}
```

Specifically, in this example, the regex will be compiled when it is used for
the first time. On subsequent uses, it will reuse the previously built `Regex`.
Notice how one can define the `Regex` locally to a specific function.

[`std::sync::LazyLock`]: https://doc.rust-lang.org/std/sync/struct.LazyLock.html
[`once_cell`]: https://crates.io/crates/once_cell

### Sharing a regex across threads can result in contention

While a single `Regex` can be freely used from multiple threads simultaneously,
there is a small synchronization cost that must be paid. Generally speaking,
one shouldn't expect to observe this unless the principal task in each thread
is searching with the regex *and* most searches are on short haystacks. In this
case, internal contention on shared resources can spike and increase latency,
which in turn may slow down each individual search.

One can work around this by cloning each `Regex` before sending it to another
thread. The cloned regexes will still share the same internal read-only portion
of its compiled state (it's reference counted), but each thread will get
optimized access to the mutable space that is used to run a search. In general,
there is no additional cost in memory to doing this. The only cost is the added
code complexity required to explicitly clone the regex. (If you share the same
`Regex` across multiple threads, each thread still gets its own mutable space,
but accessing that space is slower.)

# Unicode

This section discusses what kind of Unicode support this regex library has.
Before showing some examples, we'll summarize the relevant points:

* This crate almost fully implements "Basic Unicode Support" (Level 1) as
specified by the [Unicode Technical Standard #18][UTS18]. The full details
of what is supported are documented in [UNICODE.md] in the root of the regex
crate repository. There is virtually no support for "Extended Unicode Support"
(Level 2) from UTS#18.
* The top-level [`Regex`] runs searches *as if* iterating over each of the
codepoints in the haystack. That is, the fundamental atom of matching is a
single codepoint.
* [`bytes::Regex`], in contrast, permits disabling Unicode mode for part of all
of your pattern in all cases. When Unicode mode is disabled, then a search is
run *as if* iterating over each byte in the haystack. That is, the fundamental
atom of matching is a single byte. (A top-level `Regex` also permits disabling
Unicode and thus matching *as if* it were one byte at a time, but only when
doing so wouldn't permit matching invalid UTF-8.)
* When Unicode mode is enabled (the default), `.` will match an entire Unicode
scalar value, even when it is encoded using multiple bytes. When Unicode mode
is disabled (e.g., `(?-u:.)`), then `.` will match a single byte in all cases.
* The character classes `\w`, `\d` and `\s` are all Unicode-aware by default.
Use `(?-u:\w)`, `(?-u:\d)` and `(?-u:\s)` to get their ASCII-only definitions.
* Similarly, `\b` and `\B` use a Unicode definition of a "word" character.
To get ASCII-only word boundaries, use `(?-u:\b)` and `(?-u:\B)`. This also
applies to the special word boundary assertions. (That is, `\b{start}`,
`\b{end}`, `\b{start-half}`, `\b{end-half}`.)
* `^` and `$` are **not** Unicode-aware in multi-line mode. Namely, they only
recognize `\n` (assuming CRLF mode is not enabled) and not any of the other
forms of line terminators defined by Unicode.
* Case insensitive searching is Unicode-aware and uses simple case folding.
* Unicode general categories, scripts and many boolean properties are available
by default via the `\p{property name}` syntax.
* In all cases, matches are reported using byte offsets. Or more precisely,
UTF-8 code unit offsets. This permits constant time indexing and slicing of the
haystack.

[UTS18]: https://unicode.org/reports/tr18/
[UNICODE.md]: https://github.com/rust-lang/regex/blob/master/UNICODE.md

Patterns themselves are **only** interpreted as a sequence of Unicode scalar
values. This means you can use Unicode characters directly in your pattern:

```rust
use regex::Regex;

let re = Regex::new(r"(?i)Δ+").unwrap();
let m = re.find("ΔδΔ").unwrap();
assert_eq!((0, 6), (m.start(), m.end()));
// alternatively:
assert_eq!(0..6, m.range());
```

As noted above, Unicode general categories, scripts, script extensions, ages
and a smattering of boolean properties are available as character classes. For
example, you can match a sequence of numerals, Greek or Cherokee letters:

```rust
use regex::Regex;

let re = Regex::new(r"[\pN\p{Greek}\p{Cherokee}]+").unwrap();
let m = re.find("abcΔᎠβⅠᏴγδⅡxyz").unwrap();
assert_eq!(3..23, m.range());
```

While not specific to Unicode, this library also supports character class set
operations. Namely, one can nest character classes arbitrarily and perform set
operations on them. Those set operations are union (the default), intersection,
difference and symmetric difference. These set operations tend to be most
useful with Unicode character classes. For example, to match any codepoint
that is both in the `Greek` script and in the `Letter` general category:

```rust
use regex::Regex;

let re = Regex::new(r"[\p{Greek}&&\pL]+").unwrap();
let subs: Vec<&str> = re.find_iter("ΔδΔ𐅌ΔδΔ").map(|m| m.as_str()).collect();
assert_eq!(subs, vec!["ΔδΔ", "ΔδΔ"]);

// If we just matches on Greek, then all codepoints would match!
let re = Regex::new(r"\p{Greek}+").unwrap();
let subs: Vec<&str> = re.find_iter("ΔδΔ𐅌ΔδΔ").map(|m| m.as_str()).collect();
assert_eq!(subs, vec!["ΔδΔ𐅌ΔδΔ"]);
```

### Opt out of Unicode support

The [`bytes::Regex`] type that can be used to search `&[u8]` haystacks. By
default, haystacks are conventionally treated as UTF-8 just like it is with the
main `Regex` type. However, this behavior can be disabled by turning off the
`u` flag, even if doing so could result in matching invalid UTF-8. For example,
when the `u` flag is disabled, `.` will match any byte instead of any Unicode
scalar value.

Disabling the `u` flag is also possible with the standard `&str`-based `Regex`
type, but it is only allowed where the UTF-8 invariant is maintained. For
example, `(?-u:\w)` is an ASCII-only `\w` character class and is legal in an
`&str`-based `Regex`, but `(?-u:\W)` will attempt to match *any byte* that
isn't in `(?-u:\w)`, which in turn includes bytes that are invalid UTF-8.
Similarly, `(?-u:\xFF)` will attempt to match the raw byte `\xFF` (instead of
`U+00FF`), which is invalid UTF-8 and therefore is illegal in `&str`-based
regexes.

Finally, since Unicode support requires bundling large Unicode data
tables, this crate exposes knobs to disable the compilation of those
data tables, which can be useful for shrinking binary size and reducing
compilation times. For details on how to do that, see the section on [crate
features](#crate-features).

# Syntax

The syntax supported in this crate is documented below.

Note that the regular expression parser and abstract syntax are exposed in
a separate crate, [`regex-syntax`](https://docs.rs/regex-syntax).

### Matching one character

<pre class="rust">
.             any character except new line (includes new line with s flag)
[0-9]         any ASCII digit
\d            digit (\p{Nd})
\D            not digit
\pX           Unicode character class identified by a one-letter name
\p{Greek}     Unicode character class (general category or script)
\PX           Negated Unicode character class identified by a one-letter name
\P{Greek}     negated Unicode character class (general category or script)
</pre>

### Character classes

<pre class="rust">
[xyz]         A character class matching either x, y or z (union).
[^xyz]        A character class matching any character except x, y and z.
[a-z]         A character class matching any character in range a-z.
[[:alpha:]]   ASCII character class ([A-Za-z])
[[:^alpha:]]  Negated ASCII character class ([^A-Za-z])
[x[^xyz]]     Nested/grouping character class (matching any character except y and z)
[a-y&&xyz]    Intersection (matching x or y)
[0-9&&[^4]]   Subtraction using intersection and negation (matching 0-9 except 4)
[0-9--4]      Direct subtraction (matching 0-9 except 4)
[a-g~~b-h]    Symmetric difference (matching `a` and `h` only)
[\[\]]        Escaping in character classes (matching [ or ])
[a&&b]        An empty character class matching nothing
</pre>

Any named character class may appear inside a bracketed `[...]` character
class. For example, `[\p{Greek}[:digit:]]` matches any ASCII digit or any
codepoint in the `Greek` script. `[\p{Greek}&&\pL]` matches Greek letters.

Precedence in character classes, from most binding to least:

1. Ranges: `[a-cd]` == `[[a-c]d]`
2. Union: `[ab&&bc]` == `[[ab]&&[bc]]`
3. Intersection, difference, symmetric difference. All three have equivalent
precedence, and are evaluated in left-to-right order. For example,
`[\pL--\p{Greek}&&\p{Uppercase}]` == `[[\pL--\p{Greek}]&&\p{Uppercase}]`.
4. Negation: `[^a-z&&b]` == `[^[a-z&&b]]`.

### Composites

<pre class="rust">
xy    concatenation (x followed by y)
x|y   alternation (x or y, prefer x)
</pre>

This example shows how an alternation works, and what it means to prefer a
branch in the alternation over subsequent branches.

```
use regex::Regex;

let haystack = "samwise";
// If 'samwise' comes first in our alternation, then it is
// preferred as a match, even if the regex engine could
// technically detect that 'sam' led to a match earlier.
let re = Regex::new(r"samwise|sam").unwrap();
assert_eq!("samwise", re.find(haystack).unwrap().as_str());
// But if 'sam' comes first, then it will match instead.
// In this case, it is impossible for 'samwise' to match
// because 'sam' is a prefix of it.
let re = Regex::new(r"sam|samwise").unwrap();
assert_eq!("sam", re.find(haystack).unwrap().as_str());
```

### Repetitions

<pre class="rust">
x*        zero or more of x (greedy)
x+        one or more of x (greedy)
x?        zero or one of x (greedy)
x*?       zero or more of x (ungreedy/lazy)
x+?       one or more of x (ungreedy/lazy)
x??       zero or one of x (ungreedy/lazy)
x{n,m}    at least n x and at most m x (greedy)
x{n,}     at least n x (greedy)
x{n}      exactly n x
x{n,m}?   at least n x and at most m x (ungreedy/lazy)
x{n,}?    at least n x (ungreedy/lazy)
x{n}?     exactly n x
</pre>

### Empty matches

<pre class="rust">
^               the beginning of a haystack (or start-of-line with multi-line mode)
$               the end of a haystack (or end-of-line with multi-line mode)
\A              only the beginning of a haystack (even with multi-line mode enabled)
\z              only the end of a haystack (even with multi-line mode enabled)
\b              a Unicode word boundary (\w on one side and \W, \A, or \z on other)
\B              not a Unicode word boundary
\b{start}, \<   a Unicode start-of-word boundary (\W|\A on the left, \w on the right)
\b{end}, \>     a Unicode end-of-word boundary (\w on the left, \W|\z on the right))
\b{start-half}  half of a Unicode start-of-word boundary (\W|\A on the left)
\b{end-half}    half of a Unicode end-of-word boundary (\W|\z on the right)
</pre>

The empty regex is valid and matches the empty string. For example, the
empty regex matches `abc` at positions `0`, `1`, `2` and `3`. When using the
top-level [`Regex`] on `&str` haystacks, an empty match that splits a codepoint
is guaranteed to never be returned. However, such matches are permitted when
using a [`bytes::Regex`]. For example:

```rust
let re = regex::Regex::new(r"").unwrap();
let ranges: Vec<_> = re.find_iter("💩").map(|m| m.range()).collect();
assert_eq!(ranges, vec![0..0, 4..4]);

let re = regex::bytes::Regex::new(r"").unwrap();
let ranges: Vec<_> = re.find_iter("💩".as_bytes()).map(|m| m.range()).collect();
assert_eq!(ranges, vec![0..0, 1..1, 2..2, 3..3, 4..4]);
```

Note that an empty regex is distinct from a regex that can never match.
For example, the regex `[a&&b]` is a character class that represents the
intersection of `a` and `b`. That intersection is empty, which means the
character class is empty. Since nothing is in the empty set, `[a&&b]` matches
nothing, not even the empty string.

### Grouping and flags

<pre class="rust">
(exp)          numbered capture group (indexed by opening parenthesis)
(?P&lt;name&gt;exp)  named (also numbered) capture group (names must be alpha-numeric)
(?&lt;name&gt;exp)   named (also numbered) capture group (names must be alpha-numeric)
(?:exp)        non-capturing group
(?flags)       set flags within current group
(?flags:exp)   set flags for exp (non-capturing)
</pre>

Capture group names must be any sequence of alpha-numeric Unicode codepoints,
in addition to `.`, `_`, `[` and `]`. Names must start with either an `_` or
an alphabetic codepoint. Alphabetic codepoints correspond to the `Alphabetic`
Unicode property, while numeric codepoints correspond to the union of the
`Decimal_Number`, `Letter_Number` and `Other_Number` general categories.

Flags are each a single character. For example, `(?x)` sets the flag `x`
and `(?-x)` clears the flag `x`. Multiple flags can be set or cleared at
the same time: `(?xy)` sets both the `x` and `y` flags and `(?x-y)` sets
the `x` flag and clears the `y` flag.

All flags are by default disabled unless stated otherwise. They are:

<pre class="rust">
i     case-insensitive: letters match both upper and lower case
m     multi-line mode: ^ and $ match begin/end of line
s     allow . to match \n
R     enables CRLF mode: when multi-line mode is enabled, \r\n is used
U     swap the meaning of x* and x*?
u     Unicode support (enabled by default)
x     verbose mode, ignores whitespace and allow line comments (starting with `#`)
</pre>

Note that in verbose mode, whitespace is ignored everywhere, including within
character classes. To insert whitespace, use its escaped form or a hex literal.
For example, `\ ` or `\x20` for an ASCII space.

Flags can be toggled within a pattern. Here's an example that matches
case-insensitively for the first part but case-sensitively for the second part:

```rust
use regex::Regex;

let re = Regex::new(r"(?i)a+(?-i)b+").unwrap();
let m = re.find("AaAaAbbBBBb").unwrap();
assert_eq!(m.as_str(), "AaAaAbb");
```

Notice that the `a+` matches either `a` or `A`, but the `b+` only matches
`b`.

Multi-line mode means `^` and `$` no longer match just at the beginning/end of
the input, but also at the beginning/end of lines:

```
use regex::Regex;

let re = Regex::new(r"(?m)^line \d+").unwrap();
let m = re.find("line one\nline 2\n").unwrap();
assert_eq!(m.as_str(), "line 2");
```

Note that `^` matches after new lines, even at the end of input:

```
use regex::Regex;

let re = Regex::new(r"(?m)^").unwrap();
let m = re.find_iter("test\n").last().unwrap();
assert_eq!((m.start(), m.end()), (5, 5));
```

When both CRLF mode and multi-line mode are enabled, then `^` and `$` will
match either `\r` or `\n`, but never in the middle of a `\r\n`:

```
use regex::Regex;

let re = Regex::new(r"(?mR)^foo$").unwrap();
let m = re.find("\r\nfoo\r\n").unwrap();
assert_eq!(m.as_str(), "foo");
```

Unicode mode can also be selectively disabled, although only when the result
*would not* match invalid UTF-8. One good example of this is using an ASCII
word boundary instead of a Unicode word boundary, which might make some regex
searches run faster:

```rust
use regex::Regex;

let re = Regex::new(r"(?-u:\b).+(?-u:\b)").unwrap();
let m = re.find("$$abc$$").unwrap();
assert_eq!(m.as_str(), "abc");
```

### Escape sequences

Note that this includes all possible escape sequences, even ones that are
documented elsewhere.

<pre class="rust">
\*              literal *, applies to all ASCII except [0-9A-Za-z<>]
\a              bell (\x07)
\f              form feed (\x0C)
\t              horizontal tab
\n              new line
\r              carriage return
\v              vertical tab (\x0B)
\A              matches at the beginning of a haystack
\z              matches at the end of a haystack
\b              word boundary assertion
\B              negated word boundary assertion
\b{start}, \<   start-of-word boundary assertion
\b{end}, \>     end-of-word boundary assertion
\b{start-half}  half of a start-of-word boundary assertion
\b{end-half}    half of a end-of-word boundary assertion
\123            octal character code, up to three digits (when enabled)
\x7F            hex character code (exactly two digits)
\x{10FFFF}      any hex character code corresponding to a Unicode code point
\u007F          hex character code (exactly four digits)
\u{7F}          any hex character code corresponding to a Unicode code point
\U0000007F      hex character code (exactly eight digits)
\U{7F}          any hex character code corresponding to a Unicode code point
\p{Letter}      Unicode character class
\P{Letter}      negated Unicode character class
\d, \s, \w      Perl character class
\D, \S, \W      negated Perl character class
</pre>

### Perl character classes (Unicode friendly)

These classes are based on the definitions provided in
[UTS#18](https://www.unicode.org/reports/tr18/#Compatibility_Properties):

<pre class="rust">
\d     digit (\p{Nd})
\D     not digit
\s     whitespace (\p{White_Space})
\S     not whitespace
\w     word character (\p{Alphabetic} + \p{M} + \d + \p{Pc} + \p{Join_Control})
\W     not word character
</pre>

### ASCII character classes

These classes are based on the definitions provided in
[UTS#18](https://www.unicode.org/reports/tr18/#Compatibility_Properties):

<pre class="rust">
[[:alnum:]]    alphanumeric ([0-9A-Za-z])
[[:alpha:]]    alphabetic ([A-Za-z])
[[:ascii:]]    ASCII ([\x00-\x7F])
[[:blank:]]    blank ([\t ])
[[:cntrl:]]    control ([\x00-\x1F\x7F])
[[:digit:]]    digits ([0-9])
[[:graph:]]    graphical ([!-~])
[[:lower:]]    lower case ([a-z])
[[:print:]]    printable ([ -~])
[[:punct:]]    punctuation ([!-/:-@\[-`{-~])
[[:space:]]    whitespace ([\t\n\v\f\r ])
[[:upper:]]    upper case ([A-Z])
[[:word:]]     word characters ([0-9A-Za-z_])
[[:xdigit:]]   hex digit ([0-9A-Fa-f])
</pre>

# Untrusted input

This crate is meant to be able to run regex searches on untrusted haystacks
without fear of [ReDoS]. This crate also, to a certain extent, supports
untrusted patterns.

[ReDoS]: https://en.wikipedia.org/wiki/ReDoS

This crate differs from most (but not all) other regex engines in that it
doesn't use unbounded backtracking to run a regex search. In those cases,
one generally cannot use untrusted patterns *or* untrusted haystacks because
it can be very difficult to know whether a particular pattern will result in
catastrophic backtracking or not.

We'll first discuss how this crate deals with untrusted inputs and then wrap
it up with a realistic discussion about what practice really looks like.

### Panics

Outside of clearly documented cases, most APIs in this crate are intended to
never panic regardless of the inputs given to them. For example, `Regex::new`,
`Regex::is_match`, `Regex::find` and `Regex::captures` should never panic. That
is, it is an API promise that those APIs will never panic no matter what inputs
are given to them. With that said, regex engines are complicated beasts, and
providing a rock solid guarantee that these APIs literally never panic is
essentially equivalent to saying, "there are no bugs in this library." That is
a bold claim, and not really one that can be feasibly made with a straight
face.

Don't get the wrong impression here. This crate is extensively tested, not just
with unit and integration tests, but also via fuzz testing. For example, this
crate is part of the [OSS-fuzz project]. Panics should be incredibly rare, but
it is possible for bugs to exist, and thus possible for a panic to occur. If
you need a rock solid guarantee against panics, then you should wrap calls into
this library with [`std::panic::catch_unwind`].

It's also worth pointing out that this library will *generally* panic when
other regex engines would commit undefined behavior. When undefined behavior
occurs, your program might continue as if nothing bad has happened, but it also
might mean your program is open to the worst kinds of exploits. In contrast,
the worst thing a panic can do is a denial of service.

[OSS-fuzz project]: https://android.googlesource.com/platform/external/oss-fuzz/+/refs/tags/android-t-preview-1/projects/rust-regex/
[`std::panic::catch_unwind`]: https://doc.rust-lang.org/std/panic/fn.catch_unwind.html

### Untrusted patterns

The principal way this crate deals with them is by limiting their size by
default. The size limit can be configured via [`RegexBuilder::size_limit`]. The
idea of a size limit is that compiling a pattern into a `Regex` will fail if it
becomes "too big." Namely, while *most* resources consumed by compiling a regex
are approximately proportional (albeit with some high constant factors in some
cases, such as with Unicode character classes) to the length of the pattern
itself, there is one particular exception to this: counted repetitions. Namely,
this pattern:

```text
a{5}{5}{5}{5}{5}{5}
```

Is equivalent to this pattern:

```text
a{15625}
```

In both of these cases, the actual pattern string is quite small, but the
resulting `Regex` value is quite large. Indeed, as the first pattern shows,
it isn't enough to locally limit the size of each repetition because they can
be stacked in a way that results in exponential growth.

To provide a bit more context, a simplified view of regex compilation looks
like this:

* The pattern string is parsed into a structured representation called an AST.
Counted repetitions are not expanded and Unicode character classes are not
looked up in this stage. That is, the size of the AST is proportional to the
size of the pattern with "reasonable" constant factors. In other words, one
can reasonably limit the memory used by an AST by limiting the length of the
pattern string.
* The AST is translated into an HIR. Counted repetitions are still *not*
expanded at this stage, but Unicode character classes are embedded into the
HIR. The memory usage of a HIR is still proportional to the length of the
original pattern string, but the constant factors---mostly as a result of
Unicode character classes---can be quite high. Still though, the memory used by
an HIR can be reasonably limited by limiting the length of the pattern string.
* The HIR is compiled into a [Thompson NFA]. This is the stage at which
something like `\w{5}` is rewritten to `\w\w\w\w\w`. Thus, this is the stage
at which [`RegexBuilder::size_limit`] is enforced. If the NFA exceeds the
configured size, then this stage will fail.

[Thompson NFA]: https://en.wikipedia.org/wiki/Thompson%27s_construction

The size limit helps avoid two different kinds of exorbitant resource usage:

* It avoids permitting exponential memory usage based on the size of the
pattern string.
* It avoids long search times. This will be discussed in more detail in the
next section, but worst case search time *is* dependent on the size of the
regex. So keeping regexes limited to a reasonable size is also a way of keeping
search times reasonable.

Finally, it's worth pointing out that regex compilation is guaranteed to take
worst case `O(m)` time, where `m` is proportional to the size of regex. The
size of the regex here is *after* the counted repetitions have been expanded.

**Advice for those using untrusted regexes**: limit the pattern length to
something small and expand it as needed. Configure [`RegexBuilder::size_limit`]
to something small and then expand it as needed.

### Untrusted haystacks

The main way this crate guards against searches from taking a long time is by
using algorithms that guarantee a `O(m * n)` worst case time and space bound.
Namely:

* `m` is proportional to the size of the regex, where the size of the regex
includes the expansion of all counted repetitions. (See the previous section on
untrusted patterns.)
* `n` is proportional to the length, in bytes, of the haystack.

In other words, if you consider `m` to be a constant (for example, the regex
pattern is a literal in the source code), then the search can be said to run
in "linear time." Or equivalently, "linear time with respect to the size of the
haystack."

But the `m` factor here is important not to ignore. If a regex is
particularly big, the search times can get quite slow. This is why, in part,
[`RegexBuilder::size_limit`] exists.

**Advice for those searching untrusted haystacks**: As long as your regexes
are not enormous, you should expect to be able to search untrusted haystacks
without fear. If you aren't sure, you should benchmark it. Unlike backtracking
engines, if your regex is so big that it's likely to result in slow searches,
this is probably something you'll be able to observe regardless of what the
haystack is made up of.

### Iterating over matches

One thing that is perhaps easy to miss is that the worst case time
complexity bound of `O(m * n)` applies to methods like [`Regex::is_match`],
[`Regex::find`] and [`Regex::captures`]. It does **not** apply to
[`Regex::find_iter`] or [`Regex::captures_iter`]. Namely, since iterating over
all matches can execute many searches, and each search can scan the entire
haystack, the worst case time complexity for iterators is `O(m * n^2)`.

One example of where this occurs is when a pattern consists of an alternation,
where an earlier branch of the alternation requires scanning the entire
haystack only to discover that there is no match. It also requires a later
branch of the alternation to have matched at the beginning of the search. For
example, consider the pattern `.*[^A-Z]|[A-Z]` and the haystack `AAAAA`. The
first search will scan to the end looking for matches of `.*[^A-Z]` even though
a finite automata engine (as in this crate) knows that `[A-Z]` has already
matched the first character of the haystack. This is due to the greedy nature
of regex searching. That first search will report a match at the first `A` only
after scanning to the end to discover that no other match exists. The next
search then begins at the second `A` and the behavior repeats.

There is no way to avoid this. This means that if both patterns and haystacks
are untrusted and you're iterating over all matches, you're susceptible to
worst case quadratic time complexity. One possible way to mitigate this
is to drop down to the lower level `regex-automata` crate and use its
`meta::Regex` iterator APIs. There, you can configure the search to operate
in "earliest" mode by passing a `Input::new(haystack).earliest(true)` to
`meta::Regex::find_iter` (for example). By enabling this mode, you give up
the normal greedy match semantics of regex searches and instead ask the regex
engine to immediately stop as soon as a match has been found. Enabling this
mode will thus restore the worst case `O(m * n)` time complexity bound, but at
the cost of different semantics.

### Untrusted inputs in practice

While providing a `O(m * n)` worst case time bound on all searches goes a long
way toward preventing [ReDoS], that doesn't mean every search you can possibly
run will complete without burning CPU time. In general, there are a few ways
for the `m * n` time bound to still bite you:

* You are searching an exceptionally long haystack. No matter how you slice
it, a longer haystack will take more time to search. This crate may often make
very quick work of even long haystacks because of its literal optimizations,
but those aren't available for all regexes.
* Unicode character classes can cause searches to be quite slow in some cases.
This is especially true when they are combined with counted repetitions. While
the regex size limit above will protect you from the most egregious cases,
the default size limit still permits pretty big regexes that can execute more
slowly than one might expect.
* While routines like [`Regex::find`] and [`Regex::captures`] guarantee
worst case `O(m * n)` search time, routines like [`Regex::find_iter`] and
[`Regex::captures_iter`] actually have worst case `O(m * n^2)` search time.
This is because `find_iter` runs many searches, and each search takes worst
case `O(m * n)` time. Thus, iteration of all matches in a haystack has
worst case `O(m * n^2)`. A good example of a pattern that exhibits this is
`(?:A+){1000}|` or even `.*[^A-Z]|[A-Z]`.

In general, untrusted haystacks are easier to stomach than untrusted patterns.
Untrusted patterns give a lot more control to the caller to impact the
performance of a search. In many cases, a regex search will actually execute in
average case `O(n)` time (i.e., not dependent on the size of the regex), but
this can't be guaranteed in general. Therefore, permitting untrusted patterns
means that your only line of defense is to put a limit on how big `m` (and
perhaps also `n`) can be in `O(m * n)`. `n` is limited by simply inspecting
the length of the haystack while `m` is limited by *both* applying a limit to
the length of the pattern *and* a limit on the compiled size of the regex via
[`RegexBuilder::size_limit`].

It bears repeating: if you're accepting untrusted patterns, it would be a good
idea to start with conservative limits on `m` and `n`, and then carefully
increase them as needed.

# Crate features

By default, this crate tries pretty hard to make regex matching both as fast
as possible and as correct as it can be. This means that there is a lot of
code dedicated to performance, the handling of Unicode data and the Unicode
data itself. Overall, this leads to more dependencies, larger binaries and
longer compile times. This trade off may not be appropriate in all cases, and
indeed, even when all Unicode and performance features are disabled, one is
still left with a perfectly serviceable regex engine that will work well in
many cases. (Note that code is not arbitrarily reducible, and for this reason,
the [`regex-lite`](https://docs.rs/regex-lite) crate exists to provide an even
more minimal experience by cutting out Unicode and performance, but still
maintaining the linear search time bound.)

This crate exposes a number of features for controlling that trade off. Some
of these features are strictly performance oriented, such that disabling them
won't result in a loss of functionality, but may result in worse performance.
Other features, such as the ones controlling the presence or absence of Unicode
data, can result in a loss of functionality. For example, if one disables the
`unicode-case` feature (described below), then compiling the regex `(?i)a`
will fail since Unicode case insensitivity is enabled by default. Instead,
callers must use `(?i-u)a` to disable Unicode case folding. Stated differently,
enabling or disabling any of the features below can only add or subtract from
the total set of valid regular expressions. Enabling or disabling a feature
will never modify the match semantics of a regular expression.

Most features below are enabled by default. Features that aren't enabled by
default are noted.

### Ecosystem features

* **std** -
  When enabled, this will cause `regex` to use the standard library. In terms
  of APIs, `std` causes error types to implement the `std::error::Error`
  trait. Enabling `std` will also result in performance optimizations,
  including SIMD and faster synchronization primitives. Notably, **disabling
  the `std` feature will result in the use of spin locks**. To use a regex
  engine without `std` and without spin locks, you'll need to drop down to
  the [`regex-automata`](https://docs.rs/regex-automata) crate.
* **logging** -
  When enabled, the `log` crate is used to emit messages about regex
  compilation and search strategies. This is **disabled by default**. This is
  typically only useful to someone working on this crate's internals, but might
  be useful if you're doing some rabbit hole performance hacking. Or if you're
  just interested in the kinds of decisions being made by the regex engine.

### Performance features

**Note**:
  To get performance benefits offered by the SIMD, `std` must be enabled.
  None of the `perf-*` features will enable `std` implicitly.

* **perf** -
  Enables all performance related features except for `perf-dfa-full`. This
  feature is enabled by default is intended to cover all reasonable features
  that improve performance, even if more are added in the future.
* **perf-dfa** -
  Enables the use of a lazy DFA for matching. The lazy DFA is used to compile
  portions of a regex to a very fast DFA on an as-needed basis. This can
  result in substantial speedups, usually by an order of magnitude on large
  haystacks. The lazy DFA does not bring in any new dependencies, but it can
  make compile times longer.
* **perf-dfa-full** -
  Enables the use of a full DFA for matching. Full DFAs are problematic because
  they have worst case `O(2^n)` construction time. For this reason, when this
  feature is enabled, full DFAs are only used for very small regexes and a
  very small space bound is used during determinization to avoid the DFA
  from blowing up. This feature is not enabled by default, even as part of
  `perf`, because it results in fairly sizeable increases in binary size and
  compilation time. It can result in faster search times, but they tend to be
  more modest and limited to non-Unicode regexes.
* **perf-onepass** -
  Enables the use of a one-pass DFA for extracting the positions of capture
  groups. This optimization applies to a subset of certain types of NFAs and
  represents the fastest engine in this crate for dealing with capture groups.
* **perf-backtrack** -
  Enables the use of a bounded backtracking algorithm for extracting the
  positions of capture groups. This usually sits between the slowest engine
  (the PikeVM) and the fastest engine (one-pass DFA) for extracting capture
  groups. It's used whenever the regex is not one-pass and is small enough.
* **perf-inline** -
  Enables the use of aggressive inlining inside match routines. This reduces
  the overhead of each match. The aggressive inlining, however, increases
  compile times and binary size.
* **perf-literal** -
  Enables the use of literal optimizations for speeding up matches. In some
  cases, literal optimizations can result in speedups of _several_ orders of
  magnitude. Disabling this drops the `aho-corasick` and `memchr` dependencies.
* **perf-cache** -
  This feature used to enable a faster internal cache at the cost of using
  additional dependencies, but this is no longer an option. A fast internal
  cache is now used unconditionally with no additional dependencies. This may
  change in the future.

### Unicode features

* **unicode** -
  Enables all Unicode features. This feature is enabled by default, and will
  always cover all Unicode features, even if more are added in the future.
* **unicode-age** -
  Provide the data for the
  [Unicode `Age` property](https://www.unicode.org/reports/tr44/tr44-24.html#Character_Age).
  This makes it possible to use classes like `\p{Age:6.0}` to refer to all
  codepoints first introduced in Unicode 6.0
* **unicode-bool** -
  Provide the data for numerous Unicode boolean properties. The full list
  is not included here, but contains properties like `Alphabetic`, `Emoji`,
  `Lowercase`, `Math`, `Uppercase` and `White_Space`.
* **unicode-case** -
  Provide the data for case insensitive matching using
  [Unicode's "simple loose matches" specification](https://www.unicode.org/reports/tr18/#Simple_Loose_Matches).
* **unicode-gencat** -
  Provide the data for
  [Unicode general categories](https://www.unicode.org/reports/tr44/tr44-24.html#General_Category_Values).
  This includes, but is not limited to, `Decimal_Number`, `Letter`,
  `Math_Symbol`, `Number` and `Punctuation`.
* **unicode-perl** -
  Provide the data for supporting the Unicode-aware Perl character classes,
  corresponding to `\w`, `\s` and `\d`. This is also necessary for using
  Unicode-aware word boundary assertions. Note that if this feature is
  disabled, the `\s` and `\d` character classes are still available if the
  `unicode-bool` and `unicode-gencat` features are enabled, respectively.
* **unicode-script** -
  Provide the data for
  [Unicode scripts and script extensions](https://www.unicode.org/reports/tr24/).
  This includes, but is not limited to, `Arabic`, `Cyrillic`, `Hebrew`,
  `Latin` and `Thai`.
* **unicode-segment** -
  Provide the data necessary to provide the properties used to implement the
  [Unicode text segmentation algorithms](https://www.unicode.org/reports/tr29/).
  This enables using classes like `\p{gcb=Extend}`, `\p{wb=Katakana}` and
  `\p{sb=ATerm}`.

# Other crates

This crate has two required dependencies and several optional dependencies.
This section briefly describes them with the goal of raising awareness of how
different components of this crate may be used independently.

It is somewhat unusual for a regex engine to have dependencies, as most regex
libraries are self contained units with no dependencies other than a particular
environment's standard library. Indeed, for other similarly optimized regex
engines, most or all of the code in the dependencies of this crate would
normally just be inseparable or coupled parts of the crate itself. But since
Rust and its tooling ecosystem make the use of dependencies so easy, it made
sense to spend some effort de-coupling parts of this crate and making them
independently useful.

We only briefly describe each crate here.

* [`regex-lite`](https://docs.rs/regex-lite) is not a dependency of `regex`,
but rather, a standalone zero-dependency simpler version of `regex` that
prioritizes compile times and binary size. In exchange, it eschews Unicode
support and performance. Its match semantics are as identical as possible to
the `regex` crate, and for the things it supports, its APIs are identical to
the APIs in this crate. In other words, for a lot of use cases, it is a drop-in
replacement.
* [`regex-syntax`](https://docs.rs/regex-syntax) provides a regular expression
parser via `Ast` and `Hir` types. It also provides routines for extracting
literals from a pattern. Folks can use this crate to do analysis, or even to
build their own regex engine without having to worry about writing a parser.
* [`regex-automata`](https://docs.rs/regex-automata) provides the regex engines
themselves. One of the downsides of finite automata based regex engines is that
they often need multiple internal engines in order to have similar or better
performance than an unbounded backtracking engine in practice. `regex-automata`
in particular provides public APIs for a PikeVM, a bounded backtracker, a
one-pass DFA, a lazy DFA, a fully compiled DFA and a meta regex engine that
combines all them together. It also has native multi-pattern support and
provides a way to compile and serialize full DFAs such that they can be loaded
and searched in a no-std no-alloc environment. `regex-automata` itself doesn't
even have a required dependency on `regex-syntax`!
* [`memchr`](https://docs.rs/memchr) provides low level SIMD vectorized
routines for quickly finding the location of single bytes or even substrings
in a haystack. In other words, it provides fast `memchr` and `memmem` routines.
These are used by this crate in literal optimizations.
* [`aho-corasick`](https://docs.rs/aho-corasick) provides multi-substring
search. It also provides SIMD vectorized routines in the case where the number
of substrings to search for is relatively small. The `regex` crate also uses
this for literal optimizations.
       
O      P      N      L     J    H    F    :D    HC    	8B    8A    ;A    <?    <=    =;    =9    >7    ?5    ?3    @1    A/    A?      H.    	H,    	I*    	 儝 圸 C  l  d   D      3Y4	 H 
  D	 5 
  I	 7 
  	  < 
    
  	 A 
  
$
   
   WhichCapturesl
 + 
   syntax4
   
   	MatchKindL
 7 
  ,
   
  	PL	D		T
d
qWY
L              `   <                       `           d              `!#%'()*+,-./012 h                 
     ƿ`                     ƿ         T   Jƿ   ƿJ DЇ1dcTV         PR                            <closure_kind>     <closure_signature>     <upvars>         9                 
         ` ٳܳ ݳ ޳    ߳          i=2*rc          $4                                            r ?|                 
         ` ٳܳ ݳ ޳    ߳          i=2*dc         ! $4                  !  "     "    "    "   !  " d =                 
         `          # $4                  #  $     $    $    $   #  $   C                  
         `           % $ 4$                  %  &     &    &    &   %  & ~ %9%                 
         `       %   ' $%zm&3T&                 
         `       &   ( $&\n'='                 
         `       '   ) $'@o(-$(                 
         `       (   * $("p)7|)                 
         `f      )   + $) byte$)+3T+                 
         `       +   , $+q,:,                 
         `       ,   - $,q-0<-                 
     	    	`       -   . $-r..,.                 
     	    	`       .   / $.s/6T/                 
     	    	`g      /   0 $/,/0:t0                 
     	    	`g      0   1 $0,014T1                 
     	    	`      1   2 $1t2  42     ,2   3  5:R   3  6 HV   3  7 	7<3   3  82&d2Vt3+6              a:;<=>?@ABCDEFG 9)   6C @ Create a new builder with a default configuration for the given   d7 	 pattern.   7   7D A If the pattern is invalid or exceeds the configured size limits,   8B ? then an error will be returned when [`RegexBuilder::build`] is   \8  called.9                       	    	 a  9    9 9  : <9<+   :> ; Compiles the pattern given to `RegexBuilder::new` with the   :& # configuration set on this builder.   :   ;D A If the pattern isn't a valid regex or if a configured size limit   ;, ) was exceeded, then an error is returned.,<                       	    	a   9    < 9  ; $<R9   <8 5 This configures Unicode mode for the entire pattern.   =   =2 / Enabling Unicode mode does a number of things:   =   >D A * Most fundamentally, it causes the fundamental atom of matching   >C @ to be a single codepoint. When Unicode mode is disabled, it's a   ?D A single byte. For example, when Unicode mode is enabled, `.` will   ?G D match `💩` once, where as it will match 4 times when Unicode mode   @F C is disabled. (Since the UTF-8 encoding of `💩` is 4 bytes long.)   AG D * Case insensitive matching uses Unicode simple case folding rules.   AE B * Unicode character classes like `\p{Letter}` and `\p{Greek}` are   tB  available.   BG D * Perl character classes are Unicode aware. That is, `\w`, `\s` and   LC  `\d`.   CB ? * The word boundary assertions, `\b` and `\B`, use the Unicode   C#   definition of a word character.   D   DF C Note that if Unicode mode is disabled, then the regex will fail to   DF C compile if it could match invalid UTF-8. For example, when Unicode   EA > mode is disabled, then since `.` matches any byte (except for   FD A `\n`), then it can match invalid UTF-8 and thus building a regex   FG D from it will fail. Another example is `\w` and `\W`. Since `\w` can   GG D only match ASCII bytes when Unicode mode is disabled, it's allowed.   GF C But `\W` can match more than ASCII bytes, including invalid UTF-8,   HD A and so it is not allowed. This restriction can be lifted only by   I2 / using a [`bytes::Regex`](crate::bytes::Regex).   I   IB ? For more details on the Unicode support in this crate, see the   J> ; [Unicode section](crate#unicode) in this crate's top-level   J  documentation.   K   K#   The default for this is `true`.   K   lK 
 # Example   K   <K  ```   L  use regex::RegexBuilder;   L   L% " let re = RegexBuilder::new(r"\w")   L      .unicode(false)   M      .build()   M      .unwrap();   M@ = // Normally greek letters would be included in \w, but since   M? < // Unicode mode is disabled, it only matches ASCII letters.   N   assert!(!re.is_match("δ"));   N   N$ ! let re = RegexBuilder::new(r"s")   O      .case_insensitive(true)   O̒   O   P   P< 9 // Normally 'ſ' is included when searching for 's' case   PD A // insensitively due to Unicode's simple case folding rules. But   QG D // when Unicode mode is disabled, only ASCII case insensitive rules   R  // are used.   R   assert!(!re.is_match("ſ"));   <R<R                       	    	a   9    R 9  < $Rtw[B   SG D This configures whether to enable case insensitive matching for the   T  entire pattern.   T   TA > This setting can also be configured using the inline flag `i`   U> ; in the pattern. For example, `(?i:foo)` matches `foo` case   UC @ insensitively while `(?-i:foo)` matches `foo` case sensitively.   V   V$ ! The default for this is `false`.   V   lV   W   <W   W   W   W3 0 let re = RegexBuilder::new(r"foo(?-i:bar)quux")   X   X   X   X' $ assert!(re.is_match("FoObarQuUx"));   YG D // Even though case insensitive matching is enabled in the builder,   YC @ // it can be locally disabled within the pattern. In this case,   Z) & // `bar` is matched case sensitively.   Z( % assert!(!re.is_match("fooBARquux"));   <[[                       	    	a   9    [ 9  = $[xh<   \; 8 This configures multi-line mode for the entire pattern.   ]   ]D A Enabling multi-line mode changes the behavior of the `^` and `$`   ]D A anchor assertions. Instead of only matching at the beginning and   ^C @ end of a haystack, respectively, multi-line mode causes them to   _A > match at the beginning and end of a line *in addition* to the   _F C beginning and end of a haystack. More precisely, `^` will match at   `G D the position immediately following a `\n` and `$` will match at the   `* ' position immediately preceding a `\n`.   a   aF C The behavior of this option can be impacted by other settings too:   a   bE B * The [`RegexBuilder::line_terminator`] option changes `\n` above   b  to any ASCII byte.   bF C * The [`RegexBuilder::crlf`] option changes the line terminator to   cD A be either `\r` or `\n`, but never at the position between a `\r`   ld 
 and `\n`.   d   dD A This setting can also be configured using the inline flag `m` in   d  the pattern.   e   e$͛   e   le   e   <e   f   f   f( % let re = RegexBuilder::new(r"^foo$")   f      .multi_line(true)   g   g   gB ? assert_eq!(Some(1..4), re.find("\nfoo\n").map(|m| m.range()));   <hTh                       	    	a   9    h 9  > $hyqi   iE B This configures dot-matches-new-line mode for the entire pattern.   i   jF C Perhaps surprisingly, the default behavior for `.` is not to match   jD A any character, but rather, to match any character except for the   kA > line terminator (which is `\n` by default). When this mode is   kA > enabled, the behavior changes such that `.` truly matches any   tl  character.   l   lD A This setting can also be configured using the inline flag `s` in   mC @ the pattern. For example, `(?s:.)` and `\p{any}` are equivalent   dm 	 regexes.   n   n$͛   n   ln   n   <n   o   o   o* ' let re = RegexBuilder::new(r"foo.bar")   o#       .dot_matches_new_line(true)   p   p   p  let hay = "foo\nbar";   pC @ assert_eq!(Some("foo\nbar"), re.find(hay).map(|m| m.as_str()));   <qq                       	    	a ȴ  9    q 9  ? $qz6   s5 2 This configures CRLF mode for the entire pattern.   s   sE B When CRLF mode is enabled, both `\r` ("carriage return" or CR for   tE B short) and `\n` ("line feed" or LF for short) are treated as line   t/ , terminators. This results in the following:   u   uE B * Unless dot-matches-new-line mode is enabled, `.` will now match   u+ ( any character except for `\n` and `\r`.   vA > * When multi-line mode is enabled, `^` will match immediately   vE B following a `\n` or a `\r`. Similarly, `$` will match immediately   wC @ preceding a `\n` or a `\r`. Neither `^` nor `$` will ever match   Ԗx  between `\r` and `\n`.   x   xD A This setting can also be configured using the inline flag `R` in   y   y   y$͛   y   ly   z   <z   z   z   z(ߩ   ̄{   {      .crlf(true)   {   {   {  let hay = "\r\nfoo\r\n";   |A > // If CRLF mode weren't enabled here, then '$' wouldn't match   |A > // immediately after 'foo', and thus no match would be found.   }> ; assert_eq!(Some("foo"), re.find(hay).map(|m| m.as_str()));   <}   ~   ~E B This example demonstrates that `^` will never match at a position   ~G D between `\r` and `\n`. (`$` will similarly not match between a `\r`     and a `\n`.)      <         $ ! let re = RegexBuilder::new(r"^")   À            ̵  let hay = "\r\n\r\n";   ׁH E let ranges: Vec<_> = re.find_iter(hay).map(|m| m.range()).collect();   / , assert_eq!(ranges, vec![0..0, 2..2, 4..4]);   <$                       	    	a   9     9  @ $|@   ; 8 Configures the line terminator to be used by the regex.      G D The line terminator is relevant in two ways for a particular regex:      D A * When dot-matches-new-line mode is *not* enabled (the default),   D A then `.` will match any character except for the configured line   |  terminator.   φE B * When multi-line mode is enabled (not the default), then `^` and   E B `$` will match immediately after and before, respectively, a line   |      C @ In both cases, if CRLF mode is enabled in a particular context,   ۈA > then it takes precedence over any configured line terminator.      = : This option cannot be configured from within the pattern.      ( % The default line terminator is `\n`.      l   ֊   G D This shows how to treat the NUL byte as a line terminator. This can   5 2 be a useful heuristic when searching binary data.      <   䌌      (ߩ      !      .line_terminator(b'\x00')      Ӎ     let hay = "\x00foo\x00";   < 9 assert_eq!(Some(1..4), re.find(hay).map(|m| m.range()));   <؎      C @ This example shows that the behavior of `.` is impacted by this     setting as well:   ݏ   <         $ ! let re = RegexBuilder::new(r".")   א!           assert!(re.is_match("\n"));   ݑ"  assert!(!re.is_match("\x00"));   <      @ = This shows that building a regex will fail if the byte given   A > is not ASCII and the pattern could result in matching invalid   C @ UTF-8. This is because any singular non-ASCII byte is not valid   C @ UTF-8, and it is not permitted for a [`Regex`] to match invalid   ϔE B UTF-8. (It is permissible to use a non-ASCII byte when building a   + ( [`bytes::Regex`](crate::bytes::Regex).)   ѕ   <ݕ         L I assert!(RegexBuilder::new(r".").line_terminator(0x80).build().is_err());   B ? // Note that using a non-ASCII byte isn't enough on its own to   E B // cause regex compilation to fail. You actually have to make use   A > // of it in the regex in a way that leads to matching invalid   ֘@ = // UTF-8. If you don't, then regex compilation will succeed!   K H assert!(RegexBuilder::new(r"a").line_terminator(0x80).build().is_ok());   <|                       	    	af  9     9  A $$<   ; 8 This configures swap-greed mode for the entire pattern.   ޛ   C @ When swap-greed mode is enabled, patterns like `a+` will become   C @ non-greedy and patterns like `a+?` will become greedy. In other   7 4 words, the meanings of `a+` and `a+?` are switched.      ΝD A This setting can also be configured using the inline flag `U` in         $͛      l      <   䫟   П   ܟ% " let re = RegexBuilder::new(r"a+")   ̊      .swap_greed(true)      Š   > ; assert_eq!(Some("a"), re.find("aaa").map(|m| m.as_str()));   <T                       	    	a   9    ɡ 9  B $ΡN}ɸC   Ģ8 5 This configures verbose mode for the entire pattern.      A > When enabled, whitespace will treated as insignificant in the   ۣE B pattern and `#` can be used to start a comment until the next new   L  line.      Ǥ@ = Normally, in most places in a pattern, whitespace is treated   G D literally. For example ` +` will match one or more ASCII whitespace   |  characters.      E B When verbose mode is enabled, `\#` can be used to match a literal   Ҧ@ = `#` and `\ ` can be used to match a literal ASCII whitespace   t      E B Verbose mode is useful for permitting regexes to be formatted and   C @ broken up more nicely. This may make them more easily readable.   ب   D A This setting can also be configured using the inline flag `x` in      ʩ   ֩$͛      l      <           let pat = r"   T      \b   H E     (?<first>\p{Uppercase}\w*)  # always start with uppercase letter   F C     [\s--\n]+                   # whitespace should separate names   , )     (?: # middle name can be an initial!   G D         (?:(?<initial>\p{Uppercase})\.|(?<middle>\p{Uppercase}\w*))   í          [\s--\n]+   T      )?   !      (?<last>\p{Uppercase}\w*)   T   4  ";   #   let re = RegexBuilder::new(pat)          .ignore_whitespace(true)         ɯ   կ4 1 let caps = re.captures("Harry Potter").unwrap();   ( % assert_eq!("Harry", &caps["first"]);   ð( % assert_eq!("Potter", &caps["last"]);      7 4 let caps = re.captures("Harry J. Potter").unwrap();   (   G D // Since a middle name/initial isn't required for an overall match,   D A // we can't assume that 'initial' or 'middle' will be populated!   D A assert_eq!(Some("J"), caps.name("initial").map(|m| m.as_str()));   ۳> ; assert_eq!(None, caps.name("middle").map(|m| m.as_str()));   (   Ӵ   ߴ: 7 let caps = re.captures("Harry James Potter").unwrap();   (   ӵG   D   ? < assert_eq!(None, caps.name("initial").map(|m| m.as_str()));   G D assert_eq!(Some("James"), caps.name("middle").map(|m| m.as_str()));   (   <и                       	    	a   9     9  C $~7   6 3 This configures octal mode for the entire pattern.      E B Octal syntax is a little-known way of uttering Unicode codepoints   G D in a pattern. For example, `a`, `\x61`, `\u0061` and `\141` are all   ͻC @ equivalent patterns, where the last example shows octal syntax.      C @ While supporting octal syntax isn't in and of itself a problem,   C @ it does make good error messages harder. That is, in PCRE based   E B regex engines, syntax like `\1` invokes a backreference, which is   C @ explicitly unsupported this library. However, many users expect   ׾A > backreferences to be supported. Therefore, when octal support   ? < is disabled, the error message will explicitly mention that   $ ! backreferences aren't supported.      $͛      l      <         E B // Normally this pattern would not compile, with an error message   D A // about backreferences not being supported. But with octal mode   , ) // enabled, octal escape sequences work.   ' $ let re = RegexBuilder::new(r"\141")         .octal(true)           assert!(re.is_match("a"));   <,                       	    	a   9     9  D $?   E B Sets the approximate size limit, in bytes, of the compiled regex.      = : This roughly corresponds to the number of heap memory, in   C @ bytes, occupied by a single regex. If the regex would otherwise   C @ approximately exceed this limit, then compiling that regex will   L  fail.      @ = The main utility of a method like this is to avoid compiling   ? < regexes that use an unexpected amount of resources, such as   A > time and memory. Even if the memory usage of a large regex is   C @ acceptable, its search time may not be. Namely, worst case time   E B complexity for search is `O(m * n)`, where `m ~ len(pattern)` and   F C `n ~ len(haystack)`. That is, search time depends, in part, on the   F C size of the compiled regex. This means that putting a limit on the   E B size of the regex limits how much a regex can impact search time.      D A For more information about regex size limits, see the section on   D A [untrusted inputs](crate#untrusted-input) in the top-level crate         D A The default for this is some reasonable number that permits most   % " patterns to compile successfully.      l      <   D A # if !cfg!(target_pointer_width = "64") { return; } // see #1041         D A // It may surprise you how big some seemingly small patterns can   E B // be! Since \w is Unicode aware, this generates a regex that can   7 4 // match approximately 140,000 distinct codepoints.   J G assert!(RegexBuilder::new(r"\w").size_limit(45_000).build().is_err());   <T                       	    	ag  9     9  E $
,C   G D Set the approximate capacity, in bytes, of the cache of transitions   ̤  used by the lazy DFA.      A > While the lazy DFA isn't always used, in tends to be the most   D A commonly use regex engine in default configurations. It tends to   G D adopt the performance profile of a fully build DFA, but without the   < 9 downside of taking worst case exponential time to build.      D A The downside is that it needs to keep a cache of transitions and   @ = states that are built while running a search, and this cache   C @ can fill up. When it fills up, the cache will reset itself. Any   D A previously generated states and transitions will then need to be   C @ re-generated. If this happens too many times, then this library   G D will bail out of using the lazy DFA and switch to a different regex   \  engine.      D A If your regex provokes this particular downside of the lazy DFA,   G D then it may be beneficial to increase its cache capacity. This will   C @ potentially reduce the frequency of cache resetting (ideally to   D A `0`). While it won't fix all potential performance problems with   > ; the lazy DFA, increasing the cache capacity does fix some.      C @ There is no easy way to determine, a priori, whether increasing   E B this cache capacity will help. In general, the larger your regex,   G D the more cache it's likely to use. But that isn't an ironclad rule.   F C For example, a regex like `[01]*1[01]{N}` would normally produce a   D A fully build DFA that is exponential in size with respect to `N`.   E B The lazy DFA will prevent exponential space blow-up, but it cache   D A is likely to fill up, even when it's large and even for smallish     values of `N`.      C @ If you aren't sure whether this helps or not, it is sensible to   A > set this to some arbitrarily large number in testing, such as   E B `usize::MAX`. Namely, this represents the amount of capacity that   G D *may* be used. It's probably not a good idea to use `usize::MAX` in   E B production though, since it implies there are no controls on heap   E B memory used by this library during a search. In effect, set it to   B ? whatever you're willing to allocate for a single regex search.t                       	    	ag  9     9  F $
,=   * ' Set the nesting limit for this parser.      C @ The nesting limit controls how deep the abstract syntax tree is   E B allowed to be. If the AST exceeds the given limit (e.g., with too   A > many nested groups), then an error is returned by the parser.      G D The purpose of this limit is to act as a heuristic to prevent stack   G D overflow for consumers that do structural induction on an AST using   G D explicit recursion. While this crate never does this (instead using   F C constant stack space and moving the call stack to the heap), other   |  crates may.      = : This limit is not checked until the entire AST is parsed.   C @ Therefore, if callers want to put a limit on the amount of heap   A > space used, then they should impose a limit on the length, in   A > bytes, of the concrete pattern string. In particular, this is   E B viable since this parser implementation will limit itself to heap   D A space proportional to the length of the pattern string. See also   @ = the [untrusted inputs](crate#untrusted-input) section in the   B ? top-level crate documentation for more information about this.      D A Note that a nest limit of `0` will return a nest limit error for   G D most patterns but not all. For example, a nest limit of `0` permits   D A `a` but not `ab`, since `ab` requires an explicit concatenation,   E B which results in a nest depth of `1`. In general, a nest limit is   B ? not something that manifests in an obvious way in the concrete   ? < syntax, therefore, it should not be used in a granular way.      l      <         C @ assert!(RegexBuilder::new(r"a").nest_limit(0).build().is_ok());   E B assert!(RegexBuilder::new(r"ab").nest_limit(0).build().is_err());   <T                       	    	a˰  9     9  G $․              aILMNOPQRSTUVWX    C   l 
 patterns.      E B If the patterns are invalid or exceed the configured size limits,   E B then an error will be returned when [`RegexSetBuilder::build`] is   \                       ƿa  H  J     K    J  K   H    D T Iƿ1<>         @B         .   B ? Compiles the patterns given to `RegexSetBuilder::new` with the   &ր      F C If the patterns aren't valid regexes or if a configured size limit   ,݁,                       	    	a   H     H $<   = : This configures Unicode mode for the all of the patterns.      2      D   C̈́   ׆D   G   F   ÈG   EՇ   t   G   LȊ   ڊB   #   ы   ݋F   F   A   ōD   Gь   G   F   D   ΐ8 5 using a [`bytes::RegexSet`](crate::bytes::RegexSet).      Bӏ   >      Ȓ   Ԓ#      l      <     use regex::RegexSetBuilder;      * ' let re = RegexSetBuilder::new([r"\w"])   ̒   Ŕ   ޔ   @   ?          ) & let re = RegexSetBuilder::new([r"s"])      ̒      җ   <ܕ   D   G   ϙ    ֗   <<                       	    	a   H     H  M $E   G D This configures whether to enable case insensitive matching for all     of the patterns.      A   >   C      $͛      lƞ   ܞ   <   ֺ      8 5 let re = RegexSetBuilder::new([r"foo(?-i:bar)quux"])            ɠ'   GН   ɡC   )   Ǣ(   <                       	    	a   H     H  N $؅?   < 9 This configures multi-line mode for all of the patterns.      D   ¥Dۡ   C   ۦA   F   G   Ĩ*ݤ      F   ҩ   ީB ? * The [`RegexSetBuilder::line_terminator`] option changes `\n`   䩪  above to any ASCII byte.   ΪF C * The [`RegexSetBuilder::crlf`] option changes the line terminator   G D to be either `\r` or `\n`, but never at the position between a `\r`   l      D   ܬ      $͛      l   Э   <ܭ   ֺ      - * let re = RegexSetBuilder::new([r"^foo$"])   ֮         $ ! assert!(re.is_match("\nfoo\n"));   <ٯT                       	    	a   H     H  O $	l   E   Ǳ   ӱFݬ   D   A   Aî   t      D   C   dư   Ե   $͛      l      <   ˶ֺ      / , let re = RegexSetBuilder::new([r"foo.bar"])   #         ̗     assert!(re.is_match(hay));   <                       	    	a   H     H  P $:9   6 3 This configures CRLF mode for all of the patterns.      Eִ   лE   /   ּ   E   +   A   E   Cϸ   ȿ      Dȹ         $͛      l      <   ֺ      -   ̾            ɻ   A   A      <      E   G         <   ֺ      + ( let re = RegexSetBuilder::new([r"^\n"])               "  assert!(!re.is_match("\r\n"));   <$                       	    	a   H     H  Q $jC   ;      G      D   D   |   E   E   |      C   A      =      (      l      G   5      <   ֺ      -   ̝   !               <      C         <   ֺ      ) & let re = RegexSetBuilder::new([r"."])   !            "   <      @   A   C   F C UTF-8, and it is not permitted for a [`RegexSet`] to match invalid   E   1 . [`bytes::RegexSet`](crate::bytes::RegexSet).)      <   ֺ      d 	 assert!(   $ !     RegexSetBuilder::new([r"."])   "          .line_terminator(0x80)             .build()             .is_err()   4  );   B   E   A   @   d   $ !     RegexSetBuilder::new([r"a"])   "                .is_ok()   4   <|                       	    	af  H     H  R $$?   < 9 This configures swap-greed mode for all of the patterns.      C   C   7      D         C @ Note that this is generally not useful for a `RegexSet` since a   F C `RegexSet` can only report whether a pattern matches or not. Since   F C greediness never impacts whether a match is found or not (only the   E B offsets of the match), it follows that whether parts of a pattern   6 3 are greedy or not doesn't matter for a `RegexSet`.      $͛T                       	    	a   H     H  S $i   9 6 This configures verbose mode for all of the patterns.      A   E   L      @   G   |      E   @   t      E   C      D         $͛      l      <   ֺ         T   H   F   ,   G      T   !   T   4   ( % let re = RegexSetBuilder::new([pat])             ) & assert!(re.is_match("Harry Potter"));   , ) assert!(re.is_match("Harry J. Potter"));   / , assert!(re.is_match("Harry James Potter"));   - * assert!(!re.is_match("harry J. Potter"));   <                       	    	a   H     H  T $̋:   7 4 This configures octal mode for all of the patterns.      E   G   C      C   C   E   C   A   ߀?   $   ԁ   $͛      l      <   ˂ֺ      E   ̓D   ,   τ, ) let re = RegexSetBuilder::new([r"\141"])            Յ   <,                       	    	a   H     H  U $B   E      =   C   C   Lʉ   ܉   @   ?   A   ËC   E   ݌F݂   F   E   Ɏ   ՎD؄   D         D   %ۆ      l      <   ϑD   ֺ   Ē   ВD   E   7   d   % "     RegexSetBuilder::new([r"\w"])             .size_limit(45_000)         4ѕ   <T                       	    	ag  H     H  V $
,i   G͋   ՗      A̌   ͘D   G   <      D   @֏   ћC   D   C   G   \ؒ      D   GǓ   ßC   D   ܠ>      C   EԖ   ɢG   F   DĘ   E   D   Х      C֚   æA   E   ۧG   E   Eݝ   ǩBt                       	    	ag  H     H  W $
,̪@   ҫ*      C   ݬE   A      G   ѮG   G   F   |ؤ   ذ   =   Cĥ   A   Aܦ   E   سD   @Ĩ   B      ŵD   G   D   Eӫ   B   ȸ?      l      <   ιֺ      H E assert!(RegexSetBuilder::new([r"a"]).nest_limit(0).build().is_ok());   ӺJ G assert!(RegexSetBuilder::new([r"ab"]).nest_limit(0).build().is_err());   <T                       	    	a  H    Ȼ H  X $ͻ/ɼ  ,ؼ     :,   Y  \ HD   Y  ] ,   Y  ^7<   Y  _F]_IKd:t-              babcdefghijklmn )   C   d      D   B   \                       	    	 b  `     `  a <+   >   &ր      D   ,݁,                       	    	b   `     `  b $9   8      2      D   C̈́   D   G   F   G   EՇ   t   G   L   B   #      C @ Note that unlike the top-level `Regex` for searching `&str`, it   F C is permitted to disable Unicode mode even if the resulting pattern   D A could match invalid UTF-8. For example, `(?-u:.)` is not a valid   G D pattern for a top-level `Regex`, but is valid for a `bytes::Regex`.      Bӏ   >         #      l      <   #   use regex::bytes::RegexBuilder;      %   ̒         @   ?   + ( assert!(!re.is_match("δ".as_bytes()));      $      ̒         <ܕ   D   G      + ( assert!(!re.is_match("ſ".as_bytes()));   <      E B Since this builder is for constructing a [`bytes::Regex`](Regex),   F C one can disable Unicode mode even if it would match invalid UTF-8:      <   #      $   ̒         @   ?   "  assert!(re.is_match(b"\xFF"));   <<                       	    	b   `     `  c $:B   G         A   >   C      $͛      l      <   #      3            ( % assert!(re.is_match(b"FoObarQuUx"));   GН   C   )   ) & assert!(!re.is_match(b"fooBARquux"));   <                       	    	b   `     `  d $k<   ;      D   Dۡ   C   A   F   G   *ݤ      F      E   ¦   F   D   l      D         $͛      l      <   #      (ߩ   ̓         C @ assert_eq!(Some(1..4), re.find(b"\nfoo\n").map(|m| m.range()));   <T                       	    	b ۚ  `     `  e $i   E      Fݬ   D   A   Aî   t      D   C   dư      $͛      l      <   #      *   #           let hay = b"foo\nbar";   K H assert_eq!(Some(&b"foo\nbar"[..]), re.find(hay).map(|m| m.as_bytes()));   <                       	    	b   `     `  f $͔6   5      Eִ   ҀE   /   ؁   E   +   A   E   Cϸ   ʄ      Dȹ   ƅ   ߅   $͛      l      <Ɔ   ֆ#      (ߩ   ̿            챈  let hay = b"\r\nfoo\r\n";   ׈A   A   F C assert_eq!(Some(&b"foo"[..]), re.find(hay).map(|m| m.as_bytes()));   <   ʊ   ֊E   G         <   #   Ռ   $ƿ   ̎      ̍      Ԁ  let hay = b"\r\n\r\n";   H   /   <$Ï                       	    	b   `    ȏ `  g $͏@   ;      G   ݑ   D   D   |   E   E   |   ϔ   ۔C   A      =   Ö   ϖ(      l      G   5      <Ș   ؘ#      (ߩ      !           let hay = b"\x00foo\x00";   <   <      țC         <   ͜#      $   !   ܝ         assert!(re.is_match(b"\n"));   #   assert!(!re.is_match(b"\x00"));   <      A > This shows that building a regex will work even when the byte   ˟F C given is not ASCII. This is unlike the top-level `Regex` API where   * ' matching invalid UTF-8 is not allowed.   ͠   ٠D A Note though that you must disable Unicode mode. This is required   C @ because Unicode mode requires matching one codepoint at a time,   A > and there is no way to match a non-ASCII byte as if it were a   t  codepoint.   Ӣ   <ߢ   #      d         RegexBuilder::new(r".")             .unicode(false)   "      Ф          .is_ok(),   4   <|                       	    	bf  `     `  h $$Ѭ<   ;      C   C   7   ̨   بD         ʩ$͛      l      <   #      %   ̛      ֫   G D assert_eq!(Some(&b"a"[..]), re.find(b"aaa").map(|m| m.as_bytes()));   <Tج                       	    	b   `     `  i $.C   ޭ8      A   E   Lï   կ   @   G   |      E   @   t   ̲   زE   C      D   ˴      $͛      l      <˵   ۵#         T   H   F   ߷,   G      T   !   T   4ҹ   #          Ϻ      5 2 let caps = re.captures(b"Harry Potter").unwrap();   . + assert_eq!(&b"Harry"[..], &caps["first"]);   . + assert_eq!(&b"Potter"[..], &caps["last"]);      8 5 let caps = re.captures(b"Harry J. Potter").unwrap();   .   G   D   |þ  assert_eq!(   ۾      Some(&b"J"[..]),   3 0     caps.name("initial").map(|m| m.as_bytes()),   4   ǿ@ = assert_eq!(None, caps.name("middle").map(|m| m.as_bytes()));   .      ; 8 let caps = re.captures(b"Harry James Potter").unwrap();   .   G   D   A > assert_eq!(None, caps.name("initial").map(|m| m.as_bytes()));   |׻         Some(&b"James"[..]),   2 /     caps.name("middle").map(|m| m.as_bytes()),   4   .   <                       	    	b   `     `  j $_7   6      E   G   C      C   C   E   C   A   ?   $      $͛      l      <   #      E   D   ,   '              assert!(re.is_match(b"a"));   <,                       	    	b   `     `  k $?   E      =   C   C   L      @   ?   A   C   E   F݂   F   E      D؄   D         D   %ۆ      l      <   D   #      D   E   7   J   <T                       	    	bg  `     `  l $
,C   G͋         A̌   D   G   <      D   @֏   C   D   C   G   \ؒ      D   GǓ   C   D   >      C   EԖ   G   F   DĘ   E   D         C֚   A   E   G   E   Eݝ   Bt                       	    	bg  `     `  m $
,=   *      C   E   A      G   G   G   F   |ؤ      =   Cĥ   A   Aܦ   E   D   @Ĩ   B      D   G   ԀD   Eӫ   B   ?      l      <   #      C   ĄEϮ   <T                       	    	b  `     `  n $߉              bpstuvwxyz{|}~    C   lʊݰ      E   Eϱ   \                       ƿb  o  q     r    q  r   o    D T pƿ1<>         @B         .   B   Ŏ&ր      FǴ   Ϗ,݁,                       	    	b   o     o $<   =      Ƒ2      D   ڒC̈́   D   G   ÔF   G   EՇ   t   ǖG   L   B   #      C @ Note that unlike the top-level `RegexSet` for searching `&str`,   A > it is permitted to disable Unicode mode even if the resulting   D A pattern could match invalid UTF-8. For example, `(?-u:.)` is not   B ? a valid pattern for a top-level `RegexSet`, but is valid for a   ښ  `bytes::RegexSet`.      Bӏ   Л>         #      l      <   & # use regex::bytes::RegexSetBuilder;   ם   *   ̒      Ϟ   @   ?   +      )      ̒      Ρ   <ܕ   D   G   ˣ   +   <      , ) Since this builder is for constructing a   G D [`bytes::RegexSet`](RegexSet), one can disable Unicode mode even if   !  it would match invalid UTF-8:      <   &      )   ̒         @   ?   Ѩ"   <<                       	    	b   o     o  t $~E   G         A   ٫>   C      $͛      l   ǭ   <ӭ   &      8   ߮         (   GН   C   )   )   <                       	    	b   o     o  u $?   <   ݳ   D   Dۡ   C   ϵA   F   G   *ݤ      F   Ƹ   ҸB   䝹   ¹F   G   l      D   л      $͛      l   ļ   <м   &      -   ѽ         % " assert!(re.is_match(b"\nfoo\n"));   <վT                       	    	b   o     o  v $l   E      Fݬ   D   A   Aî   t      D   C   dư      $͛      l      <   &      /   #         ԚҜ      <                       	    	b   o     o  w $9   6      Eִ   E   /      E   +   A   E   Cϸ         Dȹ         $͛      l      <   &      -                  A   A      <      E   G         <   &      +               #   assert!(!re.is_match(b"\r\n"));   <$                       	    	b   o     o  x $AC   ;      G      D   D   |   E   E   |      C   A      =      (      l      G   5      <   &      -   ̸   !         Ǩ      <      C         <   &      )   !             #ê   <      G D This shows that building a regex will work even when the byte given   C @ is not ASCII. This is unlike the top-level `RegexSet` API where   *      D   C   A   tɮ      <   &      d   $   ɯ   "         4   <|                       	    	bf  o     o  y $$?   <      C   C   7      D         C   F   F   E   6      $͛T                       	    	b   o     o  z $ri   9      A   E   L      @   G   |      E   @   t      E   C      D         $͛      l      <   &         T   H   F   ,   G      T   !   T߂   4   (       ۃ      * ' assert!(re.is_match(b"Harry Potter"));   - * assert!(re.is_match(b"Harry J. Potter"));   0 - assert!(re.is_match(b"Harry James Potter"));   . + assert!(!re.is_match(b"harry J. Potter"));   <                       	    	b ņ  o     o  { $:   7      E   ӈG   C      C   ǊC   E   C   A   ?   $      $͛      l   ǎ   <ӎ   &      E   D   ,   ,         ّ      <,                       	    	b   o     o  | $ӦB   E      =   ҔC   C   L      @   і?   A   C   E   F݂   ̙F   E      D؄   D         D   %ۆ      l   ӝ   <ߝ   D   &      D   ğE   7   dҠ   %         ڡ   4   <T                       	    	bg  o     o  } $
,i   G͋         A̌   D   G   <   ֦   D   @֏   C   ĨD   C   ݩG   \ؒ      ͪD   GǓ   C   D   >   ʭ   ֭C   EԖ   G   F   DĘ   ܰE   D         C֚   A   E   G   ҴE   Eݝ   Bt                       	    	bg  o    ܶ o  ~ $
,@   *      C   E   ҹA      G   G   ȻG   F   |ؤ      =   ѽCĥ   A   Aܦ   E   D   @Ĩ   B      D   G   D   Eӫ   B   ?      l      <   &      H   J   <T                       	    	b  o     o   $l    
Search for regex matches in `&[u8]` haystacks.

This module provides a nearly identical API via [`Regex`] to the one found in
the top-level of this crate. There are two important differences:

1. Matching is done on `&[u8]` instead of `&str`. Additionally, `Vec<u8>`
is used where `String` would have been used in the top-level API.
2. Unicode support can be disabled even when disabling it would result in
matching invalid UTF-8 bytes.

# Example: match null terminated string

This shows how to find all null-terminated strings in a slice of bytes. This
works even if a C string contains invalid UTF-8.

```rust
use regex::bytes::Regex;

let re = Regex::new(r"(?-u)(?<cstr>[^\x00]+)\x00").unwrap();
let hay = b"foo\x00qu\xFFux\x00baz\x00";

// Extract all of the strings without the NUL terminator from each match.
// The unwrap is OK here since a match requires the `cstr` capture to match.
let cstrs: Vec<&[u8]> =
    re.captures_iter(hay)
      .map(|c| c.name("cstr").unwrap().as_bytes())
      .collect();
assert_eq!(cstrs, vec![&b"foo"[..], &b"qu\xFFux"[..], &b"baz"[..]]);
```

# Example: selectively enable Unicode support

This shows how to match an arbitrary byte pattern followed by a UTF-8 encoded
string (e.g., to extract a title from a Matroska file):

```rust
use regex::bytes::Regex;

let re = Regex::new(
    r"(?-u)\x7b\xa9(?:[\x80-\xfe]|[\x40-\xff].)(?u:(.*))"
).unwrap();
let hay = b"\x12\xd0\x3b\x5f\x7b\xa9\x85\xe2\x98\x83\x80\x98\x54\x76\x68\x65";

// Notice that despite the `.*` at the end, it will only match valid UTF-8
// because Unicode mode was enabled with the `u` flag. Without the `u` flag,
// the `.*` would match the rest of the bytes regardless of whether they were
// valid UTF-8.
let (_, [title]) = re.captures(hay).unwrap().extract();
assert_eq!(title, b"\xE2\x98\x83");
// We can UTF-8 decode the title now. And the unwrap here
// is correct because the existence of a match guarantees
// that `title` is valid UTF-8.
let title = std::str::from_utf8(title).unwrap();
assert_eq!(title, "☃");
```

In general, if the Unicode flag is enabled in a capture group and that capture
is part of the overall match, then the capture is *guaranteed* to be valid
UTF-8.

# Syntax

The supported syntax is pretty much the same as the syntax for Unicode
regular expressions with a few changes that make sense for matching arbitrary
bytes:

1. The `u` flag can be disabled even when disabling it might cause the regex to
match invalid UTF-8. When the `u` flag is disabled, the regex is said to be in
"ASCII compatible" mode.
2. In ASCII compatible mode, Unicode character classes are not allowed. Literal
Unicode scalar values outside of character classes are allowed.
3. In ASCII compatible mode, Perl character classes (`\w`, `\d` and `\s`)
revert to their typical ASCII definition. `\w` maps to `[[:word:]]`, `\d` maps
to `[[:digit:]]` and `\s` maps to `[[:space:]]`.
4. In ASCII compatible mode, word boundaries use the ASCII compatible `\w` to
determine whether a byte is a word byte or not.
5. Hexadecimal notation can be used to specify arbitrary bytes instead of
Unicode codepoints. For example, in ASCII compatible mode, `\xFF` matches the
literal byte `\xFF`, while in Unicode mode, `\xFF` is the Unicode codepoint
`U+00FF` that matches its UTF-8 encoding of `\xC3\xBF`. Similarly for octal
notation when enabled.
6. In ASCII compatible mode, `.` matches any *byte* except for `\n`. When the
`s` flag is additionally enabled, `.` matches any byte.

# Performance

In general, one should expect performance on `&[u8]` to be roughly similar to
performance on `&str`.
  ,      :Y    HY    D    L    D    8d    8|z    ;,    <    <<    =tؒ    =,    >4    ?d    ?    @\    AD    A      HT؃    H    It    @|d|L   ,      4 H   D 5   
$<     !=?-/, T              c C                       ((  
BuildError (	        .!y c              8 <     7 ,               c   \                       	    	c     	           $!              c `  D                       	 	 	    	c    	``  `] `n]        9ֹ`    	          $              c `  D                       	 	 	    	c    	``  `] `n]        9ֹ`    	          $l   L      EL                       	f    	f          needle4D4  8 <     7 perf-literal t                        	f    	f           4DL   ,       	  ,	         4! H   I/ 7   9 A   
$U     Da     ,k 6   Lr 3   8      ,     9\tL)D4D8t[xzgi*fdO !              d `   D    * ' Shows the original regular expression.                        	 	 	    	d    	``  `] `n]        9ֹ`    	      !    $!!!              d `  "D   "*"                       	 	 	    	d    	``  `] `n]        9ֹ`    	      "    $""#!              d v v  D#$             c$,   $8 5 Attempts to parse a string into a regular expressionD$                       	    	       $    $%        8 	    	     d    T%,%            c&,   %8D&                       	    	      &      8&&              d    T','             c'.   '8D'                       d           'T(   ($ ! Core regular expression methods.              d 3,   (K H Compiles a regular expression. Once compiled, it can be used repeatedly   )9 6 to search, split or replace substrings in a haystack.   )   )I F Note that regex compilation tends to be a somewhat expensive process,   *J G and unlike higher level environments, compilation is not automatically   +H E cached for you. One should endeavor to compile a regex once and then   +D A reuse it. For example, it's a bad idea to compile the same regex   ̯,  repeatedly in a loop.   ,   d, 	 # Errors   ,   ,> ; If an invalid pattern is given, then an error is returned.   -@ = An error is also returned if the pattern is valid, but would   -E B produce a regex that is bigger than the configured size limit via   .H E [`RegexBuilder::size_limit`]. (A reasonable size limit is enabled by   l/ 
 default.)   /   l/   /   </   /  use regex::bytes::Regex;   /   /< 9 // An Invalid pattern because of an unclosed parenthesis   0- * assert!(Regex::new(r"foo(bar").is_err());   0< 9 // An invalid pattern because the regex would be too big   1/ , // because Unicode tends to inflate things.   1. + assert!(Regex::new(r"\w{1000}").is_err());   29 6 // Disabling Unicode can make the regex much smaller,   2? < // potentially by up to or more than an order of magnitude.   33 0 assert!(Regex::new(r"(?-u:\w){1000}").is_ok());   <33                       	    	       3    39/   4G D Returns true if and only if there is a match for the regex anywhere   ԃ5  in the haystack given.   5   5F C It is recommended to use this method if all you need to do is test   5G D whether a match exists, since the underlying matching engine may be   6  able to do less work.   6   l6   6   7D A Test if some haystack contains at least one word with exactly 13   7  Unicode word characters:   7   <7   7   8   80 - let re = Regex::new(r"\b\w{13}\b").unwrap();   8@ = let hay = b"I categorically deny having triskaidekaphobia.";   9   <9D9                      	 	    	d    	f        9    $9B?   :B ? This routine searches for the first match of this regex in the   ;B ? haystack given, and if found, returns a [`Match`]. The `Match`   ;H E provides access to both the byte offsets of the match and the actual   ܝ<  substring that matched.   <   <E B Note that this should only be used if you want to find the entire   =E B match. If instead you just want to test the existence of a match,   =D A it's potentially faster to use `Regex::is_match(hay)` instead of   >!  `Regex::find(hay).is_some()`.   >   l>   >   >@ = Find the first word with exactly 13 Unicode word characters:   ?   <?   ?   ?   ?0   @@   @$ ! let mat = re.find(hay).unwrap();   A#   assert_eq!(2..15, mat.range());   A1 . assert_eq!(b"categorically", mat.as_bytes());   <A$B                       	   	d     f               92g   ;                 &9QF           B    $BQJI   BI F Returns an iterator that yields successive non-overlapping matches in   CE B the given haystack. The iterator yields values of type [`Match`].   D   D  # Time complexity   D   DE B Note that since `find_iter` runs potentially many searches on the   EA > haystack and since each search has worst case `O(m * n)` time   EG D complexity, the overall worst case time complexity for iteration is   F  `O(m * n^2)`.   F   lF   F   F< 9 Find every word with exactly 13 Unicode word characters:   G   <G   G   G   G0   GM J let hay = b"Retroactively relinquishing remunerations is reprehensible.";   HL I let matches: Vec<_> = re.find_iter(hay).map(|m| m.as_bytes()).collect();   I  assert_eq!(matches, vec![   I      &b"Retroactively"[..],   I      &b"relinquishing"[..],   J      &b"remunerations"[..],   J      &b"reprehensible"[..],   <J  ]);   <JLJ                           d    f    <     <         Z@f               K    $KzKmF   LK H This routine searches for the first match of this regex in the haystack   LH E given, and if found, returns not only the overall match but also the   MJ G matches of each capture group in the regex. If no match is found, then   M  `None` is returned.   N   NJ G Capture group `0` always corresponds to an implicit unnamed group that   NH E includes the entire match. If a match is found, this group is always   OF C present. Subsequent groups may be named and are numbered, starting   PF C at 1, by the order in which the opening parenthesis appears in the   PF C pattern. For example, in the pattern `(?<a>.(?<b>.))(?<c>.)`, `a`,   QE B `b` and `c` correspond to capture group indices `1`, `2` and `3`,   Q  respectively.   Q   RJ G You should only use `captures` if you need access to the capture group   RK H matches. Otherwise, [`Regex::find`] is generally faster for discovering   ܡS  just the overall match.   S   lS   S   SH E Say you have some haystack with movie names and their release years,   TE B like "'Citizen Kane' (1941)". It'd be nice if we could search for   TK H strings looking like that, while also extracting the movie name and its   UD A release year separately. The example below shows how to do that.   V   <V   V   V   V= : let re = Regex::new(r"'([^']+)'\s+\((\d{4})\)").unwrap();   W? < let hay = b"Not my favorite movie: 'Citizen Kane' (1941).";   W) & let caps = re.captures(hay).unwrap();   XJ G assert_eq!(caps.get(0).unwrap().as_bytes(), b"'Citizen Kane' (1941)");   XA > assert_eq!(caps.get(1).unwrap().as_bytes(), b"Citizen Kane");   Y9 6 assert_eq!(caps.get(2).unwrap().as_bytes(), b"1941");   YH E // You can also access the groups by index using the Index notation.   ZI F // Note that this will panic on an invalid index. In this case, these   ZF C // accesses are always correct because the overall regex will only   [- * // match when these capture groups match.   [3 0 assert_eq!(&caps[0], b"'Citizen Kane' (1941)");   \* ' assert_eq!(&caps[1], b"Citizen Kane");   \"  assert_eq!(&caps[2], b"1941");   <\   ]   ]E B Note that the full match is at capture group `0`. Each subsequent   ]= : capture group is indexed by the order of its opening `(`.   ^   ^K H We can make this example a bit clearer by using *named* capture groups:   ^   <^   _   _   _L I let re = Regex::new(r"'(?<title>[^']+)'\s+\((?<year>\d{4})\)").unwrap();   `?   `)   `J   aH E assert_eq!(caps.name("title").unwrap().as_bytes(), b"Citizen Kane");   b? < assert_eq!(caps.name("year").unwrap().as_bytes(), b"1941");   bG D // You can also access the groups by name using the Index notation.   cH E // Note that this will panic on an invalid group name. In this case,   cG D // these accesses are always correct because the overall regex will   d2 / // only match when these capture groups match.   d3   e0 - assert_eq!(&caps["title"], b"Citizen Kane");   e' $ assert_eq!(&caps["year"], b"1941");   <f   f   fH E Here we name the capture groups, which we can access with the `name`   fE B method or the `Index` notation with a `&str`. Note that the named   gJ G capture groups are still accessible with `get` or the `Index` notation   h  with a `usize`.   h   hC @ The `0`th capture group is always unnamed, so it must always be   h$ ! accessed with `get(0)` or `[0]`.   i   iD A Finally, one other way to get the matched substrings is with the   i  [`Captures::extract`] API:   j   <j   j   j   j=   k?   kD A let (full, [title, year]) = re.captures(hay).unwrap().extract();   l/ , assert_eq!(full, b"'Citizen Kane' (1941)");   l' $ assert_eq!(title, b"Citizen Kane");   l  assert_eq!(year, b"1941");   <mDm                       	   	d     f               92g                    2ʾ           m    $mk   nI   nH E the given haystack. The iterator yields values of type [`Captures`].   o   oK H This is the same as [`Regex::find_iter`], but instead of only providing   pH E access to the overall match, each value yield includes access to the   pJ G matches of all capture groups in the regex. Reporting this extra match   qJ G data is potentially costly, so callers should only use `captures_iter`   rH E over `find_iter` when they actually need access to the capture group   dr 	 matches.   r   r   s   sI F Note that since `captures_iter` runs potentially many searches on the   sA   tG   t   u   lu   u   uG D We can use this to find all movie titles and their release years in   uF C some haystack, where the movie is formatted like "'Title' (xxxx)":   v   <v   v   v   v@ = let re = Regex::new(r"'([^']+)'\s+\(([0-9]{4})\)").unwrap();   wO L let hay = b"'Citizen Kane' (1941), 'The Wizard of Oz' (1939), 'M' (1931).";   x  let mut movies = vec![];   xJ G for (_, [title, year]) in re.captures_iter(hay).map(|c| c.extract()) {   y: 7     // OK because [0-9]{4} can only match valid UTF-8.   y6 3     let year = std::str::from_utf8(year).unwrap();   z3 0     movies.push((title, year.parse::<i64>()?));   ,z  }   z  assert_eq!(movies, vec![   z% "     (&b"Citizen Kane"[..], 1941),   {) &     (&b"The Wizard of Oz"[..], 1939),   Լ{      (&b"M"[..], 1931),   <{   {. + # Ok::<(), Box<dyn std::error::Error>>(())   <|   |   ̮|  Or with named groups:   |   <|   |   }   }O L let re = Regex::new(r"'(?<title>[^']+)'\s+\((?<year>[0-9]{4})\)").unwrap();   }Oɝ   ~' $ let mut it = re.captures_iter(hay);   ~   ~"  let caps = it.next().unwrap();   0   'ό      "Ҥ   4 1 assert_eq!(&caps["title"], b"The Wizard of Oz");   Հ' $ assert_eq!(&caps["year"], b"1939");      "Ҥ   % " assert_eq!(&caps["title"], b"M");   ځ' $ assert_eq!(&caps["year"], b"1931");   <l                           d    f    =     <         80Y                   $ʂS C   K H Returns an iterator of substrings of the haystack given, delimited by a   K H match of the regex. Namely, each element of the iterator corresponds to   J G a part of the haystack that *isn't* matched by the regular expression.   Ӆ   ۅ      F C Since iterators over all matches requires running potentially many   ȆB ? searches on the haystack, and since each search has worst case   J G `O(m * n)` time complexity, the overall worst case time complexity for   އ!  this routine is `O(m * n^2)`.      l      G D To split a string delimited by arbitrary amounts of spaces or tabs:      <   䆉      , ) let re = Regex::new(r"[ \t]+").unwrap();   #   let hay = b"a b \t  c\td    e";   5 2 let fields: Vec<&[u8]> = re.split(hay).collect();     assert_eq!(fields, vec![   > ;     &b"a"[..], &b"b"[..], &b"c"[..], &b"d"[..], &b"e"[..],   <   <      Ƌ  # Example: more cases        Basic usage:      <   䕌      ' $ let re = Regex::new(r" ").unwrap();   ( % let hay = b"Mary had a little lamb";   2 / let got: Vec<&[u8]> = re.split(hay).collect();   ΍  assert_eq!(got, vec![   K H     &b"Mary"[..], &b"had"[..], &b"a"[..], &b"little"[..], &b"lamb"[..],   <   Ȏ   Ў' $ let re = Regex::new(r"X").unwrap();     let hay = b"";   2   ʏ$ ! assert_eq!(got, vec![&b""[..]]);      '   % " let hay = b"lionXXtigerXleopard";   ѐ2   ̈   ? <     &b"lion"[..], &b""[..], &b"tiger"[..], &b"leopard"[..],   <      ( % let re = Regex::new(r"::").unwrap();   & # let hay = b"lion::tiger::leopard";   ֒2   H E assert_eq!(got, vec![&b"lion"[..], &b"tiger"[..], &b"leopard"[..]]);   <ړ      G D If a haystack contains multiple contiguous matches, you will end up   - * with empty spans yielded by the iterator:      <   䀕      '   Օ  let hay = b"XXXXaXXbXc";   2   ̭   ˖/ ,     &b""[..], &b""[..], &b""[..], &b""[..],   2 /     &b"a"[..], &b""[..], &b"b"[..], &b"c"[..],   <      ʗ' $ let re = Regex::new(r"/").unwrap();     let hay = b"(///)";   2   ɘD A assert_eq!(got, vec![&b"("[..], &b""[..], &b""[..], &b")"[..]]);   <      H E Separators at the start or end of a haystack are neighbored by empty   t  substring.      <   䚚      Ú' $ let re = Regex::new(r"0").unwrap();     let hay = b"010";   2   9 6 assert_eq!(got, vec![&b""[..], &b"1"[..], &b""[..]]);   <      F C When the regex can match the empty string, it splits at every byte   ݜI F position in the haystack. This includes between all UTF-8 code units.   H E (The top-level [`Regex::split`](crate::Regex::split) will only split     at valid UTF-8 boundaries.)      <   䰞   ў   ٞ& # let re = Regex::new(r"").unwrap();     let hay = "☃".as_bytes();   2   ߟ   I F     &[][..], &[b'\xE2'][..], &[b'\x98'][..], &[b'\x83'][..], &[][..],   <ˠ   <נ      J G Contiguous separators (commonly shows up with whitespace), can lead to   D A possibly surprising behavior. For example, this code is correct:      <   䗢      '     let hay = b"    a  b c";   2   ģ   /   2   <ͤ   <٤      K H It does *not* give you `["a", "b", "c"]`. For that behavior, you'd want   ) & to match contiguous space characters:      <         ( % let re = Regex::new(r" +").unwrap();   զ   2   E B // N.B. This does still include a leading empty span because ' +'   0 - // matches at the beginning of the haystack.   E B assert_eq!(got, vec![&b""[..], &b"a"[..], &b"b"[..], &b"c"[..]]);   <,                           d    f    =     <         <ت*                   $_ r   E B Returns an iterator of at most `limit` substrings of the haystack   K H given, delimited by a match of the regex. (A `limit` of `0` will return   I F no substrings.) Namely, each element of the iterator corresponds to a   H E part of the haystack that *isn't* matched by the regular expression.   ЬD A The remainder of the haystack that is not split will be the last   䙭  element in the iterator.      ­   ܭ   F   B   J   ů!      H E Although note that the worst case time here has an upper bound given     by the `limit` parameter.      l      - * Get the first two words in some haystack:      <   ʱ      ) & let re = Regex::new(r"\W+").unwrap();   #   let hay = b"Hey! How are you?";   ɲ9 6 let fields: Vec<&[u8]> = re.splitn(hay, 3).collect();   I F assert_eq!(fields, vec![&b"Hey"[..], &b"How"[..], &b"are you?"[..]]);   <ճ        # Examples: more cases      <   䜴      Ŵ'   (   6 3 let got: Vec<&[u8]> = re.splitn(hay, 3).collect();   ٵL I assert_eq!(got, vec![&b"Mary"[..], &b"had"[..], &b"a little lamb"[..]]);      '   ޶   6   $   ٷ   '   %ص   6   I F assert_eq!(got, vec![&b"lion"[..], &b""[..], &b"tigerXleopard"[..]]);      ȹ(   &   6 3 let got: Vec<&[u8]> = re.splitn(hay, 2).collect();   ۺ@ = assert_eq!(got, vec![&b"lion"[..], &b"tiger::leopard"[..]]);      '   Ի  let hay = b"abcXdef";   6 3 let got: Vec<&[u8]> = re.splitn(hay, 1).collect();   + ( assert_eq!(got, vec![&b"abcXdef"[..]]);   ݼ   '   đ  let hay = b"abcdef";   6   * ' assert_eq!(got, vec![&b"abcdef"[..]]);      '   ̾   6 3 let got: Vec<&[u8]> = re.splitn(hay, 0).collect();   䥿  assert!(got.is_empty());   <ƿ4                           d    f g   >     <         ª                   $)&(r   D A Replaces the leftmost-first match in the given haystack with the   H E replacement provided. The replacement can be a regular string (where   H E `$N` and `$name` are expanded to match capture groups) or a function   > ; that takes a [`Captures`] and returns the replaced string.      J G If no match is found, then the haystack is returned unchanged. In that   H E case, this implementation will likely return a `Cow::Borrowed` value   ) & such that no allocation is performed.      H E When a `Cow::Borrowed` is returned, the value returned is guaranteed   - * to be equivalent to the `haystack` given.        # Replacement string syntax      G D All instances of `$ref` in the replacement string are replaced with   I F the substring corresponding to the capture group identified by `ref`.      K H `ref` may be an integer corresponding to the index of the capture group   K H (counted by order of opening parenthesis where `0` is the entire match)   F C or it can be a name (consisting of letters, digits or underscores)   + ( corresponding to a named capture group.      K H If `ref` isn't a valid capture group (whether the name doesn't exist or   D A isn't a valid index), then it is replaced with the empty string.      F C The longest possible name is used. For example, `$1a` looks up the   G D capture group named `1a` and not the capture group at index `1`. To   H E exert more precise control over the name, use braces, e.g., `${1}a`.      $ ! To write a literal `$` use `$$`.      l      K H Note that this function is polymorphic with respect to the replacement.   7 4 In typical usage, this can just be a normal string:      <         , ) let re = Regex::new(r"[^01]+").unwrap();   : 7 assert_eq!(re.replace(b"1078910", b""), &b"1010"[..]);   <      J G But anything satisfying the [`Replacer`] trait will work. For example,   K H a closure of type `|&Captures| -> String` provides direct access to the   J G captures corresponding to a match. This allows one to access capturing   ̮  group matches easily:      <   ( % use regex::bytes::{Captures, Regex};      8 5 let re = Regex::new(r"([^,\s]+),\s+(\S+)").unwrap();   F C let result = re.replace(b"Springsteen, Bruce", |caps: &Captures| {         let mut buf = vec![];   ( %     buf.extend_from_slice(&caps[2]);         buf.push(b' ');   ( %     buf.extend_from_slice(&caps[1]);   \      buf   <  });   2 / assert_eq!(result, &b"Bruce Springsteen"[..]);   <      G D But this is a bit cumbersome to use all the time. Instead, a simple   J G syntax is supported (as described above) that expands `$name` into the   H E corresponding capture group. Here's the last example, but using this   2 / expansion technique with named capture groups:      <         G D let re = Regex::new(r"(?<last>[^,\s]+),\s+(?<first>\S+)").unwrap();   D A let result = re.replace(b"Springsteen, Bruce", b"$first $last");   2   <      G D Note that using `$2` instead of `$first` or `$1` instead of `$last`   C @ would produce the same result. To write a literal `$` use `$$`.      D A Sometimes the replacement string requires use of curly braces to   K H delineate a capture group replacement when it is adjacent to some other   K H literal text. For example, if we wanted to join two words together with     an underscore:      <         D A let re = Regex::new(r"(?<first>\w+)\s+(?<second>\w+)").unwrap();   @ = let result = re.replace(b"deep fried", b"${first}_$second");   + ( assert_eq!(result, &b"deep_fried"[..]);   <      F C Without the curly braces, the capture group name `first_` would be   I F used, and since it doesn't exist, it would be replaced with the empty   \  string.      H E Finally, sometimes you just want to replace a literal string with no   H E regard for capturing group expansion. This can be done by wrapping a     string with [`NoExpand`]:      <   ( % use regex::bytes::{NoExpand, Regex};      ? < let re = Regex::new(r"(?<last>[^,\s]+),\s+(\S+)").unwrap();   J G let result = re.replace(b"Springsteen, Bruce", NoExpand(b"$2 $last"));   ) & assert_eq!(result, &b"$2 $last"[..]);   <      K H Using `NoExpand` may also be faster, since the replacement string won't   ) & need to be parsed for the `$` syntax.<                       	   	d     f ے o      o         tYF.     f               ے     ے D ے$ΓMO:<         Ղv   A > Replaces all non-overlapping matches in the haystack with the   E B replacement provided. This is the same as calling `replacen` with     `limit` set to `0`.      J   H   )      H   -      H E The documentation for [`Regex::replace`] goes into more detail about   4 1 what kinds of replacement strings are supported.            F   B   J   !        # Fallibility      C @ If you need to write a replacement routine where any individual   J G replacement might "fail," doing so with this API isn't really feasible   F C because there's no way to stop the search process if a replacement   G D fails. Instead, if you need this functionality, you should consider   . + implementing your own replacement routine:      <   (        fn replace_all<E>(         re: &Regex,   ĉ      haystack: &[u8],   > ;     replacement: impl Fn(&Captures) -> Result<Vec<u8>, E>,     ) -> Result<Vec<u8>, E> {   9 6     let mut new = Vec::with_capacity(haystack.len());         let mut last_match = 0;   0 -     for caps in re.captures_iter(haystack) {   ) &         let m = caps.get(0).unwrap();   D A         new.extend_from_slice(&haystack[last_match..m.start()]);   8 5         new.extend_from_slice(&replacement(&caps)?);   !          last_match = m.end();   L      }   7 4     new.extend_from_slice(&haystack[last_match..]);   |      Ok(new)   ,ՠ      E B // Let's replace each word with the number of bytes in that word.   > ; // But if we see a word that is "too long," we'll give up.   ) & let re = Regex::new(r"\w+").unwrap();   J G let replacement = |caps: &Captures| -> Result<Vec<u8>, &'static str> {         if caps[0].len() >= 5 {   ( %         return Err("word too long");   L   2 /     Ok(caps[0].len().to_string().into_bytes())   4  };   |׻   !      Ok(b"2 3 3 3?".to_vec()),   ; 8     replace_all(&re, b"hi how are you?", &replacement),   4   B ? assert!(replace_all(&re, b"hi there", &replacement).is_err());   <      l      J G This example shows how to flip the order of whitespace (excluding line   E B terminators) delimited fields, and normalizes the whitespace that   Ī  delimits the fields:      <         A > let re = Regex::new(r"(?m)^(\S+)[\s--\r\n]+(\S+)$").unwrap();     let hay = b"     Greetings  1973   t  Wild\t1973   ̊  BornToRun\t\t\t\t1975   $ ! Darkness                    1978   р  TheRiver 1980   4   , ) let new = re.replace_all(hay, b"$2 $1");     assert_eq!(new, &b"     1973 Greetings   lց 
 1973 Wild     1975 BornToRun     1978 Darkness     1980 TheRiver   \  "[..]);   <\܂                       	   	d     f ے o      o         tYF.     f              ͉D ے$Γ<>24            I F Replaces at most `limit` non-overlapping matches in the haystack with   τI F the replacement provided. If `limit` is `0`, then all non-overlapping   D A matches are replaced. That is, `Regex::replace_all(hay, rep)` is   1 . equivalent to `Regex::replacen(hay, 0, rep)`.      J   H   )      H   È-      HË   ʉ4            F   B   J   !      H   쉍         ɍ   эH E See the corresponding section in the docs for [`Regex::replace_all`]   E B for tips on how to deal with a replacement routine that can fail.      l      Jʜ   ُE   E B delimits the fields. But we only do it for the first two matches.      <   䁑      A         t   ̰֟   Β$      4   , ) let new = re.replacen(hay, 2, b"$2 $1");   ɓ      l   ̎֟   $   Ք   \   <D                       	   	d     f gے o      o         tYF.     f              ͉DՒ$LVΓBD8:         TϨ   ˦L I A group of advanced or "lower level" search methods. Some methods permit   M J starting the search at a position greater than `0` in the haystack. Other   H E methods permit reusing allocations, for example, when extracting the     matches for capture groups.              d >   I F Returns the end byte offset of the first match in the haystack given.      @ = This method may have the same performance characteristics as   E B `is_match`. Behaviorally, it doesn't just report whether it match   ŪJ G occurs, but also the end offset for a match. In particular, the offset   G D returned *may be shorter* than the proper end of the leftmost-first   2 / match that you would find via [`Regex::find`].      J G Note that it is not guaranteed that this routine finds the shortest or   I F "earliest" possible match. Instead, the main idea of this API is that   I F it returns the offset at the point at which the internal regex engine   H E has determined that a match has occurred. This may vary depending on   ׮H E which internal regex engine is used, and thus, the offset itself may   ( % change based on internal heuristics.   ѯ   lٯ      H E Typically, `a+` would match the entire first sequence of `a` in some   G D haystack, but `shortest_match` *may* give up as soon as it sees the   t  first `a`.      <   䳱   Ա   ܱ( % let re = Regex::new(r"a+").unwrap();   6 3 let offset = re.shortest_match(b"aaaaa").unwrap();   Ĳ  assert_eq!(offset, 1);   <t                      	 	    	d    	f           $$n   F C Returns the same as `shortest_match`, but starts the search at the     given offset.   ִ   ޴K H The significance of the starting point is that it takes the surrounding   K H context into consideration. For example, the `\A` anchor can only match     when `start == 0`.      I F If a match is found, the offset returned is relative to the beginning   5 2 of the haystack, not the beginning of the search.      d 	 # Panics   ·   ʷ3 0 This panics when `start >= haystack.len() + 1`.      l      J G This example shows the significance of `start` by demonstrating how it   G D can be used to permit look-around assertions in a regex to take the   % " surrounding context into account.      <         . + let re = Regex::new(r"\bchew\b").unwrap();   ٺ  let hay = b"eschew";   ; 8 // We get a match here, but it's probably not intended.   6 3 assert_eq!(re.shortest_match(&hay[2..]), Some(4));   F C // No match because the  assertions take the context into account.   3 0 assert_eq!(re.shortest_match_at(hay, 2), None);   <                      	 	    	d    	f g        $B(L($                                     @   I F Returns the same as [`Regex::is_match`], but starts the search at the         K   E B context into consideration. For example, the `\A` anchor can only     match when `start == 0`.      d      3      l      J   G   %      <         .      ;   $ ! assert!(re.is_match(&hay[2..]));   F   % " assert!(!re.is_match_at(hay, 2));   <\                      	 	    	d    	f g         $--o   K H Returns the same as [`Regex::find`], but starts the search at the given   \  offset.      K   E         d      3      l      J   G   %      <         .   ā   ;   B ? assert_eq!(re.find(&hay[2..]).map(|m| m.range()), Some(0..4));   F   ) & assert_eq!(re.find_at(hay, 2), None);   <<                       	   	d     f g              92g   ;                 &9QF             $22%'                                     v   I F Returns the same as [`Regex::captures`], but starts the search at the         K   E         d      3      l      J   G   %      <         .   Ģ   ;   = : assert_eq!(&re.captures(&hay[2..]).unwrap()[0], b"chew");   F   . + assert!(re.captures_at(hay, 2).is_none());   <\                       	   	d     f g              92g                    2ʾ             $II%'   I F This is like [`Regex::captures`], but writes the byte offsets of each   1 . capture group match into the locations given.      J G A [`CaptureLocations`] stores the same byte offsets as a [`Captures`],   H E but does *not* store a reference to the haystack. This makes its API   C @ a bit lower level and less convenient. But in exchange, callers   G D may allocate their own `CaptureLocations` and reuse it for multiple   J G searches. This may be helpful if allocating a `Captures` shows up in a     profile as too costly.      1 . To create a `CaptureLocations` value, use the   ( % [`Regex::capture_locations`] method.      I F This also returns the overall match if one was found. When a match is   E B found, its offsets are also always stored in `locs` at index `0`.      l      <         6 3 let re = Regex::new(r"^([a-z]+)=(\S*)$").unwrap();   * ' let mut locs = re.capture_locations();   A > assert!(re.captures_read(&mut locs, b"id=foo123").is_some());   * ' assert_eq!(Some((0, 9)), locs.get(0));   * ' assert_eq!(Some((0, 2)), locs.get(1));   * ' assert_eq!(Some((3, 9)), locs.get(2));   <l                       	 	   	d    	i    f               92g   ;                 &9QF               $PP(*   J G Returns the same as [`Regex::captures_read`], but starts the search at     the given offset.      K   E         d      3      l      J   G   %      <         .      *   ;   > ; assert!(re.captures_read(&mut locs, &hay[2..]).is_some());   F   > ; assert!(re.captures_read_at(&mut locs, hay, 2).is_none());   <                       	 	   	d    	i    f g              92g   ;                 &9QF             ͡$dXoXyX.0                                        1 . An undocumented alias for `captures_read_at`.      D A The `regex-capi` crate previously used this routine, so to avoid   K H breaking that crate, we continue to provide the name as an undocumented   T  alias.  8 4 t                       	 	   	d    	i    f g              92g   ;                 &9QF               $+_6_@_02T     Auxiliary methods.              d    . + Returns the original string of this regex.      l      <         / , let re = Regex::new(r"foo\w+bar").unwrap();   * ' assert_eq!(re.as_str(), r"foo\w+bar");   <4                      	    	d     	           $Ê/   = : Returns an iterator over the capture names in this regex.      J G The iterator returned yields elements of type `Option<&str>`. That is,   I F the iterator yields values for all capture groups, even ones that are   L I unnamed. The order of the groups corresponds to the order of the group's   & # corresponding opening parenthesis.      K H The first element of the iterator always yields the group corresponding   J G to the overall match, and this group is always unnamed. Therefore, the   . + iterator always yields at least one group.   Ӏ   lۀ      J G This shows basic usage with a mix of named and unnamed capture groups:   ā   <́   ؁      C @ let re = Regex::new(r"(?<a>.(?<b>.))(.)(?:.)(?<c>.)").unwrap();   ɂ' $ let mut names = re.capture_names();   ) & assert_eq!(names.next(), Some(None));   . + assert_eq!(names.next(), Some(Some("a")));   փ. + assert_eq!(names.next(), Some(Some("b")));   )π   E B // the '(?:.)' group is non-capturing and so doesn't appear here!   . + assert_eq!(names.next(), Some(Some("c")));   #   assert_eq!(names.next(), None);   <܅      J G The iterator always yields at least one element, even for regexes with   @ = no capture groups and even for regexes that can never match:      <   䘇      &   '   )π   ƈ#      , ) let re = Regex::new(r"[a&&b]").unwrap();   '   Ӊ)π   #   <lʊ                      	    	d     ?           1DSj5     	      ؊    $يՒ#   ̋8 5 Returns the number of captures groups in this regex.      F C This includes all named and unnamed groups, including the implicit   ܌F C unnamed group that is always present and corresponds to the entire   T  match.      K H Since the implicit unnamed group is always included in this length, the   : 7 length returned is guaranteed to be greater than zero.   ͎   lՎ      <         ) & let re = Regex::new(r"foo").unwrap();   ҏ% " assert_eq!(1, re.captures_len());      + ( let re = Regex::new(r"(foo)").unwrap();   % " assert_eq!(2, re.captures_len());   ސ   C   % " assert_eq!(5, re.captures_len());   ؑ   ,   %   <dܒ                      	    	d g          $2   E B Returns the total number of capturing groups that appear in every     possible match.      I F If the number of capture groups can vary depending on the match, then   J G this returns `None`. That is, a value is only returned when the number   Ǖ0 - of matching groups is invariant or "static."      E B Note that like [`Regex::captures_len`], this **does** include the   ΖJ G implicit capturing group corresponding to the entire match. Therefore,   K H when a non-None value is returned, it is guaranteed to be at least `1`.   B ? Stated differently, a return value of `Some(0)` is impossible.      l   Θ   ֘E B This shows a few cases where a static number of capture groups is   . + available and a few cases where it is not.   ә   <ۙ         ̐  let len = |pattern| {   > ;     Regex::new(pattern).map(|re| re.static_captures_len())   4      #   assert_eq!(Some(1), len("a")?);   % " assert_eq!(Some(2), len("(a)")?);   ֛) & assert_eq!(Some(2), len("(a)|(b)")?);   / , assert_eq!(Some(3), len("(a)(b)|(c)(d)")?);   $ ! assert_eq!(None, len("(a)|b")?);   $ ! assert_eq!(None, len("a|(b)")?);   #   assert_eq!(None, len("(b)*")?);   & # assert_eq!(Some(2), len("(b)+")?);   ݝ   .   <                      	    	d       ͞    $Ξ3   ? < Returns a fresh allocated set of capture locations that can   ޟ> ; be reused in multiple calls to [`Regex::captures_read`] or      [`Regex::captures_read_at`].   Ơ   lΠ      <         1 . let re = Regex::new(r"(.)(.)(\w+)").unwrap();   ӡ*   > ; assert!(re.captures_read(&mut locs, b"Padron").is_some());   Ţ* ' assert_eq!(locs.get(0), Some((0, 6)));   * ' assert_eq!(locs.get(1), Some((0, 1)));   * ' assert_eq!(locs.get(2), Some((1, 2)));   ң* ' assert_eq!(locs.get(3), Some((2, 6)));   <                      	    	d i          $+   H E An alias for `capture_locations` to preserve backward compatibility.   ߥ   F C The `regex-capi` crate uses this method, so to avoid breaking that   ; 8 crate, we continue to export it as an undocumented API.  8 4 tL                      	    	d i          $и                  e ոռ   J G Returns the byte offset of the start of the match in the haystack. The   I F start of the match corresponds to the position where the match begins   - * and includes the first byte in the match.      ; 8 It is guaranteed that `Match::start() <= Match::end()`.      K H Unlike the top-level `Match` type, the start offset may appear anywhere   ػD A in the haystack. This includes between the code units of a UTF-8   !  encoded Unicode scalar value.,ܼ                      	    	e g           $ԯ   H E Returns the byte offset of the end of the match in the haystack. The   ߽K H end of the match corresponds to the byte immediately following the last   H E byte in the match. This means that `&slice[start..end]` works as one     would expect.      ;   ڿ   K   Dʧ   !                      	    	e g           $   @ = Returns true if and only if this match has a length of zero.      E B Note that an empty match can only occur when the regex itself can   F C match the empty string. Here are some examples of regexes that can   D A all match the empty string: `^`, `^$`, `\b`, `a?`, `a*`, `a{0}`,     `(foo|\d+|quux)?`.D                      	    	e             $   0 - Returns the length, in bytes, of this match.                      	    	e g           $.   F C Returns the range over the starting and ending byte offsets of the     match in the haystack.,                      	    	e f           $"   7 4 Returns the substring of the haystack that matched.D                      	    	e f           $A                     fgge            &'                  e `  @                       	 	 	    	e    	``  `] `n]        9ֹ`    	           $+l%                  f   !$                       ef            ͡4                  f   0$                       ef            ͡"   5 2 Represents the capture groups for a single match.      J G Capture groups refer to parts of a regex enclosed in parentheses. They   K H can be optionally named. The purpose of capture groups is to be able to   J G reference different parts of a match based on the original pattern. In   K H essence, a `Captures` is a container of [`Match`] values for each group   O L that participated in a regex match. Each `Match` can be looked up by either   4 1 its capture group index or name (if it has one).      K H For example, say you want to match the individual letters in a 5-letter   L  word:      \  ```text   ' $ (?<first>\w)(\w)(?:\w)\w(?<last>\w)   <      $ ! This regex has 4 capture groups:      K H * The group at index `0` corresponds to the overall match. It is always   0 - present in every match and never has a name.   I F * The group at index `1` with name `first` corresponding to the first   \  letter.   M J * The group at index `2` with no name corresponding to the second letter.   L I * The group at index `3` with name `last` corresponding to the fifth and     last letter.      K H Notice that `(?:\w)` was not listed above as a capture group despite it   L I being enclosed in parentheses. That's because `(?:pattern)` is a special   L I syntax that permits grouping but *without* capturing. The reason for not   J G treating it as a capture is that tracking and reporting capture groups   O L requires additional state that may lead to slower searches. So using as few   M J capture groups as possible can help performance. (Although the difference   G D in performance of a couple of capture groups is likely immaterial.)      ? < Values with this type are created by [`Regex::captures`] or     [`Regex::captures_iter`].      O L `'h` is the lifetime of the haystack that these captures were matched from.      l      <         I F let re = Regex::new(r"(?<first>\w)(\w)(?:\w)\w(?<last>\w)").unwrap();   . + let caps = re.captures(b"toady").unwrap();   #   assert_eq!(b"toady", &caps[0]);   % " assert_eq!(b"t", &caps["first"]);     assert_eq!(b"o", &caps[2]);   $ ! assert_eq!(b"y", &caps["last"]);   <  U                  g    2ʾ     D           f$           "                             g 0   J G Returns the `Match` associated with the capture group at index `i`. If   K H `i` does not correspond to a capture group, or if the capture group did   : 7 not participate in the match, then `None` is returned.      C @ When `i == 0`, this is guaranteed to return a non-`None` value.      t  # Examples      K H Get the substring that matched with a default of an empty string if the   * ' group didn't participate in the match:      <         A > let re = Regex::new(r"[a-z]+(?:([0-9]+)|([A-Z]+))").unwrap();   / , let caps = re.captures(b"abc123").unwrap();      A > let substr1 = caps.get(1).map_or(&b""[..], |m| m.as_bytes());   A > let substr2 = caps.get(2).map_or(&b""[..], |m| m.as_bytes());      assert_eq!(substr1, b"123");     assert_eq!(substr2, b"");   <                      	    	g g              92ge           2$                                   Ѕ$   - * Return the overall match for the capture.      E B This returns the match for index `0`. That is it is equivalent to     `m.get(0).unwrap()`      l      <         4 1 let re = Regex::new(r"[a-z]+([0-9]+)").unwrap();   6 3 let caps = re.captures(b"   abc123-def").unwrap();      7 4 assert_eq!(caps.get_match().as_bytes(), b"abc123");   <L                      	    	g e           $3   J G Returns the `Match` associated with the capture group named `name`. If   J G `name` isn't a valid capture group or it refers to a group that didn't   #   match, then `None` is returned.      J G Note that unlike `caps["name"]`, this returns a `Match` whose lifetime   B ? matches the lifetime of the haystack in this `Captures` value.   G D Conversely, the substring returned by `caps["name"]` has a lifetime   I F of the `Captures` value, which is likely shorter than the lifetime of   J G the haystack. In some cases, it may be necessary to use this method to   I F access the matching substring instead of the `caps["name"]` notation.      t      K   *      <           let re = Regex::new(   ; 8     r"[a-z]+(?:(?<numbers>[0-9]+)|(?<letters>[A-Z]+))",   |  ).unwrap();   /      J G let numbers = caps.name("numbers").map_or(&b""[..], |m| m.as_bytes());   J G let letters = caps.name("letters").map_or(&b""[..], |m| m.as_bytes());      assert_eq!(numbers, b"123");     assert_eq!(letters, b"");   <$                      	 	    	g    	            
$                                   B   ? < This is a convenience routine for extracting the substrings   - * corresponding to matching capture groups.      H E This returns a tuple where the first element corresponds to the full   K H substring of the haystack that matched the regex. The second element is   I F an array of substrings, with each corresponding to the substring that   + ( matched for a particular capture group.      d      A > This panics if the number of possible matching groups in this   > ; `Captures` value is not fixed to `N` in all circumstances.   E B More precisely, this routine only works when `N` is equivalent to   #   [`Regex::static_captures_len`].      F C Stated more plainly, if the number of matching capture groups in a   I F regex can vary from match to match, then this function always panics.      G D For example, `(a)(b)|(c)` could produce two matching capture groups   E B or one matching capture group for any given match. Therefore, one   ā- * cannot use `extract` with such a pattern.      I F But a pattern like `(a)(b)|(c)(d)` can be used with `extract` because   ̂E B the number of capture groups in every match is always equivalent,   8 5 even if the capture _indices_ in each match are not.   Ӄ   lۃ      <   䁄      F C let re = Regex::new(r"([0-9]{4})-([0-9]{2})-([0-9]{2})").unwrap();   ; 8 let hay = b"On 2010-03-14, I became a Tennessee lamb.";   * ' let Some((full, [year, month, day])) =   D A     re.captures(hay).map(|caps| caps.extract()) else { return };   $ ! assert_eq!(b"2010-03-14", full);   ֆ  assert_eq!(b"2010", year);     assert_eq!(b"03", month);   ܛ  assert_eq!(b"14", day);   <   Ǉ   χ  # Example: iteration      E B This example shows how to use this method when iterating over all   % " `Captures` matches in a haystack.      <         F   7 4 let hay = b"1973-01-05, 1975-08-25 and 1980-10-18";      7 4 let mut dates: Vec<(&[u8], &[u8], &[u8])> = vec![];   F C for (_, [y, m, d]) in re.captures_iter(hay).map(|c| c.extract()) {         dates.push((y, m, d));   ,ދՠ     assert_eq!(dates, vec![   / ,     (&b"1973"[..], &b"01"[..], &b"05"[..]),   / ,     (&b"1975"[..], &b"08"[..], &b"25"[..]),   / ,     (&b"1980"[..], &b"10"[..], &b"18"[..]),   <   <      č( % # Example: parsing different formats      I F This API is particularly useful when you need to extract a particular   ǎH E value that might occur in a different format. Consider, for example,   B ? an identifier that might be in double quotes or single quotes:   ۏ   <         B ? let re = Regex::new(r#"id:(?:"([^"]+)"|'([^']+)')"#).unwrap();   ߐF C let hay = br#"The first is id:"foo" and the second is id:'bar'."#;   ̪  let mut ids = vec![];   ȑA > for (_, [id]) in re.captures_iter(hay).map(|c| c.extract()) {         ids.push(id);   ,ՠ   * ' assert_eq!(ids, vec![b"foo", b"bar"]);   <<                       	    	g ff            gt     $g;   șI F Expands all instances of `$ref` in `replacement` to the corresponding   I F capture group, and writes them to the `dst` buffer given. A `ref` can   K H be a capture group index or a name. If `ref` doesn't refer to a capture   F C group that participated in the match, then it is replaced with the     empty string.      d 	 # Format      H E The format of the replacement string supports two different kinds of   , ) capture references: unbraced and braced.      H E For the unbraced format, the format supported is `$ref` where `name`   E B can be any character in the class `[0-9A-Za-z_]`. `ref` is always   ӞH E the longest possible parse. So for example, `$1a` corresponds to the   G D capture group named `1a` and not the capture group at index `1`. If   I F `ref` matches `^[0-9]+$`, then it is treated as a capture group index   Ժ  itself and not a name.   ٠   K H For the braced format, the format supported is `${ref}` where `ref` can   H E be any sequence of bytes except for `}`. If no closing brace occurs,   G D then it is not considered a capture reference. As with the unbraced   ʢH E format, if `ref` matches `^[0-9]+$`, then it is treated as a capture     group index and not a name.      ãJ G The braced format is useful for exerting precise control over the name   E B of the capture reference. For example, `${1}a` corresponds to the   ܤJ G capture group reference `1` followed by the letter `a`, where as `$1a`   I F (as mentioned above) corresponds to the capture group reference `1a`.   G D The braced format is also useful for expressing capture group names   ŦJ G that use characters not supported by the unbraced format. For example,   G D `${foo[bar].baz}` refers to the capture group named `foo[bar].baz`.      J G If a capture group reference is found and it does not refer to a valid   B ? capture group, then it will be replaced with the empty string.      % " To write a literal `$`, use `$$`.      l   ʩ   <ҩ   ީ      ć   A >     r"(?<day>[0-9]{2})-(?<month>[0-9]{2})-(?<year>[0-9]{4})",   |   ; 8 let hay = b"On 14-03-2010, I became a Tennessee lamb.";   )        let mut dst = vec![];   A > caps.expand(b"year=$year, month=$month, day=$day", &mut dst);   ج4 1 assert_eq!(dst, b"year=2010, month=03, day=14");   <4                      	 	 	    	g    	f    	o            $-86   C @ Returns an iterator over all capture groups. This includes both   % " matching and non-matching groups.      K H The iterator always yields at least one matching group: the first group   L I (at index `0`) with no name. Subsequent groups are returned in the order   ڰ. + of their opening parenthesis in the regex.      J G The elements yielded have type `Option<Match<'h>>`, where a non-`None`   2 / value is present if the capture group matches.      l      <   ɲ      3 0 let re = Regex::new(r"(\w)(\d)?(\w)").unwrap();   + ( let caps = re.captures(b"AZ").unwrap();   ڳ     let mut it = caps.iter();   K H assert_eq!(it.next().unwrap().map(|m| m.as_bytes()), Some(&b"AZ"[..]));   ԴJ G assert_eq!(it.next().unwrap().map(|m| m.as_bytes()), Some(&b"A"[..]));   ? < assert_eq!(it.next().unwrap().map(|m| m.as_bytes()), None);   J G assert_eq!(it.next().unwrap().map(|m| m.as_bytes()), Some(&b"Z"[..]));      assert_eq!(it.next(), None);   <۶$                          g    ?     <         RT]                   $   B ? Returns the total number of capture groups. This includes both   ̸%ۛ      F C The length returned is always equivalent to the number of elements   ɹE B yielded by [`Captures::iter`]. Consequently, the length is always   F C greater than zero since every `Captures` value always includes the   ޺  match for the entire regex.      l      <   䰻   ѻ   ٻ3   +     assert_eq!(caps.len(), 4);   <                      	    	g g           $½*                  g `  ǽD                       	 	 	    	g    	``  `] `n]        9ֹ`    	           $                         g    4
Nd     $$                                 2ʾ    2                  g `  @                       	 	 
    	g    	``  `] `n]        9ֹ`    
           $                   h    ؃gj      g              92g|h W                      gױh              ,           g|           ױ%                  h `  @                       
 
 
    
h    
``  `] `n]        9ֹ`    
           $  ,                 h    Nz;2         ;                 &9QF   h                       h              L           '                  h `  @                       
 
 
    
h    
``  `] `n]        9ֹ`    
           $+l1   ? < Get a matching capture group's haystack substring by index.      O L The haystack substring returned can't outlive the `Captures` object if this   N K method is used, because of how `Index` is defined (normally `a[i]` is part   N K of `a` and can't outlive it). To work around this limitation, do that, use     [`Captures::get`] instead.      I F `'h` is the lifetime of the matched haystack, but the lifetime of the   L I `&str` returned by this implementation is the lifetime of the `Captures`     value itself.      d      5 2 If there is no matching group at the given index.                  g    \4            f,,                          g g    f            $&(                                                                                7   > ; Get a matching capture group's haystack substring by name.      Oٹ   N   N     [`Captures::name`] instead.      I   L         N K `'n` is the lifetime of the group name used to index the `Captures` value.      d      4 1 If there is no matching group at the given name.                      g    \4            f1,                          g i    f              $
$,.                                                                             
   D A A type alias for `CaptureLocations` for backwards compatibility.      C @ Previously, we exported `CaptureLocations` as `Locations` in an   L I undocumented API. To prevent breaking that code (e.g., in `regex-capi`),   7 4 we continue re-exporting the same undocumented API.  8 4 t.             i              i 5   H E Returns the start and end byte offsets of the capture group at index   J G `i`. This returns `None` if `i` is not a valid capture group or if the      capture group did not match.      l      <         B ? let re = Regex::new(r"(?<first>\w+)\s+(?<last>\w+)").unwrap();   *   ? < re.captures_read(&mut locs, b"Bruce Springsteen").unwrap();   + ( assert_eq!(Some((0, 17)), locs.get(0));   * ' assert_eq!(Some((0, 5)), locs.get(1));   + ( assert_eq!(Some((6, 17)), locs.get(2));   <                      
    
i g        $$                                     Ԃ   K H Returns the total number of capture groups (even if they didn't match).   I F That is, the length returned is unaffected by the result of a search.      B ? This is always at least `1` since every regex has at least `1`   9 6 capturing group that corresponds to the entire match.      l      <         B   *     assert_eq!(3, locs.len());   ?      <      K H Notice that the length is always at least `1`, regardless of the regex:      <         &   & # let locs = re.capture_locations();     assert_eq!(1, locs.len());      5 2 // [a&&b] is a regex that never matches anything.   ,   &      <                      
    
i g          $5   > ; An alias for the `get` method for backwards compatibility.      E B Previously, we exported `get` as `pos` in an undocumented API. To   рC @ prevent breaking that code (e.g., in `regex-capi`), we continue   + ( re-exporting the same undocumented API.ˁ΁Ձ  8 4ρ tɁ                      
    
i g          $)                      j K K K    L$               ;                 &9QF  ҈'$Ո                      
    
j              92g     ڈ        $                                   ,                      jg              :                      j 0                      j K K K    L$                                2ʾ  *$                      
    
j              92g             P4                                   ,                      jg              (љA                      j ֙ڙ'                      k K K  L$             f &$ğ                      
    
k              92g     ɟ        14                                   8                      k (                      l K K K    Lڧ$ߧ            &$                      
    
l             4Ǩ                                   -L                      
    
l ұ             $ҩ9                      l ש۩î&                  m K K K K      ȮL$                          92g   -$                      
    
m              92g           $-L                      
    
m ұ           $,                      mg            /                  m ѱ7                  m ֱ3                      m K K K K      Lɺ$κ            /$                      
    
m              92g             <Ȼ                                   $                                   -L                      
    
m ұ     ˼        $̼,                      mg              ޽<                      m D                      m    H E A trait for types that can be used to replace matches in a haystack.      K H In general, users of this crate shouldn't need to implement this trait,   K H since implementations are already provided for `&[u8]` along with other   O L variants of byte string types, as well as `FnMut(&Captures) -> Vec<u8>` (or   M J any `FnMut(&Captures) -> T` where `T: AsRef<[u8]>`). Those cover most use   F C cases, but callers can implement this trait directly if necessary.      l      O L This example shows a basic implementation of the `Replacer` trait. This can   L I be done much more simply using the replacement byte string interpolation   M J support (e.g., `$first $last`), but this approach avoids needing to parse   ' $ the replacement byte string at all.      <   2 / use regex::bytes::{Captures, Regex, Replacer};        struct NameSwapper;      #   impl Replacer for NameSwapper {   N K     fn replace_append(&mut self, caps: &Captures<'_>, dst: &mut Vec<u8>) {   2 /         dst.extend_from_slice(&caps["first"]);   ( %         dst.extend_from_slice(b" ");   1 .         dst.extend_from_slice(&caps["last"]);   L   ,ՠ      G   @ = let result = re.replace(b"Springsteen, Bruce", NameSwapper);   2   <  w(                                ҇ ҇!         E   F C Appends possibly empty data to `dst` to replace the current match.      K H The current match is represented by `caps`, which is guaranteed to have   !  a match at capture group `0`.      - * For example, a no-op replacement would be   & # `dst.extend_from_slice(&caps[0])`.t                       
 
 
 
    
   
                    2ʾ    
    
o        $$:   6 3 Return a fixed unchanging replacement byte string.      K H When doing replacements, if access to [`Captures`] is not needed (e.g.,   I F the replacement byte string does not need `$` expansion), then it can   0 - be beneficial to avoid finding sub-captures.      K H In general, this is called once for every call to a replacement routine   #   such as [`Regex::replace_all`].d                                         92g o      o         tYF.     f       $4   I F Returns a type that implements `Replacer`, but that borrows and wraps     this `Replacer`.      J G This is useful when you want to take a generic `Replacer` (which might   H E not be cloneable) and use it without consuming it, so it can be used     more than once.      l      <   ( % use regex::bytes::{Regex, Replacer};      & # fn replace_all_twice<R: Replacer>(         re: Regex,         src: &[u8],         mut rep: R,     ) -> Vec<u8> {   4 1     let dst = re.replace_all(src, rep.by_ref());   5 2     let dst = re.replace_all(&dst, rep.by_ref());   Ē      dst.into_owned()   ,ՠ   <4                               @           `nQӚ            $1                      ׅtn        %gDt                       
 
 
 
    
n   
                    2ʾ    
    
o             $ 3d                       
    
n              92g o      o         tYF.     
f            $)                     gto        gDt                       
 
 
 
    
o   
                    2ʾ    
    
o           $\g3d                       
    
o              92g o      o         tYF.     
f          $                  o        Dt                       
 
 
 
    
o   
                    2ʾ    
    
o            $$3d                       
    
o              92g o      o         tYF.     
f           $!                  o        Dt                       
 
 
 
    
o   
                    2ʾ    
    
o            $$3d                       
    
o              92g o      o         tYF.     
f           $̋              o        Dt                       
 
 
 
    
o   
                    2ʾ    
    
o           $$3d                       
    
o              92g o      o         tYF.     
f          $#                  p        Dt                       
 
 
 
    
p   
                    2ʾ    
    
o            $$3d                       
    
p              92g o      o         tYF.     
f           $'                  q        Dt                       
 
 
 
    
q   
                    2ʾ    
    
o            $$3d                       
    
q              92g o      o         tYF.     
f           $U                         
 
 q    
                    2ʾ    
        
 
   q ̠   q    f \q    ')         ce         Dt                       
 
 
 
    
q   
                    2ʾ    
    
o         q$XcC                         q     q D  q  q        DF         Dt                       
 
 
 
    
q   
                    2ʾ    
    
o            q$Va:d                           q              92g o      o         tYF.     f           q$ ""                   q        At                       
 
 
 
    
q   
                    2ʾ    
    
o             $3d                       
    
q              92g o      o         tYF.     
f            $Id                      
    
̒               92g o      o         tYF.     
f               ̒    ̒f \ ̒
+-         	  4%	         4! H   I/ 7   
$K     DW     ,a 6   Lh 3   ,     8      /\tL):8tQsubdy#dZ37!              r `  D   *                       
 
 
    
r    
``  `] `n]        9ֹ`    
          $              r `  D   *                       
 
 
    
r    
``  `] `n]        9ֹ`    
          $ !              r v v  D!!             c!,   !8D!                       
    
       "    !"        8 
    
     r    T","            c#,   "8D#                       
    
      #      8#$              r    T$,$             c%.   $8D%                       d           %T%   %$              r 0,   &K   &9   '   'I   'J   (H   )D   )   )   d)   *   *>   *@   +E   +H   l,   ,   l,   ,   <,   ,  use regex::Regex;   -   -<   --   .<   ./   ..   /9   /?   03   <00                       
    
       1    06.   1G   Ԡ2   2   2F   3G   3   3   l4   4   4D   4   5   <5   5   5   50   5? < let hay = "I categorically deny having triskaidekaphobia.";   6   <6D6                      
 
    
r    
        7    $7*?>   7B   8B   8H   ܱ9   9   9E   :E   :D   ;!   ;   l;   ;   ;@   <   <<   <   <   <0   =?   =$   >#   >. + assert_eq!("categorically", mat.as_str());   <>$?                       
   
r                    92g   ;                 ~Z           ?    $?cGH   ?I   @E   A   A   A   AE   BA   BG   C   C   lC   C   C<   D   <D   D   D   D0   EL I let hay = "Retroactively relinquishing remunerations is reprehensible.";   EJ G let matches: Vec<_> = re.find_iter(hay).map(|m| m.as_str()).collect();   F   F      "Retroactively",   F      "relinquishing",   F      "remunerations",   ęG      "reprehensible",   <G   <GLG                           r        <     <         S`jЇ               G    $GGiE   HK   IH   JJ   J   J   KJ   KH   LF   LF   MF   ME   N   N   NJ   OK   ܆P   P   lP   P   PH   QE   QJ G substrings looking like that, while also extracting the movie name and   RH E its release year separately. The example below shows how to do that.   R   <S   S   S   S=   S> ; let hay = "Not my favorite movie: 'Citizen Kane' (1941).";   T)   TG D assert_eq!(caps.get(0).unwrap().as_str(), "'Citizen Kane' (1941)");   U> ; assert_eq!(caps.get(1).unwrap().as_str(), "Citizen Kane");   U6 3 assert_eq!(caps.get(2).unwrap().as_str(), "1941");   VH΁   VI   WF   X-   X2 / assert_eq!(&caps[0], "'Citizen Kane' (1941)");   X) & assert_eq!(&caps[1], "Citizen Kane");   Y!  assert_eq!(&caps[2], "1941");   <Y   Y   YE   Z=   Z   ZKƆ   [   <[   [   [   [Lȇ   \>   ])   ]G   ^E B assert_eq!(caps.name("title").unwrap().as_str(), "Citizen Kane");   ^< 9 assert_eq!(caps.name("year").unwrap().as_str(), "1941");   _G݉   _H   `G   `2΋   a2   a/ , assert_eq!(&caps["title"], "Citizen Kane");   b& # assert_eq!(&caps["year"], "1941");   <b   b   bH   cE   cJ   d   d   dC   e$   e   eD   f   f   <f   f   f   f=   g>   hD   h. + assert_eq!(full, "'Citizen Kane' (1941)");   i& # assert_eq!(title, "Citizen Kane");   i  assert_eq!(year, "1941");   <iDi                       
   
r                    92g                    1&8k           i    $i}j   jI   kH   k   lKǖ   lH   mJ   mJ   nH   do   o   o   o   oI   pA   pG   q   q   lq   q   qG   rF   r   <r   s   s   s@   sN K let hay = "'Citizen Kane' (1941), 'The Wizard of Oz' (1939), 'M' (1931).";   t   tJŞ   u3   ,uՠ   u   v      ("Citizen Kane", 1941),   v#       ("The Wizard of Oz", 1939),   v      ("M", 1931),   <v   w.   <w   w   w   w   <w   x   x   xO   xN   y'   y   y"Ҥ   z/   z&   {   {"Ҥ   {3 0 assert_eq!(&caps["title"], "The Wizard of Oz");   {& # assert_eq!(&caps["year"], "1939");   |   |"Ҥ   |$ ! assert_eq!(&caps["title"], "M");   |& # assert_eq!(&caps["year"], "1931");   <}l}                           r        =     <         Qx,N               }    $} }B   ~K   Kȩ   J            F   فB   J   !      l      G֭      <         ,ٮ   "  let hay = "a b \t  c\td    e";   4 1 let fields: Vec<&str> = re.split(hay).collect();   ʅ6 3 assert_eq!(fields, vec!["a", "b", "c", "d", "e"]);   <      ̙         Ԇ   <܆         '   ' $ let hay = "Mary had a little lamb";   1 . let got: Vec<&str> = re.split(hay).collect();   @ = assert_eq!(got, vec!["Mary", "had", "a", "little", "lamb"]);   ݈   '     let hay = "";   1   ݉  assert_eq!(got, vec![""]);      '   $ ! let hay = "lionXXtigerXleopard";   ݊1   : 7 assert_eq!(got, vec!["lion", "", "tiger", "leopard"]);   ҋ   ڋ(   % " let hay = "lion::tiger::leopard";   1   6 3 assert_eq!(got, vec!["lion", "tiger", "leopard"]);   <      G߸   -      <   Ȏ      '   ܖ  let hay = "XXXXaXXbXc";   1   = : assert_eq!(got, vec!["", "", "", "", "a", "", "b", "c"]);      '     let hay = "(///)";   1   , ) assert_eq!(got, vec!["(", "", "", ")"]);   <      H   tŒ   ؒ   <         '־     let hay = "010";   ӓ1   ' $ assert_eq!(got, vec!["", "1", ""]);   <      ɔF C When the empty string is used as a regex, it splits at every valid   J G UTF-8 boundary by default (which includes the beginning and end of the   t  haystack):      <         &   ז  let hay = "rust";   1   6 3 assert_eq!(got, vec!["", "r", "u", "s", "t", ""]);      > ; // Splitting by an empty string is UTF-8 aware by default!   &   ؘ  let hay = "☃";   1   ) & assert_eq!(got, vec!["", "☃", ""]);   <ՙ      J   D      <         '     let hay = "    a  b c";   1   =   <      K   ߝ)      <         Þ(   ő   1   ƟE   0   Š- * assert_eq!(got, vec!["", "a", "b", "c"]);   <,                           r        =     <         +O                   $!q   E   K   I   H   ФD   䙥      ¥   ܥ   F   B   J   ŧ!      H         l      -      <   ʩ      )   "  let hay = "Hey! How are you?";   8 5 let fields: Vec<&str> = re.splitn(hay, 3).collect();   7 4 assert_eq!(fields, vec!["Hey", "How", "are you?"]);   <   ƫ   Ϋ      <         '   Ϭ'   5 2 let got: Vec<&str> = re.splitn(hay, 3).collect();   : 7 assert_eq!(got, vec!["Mary", "had", "a little lamb"]);      '   Մ   5         '   ϯ$   5   7 4 assert_eq!(got, vec!["lion", "", "tigerXleopard"]);      (   %ن   ͱ5 2 let got: Vec<&str> = re.splitn(hay, 2).collect();   4 1 assert_eq!(got, vec!["lion", "tiger::leopard"]);      Ȳ'     let hay = "abcXdef";   5 2 let got: Vec<&str> = re.splitn(hay, 1).collect();   ˳% " assert_eq!(got, vec!["abcXdef"]);      '     let hay = "abcdef";   Ŵ5   $ ! assert_eq!(got, vec!["abcdef"]);      '   ܵ   5 2 let got: Vec<&str> = re.splitn(hay, 0).collect();   䳶   <Զ4                           r     g   >     <         r.`                   $ 
(*p   D   H   ƹH   >   ֺ   ޺J   H   )      H   -         ۽   G   I      K   տK   F   +      K   D      F   G   H      $      l      K   7      <         ,   2 / assert_eq!(re.replace("1078910", ""), "1010");   <      J   K   J   ̬      <   !  use regex::{Captures, Regex};      8   E B let result = re.replace("Springsteen, Bruce", |caps: &Captures| {   , )     format!("{} {}", &caps[2], &caps[1])   <   , ) assert_eq!(result, "Bruce Springsteen");   <      G   J   H   2      <         G   B ? let result = re.replace("Springsteen, Bruce", "$first $last");   ,   <      G   C      D   K   K         <         D   > ; let result = re.replace("deep fried", "${first}_$second");   % " assert_eq!(result, "deep_fried");   <      F   I   \ρ      H   H         <   !  use regex::{NoExpand, Regex};      ?   H E let result = re.replace("Springsteen, Bruce", NoExpand("$2 $last"));   #   assert_eq!(result, "$2 $last");   <      K   )φ<                       
   
r      ے o      o         tYF.                      ے D ے$=ΓHFH<>         t   A   E         J   H   )      H   -      HË   4            F   B   J   !            C   J   F   Gӏ   .      <   !¨                  haystack: &str,   = :     replacement: impl Fn(&Captures) -> Result<String, E>,     ) -> Result<String, E> {   < 9     let mut new = String::with_capacity(haystack.len());      0œ   )   ; 8         new.push_str(&haystack[last_match..m.start()]);   / ,         new.push_str(&replacement(&caps)?);   !   L   . +     new.push_str(&haystack[last_match..]);   |   ,ՠ      E   >   )   I F let replacement = |caps: &Captures| -> Result<String, &'static str> {      (   L   % "     Ok(caps[0].len().to_string())   4   |׻   #       Ok("2 3 3 3?".to_string()),   : 7     replace_all(&re, "hi how are you?", &replacement),   4   A > assert!(replace_all(&re, "hi there", &replacement).is_err());   <      l      Jʜ   E         <         A   |  let hay = "      t   ̜֟   $      4   + ( let new = re.replace_all(hay, "$2 $1");     assert_eq!(new, "      l   ԡ         <  ");   <\                       
   
r      ے o      o         tYF.                   D ے$Γ'>@46            IҤ   I   D   1Ʀ      J   H   )      H   -      HË   4            F   B   ȀJ   !      ŁH   쒂         ҂   ڂH   E      l      Jʜ   E   E      <         A   |      t   ̱֟   χ$      4   + ( let new = re.replacen(hay, 2, "$2 $1");   Ɉ      l   ̌֟   $   Ӊ   <   <D                       
   
r      gے o      o         tYF.                   D$QQΓBD8:         T   L   M   Hܱ                 r ɧ=   I      @   ϞE   J   Gڵ   2      J   ¡IǷ   I   ޢH   H   (      l      ǤH   G   t      <         (Լ   ֦5 2 let offset = re.shortest_match("aaaaa").unwrap();   ԐŽ   <tЧ                      
 
    
r    
       ߧ    $mڱm   K H Returns the same as [`Regex::shortest_match`], but starts the search at         K   K   Ҫ      I   ë5      d      3   ֬   lެ      J   ǭG   %      <Ů   Ѯ      .     let hay = "eschew";   ¯;   6   F   3   <                      
 
    
r    
 g        	$qq$ճ                                     	ֻ?   I      ִ   ޴K   E         d      3      l      J   G   %   ٸ   <         .   ¹   ޹;   $   ǺF   %   <\ݻ                      
 
    
r    
 g         $wwn   K   \      K   E   䶿   ׿   d߿      3      l      J   G   %      <         .      ;   B   F   )   <<                       
   
r      g              92g   ;                 ~Z             $f}p}%'                                     	u   I         K   E         d      3      l      J   G   %      <         .      ;   < 9 assert_eq!(&re.captures(&hay[2..]).unwrap()[0], "chew");   F   .   <\                       
   
r      g              92g                    1&8k             $Ì͌%'   I   1      J   H   C   G   J         1   (      I   E      d      J G This routine may panic if the given `CaptureLocations` was not created     by this regex.      l      <         6   *   @ = assert!(re.captures_read(&mut locs, "id=foo123").is_some());   *   *   *   <l                       
 
   
r    
w                   92g   ;                 ~Z               $(*   J         K   E         d      3      G D This routine may also panic if the given `CaptureLocations` was not     created by this regex.      l      J   G   %      <         .      *   ;   >   F   >   <                       
 
   
r    
w     g              92g   ;                 ~Z             
$.0                                     ܶ
   1      D   K   T  8 4 t                       
 
   
r    
w     g              92g   ;                 ~Z               $ɢӢ02T                 r    .      l      <         /   *   <4                      
    
r     
           $/   =      J   I   L   &      K   J   .      l      J      <         C   '   )π   .   .   )π   E   .ς   #   <      J̓   @      <         &   '   )π   #      ,   '   )π   #   <l                      
    
r     ?           /_O]>m     
          $Á#   8      F   ƃF   Tԉ      K   :Ɋ      l   х   <م         )؋   %   ߆   +ƌ   %      ɇC   %č      È,   %   <d                      
    
r g      ̉    $͉2   E   ؏      I   ۋJԐ   0   ߌ   E   J   K   ЎB      l      Eה   .      <   ʐ         >   4͑   ؑ   #   %   )   /   $ۘ   $   #   &      .   <                      
    
r           $ߜ3   ?   >          I F The returned locations can be used for any subsequent search for this   I F particular regex. There is no guarantee that it is correct to use for   ƘG D other regexes, even if they have the same number of capture groups.      l      <      ڙ   1   *   ǚ= : assert!(re.captures_read(&mut locs, "Padron").is_some());   *   *   *   *џ   <Ŝ                      
    
r w          $ן+   ֝H      F C The `regex-capi` crate used this method, so to avoid breaking that   ;  8 4 tLޟ                      
    
r w          $                  s 䫷   вJ   I   -      ;      H E This is guaranteed to fall on a valid UTF-8 codepoint boundary. That   F C is, it will never be an offset that appears between the UTF-8 code   F C units of a UTF-8 encoded Unicode scalar value. Consequently, it is   ҶF C always safe to slice the corresponding haystack using this offset.,                      
    
s g           $   H   K   HҪ   ҹ      ;      H   F   лFǐ   F                      
    
s g           $   @      E̭   ľF   D   ؿD                      
    
s             $ԏ   0                      
    
s g           $.   F   Ԡ      J G It is always correct to slice the original haystack searched with this   G D range. That is, because the offsets are guaranteed to fall on valid   9 6 UTF-8 boundaries, the range returned is always valid.,                      
    
s f           $   74                      
    
s t           $@                     tggs            g(g:g'                  s `  @                       
 
 
    
s    
``  `] `n]        9ֹ`    
           $$                  t    $                       st            ͡4                  f   0$                       sf            ͡   5      J׺   K   J   KԼ   O   4      K̾   L      \   'ӿ   <      $      K   0   I   \   M   L         K   L   L   J   O   M   G      ?         O      l      <         I   - * let caps = re.captures("toady").unwrap();   "  assert_eq!("toady", &caps[0]);   $ ! assert_eq!("t", &caps["first"]);     assert_eq!("o", &caps[2]);   #   assert_eq!("y", &caps["last"]);   <  ̆                  t    1&8k     D           tĄ$           "                             t 0   J   K   :      C      t      K   *      <         A   . + let caps = re.captures("abc123").unwrap();      9 6 let substr1 = caps.get(1).map_or("", |m| m.as_str());   9 6 let substr2 = caps.get(2).map_or("", |m| m.as_str());     assert_eq!(substr1, "123");     assert_eq!(substr2, "");   <                      
    
t g              92gs           gXf$                                   	$   -      E         l      <         4   5 2 let caps = re.captures("   abc123-def").unwrap();      4 1 assert_eq!(caps.get_match().as_str(), "abc123");      <L                      
    
t s           $3   J   J   #      J   B   G   I   J   I      t      K   *      <            ;   |   .      B ? let numbers = caps.name("numbers").map_or("", |m| m.as_str());   B ? let letters = caps.name("letters").map_or("", |m| m.as_str());     assert_eq!(numbers, "123");     assert_eq!(letters, "");   <$                      
 
    
t    
            !
?$                                   є@   ?   -      H   K   I   +      d      A   >   E   #      F   I      G   E   -      I   E   8      l      <         F   : 7 let hay = "On 2010-03-14, I became a Tennessee lamb.";   *   ܁D   #   assert_eq!("2010-03-14", full);   ͂  assert_eq!("2010", year);     assert_eq!("03", month);   Ԑ  assert_eq!("14", day);   <      Ã      E   %   ܄   <         F   ݅6 3 let hay = "1973-01-05, 1975-08-25 and 1980-10-18";      4 1 let mut dates: Vec<(&str, &str, &str)> = vec![];   نF      ,Ǉՠ   ч         ("1973", "01", "05"),   쓈      ("1975", "08", "25"),   쵈      ("1980", "10", "18"),   <׈   <      (      I   H   ǊB      <         ċB   E B let hay = r#"The first is id:"foo" and the second is id:'bar'."#;   Ռ   A      ,Ӎՠ   ݍ( % assert_eq!(ids, vec!["foo", "bar"]);   <<                       
    
t tt          ׅt     $gɨ9   I   I   K   ՖF         d   ϗ   חH   ,   ՘   ݘH   E   Hߊ   G   I   ۛԌ      K   ҜHٍ   G   H   Ώ   ܞ   J   Eא   J   ̠I   G͒   J   G      Jϔ   أB      %   Ѥ   l٤      <         ġ   A   |   : 7 let hay = "On 14-03-2010, I became a Tennessee lamb.";   צ)         let mut dst = String::new();   @ = caps.expand("year=$year, month=$month, day=$day", &mut dst);   3 0 assert_eq!(dst, "year=2010, month=03, day=14");   <4Ш                      
 
 
    
t    
    
d      ר      $ب6   ܩC   %ۛ   Ϊ   ֪K   L   .      J   2ٞ      l   ҭ   <ڭ         3   * ' let caps = re.captures("AZ").unwrap();      ݠ   C @ assert_eq!(it.next().unwrap().map(|m| m.as_str()), Some("AZ"));   B ? assert_eq!(it.next().unwrap().map(|m| m.as_str()), Some("A"));   = : assert_eq!(it.next().unwrap().map(|m| m.as_str()), None);   B ? assert_eq!(it.next().unwrap().map(|m| m.as_str()), Some("Z"));    ʣ   <ֱ$                          t    ?     <         Bjm5:I                   $   B   ǳ%ۛ      F   ĴE   F   ٵ      l      <      Ŷ   Ͷ3   *      <׷                          t g           $*                  t `  D                             t    ``  `] `n]        9ֹ`               $̼  Ӽ                  ۭu    i     $$                                 1&8k    2                  u `  @                             u    ``  `] `n]        9ֹ`               $                   u    +u      gױu lW                      gױu              ,           g|           ױ%                  u `  @                             u    ``  `] `n]        9ֹ`               $'  ,                 v    ҵ9-         ;                 ~Z   v ë                      v              L           '                  v `  @                             v    ``  `] `n]        9ֹ`               $1   ?      Oٹ   N   N         I   L         d      5                  t    \4            +,                          t g                $&(                                                                                7   >      Oٹ   N   N         I   L         N      d      4                      t    \4            0,                          t i                  $
$,.                                                                                D      C   L   7  8 4 t             w              w 5   H   J          l      <         B   *   > ; re.captures_read(&mut locs, "Bruce Springsteen").unwrap();   +   *   +   <                          w g        $X$                                        K   I      B   9      l      <         B   *      >      <      K      <         &   &         5   ,   &      <                          w g          $5   >      E   C   +  8 4 t                          w g          $E)                      w K K K    L$               ;                 ~Z  ʂ'$͂                          w              92g     ҂        7$                                   ,                      wg              :                      w 0                      x K K K    L$                                1&8k  *$                          x              92g             4                                   ,                      xg              rȓA                      x ͓ѓ'                      y K K  L$              %$                          y              92g             4                                   8                      y (                      y K K K    L͡$ҡ            %$                          y              4                                   -L                          y ұ             $ã9                      y ȣ̣&                  z K K K K      L$            -$                          z           $-L                          z ұ           $Ԫ,ת                      zg            /                  z «7                  z ǫ3                      { K K K K      L$            /$                          {              92g             <                                   $ص                                   -L                          { ұ             $,                      {g              &η<                      { ӷ׷D                      {    ظH      K   J G since implementations are already provided for `&str` along with other   M J variants of string types, as well as `FnMut(&Captures) -> String` (or any   O L `FnMut(&Captures) -> T` where `T: AsRef<str>`). Those cover most use cases,   ڻ? < but callers can implement this trait directly if necessary.      l      L I This example shows a basic implementation of  the `Replacer` trait. This   K H can be done much more simply using the replacement string interpolation   ɽM׀   "  the replacement string at all.      <   ƾ+ ( use regex::{Captures, Regex, Replacer};            #   M J     fn replace_append(&mut self, caps: &Captures<'_>, dst: &mut String) {   ) &         dst.push_str(&caps["first"]);             dst.push_str(" ");   ( %         dst.push_str(&caps["last"]);   L   ,ՠ      G   ? < let result = re.replace("Springsteen, Bruce", NameSwapper);   ,   <  0                 ҇            ҇ ҇!         D   F      F C The current match is represented by `caps`, which is guaranteed to   & # have a match at capture group `0`.      G D For example, a no-op replacement would be `dst.push_str(&caps[0])`.t                                                     1&8k        d        $$9   1 . Return a fixed unchanging replacement string.      K   G D the replacement string does not need `$` expansion), then it can be   - * beneficial to avoid finding sub-captures.      K   #d                                         92g o      o         tYF.            $4   I         J   H   Ǔ      l      <   !  use regex::{Regex, Replacer};      &Ԕ            src: &str,        ) -> String {   4   5   Ġ   ,ՠ   <4                               @           5͝            $                  |        Ct                              |                       1&8k        d            $$2d                           |              92g o      o         tYF.                $                   |        Ct                              |                       1&8k        d            $$2d                           |              92g o      o         tYF.                $ĝ              d        Ct                              d                       1&8k        d           $$2d                           d              92g o      o         tYF.               $"                  |        Ct                              |                       1&8k        d            $$2d                           |              92g o      o         tYF.                $&                  }        Ct                              }                       1&8k        d            $$2d                           }              92g o      o         tYF.                $T                           q                        1&8k             q      Tq    &(         Z\         Ct                              q                       1&8k        d         q$;/F/C                           q D }        >@         Ct                              }                       1&8k        d            q$z332d                           }              92g o      o         tYF.                q$"                   ~        @t                              ~                       1&8k        d             $2d                           ~              92g o      o         tYF.                 $Gd                          ̒               92g o      o         tYF.                     ̒ T ̒\+-         d   D       
  ,
     4 H   
$1     ,7 6   L> 3   TI 7   tU 7   8      ,        D}ln[]k&s=?l+              ~ 0y   +> ; Create a new regex set with the given regular expressions.   ,   ,J G This takes an iterator of `S`, where `S` is something that can produce   -I F a `&str`. If any of the strings in the iterator are not valid regular   -+ ( expressions, then an error is returned.   .   l.   .   .7 4 Create a new regex set from an iterator of strings:   .   <.   /  use regex::bytes::RegexSet;   /   /7 4 let set = RegexSet::new([r"\w+", r"\d+"]).unwrap();   /"  assert!(set.is_match(b"foo"));   <00                       ƿ                   0 0 T0 1 D1 ƿD>:<         ?A         Թ5   1!  Create a new empty regex set.   1   2* ' An empty regex never matches anything.   2   2G D This is a convenience function for `RegexSet::new([])`, but doesn't   31 . require one to specify the type of the input.   3   l3   3   <3   3   4   4   let set = RegexSet::empty();   4  assert!(set.is_empty());   4#   // an empty set matches nothing   5   assert!(!set.is_match(b""));   <5,5                       ~           5        g>/   6F C Returns true if and only if one of the regexes in this set matches   7  the haystack given.   7   7H E This method should be preferred if you only need to test whether any   7H E of the regexes in the set should match, but don't care about *which*   8H E regexes matched. This is because the underlying matching engine will   9J G quit immediately after seeing the first match instead of continuing to   9  find all matches.   9   :H E Note that as with searches using [`Regex`](crate::bytes::Regex), the   :G D expression is unanchored by default. That is, if the regex does not   ;I F start with `^` or `\A`, or end with `$` or `\z`, then it is permitted   ;& # to match anywhere in the haystack.   <   l<   <   <8 5 Tests whether a set matches somewhere in a haystack:   <   <<   =   =   =7   ="   >- * assert!(!set.is_match("☃".as_bytes()));   <>D>                           ~    f        >    $>5?I@   ?J G Returns true if and only if one of the regexes in this set matches the   @A > haystack given, with the search starting at the offset given.   @   @K   AE   A   B   dB   B   B3   B   lB   C   CF C This example shows the significance of `start`. Namely, consider a   CI F haystack `foobar` and a desire to execute a search starting at offset   DJ G `3`. You could search a substring explicitly, but then the look-around   DH E assertions won't work correctly. Instead, you can use this method to   E+ ( specify the start position of a search.   E   <F   F   F   FA > let set = RegexSet::new([r"\bbar\b", r"(?m)^bar$"]).unwrap();   āG  let hay = b"foobar";   G;   G% " assert!(set.is_match(&hay[3..]));   HF   H& # assert!(!set.is_match_at(hay, 3));   <H\I                           ~    f g       I  $IMAVAU4   J@ = Returns the set of regexes that match in the given haystack.   J   KE B The set returned contains the index of each regex that matches in   KH E the given haystack. The index is in correspondence with the order of   L: 7 regular expressions given to `RegexSet`'s constructor.   L   LK H The set can also be used to iterate over the matched indices. The order   MJ G of iteration is always ascending with respect to the matching indices.   M   NH   NG   OI   O&   P   lP   P   P= : Tests which regular expressions match the given haystack:   P   <Q   Q   Q   Q  let set = RegexSet::new([   |Q      r"\w+",   |Q      r"\d+",   R      r"\pL+",   |R      r"foo",   |R      r"bar",   R      r"barfoo",   R      r"foobar",   R  ]).unwrap();   SG D let matches: Vec<_> = set.matches(b"foobar").into_iter().collect();   S- * assert_eq!(matches, vec![0, 2, 3, 4, 6]);   T   T< 9 // You can also test whether a particular regex matched:   T) & let matches = set.matches(b"foobar");   T!  assert!(!matches.matched(5));   U   assert!(matches.matched(6));   <U<U                           ~    f       U    $UBaE   V@   W   WE   WH   X:   X   XK   YJ   Z   ZK   ZE   [   [   d[   [   [3   \   l\   \   \=   ]   <]   ]   ]   ]A   Ė^   ^; 8 // We get matches here, but it's probably not intended.   ^G D let matches: Vec<_> = set.matches(&hay[3..]).into_iter().collect();   _$ ! assert_eq!(matches, vec![0, 1]);   _H E // No matches because the  assertions take the context into account.   `G D let matches: Vec<_> = set.matches_at(hay, 3).into_iter().collect();   a   assert_eq!(matches, vec![]);   <aTa                           ~    f g      a  ҅$aJJh   cC @ Returns the same as matches, but starts the search at the given   d7 4 offset and stores the matches into the slice given.   d   eK   eE   f   f   fG D `matches` must have a length that is at least the number of regexes   g  in this set.   g   gB ? This method returns true if and only if at least one member of   gA > `matches` is true after executing the set against `haystack`.hhh  8 4h th|h                            ~    
    f g       h  $i1/]9]B]r   pF C An alias for `matches_read_at` to preserve backward compatibility.   p   qF   q;rrr  8 4r tr|r                            ~    
    f g       r    $r1dddv   s4 1 Returns the total number of regexes in this set.   t   lt   t   <t   t   u   u+ ( assert_eq!(0, RegexSet::empty().len());   u< 9 assert_eq!(1, RegexSet::new([r"[0-9]"]).unwrap().len());   uF C assert_eq!(2, RegexSet::new([r"[0-9]", r"[a-z]"]).unwrap().len());   <vv                          ~ g      v    $vy   w3 0 Returns `true` if this set contains no regexes.   w   lw   w   <x   x   x   x* ' assert!(RegexSet::empty().is_empty());   x< 9 assert!(!RegexSet::new([r"[0-9]"]).unwrap().is_empty());   <yDy                          ~        y    $y#   zH E Returns the regex patterns that this regex set was constructed from.   z   zG D This function can be used to determine the pattern for a match. The   {I F slice returned has exactly as many patterns givens to this regex set,   |G D and the order of the slice is the same as the order of the patterns   |  provided to the set.   |   l|   }   <}   }   }   }  let set = RegexSet::new(&[   |}   |~   ~   |~   |~   ~   ~   ~     let matches: Vec<_> = set   ܶ      .matches(b"foobar")         .into_iter()   , )     .map(|index| &set.patterns()[index])         .collect();   J G assert_eq!(matches, vec![r"\w+", r"\pL+", r"foo", r"bar", r"foobar"]);   <D                          ~                $              ~   <                       ~           |               !   * ' Whether this set contains any matches.      l   Є   <؄            ( %     r"[a-z]+@[a-z]+\.(com|org|net)",   !      r"[a-z]+\.(com|org|net)",      2 / let matches = set.matches(b"foo@example.com");   ҆#   assert!(matches.matched_any());   <\                                      $!   އ- * Whether all patterns in this set matched.      l      <                  r"^foo",         r"[a-z]+\.com",      Ӊ2 / let matches = set.matches(b"foo.example.com");   #   assert!(matches.matched_all());   <\Ŋ                                   ъ    $Ҋ+   1 . Whether the regex at the given index matched.      ċG D The index for a regex is determined by its insertion order upon the   : 7 initial construction of a `RegexSet`, starting at `0`.   ό   d׌      G D If `index` is greater than or equal to the number of regexes in the   H E original set that produced these matches. Equivalently, when `index`   4 1 is greater than or equal to [`SetMatches::len`].      lʎ   ܎   <         윏   (   !      . + let matches = set.matches(b"example.com");   ِ!  assert!(!matches.matched(0));      assert!(matches.matched(1));   <<ő                           g       ͑    $Αnԡ   F C The total number of regexes in the set that created these matches.      I F **WARNING:** This always returns the same value as [`RegexSet::len`].   ѓI F In particular, it does *not* return the number of elements yielded by   G D [`SetMatches::iter`]. The only way to determine the total number of   , ) matched regexes is to iterate over them.      l      F C Notice that this method returns the total number of regexes in the   E B original set, and *not* the total number of regexes that matched.   Ӗ   <ۖ         쓗   (   !      .   И- * // Total number of patterns that matched.   * ' assert_eq!(1, matches.iter().count());   + ( // Total number of patterns in the set.   !  assert_eq!(2, matches.len());   <                           g          $դ(   E B Returns an iterator over the indices of the regexes that matched.      I F This will always produces matches in ascending order, where the index   K H yielded corresponds to the index of the regex that matched with respect   Ӝ4 1 to its position when initially building the set.      l      <      ޝ            r"[0-9]",         r"[a-z]",         r"[A-Z]",   ʞ      r"\p{Greek}",         let hay = "βa1".as_bytes();   < 9 let matches: Vec<_> = set.matches(hay).iter().collect();   ߟ' $ assert_eq!(matches, vec![0, 1, 3]);   <      G D Note that `SetMatches` also implements the `IntoIterator` trait, so   2 / this method is not always needed. For example:      <      ڡ            ۯ   Ƣ          욣  let mut matches = vec![];   #   for index in set.matches(hay) {         matches.push(index);   ,ՠ   '   <$ܤ                               I           -}N               $                J J J  l֥Dۥ             L$             g$L                        J           r(                   J J J  lΧDӧ            L$            g$L                        J            uӯ$               K K K    L$             g#$                                     $-L                            ұ          $β/               J  (L                                     $5               (                   K K K    L߹$            g#$                                      $,                                      g  غ-Lۺ                            ұ           $3                   J  (L                                      $,                                      ϼ9                   Լ"              ~ `  D                             ~    ``  `] `n]        9ֹ`              $Ľ
  4%
     4 H   
$1     ,7 6   L> 3   TI 7   tU 7   ,s       8       D{}jlY[kMOl)               .y   )>   *   *J   +I   ++   ,   l,   ,   ,7   ,   <,   ,  use regex::RegexSet;   -   -7   -!  assert!(set.is_match("foo"));   <..                       ƿ                   . . T. . D. ƿK:<         ?A         Ԝ3   /!   /   /*   0   0G   01   1   l1   1   <1   1   1   1    2   2#   2  assert!(!set.is_match(""));   <3,3                                  3        g<.   4F   4   5   5H   5H   6H   6J   7   7   7A > Note that as with searches using [`Regex`](crate::Regex), the   8G   8I   9&   9   l9   :   :8   :   <:   :   :   ;7   ;!   ;"  assert!(!set.is_match("☃"));   <<D<                                       <    $<8F?   =J   =A   >   >K   >E   ?   ?   d?   ?   @3   @   l@   @   @F   AI   AJ   BH   C+   C   <C   C   C   CA   D  let hay = "foobar";   D;   E%   EF   F&   <F\F                                g       F  ψ$FS3   G@   H   HE   IH   I:   J   JK   JJ   K   KA   LG   LI   M&   M   lM   M   M=   N   <N   N   N   N   |O   |O   O   |O   |O   O   P   P   PF C let matches: Vec<_> = set.matches("foobar").into_iter().collect();   Q-   Q   Q<   Q( % let matches = set.matches("foobar");   R!   R    <R<S                                      S    $S2^D   S@   T   TE   UH   U:   V   VK   VJ   W   WK   XE   X   Y   dY   Y   Y3   Y   lY   Y   Y=   Z   <Z   Z   Z   ZA   [   [;   \G   \$   ]H   ]G   ^    <^T^                                g      ^  ǐ$^f   aC   a7ʀ   b   bK   bE   c   c   cGƁ   d   d   dB   eAeee  8 4e te|f                                
     g       f  $f1o   mF   n   nF   n;ooo  8 4o to|o                                
     g       o    $o1ɦҦs   q4   q   lq   q   <q   ăr   r   r+   r<   sF   <st                           g      t    $tv   t3   t   lu   u   <u   Ĭu   u   u*   v<   <vDv                                  v    $v~#   wH֍   w   xG   xI   yGԏ   y   z   lz   z   <z   Ĳz   z   z   |z   |{   {   |{   |{   {   {   |   |   |      .matches("foobar")   |ג   |,   }   }JƓ   <~D~                                      ~    $~~                 <                                  |               !   *   Á   lˁ   ݁   <            (   !      1 . let matches = set.matches("foo@example.com");   ׃#   <\                                      $!   -      l      <   Å                  ц1 . let matches = set.matches("foo.example.com");   #   <\                                   ·    $χ+   1      G   :   ̉   dԉ      G   H   4̠      lǋ   ً   <         쒌   (   !      - * let matches = set.matches("example.com");   ΍!Ģ       <<                           g           $ÎnԎ   F      I   ƐI   G   ,      l      F   E   ȓ   <Г   ܓ      쁔   (   Д!      -   -ԩ   *   +   Ζ!   <                           g          $(   ЗE      I   K   4      l      <   ħ   Ě   ̚         ۯ      ʛ   ߛ  let hay = "βa1";   <˰   '   <      G۱   Ɲ2      <   đ      춞   ؞      ۯ         ɟ      #   䭠ɴ   ,Πՠ   ؠ'   <$                               I           	o               $                J J J  lD             LǢ$̢             gߢ$L                        J           (                   J J J  lD            L$Ĥ            gפ$Lڤ                        J            r$               K K K    L$             gͬ#$Ь                                 լ    $ڬ-L                            ұ          $/               J  (L                                 ȯ    $ͯ5               (                   K K K    L$            g#$                                      $,                                      -L                            ұ           $3                   J  (L                                      $,                                      9                   Ĺ"               `  D                                 ``  `] `n]        9ֹ`              $5    @  = Escapes all regular expression meta characters in `pattern`.       D  A The string returned may be safely used as a literal in a regular   |   expression.4                             d           < t <
            `    _8      $
            ,
            <
            I I ?            `   II                          ` `          ,IK IK @            ` `  IKIK                            `    ``  `] `n]        9ֹ`              ,IK6   3+ ( A configurable builder for a [`Regex`].   3   3F C This builder can be used to programmatically set flags such as `i`   4K H (case insensitive) and `x` (for verbose mode). This builder can also be   5I F used to configure things like the line terminator and a size limit on   5$ ! the compiled regular expression. d6             a    x%6      6<63            `(u (u A            a   (u(u                          a a      
6    ,6u u B            a `  uu                            a    ``  `] `n]        9ֹ`          6    ,6u   . + A configurable builder for a [`RegexSet`].      B ? This builder can be used to programmatically set flags such as   C @ `i` (case insensitive) and `x` (for verbose mode). This builder   A > can also be used to configure things like the line terminator   8 5 and a size limit on the compiled regular expression. |             a    Y~      <3            `  C            a                             a a          ,] ] D            a `  ]]                            a    ``  `] `n]        9ֹ`              ,]   ν+       FƓ    ѾK    I    $  d             b    l=lvN      <Y            `  E            b                             b b          ,  F            b `                              b    ``  `] `n]        9ֹ`              ,ԝ   .       FƓ    K    I    ؈$  	|             b    ˂ D      <Y            `{ { G            b   {{                          b b          ,= = H            b `  ==                            b    ``  `] `n]        9ֹ`              ,=t   CL I An error that occurred during parsing or compiling a regular expression. 2 
,             c    B&       dc    gc      A syntax error. 
                                      dc            4             d   . + The compiled program exceeded the set size   4 1 limit. The argument is the size limit imposed by   G D [`RegexBuilder::size_limit`](crate::RegexBuilder::size_limit). Even   F C when not configured explicitly, it defaults to a reasonable limit.      I F If you're getting this error, it occurred because your regex has been   I F compiled to an intermediate state that is too big. It is important to   J G note that exceeding this limit does _not_ mean the regex is too big to   I F _work_, but rather, the regex is big enough that it may wind up being   J G surprisingly slow when used in a search. In other words, this error is   I F meant to be a practical heuristic for avoiding a performance footgun,   I F and especially so for the case where the regex pattern is coming from   Į  an untrusted source.      G D There are generally two ways to move forward if you hit this error.   	J G The first is to find some way to use a smaller regex. The second is to   	G D increase the size limit via `RegexBuilder::size_limit`. However, if   
J G your regex pattern is not from a trusted source, then neither of these   I F approaches may be appropriate. Instead, you'll have to determine just   ) & how big of a regex you want to allow. 
                                      gc            ,             g  I            c                             c c          ,  J            c   J            c                              c    c            L驄   B ? A compiled regular expression for searching Unicode haystacks.      N K A `Regex` can be used to search haystacks, split haystacks into substrings   G D or replace substrings in a haystack with a different substring. All   M J searching is done with an implicit `(?s:.)*?` at the beginning and end of   M J an pattern. To force an expression to match the whole string (or a prefix   L I or a suffix), you must use an anchor like `^` or `$` (or `\A` and `\z`).      N K Like the `Regex` type in the parent module, matches with this regex return   M J byte offsets into the haystack. **Unlike** the parent `Regex` type, these   J G byte offsets may not correspond to UTF-8 sequence boundaries since the   5 2 regexes in this module can match arbitrary bytes.      N K The only methods that allocate new byte strings are the string replacement   H E methods. All other methods (searching and splitting) return borrowed   ' $ references into the haystack given.      l      * ' Find the offsets of a US phone number:   	   <	   	   	   	? < let re = Regex::new("[0-9]{3}-[0-9]{3}-[0-9]{4}").unwrap();   
5 2 let m = re.find(b"phone: 111-222-3333").unwrap();   
!  assert_eq!(7..19, m.range());   <
   
   
( % # Example: extracting capture groups      K H A common way to use regexes is with capture groups. That is, instead of   O L just looking for matches of an entire regex, parentheses are used to create   , ) groups that represent part of the match.      K H For example, consider a haystack with multiple lines, and each line has   N K three whitespace delimited fields where the second field is expected to be   K H a number and the third field a boolean. To make this convenient, we use   J G the [`Captures::extract`] API to put the strings that match each group     into a fixed size array:      <              rabbit         54 true     groundhog 2 true     does not match     fox   109    false   4   Q N let re = Regex::new(r"(?m)^\s*(\S+)\s+([0-9]+)\s+(true|false)\s*$").unwrap();   5 2 let mut fields: Vec<(&[u8], i64, bool)> = vec![];   O L for (_, [f1, f2, f3]) in re.captures_iter(hay).map(|caps| caps.extract()) {   M J     // These unwraps are OK because our pattern is written in a way where   9 6     // all matches for f2 and f3 will be valid UTF-8.   2 /     let f2 = std::str::from_utf8(f2).unwrap();   2 /     let f3 = std::str::from_utf8(f3).unwrap();   4 1     fields.push((f1, f2.parse()?, f3.parse()?));   ,ՠ      #       (&b"rabbit"[..], 54, true),   % "     (&b"groundhog"[..], 2, true),   "      (&b"fox"[..], 109, false),   <      .   <      % " # Example: matching invalid UTF-8      J G One of the reasons for searching `&[u8]` haystacks is that the `&[u8]`   J G might not be valid UTF-8. Indeed, with a `bytes::Regex`, patterns that   M J match invalid UTF-8 are explicitly allowed. Here's one example that looks   L I for valid UTF-8 fields that might be separated by invalid UTF-8. In this   N K case, we use `(?s-u:.)`, which matches any byte. Attempting to use it in a   N K top-level `Regex` will result in the regex failing to compile. Notice also   N K that we use `.` with Unicode mode enabled, in which case, only valid UTF-8   K H is matched. In this way, we can build one pattern where some parts only   < 9 match valid UTF-8 while other parts are more permissive.      <         ; 8 // F0 9F 92 A9 is the UTF-8 encoding for a Pile of Poo.   = : let hay = b"\xFF\xFFfoo\xFF\xFF\xFF\xF0\x9F\x92\xA9\xFF";   : 7 // An equivalent to '(?s-u:.)' is '(?-u:[\x00-\xFF])'.   N K let re = Regex::new(r"(?s)(?-u:.)*?(?<f1>.+)(?-u:.)*?(?<f2>.+)").unwrap();   )   ) & assert_eq!(&caps["f1"], &b"foo"[..]);   / , assert_eq!(&caps["f2"], "💩".as_bytes());   < ,             d    73U>      $              <                Q            d                             d d           ,   7 4 Represents a single match of a regex in a haystack.      O L A `Match` contains both the start and end byte offsets of the match and the   L I actual substring corresponding to the range of those byte offsets. It is   ĩL I guaranteed that `start <= end`. When `start == end`, the match is empty.      L I Unlike the top-level `Match` type, this `Match` type is produced by APIs   O L that search `&[u8]` haystacks. This means that the offsets in a `Match` can   K H point to anywhere in the haystack, including in a place that splits the   - * UTF-8 encoding of a Unicode scalar value.      L I The lifetime parameter `'h` refers to the lifetime of the matched of the   / , haystack that this match was produced from.      |  # Numbering      ŭI F The byte offsets in a `Match` form a half-open interval. That is, the   J G start of the range is inclusive and the end of the range is exclusive.   ڮL I For example, given a haystack `abcFOOxyz` and a match of `FOO`, its byte   J G offset range starts at `3` and ends at `6`. `3` corresponds to `F` and   H E `6` corresponds to `x`, which is one past the end of the match. This   ; 8 corresponds to the same kind of slicing that Rust uses.      H E For more on why this was chosen over other schemes (aside from being   ıK H consistent with how Rust the language works), see [this discussion] and   / , [Dijkstra's note on a related topic][note].      ĲI F [this discussion]: https://github.com/rust-lang/regex/discussions/866   R O [note]: https://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html      l      H E This example shows the value of each of the methods on `Match` for a     particular search.   ״   <۴         0 - let re = Regex::new(r"\p{Greek}+").unwrap();   + ( let hay = "Greek: αβγδ".as_bytes();   "  let m = re.find(hay).unwrap();   섶  assert_eq!(7, m.start());   䢶  assert_eq!(15, m.end());   ܿ  assert!(!m.is_empty());   ۶  assert_eq!(8, m.len());   !  assert_eq!(7..15, m.range());   4 1 assert_eq!("αβγδ".as_bytes(), m.as_bytes());   <η                   e    &9QF     D           fd,           gT           g #߷  S                e ppppp  8 p  p p T                e p p T                e   ORpp                          e e     $      ,q q U                e   qqqqq  8 q  qq                          e       %      t t V                e t t V                e    tt                           e    e       &      Lt   I F A low level representation of the byte offsets of each capture group.      M J You can think of this as a lower level [`Captures`], where this type does   J G not support named capturing groups directly and it does not borrow the   0 - haystack that these offsets were matched on.      O L Primarily, this type is useful when using the lower level `Regex` APIs such   K H as [`Regex::captures_read`], which permits amortizing the allocation in   + ( which capture match offsets are stored.      C @ In order to build a value of this type, you'll need to call the   N K [`Regex::capture_locations`] method. The value returned can then be reused   I F in subsequent searches for that regex. Using it for other regexes may   5 2 result in a panic or otherwise incorrect results.      l      L I This example shows how to create and use `CaptureLocations` in a search.      <         B   *   G D let m = re.captures_read(&mut locs, b"Bruce Springsteen").unwrap();   !  assert_eq!(0..17, m.range());   +   *   +      ? < // Asking for an invalid capture group always returns None.   "  assert_eq!(None, locs.get(3));   5 2 # // literals are too big for 32-bit usize: #1041   ) & # #[cfg(target_pointer_width = "64")]   , ) assert_eq!(None, locs.get(34973498648));   )!   4 1 assert_eq!(None, locs.get(9944060567225171988));   < 9             i    Γ'       i z                      i                           _            i                             i i      8    ,۟ ۟ `            i `  ۟۟                            i    ``  `] `n]        9ֹ`          9    ,۟ԝ   ? < An iterator over all non-overlapping matches in a haystack.      J G This iterator yields [`Match`] values. The iterator stops when no more   ΃  matches can be found.      K H `'r` is the lifetime of the compiled regular expression and `'h` is the   츄  lifetime of the haystack.   ք   ڄ5 2 This iterator is created by [`Regex::find_iter`].            N K Note that since an iterator runs potentially many searches on the haystack   H E and since each search has worst case `O(m * n)` time complexity, the   ƆE B overall worst case time complexity for iteration is `O(m * n^2)`.                        j    Z@f     D           ևև           ))  ) ) )<        4w,     9 9 a                    j `  99                            j    ``  `] `n]        9ֹ`         :        ,9͒!   ڍG D An iterator over all non-overlapping capture matches in a haystack.      M J This iterator yields [`Captures`] values. The iterator stops when no more   !      K!   ޏ#   lifetime of the matched string.      9 6 This iterator is created by [`Regex::captures_iter`].      Đ   ڐ   ސN!   H!   E׍! Ư                       j    80Y     D           !           ))  ) ) ) )<        g[-n     % % b                    j `  
	%%                            j    ``  `] `n]        9ֹ`         ;Œ        ,Œ%ė   ? < An iterator over all substrings delimited by a regex match.   ך   ۚK!   , ) lifetime of the byte string being split.   ԛ   ؛1 . This iterator is created by [`Regex::split`].            N!   H!   E׍!                        k    <ت*     D           ΞΞ           )) = ) )	        Z&r     ɾ ɾ c                    k `  ɾɾ                            k    ``  `] `n]        9ֹ`         <        ,ɾ֦   G D An iterator over at most `N` substrings delimited by a regex match.      N K The last substring yielded by this iterator will be whatever remains after     `N-1` splits.      K!   ,!      2 / This iterator is created by [`Regex::splitn`].   ɣ   ͣ      N!   H!   E׍!   ť   ɥH   2 / by the `limit` parameter to [`Regex::splitn`].                        l    ª     D           Ď           )) > )Ð )        )P;5E       d                    l `                              l    ``  `] `n]        9ֹ`         =Φ        ,Φ   @ = An iterator over the names of all capture groups in a regex.   Ѫ   ժN K This iterator yields values of type `Option<&str>` in order of the opening   I F capture group parenthesis in the regex pattern. `None` is yielded for   M J groups with no name. The first element always corresponds to the implicit   , ) and unnamed group for the overall match.      < 9 `'r` is the lifetime of the compiled regular expression.      9 6 This iterator is created by [`Regex::capture_names`]. 0                  m    1DSj5      00  0<        һ   m                       Ϯ!m              #           Ϯ!u u e                m   jluu                          m m     >      ,  f                m `                              m    ``  `] `n]        9ֹ`         ?      ,$   ? < An iterator over all group matches in a [`Captures`] value.   Ͳ   ѲN K This iterator yields values of type `Option<Match<'h>>`, where `'h` is the   L I lifetime of the haystack that the matches are for. The order of elements   M J yielded corresponds to the order of the opening parenthesis for the group   O L in the regex pattern. `None` is yielded for groups that did not participate     in the match.      N K The first element always corresponds to the implicit group for the overall   H E match. Since this iterator is created by a [`Captures`] value, and a   M J `Captures` value is only created when a match occurs, it follows that the   J G first element yielded by this iterator is guaranteed to be non-`None`.   ҷ   ַN K The lifetime `'c` corresponds to the lifetime of the `Captures` value that   N K created this iterator, and the lifetime `'h` corresponds to the originally     matched haystack.                         m    RT]     ù͹D͹           %           00  0 0        mMa   y y g                    m   yy                          m m     @        ,{ { h                    m `  {{                            m    ``  `] `n]        9ֹ`         A        ,{?   . + A by-reference adaptor for a [`Replacer`].      I F This permits reusing the same `Replacer` value in multiple calls to a   4 1 replacement routine like [`Regex::replace_all`].      1 . This type is created by [`Replacer::by_ref`]. !                        Lq    `nQӚ        qq ?&                      !q              q                    !  i                        `q q `  (+                                     q    ``  `] `n]        9ֹ`         B      q,   9 6 A helper type for forcing literal string replacement.      < 9 It can be used with routines like [`Regex::replace`] and   O L [`Regex::replace_all`] to do a literal string replacement without expanding   N K `$name` to their corresponding capture groups. This can be both convenient   I F (to avoid escaping `$`, for example) and faster (since capture groups     don't need to be found).      6 3 `'s` is the lifetime of the literal string to use.      l      <   (Ӄ      ?   Jڄ   )   < "i                   q    ex.3         f q                        !q               d            !Q Q j                 q   giQQ                          q q     C       ,% % k                 q `  %%                            q    ``  `] `n]        9ֹ`         D       ,%   B       N    G    M    M    L       H E While this crate will handle Unicode strings (whether in the regular   E B expression or in the haystack), all positions returned are **byte   L I offsets**. Every byte offset is guaranteed to be at a Unicode code point   M J boundary. That is, all offsets returned by the `Regex` API are guaranteed   J G to be ranges that can slice a `&str` without panicking. If you want to   I F relax this requirement, then you must search `&[u8]` haystacks with a   * ' [`bytes::Regex`](crate::bytes::Regex).      I F The only methods that allocate new strings are the string replacement   	H    	'    
   l
   
   
*    
   <
   
   
   
?    4 1 let m = re.find("phone: 111-222-3333").unwrap();   !    <      (       K    O    ,       K    N    K    J           <         |   Ԝ                4   Q    4 1 let mut fields: Vec<(&str, i64, bool)> = vec![];   O    4    ,ՠ            ("rabbit", 54, true),         ("groundhog", 2, true),         ("fox", 109, false),   <      .   <      1 . # Example: searching with the `Pattern` trait      H E **Note**: This section requires that this crate is compiled with the   E B `pattern` Cargo feature enabled, which **requires nightly Rust**.      I F Since `Regex` implements `Pattern` from the standard library, one can   H E use regexes with methods defined on `&str`. For example, `is_match`,   H E `find`, `find_iter` and `split` can, in some cases, be replaced with   H E `str::contains`, `str::find`, `str::match_indices` and `str::split`.        Here are some examples:      l 
 ```ignore         ) & let re = Regex::new(r"\d+").unwrap();   Բ  let hay = "a111b222c";        assert!(hay.contains(&re));   ' $ assert_eq!(hay.find(&re), Some(1));   @ = assert_eq!(hay.match_indices(&re).collect::<Vec<_>>(), vec![         (1, "111"),         (5, "222"),   <   H E assert_eq!(hay.split(&re).collect::<Vec<_>>(), vec!["a", "b", "c"]);   < #,             r    3J'      $             <             N N l            r   NN                          r r      E    ,   7       O    L    L    բ   ٢I F Since this `Match` can only be produced by the top-level `Regex` APIs   M J that only support searching UTF-8 encoded strings, the byte offsets for a   L I `Match` are guaranteed to fall on valid UTF-8 codepoint boundaries. That   L I is, slicing a `&str` with [`Match::range`] is guaranteed to never panic.      ; 8 Values with this type are created by [`Regex::find`] or   ˥G D [`Regex::find_iter`]. Other APIs can create `Match` values too. For     example, [`Captures::get`].      L    /       |    ȧ   ̧I    J    L    J    H    ª;       H    ˫K    /    Ǭ   ˬI    R       l      H    Ǯ    ޮ   <         0       let hay = "Greek: αβγδ";   ֯"        䗰    ܴ    а    !    ' $ assert_eq!("αβγδ", m.as_str());   < %                  s    ~Z     D           td,           gT           g HǱ  n                s   8     o                s   o                s   OR                          s s     Iͱ      ,ͱ
 
 p                s   




  8 
  

                          s       JԱ      Ա  q                s   q                s                               s    s       Kر      Lر@   I       M    J    0       O    K    +       C    N    I    5       l      L       <         B   *   F C let m = re.captures_read(&mut locs, "Bruce Springsteen").unwrap();   !!   +   *   +      ?ȁ!   "!   5!   )!   ,!   )!   4!   < ,             w     ѵ`       w @                      w                           z            w                             w w      \    ,  {            w `                              w    ``  `] `n]        9ֹ`          ]    ,Ԗ   ?!      J!   !      K!   !      5ɋ!            N!   H!   E׍! -                       w    S`jЇ     D           ΁΁           ː!  |                    w `                              w    ``  `] `n]        9ֹ`         ^        ,Ō!   ҇G˒!      M!   !      K!   ։#!      9ߔ!         Ҋ   ֊N!   H!   E׍! .&                       x    Qx,N     ߌD           !           !  }                    x `                              x    ``  `] `n]        9ֹ`         _        ,Ď   ?!   Δ   ҔK!   ,!   ˕   ϕ1˛!            N!   H!   E׍! /8                       y    +O     D           ĘĘ           !  ~                    y `                              y    ``  `] `n]        9ֹ`         `        ,ʠ   ܚG!      Nȡ!   !      K!   ٜ,!      2!         ם   ۝N!   H!   E׍!      H   2! 0J                       y    r.`     ܠD           ā           !` `                     y `  ``                            y    ``  `] `n]        9ֹ`         a         , `   @!   ¤   ƤN!   I!   ߥM!   ,!   ڦ   ަ<!      9Ѭ! 1\                  z    /_O]>m      Ϯ!z \                      Ϯ!z              #           Ϯ!                  z   km                          z z     b      ,, ,                 z `  ,,                            z    ``  `] `n]        9ֹ`         c      ,,$   ?²!      ¬N!   L!   ޭMŴ!   O!   !      N!   H!   Mŷ!   J!   ñ   ǱN!   NԹ!   ! 2n                       {    Bjm5:I     D           ճ%ճ           !                      {                             { {     d        ,                      { `  knjm                            {    ``  `] `n]        9ֹ`         e        ,x   .!      I!   4!      1! 3                        L}    5͝      !} x                      !}              q                    !1 1                       !1} `           11                            }    ``  `] `n]        9ֹ`         f      q,1   9!      <!   O!   N!   I!   !      6!      l      <   !      ?   H   #   < 4                   ~    ꉠs          ~                        "~               \            "u4 u4                  ~   hju4u4                          ~ ~     g       ,I5 I5                  ~ `  I5I5                            ~    ``  `] `n]        9ֹ`         h       ,I5*   E B Match multiple, possibly overlapping, regexes in a single search.      M J A regex set corresponds to the union of zero or more regular expressions.   G D That is, a regex set will match a haystack when at least one of its   N K constituent regexes matches. A regex set as its formulated here provides a   L I touch more power: it will also report *which* regular expressions in the   J G set match. Indeed, this is the key difference between regex sets and a   N K single `Regex` with many alternates, since only one alternate can match at   \  a time.      J G For example, consider regular expressions to match email addresses and   M J domains: `[a-z]+@[a-z]+\.(com|org|net)` and `[a-z]+\.(com|org|net)`. If a   L I regex set is constructed from those regexes, then searching the haystack   J G `foo@example.com` will report both regexes as matching. Of course, one   J G could accomplish this by compiling each regex on its own and doing two   I F searches over the haystack. The key advantage of using a regex set is   	M J that it will report the matching regexes using a *single pass through the   	N K haystack*. If one has hundreds or thousands of regexes to match repeatedly   
N K (like a URL router for a complex web application or a user agent matcher),   
: 7 then a regex set *can* realize huge performance gains.      G D Unlike the top-level [`RegexSet`](crate::RegexSet), this `RegexSet`   N K searches haystacks with type `&[u8]` instead of `&str`. Consequently, this   3 0 `RegexSet` is permitted to match invalid UTF-8.        # Limitations      D A Regex sets are limited to answering the following two questions:      ' $ 1. Does any regex in the set match?   - * 2. If so, which regexes in the set match?      N K As with the main [`Regex`][crate::bytes::Regex] type, it is cheaper to ask   J G (1) instead of (2) since the matching engines can stop after the first     match is found.      A > You cannot directly extract [`Match`][crate::bytes::Match] or   N K [`Captures`][crate::bytes::Captures] objects from a regex set. If you need   L I these operations, the recommended approach is to compile each pattern in   M J the set independently and scan the exact same haystack a second time with   * ' those independently compiled patterns:      <   ( % use regex::bytes::{Regex, RegexSet};      "  let patterns = ["foo", "bar"];   @ = // Both patterns will match different ranges of this string.     let hay = b"barfoo";      2 / // Compile a set matching any of our patterns.   / , let set = RegexSet::new(patterns).unwrap();   * ' // Compile each pattern independently.     let regexes: Vec<_> = set         .patterns()   |      .iter()   , )     .map(|pat| Regex::new(pat).unwrap())         D A // Match against the whole set first and identify the individual     // matching patterns.   !  let matches: Vec<&[u8]> = set         .matches(hay)   ג   ? <     // Dereference the match index to get the corresponding         // compiled pattern.   % "     .map(|index| &regexes[index])   O L     // To get match locations or any other info, we then have to search the   L I     // exact same haystack again, using our separately-compiled pattern.   3 0     .map(|re| re.find(hay).unwrap().as_bytes())         J G // Matches arrive in the order the constituent patterns were declared,   1 . // not the order they appear in the haystack.   8 5 assert_eq!(vec![&b"foo"[..], &b"bar"[..]], matches);   <        # Performance      M J A `RegexSet` has the same performance characteristics as `Regex`. Namely,   N K search takes `O(m * n)` time, where `m` is proportional to the size of the   D A regex set and `n` is proportional to the length of the haystack.        # Trait implementations      H E The `Default` trait is implemented for `RegexSet`. The default value   H E is an empty set. An empty set can also be explicitly constructed via   ē  [`RegexSet::empty`].      l      J G This shows how the above two regexes (for matching email addresses and   č   domains) might work:       <                 (   !!   !   !   !0 - // Ask whether any regexes in the set match.   ". + assert!(set.is_match(b"foo@example.com"));   "   "/ , // Identify which regexes in the set match.   "P M let matches: Vec<_> = set.matches(b"foo@example.com").into_iter().collect();   #$ ! assert_eq!(vec![0, 1], matches);   #   #K H // Try again, but with a haystack that only matches one of the regexes.   $L I let matches: Vec<_> = set.matches(b"example.com").into_iter().collect();   $!  assert_eq!(vec![1], matches);   %   %N K // Try again, but with a haystack that doesn't match any regex in the set.   %H E let matches: Vec<_> = set.matches(b"example").into_iter().collect();   &   assert!(matches.is_empty());   <&   &   &N K Note that it would be possible to adapt the above example to using `Regex`   '  with an expression like:   '   \'   'a ^ (?P<email>[a-z]+@(?P<email_domain>[a-z]+[.](com|org|net)))|(?P<domain>[a-z]+[.](com|org|net))   <(   (   (J G After a match, one could then inspect the capture groups to figure out   )I F which alternates matched. The problem is that it is hard to make this   )M J approach scale when there are many regexes since the overlap between each   *3 0 alternate isn't always obvious to reason about. 5D+             ~    pE      +$+             +/D+             9 9             ~   99                          ~ ~      i*    ,*   - * A set of matches returned by a regex set.      A > Values of this type are constructed by [`RegexSet::matches`]. 6+                 DDj        l                                   T            <i <i                <i<i                                 j    ,?j ?j              `  ?j?j                                ``  `] `n]        9ֹ`          kŃ    ,Ń?j   Ҩ? < An owned iterator over the set of matches from a regex set.      L I This will always produces matches in ascending order of index, where the   L I index corresponds to the index of the regex that matched with respect to   1 . its position when initially building the set.      G D This iterator is created by calling `SetMatches::into_iter` via the   D A `IntoIterator` trait. This is automatically done in `for` loops.      l      <         쵬   Ӭ      ۯ             ѭ   #   䓮ɴ   ,ՠ   '   <ޮ 7&                 $(f      4            ܳ            fx x              `  xx                                ``  `] `n]        9ֹ`          l    ,xV   A > A borrowed iterator over the set of matches from a regex set.      M J The lifetime `'a` refers to the lifetime of the [`SetMatches`] value that   Խ  created this iterator.   ض   ܶI   J G corresponds to the index of the regex that matched with respect to its   - * position when initially building the set.      @ = This iterator is created by the [`SetMatches::iter`] method. 8Z                      -}N      77  7<"        eE|    V                      "                         "}z }z                    km}z}z                                m      ,{ {                  `  {{                                ``  `] `n]        9ֹ`         n      ,{(   E"      Mկ"   G"   N"   Lұ"   J"   N"   \г"      J"   M´"   L"   J"   J"   I"   M"   	N"   
N"   
:"      "      Dɼ"      '"   -ѽ"      K H As with the main [`Regex`][crate::Regex] type, it is cheaper to ask (1)   L I instead of (2) since the matching engines can stop after the first match   l 
 is found.      : 7 You cannot directly extract [`Match`][crate::Match] or   M J [`Captures`][crate::Captures] objects from a regex set. If you need these   N K operations, the recommended approach is to compile each pattern in the set   K H independently and scan the exact same haystack a second time with those   $ ! independently compiled patterns:      <   !  use regex::{Regex, RegexSet};      ""   @"     let hay = "barfoo";      2"   /"   *"   "   "   |"   ,"         D"   "      let matches: Vec<&str> = set   "   ג   ?"   "   %"   O"   L"   1 .     .map(|re| re.find(hay).unwrap().as_str())         J"   1"   , ) assert_eq!(vec!["foo", "bar"], matches);   <      "      M"   N"   D"      "      H"   H"   đ"      l      J"   ċ"      <   İ         (   !         0"   - * assert!(set.is_match("foo@example.com"));        /"    O L let matches: Vec<_> = set.matches("foo@example.com").into_iter().collect();   !$"   !   !K"   "K H let matches: Vec<_> = set.matches("example.com").into_iter().collect();   "!"   #   #N"   #G D let matches: Vec<_> = set.matches("example").into_iter().collect();   $ "   <$   $   $N"   %"   %   \%   %a"   <&   &   &J"   'I"   'M"   (3" :D(                 D!ͶM      )$)             )/D)             ~ ~                ~~                                 q(    ,(   -"      A" ;                 3<cJ                                           T                                                              rˀ    ,ˀ                 `                                    ``  `] `n]        9ֹ`          sҀ    ,Ҁ 쮫   ?"   ۥ   ߥL"   L"   1"      G"   D"      l   Ψ   <Ҩ   ڨ               ۯ   ˩         숪   #   ʪɴ   ,ՠ   '   < <                 漴Rm
2      ҫ4ҫ                        f               `                                  ``  `] `n]        9ֹ`          t    ,   A"      M"   "      I   ݳJ"   -"   ִ   ڴ@" =                      	o      "                       "              ͵ѵ           "޻ ޻                    km޻޻                                u      ,T T                  `  TT                                ``  `] `n]        9ֹ`         v      ,TeKeKeK'eKseKeKeKYeKeKeK9eKeK}eKeKeK\eK)eKeKeKeKVeKUeK"eKeKjeKqeKeKeKeKeKeKmeKEeKŪeKȨeKveKeKMeKeK4eKeK eKLeKύeK1eKEeK[eKeKeKz}eKweKueKoeKmeKkeK#ieKfeKdeKI_eK]eKc[eKYeKVeK>ReKQeKMeKKeK,IeKFeKwDeK2eK1eKeKeK+1eKeKeK0eK0eK-eK!eK!eK,eK"eK"eK+eK%eK+eK#eK eK:eKBeKmeKeKeKeKeKeKeKɽeKeKeKeKeKeKeKeKeKeKeK$eKeKaeKTeKeKeKa}eK{eKyeK@yeKkxeKweKgveKeKLeKeeK]ceK^eKeKOeKDeKͭeK٭eKU=eK_<eKeKeK:eKeKLeKk8eKeKLeKe6eKeKLeK)eK%eK'$eK"eK9 eKeKeKeKeKeKeKeKgeKeKeKeKeKeKeKeKeKeKeKeKeKeKeKeKeKeK eKeKeKeKeKeKeKeKeKeKeKeKeKeKeKeK~eKeKeKeKeKeKeKeKeKeKeK3eKeKeKeKeKeKeKeK%eK eKeKeKeKeKeK eKGeK"eKeKeKeK7eK?eKieKeKeKeK}eKeK)eKeKeKeKeKeKeKeKeKeKeKeK eK3eKeKReK׏eKَeKeKeKeKeKeKeKMeKeKLeK:eKQ}eKzeKeKteK peKeKeKkeKjeKeKeKheKeKLeKgeKeKLeKdeKeKLeK]eKp[eKZeK&YeKVeKTeKSeKLReKQeKPeKNeKMeKFeKeKeKeK@eKeKeKeK@eK>eKeKeKeK=eK<eKeKeKeK	<eK:eKeKeKeK:eK8eKeKeKeK7eKeKeK6eKeKeKeK4eKeKeKeK3eK2eKeKeKeK1eK0eK%eK?eKn!eKIeKeKUeKeKaeK@eKieKieK#eKreKseKleKeK]eKeKW
eKeKeKeKNeKeKgeKpeKeKeKeKǽeKeK|eK<eKeKFeKeKSeKeK_eKeKfeKfeKeKpeKpeKeK"eKVeK~eK?eK{eKeKeKseKeKeKeKeK.eKeKeKeKeKzeKeKeKIKeKheKeKeKueKIeKoeKueK]eK>eKdeKjeKeK3eKYeK_eK=eKeKeKeKeKeKڟeKeKeKIeKkeKqeK۟eKeKeK9eKeKeK%eKeKeKɾeKȆeKΆeKeKeK eKeKeKU|eKC{eKI{eK{eKweKweKeKseKseKseK%eKgeK+aeKa`eKy_eK_eK[eK[eK[eKeKXeKXeKeKVeKVeKeKSeKSeKeKQeKQeK`eKOeKNeKNeK,eKKeKJeKJeKeKMHeKSHeK1eKEeKDeKDeKI5eK
,eKC*eKd)eKj)eK?jeK%eK"%eKxeK!eK eK eK{eKDeKeKeKeK eK3eK9eKeKCeKHeKNeKTeK9H`o:     regex-automata  https://docs.rs/regex-automata 9  
     Unicode Age property   Performance  Unicode  Untrusted input    cratefeatures  regex-syntax  https://docs.rs/regex-syntax  :  https://docs.rs/regex-lite # #   https://docs.rs/aho-corasick  Examples # #   bytes::Regex   std::sync::LazyLock # #   
regex-lite :   # #   Usage  aho-corasick # #   9https://github.com/rust-lang/regex/blob/master/UNICODE.md      Regex::replace # Լ# #  #  7https://en.wikipedia.org/wiki/Thompson%27s_construction # #  H  https://docs.rs/memchr  Regex::captures_iter # #   
UNICODE.md ڽ#  Regex::replace_all #  #  6Լ#    # #   Thompson NFA ̾# #  H  Regex::captures # #   !https://unicode.org/reports/tr18/ ٿ#  Captures::extract # #  ڽ#    std::panic::catch_unwind  %https://www.unicode.org/reports/tr29/   RegexBuilder::size_limit # ̾#  # #   $Unicode text segmentation algorithms  Regex::find_iter # #  H    Unicode Technical Standard #18 #  6https://doc.rust-lang.org/stable/reference/tokens.html # 8 #    ٿ#   phttps://android.googlesource.com/platform/external/oss-fuzz/+/refs/tags/android-t-preview-1/projects/rust-regex/ # + 8https://doc.rust-lang.org/std/panic/fn.catch_unwind.html # #  #      %https://www.unicode.org/reports/tr24/  Regex::find # #   "https://crates.io/crates/once_cell ;  raw strings # #  # 8 #   OSS-fuzz project # #   
std::panic o# #  #  %Unicode scripts and script extensions  Regex::is_match # #   	once_cell #  https://crates.io/crates/regex # #  ; #  8    #https://en.wikipedia.org/wiki/ReDoS # #  # #  # #   Unicode general categories  
Regex::new # #   7https://doc.rust-lang.org/std/sync/struct.LazyLock.html #  on crates.io # ;   #  #   ReDoS # #  # #  #  #   + 4Unicode’s “simple loose matches” specification  0https://en.wikipedia.org/wiki/Regular_expression # #   	std::sync #  Other crates # #  #   %https://www.unicode.org/reports/tr18/ # #  # #   1https://www.unicode.org/reports/tr44/tr44-24.html  regularexpression # #  # #  Crate features # #  #   UTS#18 # #  #  #   غ# 9 # #  
 # # # #  #   1ɻ# # #  #   # غ# #  9 
 #  # # #  # ɻ# #  98   :  bytes::RegexSet  crate::bytes::RegexSet   RegexSetBuilder::line_terminator  8 
   crate::bytes::Regex  crate::bytes  Unicode section  :  RegexSetBuilder::build # #   8    RegexBuilder::build # #    Լ#  untrusted inputs :   # #  # #   Լ#  RegexBuilder::crlf # #  H #  Լ#   RegexSetBuilder::crlf   RegexBuilder::line_terminator # #  H 8 # # 
  # # #  H   8 # # 8 #  
      # # #  0# # #  8   H : # #  #  8 
  Լ#  # #   # # #  : H # 8 # 8   # # # 
 Լ#  # # #  # :   H   # 8 #  # # 8 Լ#      
 #  # #  : :   :   crate::RegexBuilder::size_limit #  crate::RegexBuilder 8 #  #   # 8      # #   # 8  i Captures::iter # #  Regex::split  crate::Regex::split  ; :    #  #  8  Captures::get   Captures::name   Regex::captures_len  Regex::captures_read_at #   this discussion  < A # # #  #   Regex::static_captures_len ; : #   Regex::capture_names  8    Regex::captures_read # #  #  <   A # #   Replacer::by_ref  Fhttps://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html ;   :     Regex::capture_locations # #  # # A   #  #   $Dijkstra’s note on a related topic #   crate::Regex # #  # # #  Regex::splitn #  #   2https://github.com/rust-lang/regex/discussions/866 # #  # # # #     # # #  #  #  # # # # # #  # # # # # #   #  #  # 8 #  #      #  # # # < #  # u# :    #  
  A #  : Լ# A # :   Լ# # A   # # # Լ#  # #  # # # #  # # # # #   # # # # #  # # # #  # 8 #       # # #  # # # < # # #   Match::range ; #  # #  8 # # # #  # < #   Regex::shortest_match # #  # # ; # #  8   # #    # # #  <   #  # #  # #  # ;    # # #   #  # #  #  #   # #  # # #     #   # 
 # #  #  # #  
 0 crate::RegexSet  crate::bytes::Match   H : ;    crate::bytes::Captures  RegexSet::empty  RegexSet::matches  H   # #  SetMatches::len   RegexSet::len  SetMatches::iter  #   H : ; # #  #  H # #    #  # #  # H   # :  ;  #  #   # # #   #       H # # # * crate::Captures H : ;   # # #  H   # # #    crate::Match # : ; H # #   H # # #   # # #   H   :  ;  #    H # # #       # # #    J    JKJJKJ    JKJJKJ    JKJJK5J    JKJJK J    JKJJK J    JKJJKJ    JKJJKJ    JKJJK  Builder    pats    metac    syntaxc                                                                                                                                   RegexBuilder    builder    RegexSetBuilder    compiled program too big                                                 )
asked for  groups, but must ask for    )  ,number of capture groups can vary in a match  ,           ,number of groups is always greater than zero  ,  CaptureLocations    Matches    haystack    it    CaptureMatches    Split             SplitN             CaptureNames    SubCaptureMatches    ReplacerRef    NoExpand                               
SetMatches  
  SetMatchesIntoIter    patset    SetMatchesIter  ############################################                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     x΂	Q\! T16wDVe'<c/Q[B1@z H$GXSN׆n Z>m!^<^6L80̀qgĝxO8<j3)F$Py{69$fxmOy_#'1'nc 2BFpo)] 9`0T3/6NSo7h%ؤխ'ȶS 7D&n0<kSmTɿ`T/")9~w!&fQJȦ<K+sŸHhO*#57(ڸܒvS((]x^+|վc%'ehQFd	`ѹGl4B(ThU"M̴ޢ$WýoN>N*F Da"M@M-	5͇6ż@\ڶ!%yqi}Ǩz:.YҲ疢L<}?6P=4[J1`_ؤ(8H[NTL0E_U0n\D!+]{Z#;}W=cn˙JP	z<EI̞	x%A֘:eloN vtr'<TAl #dB;0Mq'ÖF(@m 5k߃#r0׷-שVj
M5&ZGa*įE EOġA,CgCdts@_IrmL+\77sG*l܍F.St4i0F"m-騛Z6IPNuL'7ed_ɽ{$79v|h4\8?9"GWØaHFýC P}z)I|M-/HoStPXӖ5^$(gIP|,,.&޸J1vtJQXE> E]@KcM	*	Rqcn)'GSz#Fi2TC7n#bO3M)kz~uh!JMD.r8E'JRWe}ţ0x1ǈG_X\z#jS+ڝ6GS/E%.e,onrcQ_KFf^'w>*<sKᣏ#mA!JZW%ItOgcBGoՑR
Sk:hp3,Y7]Wj I<reKx{x/_mkHfvX0'':UG:_Ic&4)UMmlŕ;ou!zEo: ZR <xSx#c,-nS4=VN^L&J~teCC<#4/QlH`}tA2_Q2vtr0Ԟq/hv0Ώ=Af7nۛG0yMj	:/nh#JfTחe=>KfO#9f|_+I8ǱmKb׆ME&"NHIAA\ j7nnTXNtiGAXo@̻dn	}{ZAjsORI)E
F`J-<T"Fauy
~fdNm&=+[(rPs	w7mVܺ=<wT][Aʼ (mbA$횄@פgCϬbdQX(pײ:Ioֶ] Jf=Md݁o[V5A%Fǿb2=&.Lc	sA¤GXJn22vw-N\]FFh}2M{?h͢x:>۔$+?NHJ#)%_	4pQ6{QQT'4q~yJ#0N)&x"Ԕ<{t\%xא|?լ&^5s'43v^kxsyېbɄ<P)l&mԿW#~t.%Su|"BiE;g^!eD>phK.yΉU8.]ƫQ#g'U!GڢV<ck%76AVεCPwOZ{\B÷F1HʬHNMxEkkLC>}KlDi{ ذeQS]Gc
,u1Hvi;	D@Ppg`ħ̄kOwexZr uE+i怌;?jc'
OSk3զsz:,%}j
"nڛlvlRpY7UQeqxjw5(~	`+wr32&wvXQh,<lLFzPFsY>QCjy&/}X \v>WS}>cc~L߼п/;#NEҜ]"'QK}֏{Ty2"w"}iŐ ѭgt쭯"<`E!yZOsCЇp`(s0 zYeMq-YI>QO-VڲgG@ɑmy]eqxV0ow?LV<2晷ɋk۞Tw03qD
C}ǋmvd1a3Iw8wCXoD-e`n.ni!@>PHsA/M~ ,Rg_0飰HtA%~Ymش۫c2P<EDk1@"}Vz$T֥ SW+Uθ`Ϗ"DCO?'-Ő 'v:+Gs-\]ۀx~Vj%LPu,^U)؋h[W󬙫GpMk>nGx6*>w_'BrWȍR+ܻHku%U8$/$(mF3U7B#	\C\nU^$0"-QhV,Uo>Κ?'FN~54%\f%(7@L	}oCF"JbΏJ@vG9*[fjC[b	t''aހ[Mr'ե8 %%ʉ%uF+h0Agn"̧;! T\&=%i ۑNgѦ[KBa$ʢFVnD_dT1gc?	IEu!J10?@^rR3Y)Ц\R"QҖxʉ>ܢ^[ԑ[hXK@.E!(x
w~BlA?PSj3uOǐ$T_yZdqm/ L)gʳ5Z5Oä3Лb,7}-Ŏ,ؘ㻎Gh$1E@$FYe~ve%!bg"sC6At|>)@=Ō 1Q>pP743a@0qq!٤גu˃H:%!!nҐFZqUO,%J jؗһRg"!VU|?poJgx`ҔFފ9IߖU>Mn(Cj]8	ǒ_xmOn Hݿ7q{MLsnWIj=еr7%?xHMgQS+l.$Fwj1EwP𓟄G l{^yƁc2CJn*d
fҜו+?3Ee&PЬ*9ϮN@L;y#?KT &!}ݹ_hwPn(nNTKNV/cMu#8tb/91HjE3Vlb!(sjg!+Z̸-¥Z8uu>b!`'2@3h[lU/J*t߁\yf	,ah+UH(}5t`|0M7_d%P2%AFXxnW	γhXnhGUeo7oI&iÕeuVpjh@pAD5G'yӨG1WtLnwGRkq1yD߿EczW*d<eRL%~5;T&SLɾ$V<d}Q鱫@2h$7(IPyzjL$QUZx1B)d'o /L(=& !vOjڹLO9D/A>?	{$1*;+ЂM"1iSB@:0M׵0zWjkgBcOJ2-of/0ft8'm*dԺO_.m>4Tbi6が}uN+ ',E>W<R']Zd	)&_hUMA'lUUXI8;# ?Pqޜ&혃66/|xu[J 
H2iDq ׳/{p8}~|kR6K)4O=dF$C"w<)ФnJhz	T/aZT?nS5xQ3=qwh ˣXsb{}M>qjg/=m~1oSTF4TڥQ^ސ3LEfyNSXxaTD
Bj?̴f'>*e<*\eUAx`ޥiqoBI 'c̕ϬnrSљ)[#O'oUR;Ѿs 9{;|EulK| 
paX ۝+T5|*ݑgiD(#AȩxJOq`oUpbtzIH7^z >Rcܻ=:nbbw;R3!hs=36]^8CFvXPf$q$fNXd=ek[~?Xf\y4_=d#~c!*ʂUe|mjɅTdhv
5OmЎQf~h>}+g)4
HȡEė#E!z-y@7
&$Ys
_waQ:sg8 Gnn}p %ӱjضߥ`DD.W&f$EFLp5dJ)/v/w; Q.ܻPFD,|cY5xh}~8M v]xS7i/^&EDqjtz4eށ	[)ό
OchǧkR|y2x8X\4+¯z5O| 2[?nNnx@]B@
}%%"Kb]bk7(0DR7z'~'23Ο+q aRWLVPs0/73Fhsv!'K}#̯![OƊkrvDK]g~Z'}˿]+-!w@R6Fmv*EaZ˽_i{{J4\ 	 fVQ	̓j@i2+B6ՖR臲|l&>xN[`˝O)ub)[AZg|U̸x4ʧl$dTmf%y		_
Վ.@( hY`O(0ح Qr|'C$aZF\VGF$*%%25&MX+A.gS~cNtEvSϵ%F
^6'}@W,ղI`qErAUPP>9ոQkŉ{fy62n(=W貙F3S䶐Mz<SEM|\Œ4/unaQkO=q߉%nٷB[_M3JVqxIn]io\W; gƦU?NHҦ.tS;TXE	<<'l
/kg gvc}h]x zR"QFW1X|CcD6ldf
>593 OSʋCt7pr?e)gS)	<VΩb> j8D!c[S t&Aܑ1$9}M@(:V%X+-88|bd6KF2^KF*WRB #ΗBTҍe['U3?\÷*קNq'Դyh*ȫ
^2m&SOx8F|nN:xn2uDi{Pn~tL7߸]MZ !&cKw.3f"[\Sgg Y# 
Kvum fsP`ǂ{Kl(v+D/]*JӠ@?5\LjjQIJ)2_ɦ2=SEM]P}[!noA҄#PhE۵;K!@/}vH>0͘@s_J)Kdg o {"D7-AukR  U:5ط ʑ]dnqe=؍+J-*O5Cd0Z#d[ٖ@rLbU^9gk-qFFjLr85n {9̭(TFk/őY|H.TC)bȺOV,0^`<uce9r%_կm+*W~Dͅ*\WسUw;T$XV0?$N W2j04HImFgwdQ߉ĈP=+W&oGXJ)q"ƣPsE(ξ"Bgۖ˱Du\ &4@taF[d+쒰ŏ9bnڂqJ!P{YyW#aa$H<h(\BԽEJ	N(N&3>'9Z ӄ/PŲӽ>%aCMBb>/(/R#Rb)z?RsM<EFh]5RW?:ɰRzP@RfT'ֳ叨_rF\l[{H7A_YʎKCSH6˳߯8דjjƅtCO4AyGYhBoK3xQ*29?qNΗ2wbFVh=+%Zێk$CKǐcXJy.?mKRJ9bG!{9R>vPK-gEUచ켋YL-vQq+xݟ79tr%h}&99k;:$X7\ʡ#;!nvi0MH2D~$'rHkdN6Р+1;,}[GYNp~˥!0Lk td!gDGƶ0H\ť#yd2ʹTQ"eMvUX;ڎWDua;o5a \y_Ⓜܪ,ٻX~̺|˵ê |I e^.CZ荌+D44jSP~^8q\B^*UyWnPF~2CzUtyWVQ򸠽5``,ץЕ;Ke@~Ƹ2ssw`z!aSi8ٔ f҅k7:HAd2؜fzSiu咣Ja>$-s,6ajk)uGxdT=Pf2TT#pG\Ū;@L=V^(#KJܘ	&yzoPU۪ډ3
D	]k=c#xSsg
x<@`EPɗ5I\]9~0T}C)SdSԓ/ә9ъ-E!_jllYї"kr\N폢HJ^5P]
ڧ⦈rhb-ŕ(me>nz~A05 䱙N@~xY4wnWP$FFlAK%o
=Q_D }F
:ȯM@aK]n+,LѕoILhk5Nv7l]aJJŦr"ً/hY=<E"y0*Q2;+d'̌92::C&퀫q',<R0*aW3elt(:p9HjMb9|ʝt)>zE|@ V]@1zнܑ_wcsxRb5272h?ōiTQ1D`R	\-`>Č	I{?BK,t߅ipeդqb" 6nZ G'*)x|y^7.@ϼ#1CP7nwgP*
Efg%to')%&1$q
ՔNN6ie`15m*'V.1vՌيf`6xwGp Zf=NlL-FIՕ@GLMҐrJ2W?)aSsߟr?5v'0>0uʏan/2nyh*~oFEMmRs:	3^[B4X /=cPĔl4f>rM#`L^)$ivy'b }Lr޸376Q9IUyc\,60z|tb|칬`j=Ӎ:ړ9Of 2ҁܬÄ*R) R񢅷(.fk@>3 /y̘u nbfsΝ̸SBWgG~IY##W$g>LvەRW{6<,gk5dd&KR+˔yYd+'M~Ufrx!s  }4eϻ\egm5#pDT	mOod,Z	1\!
#DNgAafh_Qc:n:Ϟe 5e,ջЗU]{Jm 
G!Rj=%'>^$[o@\jA!
NDX#Ʋ#T97[s3S%W<]L.sjd兙dSqML	Ip0ޣ(ȁ-
DP׸sDw!kx܏<bq(QiƀBѿ#X՛pFkSߠ;kݸd+Ҵ@a2\p:/ZXqΤŖ0]{Ou8%LJW'>gHhb6r~q0𓳔ˑX,	&SIS	8ʑ@w	L
TD^O<V/Ŵ;8z
*kӴV.Z;[t}3Xdv7u;r>v׵q	ޟ&P-vc!PvY[@`*>c@'1d+ٞkޮݿwWԬ+ܢvťxRǤXrJ*WW}m1}q\C6g.,}ugʼgdԖʒ<ey=2:>͓h?yȌ!/s1q/j}Yh>ެnc
RKO)	{B=k}<<z;D|>[̰sÝ8}cEP۹0$!5[oątNL|O 7T$lAd"u2靺<oY|"\l fYîcL[~#B``SYZH9)\z8r&W[-͛I`Nm& C~q<0Hp΃j-uɈ4)9JkZT3#Bc.eȒT	{ᰶr"i <uq8qV[UVbj:yLE3J+ӗf#nF);|6A).=K&&O}τ/Du17;-s76[,<dj7<"Ѽ+*?<#YP-e}=bk\W}[HTJ%"ȅCu(ꪸ`|Dyp]&2UrYU[)f؞m:$@|I)QGv.SƢT/,hxVNdˮD5
bU]*ow'FUl7FrX|F-43R@Y	/wNc #*AG JxY`Yg\7_B:$3z3ܶahbe:ֈE'ڦ86QMq9V>35({)Xf*ёN;t;eRD[Sё.>XrYd1%bU?у0;<ovVdW&$Oķ2-yLY8kl4i]4U`skF-Og\$z;rI5
/8:?	gNSڈ嘌åek`OՀJ:^Y*#&PBEUFSZ`^ˑ۠ aٺq"܀aƖ2"ϩ{\+>[R"Me[L\\\> Qm=GDk̇z81s
#:K+k}'r>#Fb>ʱAzt=|mY*WΆ*R9a !iKh}=8,o9=CuI.0*@=&d#A*.򹽥aU_Nz~j?Vz;4|x1~hEGG	't4ȳ4yz:pI(O[L]Q{)$~)akqio--"oNgDH;+>JLƋ^>C螧DT-Ɨi;u)qrf5AgaA@vK	8̆OZNCr/o;E\!C-pRg16+k*PB@\Z^J,)A+a@% }뙝fPn(7D̶|:-UMUõ'oC;_<be98չQk/uuyZ=I89X-}n0_
6>0+GsWZ
Ź%~d
seq_zoslxpl<m!DSYaPX(â%ns0/~>*3dg'e׌,gRxncĉeCS?{'wR	ȹYfld]ʵS՚f}t]'e!77/FP3Sg9ذPDTT)c{Z),_r ~_#-gjwԬWUWOaGҠ'6 0z@ARZVu!C
lC#w5DTo_0jEz4ގBgwSFaju)={R%JP{89˯DD\+1~-_P
6eR93E/ǖL&ٔDiJdWg3]w[.Up4nzc!"	rmSW΍eRwr@R7>S RSHȞ%TVCbkW^]i+)cƫDzBw.q,TP詽w++*,0Ih;M_Q`#O$R d]+gnSVF!@{y/$xRb $n[̰'fF|o1]_'&yͣN3B
YnAO޾\b+
TY6g	T\k!@oѳYdYB1oyEj\褩9OC,_8@tyS$04qW3M1Tsu34g<A0:کJx߼O7_u,w6C!IM0Xʂ ~&YjRq_z3=KqB%Z&A%{Ί J-.y<*NlRZYF+h6e)Cf7-4HU7汤XC$4.m`eBL%Z$                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Z                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     k                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   oa                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                u                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              {                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         {                                              d                                                                                                                                                                                                                                                                                                                                                                                                   @                                                                                                                                                                                               h                                                                                                      )
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               	                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        K                                                                         4            	  y  %    3      N      m    7      l    6      k                             Z    d9 e 5"  2 ?B  ?  ~" & $ 	  E            9 3 b"! $ 0& FL* / }/2 P6 '8 V&; $=  @                               5 A pA B CB H "J M 52O ER X nEZ l` "b &d '$g v i i           j [Ek q "r u 0v Ey E~ /  ' r& $ 3                                           m     q              '                                                                      :  c R  { D  s   8  s   
  9  _  $ U b                 V      >           h           ^F           m           [           G8           $  g  $ %% '       + e+      .      4      L 8 8      : F
; -< C #G M iP  Q      /	R 
T kV 4X X Y ] Z  Z       [       [       \ n \       \ 3]      0 g Y g  g  g      g ^ l l n I t Pt           4        )       g  .                D  
              #  K         O            @  h              y      w         !                            e      9               -    P                B                    s                          A    E                                I                     \  
  s                -                w                    *            p               F                                            2            f  T  P    l  b                                                ~  n       s                                                                                  8   *   "  H           3  p       T           AV      <           Z}           F
           }i           [           *8"           G& & ( @ + + v-       / ?0      !2      `6       9 9      p; 
; -< ? G#A }C E  G      J
G DI AJ J pK L _ M  M       N  N       O e O       O 3O       S  S  S  T      XT  V HW X  [ P[           O4b af      yi  j       k  k       l  l       l  m           K n q n  n       n  o            p  p       p q       r  r      c s  s 4t           b u  u       v q v v a w w  y S y Z{ 6 |            | 	 }  }  ~ g ~            ~               4                &            ~    _                          Z      C                     U  ~    Q                            y    U      f                          N  ;       #      "       k  Y  U                                                                                                                                                :           @        !& !    h
        "    ) %  \              L  t      5  ]    %  P           $  L               3                                                                                      & v!    
  W       9 ~ O  )     #  K              =            b      U  u           W    !       `    )       ]    J `         ;     }	   9 e      J  p    &   m      I        @ l  (       g        J  l     A  [  -  - . D . 0.      R 8 { 8  8 8       9      ^9       9 :      G: :      ;      M ; &;       B B  C sC  C `D            G  G "H           r H @I           J K u K K           N L M            N  N CO            O `P            R  R >S            S Z
T           c W W       W /X      p X 7Y            ]  ] 3^            ^ ^           E _ `                 b 2b            b nc            f f       g rg       g x]h  r  r &s T s 4s       x  x  x (y      Zy      y       y `z      z 0{      f{       { &&|       ~  H                               a  /           Y                                            p  =                          2  
           .  T              =             @  k               S             t                             /                       k        r x       T      n     # R   *  T  |   k
             9      z        &  |        e        @ p      ^       
                   7          n                                              `                                                                                                                                                                                                                                                                                                                                                                                                   @                                                                                                                                                                                               h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              r                                                                       !                                                                                                                    MA                                                                       i                                                                                                                                         a                                                                                                            R      j      \           \           "                                                                                                                                                   d                                                                                 .;                               R                                         Z                [           \           g                     g                                                                  N                      +           O                     p                                           V                                                                                                                            -            t                                                                     w                                           {                                                    _                                                     \                                                                                                     B                h                                                           J                                                                                                                     '                                             X                                                                                                                                        &                                                                                 ;                               (G                                         M           N           O           S                     5T                                                                  j           l           l           m                     n           o                p           r                               :u                                         yw                     h|                                ~           ~                                           X                                      )                                                                                    =                                                     :                                      G                z                                                                           ^                                                                                                                                                                                                                  =                &                                     >                                                                                                                                                                                             p                                                                                            n                            G                O       v                           ,                  V            C                  f            :                  ]                                         2      -           5.      @8                      8      S 9      9           1:            ;      7;           fB           C      C      hG                     ZH                3K                     2L                N                     {O                R                     vS                V                W           ZX           ]                     k^                )_                a                     b                =f                f           g           r           Ds      x                     Q y       y      y           z           [ {      {           ~           8                                 I                B                                                          X                x                                                                '           )                                                     (                                     6                                      p                                  B      !                 z                f                      ~                            `            U                 g                #            


%%










%%



















''%%%%%%%%%%%%a                           R                                          ̳   J                  d   ML׽                  -n   7      !$&){/,25S8;t=O@@                     AzBlH]JLNSRMXZ`0badf$i   j      kpkrtvvwy}3[                                    ԟ۠                                                w   w   =                                       Q      (         h$   '*      -   3   47      9      Z<ZC4GGMPQ      OTVWXaYZtZ      [         .\      \f   5g^gg      k   ns            ה      ~5         [   %      V   B               |                  1         ҥ      ¬t         2                     ,   /                  X                     /                  s!                     ۺ      /                  .	                                 I7      }k                                                                                    [   M   &k   7      &a                  
                  4!      M%         t(*   -.      1   O5   i8      W:      F<?@1CEF      HIJKLMvM      N      %O      OGS   SSS      YV   X*[   a      eh   qj      kk   #l      lmn   Mnsn      noMp   p      q      rr                  guu         Ew   x   {{         | }   #~                                       Á                     _   Z               Zh                     ~      }                  ώI;            p         ә            +         1               ϥ˦                                          G   A 2!3      S   a      Qy   :t   g         )c   6                                                            r_ [Kh>      3@    (b       T     y                     w            f   P   
   z   O      ;<r      ^_       :iL         V---   Y.8   W888                  9      :            c;9BBB   )C   C!G      GG         HJ      OKzK         dLPN      NN         OJR      RR         SV!W   eW      W      XE]      ]]         ^         [_3aa      b         bfif   f      !g      grrs   jsax   xxy                  z      z            {n~~~   ^   `      Á         w      ^         o      ҆         1               H   0            S      Ep                  ʑN               Ea               ÖF|   ;p   ٱ   h/Y   ¶=ѹ               <S         *c   *         M      !)17<AFNSUY]cgmrv|/t!/Ih͹2g̻1fͽ9>DJPV _`09x>-\!$&@*/w2J68P;=@AAAA"A)A0AjABBHJM/ORXhZf`{bd!gqiijjjUkqruvy?~~lމ. X\`dimӝ"Ϡ	#(/5^Mv?o4o5ZP]ܴW[bMQX}/3@}a$%'++_+}..44C8G88::A;<CyGMcPQ#R*RTfV/XXYWZZZ [[[
\\h\\\\$g+gTg~ggggYllnDtt~   }#Za) 7>E|K4;bhskrޢ`4Į!(K.5<òm;?xܵҶC|޷Vn 'r»ݼ$]dk<@      %,Y`NKf\ahxhim
3%C/zk KO26<JNT


lpw""#"1&5&B&&(;++p-//9022U6Y6w9{99g;k;;<?AAwCEF>GEG?I<JJjKLYMMMNNOO_OOOOSSSSTKTRTVBWX[[@b   Ib[fpitijjjklllllmm?nFnlnnnno5ppppppqrrrZs^ss.tOuVu]uuvvlvv\wwxNyT{0||||}}~a~~~~~{/ـ kryZGNU}=IPxLˆ҆fmtPa;BI5^eSOԛۛɜŝu|||Ťҧߧ˨ШԨبܨ5"/<n}|d W@Go0WJF.w|uqS|3xJE 7    \OoRSZ#PWD\8y	6bEm#hF=i$ cFi>--.A..F8M8v88888T9Z999:=:C::;;C;I;;rBBBCoCC[DlGsGzGGHfHjHnH:I7K>KEKoKK>LDLJLMNNNN?OOOO[PRRRR:SSSSVTWVW]WWWW+XfXlX1Y]]]]/^w^{^^^5_;_A_`aaa
b.bbbbjcOffffggngggthrr"sPssxxxx"yRyVyyyyy\zzz,{\{b{{{"|~~DUY])FMT~ŅȆdhl8|މ&*.ҋ!(P39-4;eُݏOp4+G gntïP!iN%Oxg5rvߺ"a<lYt/3 #*18?FMT[bipw~
&-4;BIPW^elsz")08@HOW^fmu}	 '.5=DKS[biqy!)18@HPW^fnv}$,4;CKRZbjqy
 (07?FNU]emu} %,3;CJQYahpx	 (08?FNV^elt|%,3;CKRY`gnu|
$,29?FLSY`fmtz
"(.4:@FLRX^djpv|$*07=CJPV\ciou{$+17=DJPV\ciov|      &.            M      W[aek   tz      4   y         N   mҹ7lѻ6kӽ   BGMT   yWm     $&)d/25<8:]=8@@      A A'A.A   AcBUHFJLN<R6XZ`bJdfi   jjjjpTrt_v`y}yʋV               ^bg      q      m֠      !   ,3         sڤ   s   9l   ܳ޴޸Y`OVw:15   Q$   h')+   q-.347E8   9:   C<CCG0MPQ   (R8TVWnXJYY]Z   Z[[   \\   \\f)g0gYgg   gk   ns         _g0   <D#   Q9@   n   pw               Υ      ]   &-      3:            A      }      ض      \
s      %   ĺ         "   bi*>               *2    ^fT   l            fj~nk                E   7   "U   !      KMy4:LR	

nu!""6%3&7&   ](*   ,./   1285W6R8y9   @:i;   /<>@CEF   CGHIJKLL_M    NN   OO   OOCSSSSS   PTBV   xX[   aBb   ehriZj   jkkll   llmmDnKnqn   nno9ppp   pp   rrr\s         Tu[ubuu
v      Aw   x   z{   |||	}   ~   ~~   
         pw~         LSZ   C      NU~Q   І      kry      f       @Gˎ2$|   ckY         ٛϜ      	   z~   äˤԧΨ   ֨ڨި      $11   y+tn      <   \   ELt   5]   P      $L               z         w|   \I
E5R(      )   #K    =      b               X`      U   b   ;   
   e   J      &7m      IZ      l$gJ         A---   D.8K8R8{88   8   W9   99   @:o:   ;   F;M;5BvBB   C   CGqGxGGG   hHlHrHJ<KCKJKuK   ALGLNLLNNNNN   OOOFRRRRR   SSSVW[WcW   WW   iXpXA]]]]]   y^}^^   8_>_E_/aaaab   bbbeSfff   gg   ggrrr   Ts]xxxxx   Ty   y   yy   zz   _{   {{j~~~   H   \   W[aKRY   kƆ͆   fjp-   (,2֋&.      6=ގ29@k   ۏߏ   Ƒ8   /K      Bx   %n   ñ   R*T   9   tz   &O      p   &^   &x   17    '.5<CJQX_fmt{ #*18?FMT[bipw~
&-5=ELT[cjrz$+2:AHPX_fnv}&.5=EMT[cksz!)18@HOW_gnv~ %-4<CKRZbjrz")08@GNV^emu|%-5<CKS[biqy
")08@HOV]dkry!)/6<CIPV]cjqw~%+17=CIOU[agmsy!'-4:@GMSY`flrx~!(.4:AGMSY`flsyb                           T                                       ͳL                  f    ONٽ               \.o8      !$&)|/-2 6T8;u=P@@                  7AA{BmH^JLNTRNXZ`1bbdf%ixij      kplrtwvxy}4\                        oKڝ֟ݠ                                       <TFx:x>                                    R      )      Ni$   '*      -   3   57      9   ;[<[C5GHMPQQ   PTVWXbYZwZZ   [   [   /\p\   \f   8gaggg   k   ns            ؔ+   8      \   (M   Y   Ej      3   }               2         ӥ   ìu̮      3         D      -   0u            Y   G            0   K         t"ɹ      /      ܺ      0      ,      /
      H                  J8   ~lRd                     u                                          \N'l8B'b                  
                  5!      N%      &u(*   -.      1   P5   j8      X:   ;G<?@2CEFG   HIJKLMyMM    NN   &OgO   OHS   SSST   ZV   X+[   a      eh   rjj   kk   &ll   lmn   Pnvnn   noPp   pp   qwr   rr         
u      huu         Fwcwx   {{8|      |!}   $~i~      ~               (      ā               `   [         [ i   چ               ~É      
      ЎJ<      $   qW   ԙ   ͝   ,       2
         ХΦ                                       H   B3"4T'b   Rz;u'h   *d   7                                                s`!\Li?Y4A)c    U   z	Ww      #   x   +   _hQ
@{Qw<=t$_`G;jMsW---.Z.8   Z8888   09   f9   9:   ::   ;   d;:BBBB*C{CC"G      GG*H      HJ      RK}KL      eLQN      NNKO      OKR      RRFS      SV$W   hWW   W7X   XF]      ]];^      ^^      \_4aa      b:b      bfjf   ff   "gzg   grrs.sksbx   xxy.y   y   y   zhz   z8{   n{   {o~~~"_a      Ɓ      x      a      p      Ն(      2            I   3]      T      Hs      \      ˑQ      ̒      Fb   ͕   t   ĖG~Я>sڱ,i2\ö>Թ   B      =TI+f+      N                                                                           mc qڷ+RQN                  nPJ"arE!$&)*/`23687;=@                     IABBHJLORXQZO`dbdgYiiTjjjFkprtvy%~g߄Sŉ                              ]ў                                                N4f&X"XS=EĴ            >      4            5      =   `G$%'*   W+].   4   8   8:   *;<CgG{MQPQ	R   TNVXXY?ZZZ   [   [   N\\   \g   Mgvggg   :lln%ttQ      S   J   X   '   4ߘ   =l   *y"   Z   G   R      d͠Ţ      r   E̨,      H.ذ)      p      P            -Ҵ7s            
eʶ%w         V      [      U
e      X      O{   &   u         m      
   >   #3dAJ   hx      r<N      y                                       #<jTX2         f   1      
      I         !    "%   ?&&(++P-/   102   26   N9   9<;   ;<v?/AeCEF$G   'I$JJRKLAMMM   NN   EOO   OhS   SST1T   V:WXo[[b      1fXi   jj   kk   ;ll   vmm-n   ennn   xoopp   pp   qr   r9s   st6u      }uu   TvvXwuwxFyB{|d|      |}}D~~      ~      ,w      T      =ނ      %      uЃ5         pʅ4Ɔ      9      3C      6            C   (7v   [jx      ў0ء8   Pa   ܧ                                    ߫,9dxѲϿUSq9w!   gP9   ?l   v                                    2XfpBk!f0>    0 }   J=i   :B   J   q)Lz(a	
/R,fO6r+YY<b.--.1..(8   o8888   O9   9   9-:   ::   3;   ;LBBBB]CCADPG      GGVH      IK      gKK.L      LN      NNwO      5PyR      RRrS      0TVDW   }WW   XVX   Yt]      ]]g^      ^%_      _daa   b&bhb   bGc"ff   ff   Vgg   Thrrs@ssx   xxyMy   y   y   Dzz   {W{   {   |~~4v      ہE      *      v            T      `      ։      Ԋ   H|   ߌ#   ލ      ]ɏ      1      Jr      (ѓ      O   NY?]>	GqM^   -a   Ǻ   ȻfP	4[={K                                                                                 d7EηFuۺEtڼB                  hD>TP	8!$&*/S2&6z8*;=w@                     CAABHJLOzRuXDZB`WbdfLii2jjj9kprtvy~Z؂҄F	                              {W˞w                                                H'`RFJ08   r         0      &      {            7   Z9$$'*   &+O.   4   8   ^8:   $;<CYGmMCPQQ   uT@V	XXY1ZZZ   [   [   E\|\   \f   Dgmggg   ,lplnt[t5      Ex   7   E      ח!֘   4Y   f   Qv   9   ?      3      d   ߥخ      ? bϰ	      P      ڲG      ȳ      $ĴS            WW         ޸Hչ      ;      GٻW      8      ;m      T         _t         +   %^3<p   Zj      l.@      kzz                                       3]NK%         Y   $      
      ;         !   "%   9&&(+R+B-/    02   $6   @9   9.;   ;t<h?!AWCEFG   IJJDKL3MMM   NN   <OsO   OUS   SSST   V	WXa[[a      #fJi   jj   kk   2ll   hmm$n   \nnn   joogp   pp   qr   r+s   ussu      tuu   #vvRwowxy4{|D|      |}};~u~      ~      #F      4      /q            l      	   g&            %g5ω            ܎      0   )c   M\jr   ٝ   Þҟʡ   BS   z֧                                    	&3[rĲw¿HzFcw3n   ^G3   6^   E                                    yKYc5eX"5   ' t   </c   ,i/   7   kAt"uS	
&L}&]I0lSPv3Y(--.+.~.8   f8888   <9   r9   9:   ::    ;   ;FBBBBNCC2D0G      GG6H      IJ      ^KKL      L_N      NNWO      &PYR      RRRS      !TV;W   tWW   XCX   YT]      ]]G^      ^_      _Baa   bbFb   b8cff   ff   Ggg   Ehrrs:ssox   xxy:y   y   y   5ztz   {D{   z{   {{~~.go      ҁ%      
      m      ~      4      @      ͉      Ŋ   ?i   Ќ   ύ      T      "h      ;ّi   ؒ   "y   ٕ   @   ?Sܯ1T8>h>K   $N      `B +U7rr8      u   v                                                                        
      qg$u޷/V UR                  pTN&e      I!$&-*/d2768;;=@                     KABBHJLORXUZS`hbdg]iij      Jkprtvy)~kWɉ                              _ǝӞ   	                                             P9h+Z'Z XBJɴ            C      9            ]                  bL$%'*   \+b.   4   8   8:   ,;<ClGMVPQR   TSVXXYDZZZ   [   [   S\\   \g   Rg{ggg   ?lln*tte   X   L   l   )   6   Bn   /{)   _   L   T      iҠǢ      w   JѨ1      M3ݰ+      r      űU            2״<u            j϶*y         
[      ]      Zjż      Z            +         r      @   (8fFO   m}         H      AS      ~                                          %	Ao"V]7         k   6      
      N            !      &      &( ++U-/   602   76   S9   9A;   ;<{?4AjCEF&G   ,I)JJWKLFMMM   NN   JOO   OjS   SST3T   V?WXt[['bGb   6f]i   jj   kk   @ll   {mm4n   jnnn   }oowp   pp   qr   r>s   st8u      uu   YvvZwwwxKyG{|f|      |}~I~~      ~      1|      V      B      '      zՃ:         uυ9Ȇ      ;      8H      8               E   -<x   `o}      ֞      ݡ\      Uf                                                izֲԿZXv
;|#   lU;   Dq   {                                    _      ]kuGm&k5C    5    OBk   ?D   L   s.N|	*f	
4T.kQ8t0[`Cg0--.3..*8   t8888   Q9   9   9/:   ::   5;   ;NBBBCbCCFDRG      GGXH      IK      lKK0L      LN      NNyO      :P{R      RRtS      5TVKW   WW   XXX   Yv]      ]]i^      ^'_      _xaa      +bb      Lc$ff   ff   [gg   YhrrsBssx   xx yOy   y   y   Izz   {Y{   {   |~~6{      
G      ,      {            V      b      ۉ      ي   M~   %         bˏ      6      Oy      
      ֓      T   S[Dd@LvR`   2c   ̺   ͻhU9]?M                                                                                                                                              X                                     r       ,      [    +      Z    '                                         +  $                :  {           D                !  $  &  *  / 9 2  6 ` 8  ;  = \ @                                          A  B y H j J  L  N ` R Z X * Z ( ` = b n d  f 1 i      &j             k  p x r  t  v  y  } @      +                                                                           $       	                                                                                                                                                                                                                         ^           5                  u $       ' # *            -       3      A 7            9           g < g C A G T M + P  Q           \T 'V W X nY Z Z           *[                ;\           \ f                               k      n s                 
                   D                     h                              e                                                                               >                                                                                                   9      <                                    e                                         <                                      .                                                     <                                                                                       %            V D            x                                                                                                                                                                h       Z            x            D           
       3    n                                       
                                  A!           Z%                 (  *       -  .            1      \ 5      v 8           d :           S <  ? 	 A > C  E  F            I I J +K L M M           ,N           2O           O TS                               fV      X 7[      a           e h      ~j           %k k                     l m n                          n o \p                     q                s                                    u                           x       {  {                     -}      0~                                                                                                                             g                                 u                                                                                         V H                       }                                            8 &                >                                                                                                                T           N      ?  .    @                `                                                                 t                      p      C                                                                                                                  l  !  -  h  X  u  K                  @      M                 o                      a            "                                                                       *  t                      ]          
                    &                   H  I                   k  l                            G            *                        c   -                f . 8                                                   9           :                     p; F B  B           6 C       C .G                                    H J                                    qL ]N                                    O WR                                    S V 0W                     W           X R]                                    ^                h_ @a a                               b f vf                     .g           g  r                w s nx                                                   z           z                     { { ~  ~           k         m                                                                           |                                     >                                    U                                  `                                                       ]                               R  n                     '            S                     J                   u                     J                                 I `                 (                       %  7                   7                      Z                                                                                       ٳ   Z                  r   ,[+Z'                     Ϳ+$:{   F      !$&*/926`8;=\@                        AByHjJLN`RZX*Z(`=bndf1i   (j       kpxrtvy}@+                                       $   	                                                                  ʥ                                             _      6         u$   '#*      -   3   A7      9      g<gCAGTM+PQ      ]T(VWXoYZZ      +[         <\      \                     k   ns                                 iSʘ                           ˛            ş                     @                  Ϭ            ï   ư                     ;   >                     g                        >                     /                              >                                                &      WE      y                                                                                       h   Z      x      E      
   3n                  
                  B!      [%         (*   -.      1   \5   v8      d:      S<?	A>CEF      IIJ,KLMM      -N      3O      O                     gV   X8[   a      eh   j      &k               lmn               no]p            q         s                     u               x   {{            /}   2~                                             ҁ                           i                  v                        ȇ                           WI            ~      ×   ǚ            9'         @               ݥۦ                                                T   ƶN?.@      `                              t            q   D                                                                l!-hXuK      @M         o            b       "                                    *               ]                           H            k               G   *            c            f.                                 9      :            q;hBB      6C   C                        H                        sL                        O                        SV1W            W      X                        ^         j_aa                  b?fwf            /g      g            ws                                 z      z            {~~      k                                                   "                                                Wȋ                  a                        
         ͐*_                  T8o            (      і            J         u            ϶|                  J            (         %            i            [                                                                                    8      	}%3Rqֹ;pջ:o                     ~\r   %       $&)i/25A8:b==@                        AhBZHKJLNAR;XZ	`bOdfi   j      kpYrtdvey}!~ϋ                                    u         q                                                         ޤ            p                                 |      ?               V$$m'*   +v-   3   "7   L89      H<HC"G5MPQ      =TVWsXOYYbZ      [         \      \                     k^lnsIt         Ŕ      l               I                                                !                     b            P                     Ȳ                     F                     ݶ                  ax                        ɺwǻ                                                      7%      kY   q                              s                                                      I   ;      Y      %         O   }               	                  "!      ;%         b(*@+,.   /1   =5   W8   9E:      4<>@CEF      HIJKLLdM      N      O      O                     GVV}X[[a      eh   _j      k               l   m               n   ;p            p         r   css            u   vqv      xyz{            }}~                     4                     _                     H                  V                        Uk                     7)            p^               Ԝ                              Ф                                                5   }/x r!      A                           b   U            Q$      3                                                      `MI9V,      !.         P            B       g               W      e                        >            h               )            L            o      (                  D            G.                                 9      s:            Q;   zB      C   C                        vH                        RL                        O                        S   W            W      tX                        ^         I_   a                  b   Wf            g      g            Xs                                 y      z            {   ~      L                           e                                                t                        6   ڋ                  A                                    <                  3   O                                 )      Ǳ   V                           ~      *            	         t                  |            ;                                                       0                                                                                                                                                                                                                                      d1  n1  x1                                      1  1  1    1    1                                                                                                                              2      2    2                                          3          d3              3            3      &4            44                          4            4    65            @5    5          5    5             6    R6          \6  f6  6                6    6                6          6        7      7      7    7      8      8      d8          8                                    8  9  9    9    &9                                                                                                                              9    9    9                                          9          7:              q:            :    :            ;                          ;            ;    <            <    c<          m<    <            <    =          )=  3=  =                =    =                =      =      =    =      2>      C>      >        >                                                                %?              q?      {?        ?      ?  ?6@          A@      L@  W@                                                      @              @      @        JA      UA  `AA          A      A  A            /  /      
0  =0      G0  z0      0  0      0  0                0  L1W1        1            '2  y2  2    2    2  2          H4  4            4                4                J5                5              
6    H6              p6      6                 8              n8    8          8            39  9  9    9    9  9          ;  M;            W;                ;                <                w<              <    =              ==      =                M>              >    >          >        /?  g?        ?          ?    +@          a@        @  @        
A          kA    A                                                                                                                                                                                                                                                                                                                                       jj                                                                                                                                                                                                                                                               ?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  t                                                                                                                                                                           ""      A&                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ާ                                          .;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              	b         b                                                                                                                                                                                                                                                                                                                                    *                                                                           DM    ]       i                         l m n o    xp Zq =r s       t                            v w y >z g{    | } ~       )    5           ! R        F       v                                   G    w  ٘       	              ŝ  ) Z              M                                        w                                                                                                                 M               S                                             #N$*+-   &56   8P   Q   \^      _Hag.nno      v\wwnxQyz}                           ~                     oj׊
      y   &                              I                     7                                                                     Z$            V;                     >                                          	                  tk                        N4                           }                         i                                                                                                                                                                              _                  F            a            k         7mmsqtCy   w      ѓ   j=      $ܤO#ͯ      w׹l/                        #                     AGs         &                                                   p                                                                  H                                                      &                     s		                  S                        &"Y#$                        $*   *                                                                     3+         23         6                                             
=            >j?@BBvOldDeef         klmlo`p         oq            s                                                                                                               mgՓI!ħ         ɬݭ`ױ                                                                                                      F    J          t    u          _                  h          ?                                           t                                  p      q            Zq         Ԟ                           ɧ                                                Y                        0                     d                        \         
   =                  {               O                  q
                                                   M   >                                 {                        A                                                               (                                       )   v                  1               s4      5            6         h   i            w   T            *y      {            |         T                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   ߿                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                i                                                                                                      S                                                                                                                                                                                                                        4                                                                                                                                                                                                                                    (                                                                                          m                                          	                                                                           B                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   >                                                                                                                                                                                                                                                                        ]    i       l                         m n o vp    Xq ;r s s       t                            w y <z e{ |    } ~ '       ]               P        D t                                         E u     ט        =    Ý           ' X        K                                               r                                                                                                                K            Q                                       #         L$*+-$5   66P   Q   \   ^_      Fag,nnop      ZwwlxOyz}~                           m                     hՊ      $   Ҟ                              ޿                                                                                          X"ǧ            9                     W                     *                                       iZ                        H{2                        {                  g                                                                           y         M            o
                                                                                       ]         
   D            _            i      5m         msotAy   q   ϓ   h   7"      ڤM!˯      uչj-!                                             ;Eq      $                                                                                                                        Fy            ?                                                               	&                  Q                         "S#$"*                        *   1+                                                                     1         3q4         6                                             >            h?>BBtOjdBeefh         lmjo^pmq         s            w                                                                                                               keӓG§R         ۭ^ձ                                                                                                      J    BM          u    v              3          f                         h                   u                                               p      Xq            v   R                                 T                        <                                                               b      r                                                         3                                                                     K                                                                                                $                        q   '                                          '                              2   l            5      6            =         i   	k            (y               {      |               A         Ǭ                                                                                                            ]    i       l                         m n o wp    Yq <r s  t       t                            w y =z f{ |    } ~ (       ^                Q        E u                                         F v     ؘ        >    ĝ           ( Y        L                                               s                                                                                                                L            R                                       #         M$*+-%5   67P   Q   \   ^_      Gag-nnop      [wwmxPyz}~                           n                     i֊	      %   Ӟ                              6                                                                                          Y#ȧ            :                     X                     /                                       j[                        M3                        |                  h                                                                           z         N            p
                                                                                       ^            E            `            j      6m         msptBy   v   Г   i   <#      ۤN"̯      vֹk."                                             @Fr       %                                 o                     =                                                                  Gz            @                                                               	'                  R                        %"X#$#*                        *   2+                                                                     1         3r4         6                                             >            i??BBuOkdCeefh         lmko_pnq         s            w                                                                                                               lfԓH çS         ܭ_ֱ                                                                                                      J    CM          u    v              4          g                               H             v                                                q      Yq            v                                    U                        =                                                   <            c      s                        	                                                                                                      L                                                                                                %                        r   u                                          (                              2               5      6            	=   S      i   
k            )y               {      |                        Ȭ               ,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      '                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    2n                     up                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ^      A                                                                                                B                                                                                                                              IW                                                                  a                        f                                                                                                      ~                                                                                                                                                                                                w                                                                  b                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              >                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               >                                                                                                                                                                                                                                                                                                                                                       (                  Z  $   Y  #   V                                      X R "   *    i                      M! $ & 1* / h2 ;6 8 ?; = @                                         B B H J M  O R X YZ W` lb d g ai      j           Mk p r t v y -~ o   [                                                                                                                                                                    >      0           ,                            G O                        H           >                      f                                      Q $      ' *           e.      4      "8           :           < C qG M [P Q           T ^V 'X X Y OZ Z           [                ^\           \                                    Jl      n 5t      v           c                                                                                :                               W                                                                                                               D                                                f                                                                             {      ;                                f                                          k           {                                            4                                                                   3 C      K T           x                                             O a                                                                                                                          y           '      b  <      #           p      ;           
           S                      !           &                ( #+      X- /           2      <6      V9           F;           < ? 9A oC E F           7I 4J J bK L QM M           N           UO           O                                    V      X [      8b           Af hi      j           k                          m                                    o                               q                Is                                    u                          x      L{  |                     }      Z~                                    (                                          S                                                                               D                                          I           Y                                                            8 G           k z                                                               c t                                                                                               n           ]  ]  {                                                                                                   |           &                                                                                  l                    b n    z L             + p :                                                   T       G                     J                                      3 S                                k	                                                                                  5                                                                               .                                                        9           :                     ;                     gC      KD                                         *I                                         M                                         KP                                         FT                               #X           !Y                                         ^                _                                         Zc                               fg           dh                     s                                                        Tz           ${                     |                                                                                                                                                      (                                                                                                                            G                `                                                                        _           ^                     I                                                W                                                               Z                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      e                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         _                           K                                                                                                                  ѽ               Z                                          	                                                @                  5A                                          vi                                                T                        m   I   ؝            Ԡ                                       :   R   D      8      
                                                                                       L                                                ;                  Q                        Z         [      n\      f            g                                       )      .            
            K      O         h         1                                                      ʮ                        B                  s                     E                        I                     ǹ      -                              *      (               F                                             P      b                                          s                                                                           @                                                                                 &                                                };                  G                        M      N      eO      AS            T                                       j      k      l      m            n      o         p      ur                  u                        aw            6|                  g~      ~                  ߀      &                                                               ؆                                       Ɏ               "         U                        ˝                                                                                                                                        %                               %                                                                                                         W                                                    Uu               !         )   ]      `               
   >         u      5      "   X      E               q      -      .   8            8   .9   d9      :      :   ;      3B      B   yC   G            (H         J             L         JN            IO         DR            DS         V         W      5X      ?]            9^         ^         -a            8b         e         f      xg      r      ,s   [x            ,y   y   y      fz      6{   l{      h~             Z                                          i            &         +                              Z            ܎                     Y         đ            ɒ                  ʕ      q      @      ͯ            )            7         ?            M               F      $         $                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       g                                                               z               D                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     xS                                                               l               m                     o                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   <               _                                                               -            88                                                         \B                  `G                        +K                        N                        R                        V                           ]                                    a                        2f                           r            x                                                         ~                                          :                                                p                                                   !                                                            +                           i                                          o                           w                              N            \                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
g                                                               n               8                     }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                lS                                                               k               m                     o                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ~                     
               0               S               v                                                -            ,8                                                         PB                  TG                        K                        N                        }R                        V                           x]                                    za                        &f                           r            x                                                         ~                                          .                                                d                                                                                                                                          ]                                          c                           k                              B            P
59OSko%1BWhuy}")07>ELSZahtx| '.5<CJQX_fmrw|$,16;@EJOTY^chmrz
,4IQYfnv	+	0	C	R	Z	_	r	z											
-
F
W
\
d
l
t















)16>IN_gl{$,19ANS[chpx} (08@EMRZbgow#(08=EMU]ejrw"*8@EMUZbjow|#+38@HPX`eow$,19AIQYaiqy	#+3;@HPX`hpu}!).6>FNV^fks{!)16>FNS[chpx} %-2:?GOT\dlty!)19AINV[chpx	&.6;CKPX`hmu}$).38=BJRZglt|"19AFV^fks{!).38=BGLQV[`hpx#(08@HMU]ejrw|	$(0CRV^bj	',49AFKS`hpu} (-5:BGO^fnv"*2:HPX`hmu} 	    & . 3 ; C K ^ c k s {                  !!!!$!,!4!9!A!F!N!S![!c!h!p!x!}!!!!!!!!!!!!!!!!!!!""""&"."6";"C"K"S"["c"k"s"{"""""""""""""""""""####$#,#4#<#D#L#Q#Y#a#i#n#v#~###################$$$'$/$4$<$N$S$[$`$h$m$u$$$$$$$$$$$$$$$%%%%$%,%4%9%A%F%N%S%[%c%k%s%x%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&#&'&+&/&3&7&;&?&C&G&K&O&S&W&[&_&c&g&k&o&s&w&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''' '%'*'/'4'9'>'C'H'M'R'W'\'a'f'k'p'u'z'''''''''''''''''''''''''''((((((($()(.(3(8(=(B(G(L(Q(V([(`(e(j(o(t(y(~(((((((((((((((((((((((((( ))
)))))#)()-)2)7)<)A)F)K)P)U)Z)_)d)i)n)s)x)})))))))))))))))))))))))))))*	*****"*'*,*1*6*;*@*E*J*O*T*Y*^*c*h*m*r*w*|***************************++++++!+&+++0+5+:+?+D+I+N+S+X+]+b+g+l+q+v+{+++++++++++++++++++++++++++,,,,,, ,%,*,/,4,9,>,C,H,M,R,W,\,a,f,k,p,u,z,,,,,,,,,,,,,,,,,,,,,,,,,,,-------$-)-.-3-8-=-B-G-L-Q-V-[-`-e-j-o-t-y-~-------------------------- ..
.....#.(.-.2.7.<.A.F.K.P.U.Z._.d.i.n.s.x.}.........................../	/////"/'/,/1/6/;/@/E/J/O/T/Y/^/c/h/m/r/w/|/////////                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        g                                                               }               G                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     {S                                                               l               m                     o                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    	               >               a                                                            -            ;8                                                         ^B                  cG                        .K                        N                        R                        V                           ]                                    a                        5f                           r            x                                                         ~                                          =                                                s                                                   $                                                             .                           k                                          r                           y                              P            _                                                                                                 !   "#$%&'()*+,-                        /      0123456789:;<                        [A\A]A^A_A`AaAbAcAdAeAfAgAhA   i      iiiiiiiiiiiii                                    c      מ                                                         T   l   `e   `e   &+                                                      tu   vw      x   y   z      {      :;;;<;=;>;?;      RRRRR R!R      Z          \      \                     g   gg   g      gg   g      P               -                     r                           Z`                  ͢Ӣ                                                z                                          ĵɵ   ε               ·Ƿ̷                     gl      qv                                                            FK   lq                              NS                                                         )               nop   q      r   s      t      u      v      w      x         &&   &&      &   &   &      &      ;;;;;;      6G7G8G9G:G;G<G      M      N      O                     CT   DTET   FT      GTHT   IT      j               l                     n                  p      rr                  >uDu               w   ww         n|s|   x|                  ~~   ~                  \a                     /4   9               (-27                     EJ      OT                     %&   '         KP      ~         ƛ                        bg                                                   )      *   +,-./0123         CHM      ,16   "   @             
                                                                  r                                       I            x                  .            X                           <            _                              4            7.                                 9      3:            9;            C   C                        \H                        4L                        }O                        xS                  W      \X                        m^         +_                        b                  f      g            Fs                                 y      z            {            :                           K                                                Z                                                )                        Ϗ                                                                                    D                              h                              b                                 %                                                                                                                                   1      2                3      5      7      9      ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;                                     ? A C  C  C  C  C  C  C  C  C  C  C  C       G           H J  J  J  J  J  J  J  J  J  J  J  J                                          N P R  R  R  R  R  R  R  R  R  R  R  R       V           W Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y  Y                                                         [      ]       ]      _      a  a                                                                                 e      g           i            i            i      k  k  k       k           n       n           q           t           w            w            w                {  {                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                    !                                                                            $      &           (            (            (      *  *  *       *           -       -           0           3           6            6            6                :  :      >  >           B      F       F           K            K  K M  M O Q           W  W  W  W  W Y  Y           ]           _           a                                    c      e g      i           k m      o            o                          q                                    s                               u                w                                     w                           {      }  }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 	                                                                                                         -      /                ;      =                C      E                J      L                R      T                                         Y           [                      c                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   "                                                        S           U                     W                      w      y                                         }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     A                                                                                                                  e            z                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   C                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   ]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    z                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |                                                                                                                                                                                                                                                                        .                                                                                                                                    =                                                                     iA                                          i                                                                                 h      ܞ                                                         Y   q   j      j      0                                                                                       |                                                @;                  "R                        Z         \      \                     g                                       U               2                     w                           f                  ٢                                                      -                                             w      ӵ                  {      ѷ                     {                              \                                                         P         v                                 X                                                                     .                         y                                                                                 &                                                ;                  =G                        M      N      O                     JT                                       j               l                     n                  p      r                  Ju                        w            }|                  ~      ~                        f                     >                        <               ʆ      Y                              :      (               U                        ˛                           l                                                               4                                                            R         ;            '         E                                                                                                            w                                                    n               N         O   }                  3            ]                           A            d                           9            <.                  8   S9   9      8:      ;   >;               
C   C                  aH                        9L                        O                        }S                     W      aX                     r^         0_                        b                     f      g               Ks                  Qy   y   y      z      [{   {               ?                     P                                                _                        !                           .                     ԏ                                                                                          I                           m                                 g                              *             l     m     h     a     b     E     F     A     :     ;                         }     ~     y     s     V     W     R     L                                                                                                                                                                                                                                                                                                                                                  8o             	   q  C        U     e      p     B    T   d           o  A       S   c              n       	  b    ׵       ~  a ĵ        } 
  Q   `     J       l  @  |     _   I   	  k     ?  {    H    j     z            G       i            F    W  h       r  E      g          &  D          V  f   eK eK                         %$ O" core_intrinsics  x΂o+,a4K       x΂"<o7  G eK       x΂?7Ov 7 }. fmt_helpers_for_derive``  x΂hB   eK       x΂sz qM s..``  x΂":6  %    x΂c  .e ..``  x΂y<   eK fmt_internals fmt_arguments_from_str      x΂=M_P  $crate::format_args '  Ň .. x΂! %' ef". 	derive_eq  x΂[EFa  ٧ C   x΂B 6d ..``  x΂Ey

?q 
 .  x΂9`uJg S ..``  x΂~SY   eK       x΂
|S` -! ..``  x΂^D   m   x΂(Cɳ-  d eK       x΂<# h .  x΂Knhmu %* }Vj. derive_clone_copy  x΂e8Tyէ   ?   x΂*1Nu 6D x..  x΂ۥgȵu 
 ..  x΂j.%?"  ܢ    x΂چ? X ..``  x΂Fs%J  J eK       x΂S2N   a   x΂o` ,% :..``  x΂I:1vr      x΂ZN_{,s l ..  x΂@6ȝP %$Ǳ uq..  x΂5 h$Y   h   x΂o[<$Ou 5; ..  x΂jzj:j 	 y..``  x΂kJn      x΂Tf19C   eK       x΂@a _ ..``  x΂yC_      x΂+>8u ,) ..  x΂B,,      x΂ߡ6 ={ ..``  x΂Pb-3/u Ko b..  x΂'NV   eK       x΂^ݾj    eK       x΂8D      x΂R"} 4 ..``  x΂Qu 	 J..  x΂VXBX1   w	   x΂cȋA If P	..``  x΂gFF   	   x΂aBJ:   eK       x΂i]a:;  ( -
   x΂&dQ\@I   eK       x΂ʵIFru = ..  x΂GoL} $߷ ..  x΂IQ%os   B 
  panic_internalsus   x΂(u #w8 ;..  x΂&<   h   x΂Zc90   eK..      x΂u 4S ..  x΂'  ..``  x΂t@χ#+   2   x΂LuKGu i k..  x΂6_Gs      x΂Ƽ    eK       x΂8Fc   eK       x΂l@i? <v ..``  x΂=qT&3  ַ% I   x΂iFD? "F "..``  x΂yYk      x΂Bٔ0z 3 ..``  x΂	su  
..  x΂iRW0p  5 H   x΂Y;   eK       x΂L'?      x΂RT)  lE eK       x΂΃eb      x΂ݞ~ ;^ ..``  x΂2Z4Uu  ]..  x΂zQǀ   eK       x΂b`u "7I ..  x΂C^ѮS 2v ..``  x΂ gUr = ..``  x΂oա͔  Ŧ S   x΂9c)   eK       x΂R|K      x΂C	*u ; ..  x΂c(Bd      x΂@zg !N ..``  x΂\  Φ eK       x΂[KS   eK       x΂8D u 2`" ..  x΂H ]10u  ..  x΂wj  d eK       x΂a   N   x΂(Z*W>   |   x΂٘Su :> ..  x΂y	  S ..``  x΂y s!  oE eK       x΂ QA 1>& ..``  x΂ yk ͧ ..``  x΂1F   4  liballoc_internals   x΂PE@      x΂2M(xg  _ eK       x΂b>  * @   x΂7/k   eK       x΂Br"    eK       x΂~f(eu  V ..  x΂޼^u 1( ..  x΂6vLEqu a 5..  x΂)E8ʤ   a   x΂q:u       x΂/\  Ⱦ eK       x΂@aP`      x΂jN҄* 8' ..``  x΂h3t ^ ..``  x΂LcM   eK       x΂_/
yny 0, L..``  x΂E% [ ..``  x΂S
l   eK       x΂VX\yxc   eK eK      x΂XW   Y   x΂ⶣ]Y . &L  .. x΂8      x΂$mgu 8 ..  x΂O-G(_u ` 1..  x΂EOXUN  b eK       x΂\n   B .us   x΂ԡJ$6 /{1 _..``  x΂\\p,u K ..  x΂^Î_   eK       x΂IJi   M r( W4P         ^      tg? Ο                                    p      zH)                                             yJ-~L-ן      ܞpc;                                          şgF}pC$ҟY<      \Y6ɟ                                                                                          Þ               ۟                     k                        R      <                                                   Ҟ      ^         }   1            1            A            8                                                   #      u                              a                                                            מ   x                              Ȟ                        b                                          ͞WT               t   (                                       f                                                         k                                                                                                                                                                                                         k                                                                                                                                                                                                                                                                                                                                                            T                                                                                                                                                                                          N6 M      4bƥ                     3٫               Dzڴ9>ƪxM   m               SƩS*.Ͷ,gٯ   ިX   չ·^ܲ*                  =   Bަ                     KBǣ1ͳ$b   r                     z"ݵ(ҰƮX\@ٸ   k                                                      ~                                    l                  g                                             ֭F                  a                  Y      u      z      K                              )      I      Z                                 4jʴ      Q;                     R               bW\j                  qqHLɸI   6Φv   =.$Rߧ                  e   ɫj
Фآ                     shء9W͵J°C   C۠                     ΨH;ŹN̲׬~!   -#2                                                                                                	            |                                             [         $      )   v      2            n                                                =      ]      o                     0            ɯƭODHT }                  A%{q              5  U8$/  :xP  ^[ſ  R+ܻH  N6Р+  z8͵  g<A0:c  }j
"9  !{  F
:S  ~-_P-  4.z  9  ~^8q  x߼e  J j  M>qjr  ؗ  I6  a$                          )%  m   ]eqxa  ɿ#   um`  N     ;8z  "̧;! T\  "ƣ  !0L  $(  o7h%ؤ   Vj%L  
}%%  tr%h}  )9%   F*WC  rM#`L  yf	,a  #&PBE  DH;+>  A/Mo  6+k*PB  wj1Ew  )='                                                  O*#57(ڸ+               =I89X                                                              @?f  @ Vn  C6At              ,CgCe                                       󬙫GpÈ  UH(  (IP0  4
Hȡ  >gHhb  I                          ![OƊ  1Q>pP  tJQXE   lvlRpY<  ,gR              E_U0L               'BrWȍՌ  o\W;"  hY`              =+[(   o[V   ԑ[h  &^5  %'>^$  "\@  ;o5a \  Yg\7_  OgcB   5Cd0  wcsr  Ood,  Kdg ou  Ej\褩\              uVpjh@  5k߃]   =bkg              D&n0!   [o@\  Gp  ٺqª              !s   Q2vt   %ns0  v   2&wvXQB  x΂    8CFvXPf  r>v  _Nz~              6'}@
                                      YjRm  h]x z,              G1#                          D|>4  J9bG  gaA@  >C螧                                      Cj]  ukRx  ȯM@aT  uq8R  Tdhv  x8X  Y5xh  \ 	   d+쒰Ū  NL|O :  |HЌ  'ڦ86  z;r  ͅ*\                                                                          F$Py   T$XV  汤XC$y              g"s  .@(               |Dypl  D~$'  &/}X H  x#   Q鱫@.  ŉ{  rhE  jض  \-`>x  ZR <Ͳ   <P  ) R  y!  Ў  cEP۹7  ;+Ђ=  g8 G  x8N  ,ջЗ  (ꪸ`k  X0   B;0MqZ   {Y  Di{*  f%  FrX{  Ja>  	gNS  <h(\  @~Ƹ2s  KǐcX              V0ob  0   z H$   ~q0  ۀx~  j-uɈK  Xk  
paX   폢HJB  >    Jgx`  =& !6  ]*JӠe  }q  60z  @L(  Rg1  NHJ#   Oq`  `_ؤ(I   KJܘ	&+  (=W  "܀a  xI   T	{ᰶrP  @̻    v  #r0׷^   ֶ]    5&MX  3qD
f  :hp3,   -騛Zn   Pv  |  4\8?9t   8H[J   Ps  {Klc  SXxaTz  Wϖ  H\  Ymشt  /  /(/R  <R0e  xu[  v  ^[B4X   ;  B``SD  -}n0_
  r@9  B1oy[  LFzPFsE  n}p    Qr|  ҍe['F  *aWf  -e  q	  D5
w  P	Q   eRw8  f                                                     t&A<  QS+  nWIj  ni!m  y  D`R	w  IY#                          zW(  ށ	   'v:  ``  z:  ub)[              Tחe=                           M">                          W%It   +%Z                          W?)aS  4)9L  J,)A+a@%              E!z-y@7              /A9  /yٻ                                                              fy62  Nv7lY  {89˯*                                      <^6   <#                           +Ҵ@a  A!JZ   BԱ  jA!
N  Y[@  <`E!yV  wSFaj%  Ga*b   H6  oBI '  p5dJ)/  yGY  Jy.?  G!R  Ih;MF                          7UQ=  fVQ	  xSǳ   TQ1v  #g'U!G  h_Q                                      NlRZYFu  [                          Pu,^U                                                              Zdq  7_d%  _=d#~  gwdQ  h]  ߅ipeդ{  mjɅ  
OSk37  .fk  m!^   \nU  >͓h*  )fp  <be9  e9r%  +h6e)Cfv  @tyS_  "Fauy
   1Hvi;.  ZVu!C                                                                          N@~xL  DD+                                      -E  *  ֏{Ty2"Q  JVq  N:   Lr  <EF  0x1Ǒ   Fފ9I  1iSB?  Z	1\  U]{  0uʏan  yh*~  z'~  Aaf  d兙d  q\#  ̌92a  0$!8  H2i^  ̘烼  91Hj  *WW!  hЇ  s'4   |I   EI̞	xS   R3Y)  #T97  ԴyhJ  +\h   :K+  r/o  (7D  kW^]=  1Ҷ  ,_8^  g g*  Yd  [B1@   R  Ő ѭgtT  xQ*  ftH  ?nSk  4/Q   R"Q-  ?PSj  V%X?  bq(  @\ڶ!%yA   4i]  6Q9IU  pI(  9Z  <V/  aZF  Ad  b-ŕF  O[L  77/F  oѳY  YZH9)\zE  eqxj>  1H    EOġAd   0qq!  ^yƁ  XIW  P3Sg9ذ  "NHIA   vd1ah  ivy'b  $1*<  `˝O)  <VΩb>7  w.q,A  YdYZ  0*Q2_  %ӱ  e%!b  GoՑ   {T  WVQ  '  f 2ҁ  >3   )k   YaP   *ݑg                          3z              taF[  /~>*3  z<R   /hY\              SՇ   my`  3U  ť#                          @M-	5>   743a@  bɄ  o  g\$ϝ  {R(  Jd  L)g                          }tAɼ                           df
1   Y#^  O?~  Al #X   !!n  M  H7A_Y  *ȫ
K  ƶ0  z!  \]9~7  @x              c2u  CЇpX              R
Sk               q9  Ί Jr  \R"  nc
RK/  "Bgۥ   Z  6>0  {69                           {{J4  (mb   -¥  tzI  uyZ              (Τ  cܻ              b  n Z
   0DR7  ٔ f                          4%\  
M5&Za   '':U   M@(:>  +W&oG  >*}  +ڝ   >۔$+?   q',d  *)x  Sԓ/:  O(0ح  W2j04  Fh}2M   p0  p:/ZX  Pɗ55  xRb527s  6r  `*>c  G9*  :%  ::b  	<<'(  1q/j}Y-  Fb>ʱ  +*,0E  2@3  N3BS              !C-p  6Ci                                                  @|I)r  xJ  [KB  "Kb  !IM0j  n(nNT  OZ{#  QO-]  6{QQ  DP׸  %Su  i2TC7   ]xS7i  0T}8  c!Pv              <oY|?                                      Y7]W   T][   ?@^r  F`J   		_
Վ  bU]*x  J:^Y*  ]d|              f=  <,gk  nJhz	h  j@i2  bj:yU  9gk  ({)Xf*ё              u nbf  zEo:                qg   +q   L.sj  qjtz4e  Azt=|                          ťxR  mOy   y/$xRM              9|ʝk               C~qI  ]bk  Vj`   ڹLO9D8  fQJȦ'   D_  ܬÄ*R  j!  ط ʑ{  R臲|               
]  	\C  Rz  켋YL  6*>  EJ	  ê  z4ގBg$  F!@{L                                      rJ2              ?NHҦ.$              U:5z              ILhkW              靺>  ǤXrJ                                       <"a  9R  OJ2D  P}z)x   9ո  2_ɦ2i  +xݟ79  j=Ӎ:  
YT                          ofF  *9Ϯ                                      n2uQ  r0Ԟ   mF  Ѿs   T&   j8D8  
  JRWe   c%1               UO,%  \\  g
x<3  2ht  Aʼ    쭯"U  Vlb!  %%2  X;ڎ  D44jSP  Ad"u2=  
/8:?  bȺO  H2  *ʂUe  qVS  +J-~  {?h͢x:   o>Κ?  *H  _Q`G              .YҲD   <Q              W,ղI  >N*F ;   S՚f                                      ^(#*                                                                          +A                          r\@                                      f\                          Qk  pr?5  !nl  oUpb  %bU                          `Ϗ|  bbw              'oC;  3uO  Rg"!V  ̶  %JP)                                                  ڛ;  S 7    FýC w               hǧkR  7B#  1$9}=  HtAr  GX   	{;  M|\  
6e.   
Kv_  ^+|/   hu  i;u  oK3  c?                          [              vw-N   -ש_   ސ3Lx  2\  _xm  4@è  WԬ+  	sA   29?  ێk$C  y4  T3#N                          {Z#;}O   Lɾ$V,                                      $(gI}   Sљ)[#ޅ  nF);|Y                          -
  e^.CZ  	:/n   +h0A  !@/p  |F-|              P=4[JG   l4f>  bd6KA  't4  u8%L              m:$q              >*<sK   "Ԕ<{  s=3  [,<_  dts@f   E]@Kc   CS?{
  ʎKCS  PD   uE+4              QS]Gc
,  1Hʬ%  :Io   J#0  @>PHsn  	I{y  LMҐ  6IPNo   +Gs  TPB  Y>QCjF  z?RsM                          SW+Uθ{  TVCb<  W#~  GAXo               %Z&p  eRD[Sߏ  U3?\÷G  R']R  F2^KB  B[_  ߥ`  akq  8tb/  V<ck%7  D_dT  =&d#A*  DTo_0"  e)gS)	6  )؋h[W  γhXn  AjsO   <kSmT"   <EDk1w  0F"mm   W=cn˙JP   c,-nS4   fj  WtLnw$  onrcQ   wgP  `15m*'  ;ou!   1v   -!w  HNMxE&  سUw;  _zosl  9{;|  X|Cc/  L	}oC  S~cN  \W}[h  C&퀫c  7nۛG   x  %.e,   1oSu  YNp~˥   }뙝  nzc4  -vQq  U۪-  5X  k̇  @=Ō   N@L;  ?yȌ+  *AG  >[  j  d]+gJ              }[G                          $1    y  z~I  s  aQ  j=  sD  [-͛G  !iKh}              3=KqBo  mf%y  F|nNO                          ow'y              _ɽ{$7r   JkZM  eCC   NA                                      ?у0;                                      !c9                                      ]aJJZ  y  'aި  @              _կ  @ϼ#  f#X              ƫDzB@  U  ØaHv   Tsu34b  SJ  ?̴f'|  Ke  C}ǋmg  `s  晷ɋkd  ˔  +*?b  X(â  .TC)  Y8kl  eϻ  $R I  U7x                                                              q ׳/`  c#xS1  yW#a  ,ٻX  r"ً[  /HoStPz   O#9   _KFf   L[~#C  17;-]  Af    #׀  {x               $fx   t4il   Kl)  Pf2$  g_0飰q  <SE   vtV   Е;  S  QM  .3fZ  rHkd  MUõ  (v+D/d  }3X  
lC                           E3  rPs   Xsp  LE3JV  )q  YîcB  )c{Z)  ё  }>cK  N+ 'O  k td  E  xא|?
  a$H  $q$f  $  TT#p%  jllY>  sΝ̸  C              	m  ܪ   $X7\  Jm  	3                           tCO4A              CXoD-k  5dd&  AZg|              kkLC>'  N~5  iqˁ  Z#d                          l&>  s0 zZ  ~w!&&   Z !&W  8;# ?X  l$dT  D }R  "y^  r'<TW   ۠ a  @s_J)t                                                  l.$F  O}τ/Du\              &1$                          ̸x4ʧ                          O7g  ĝxO8<j   {9̭  sz:,%8  N;t;  =<E]  vK	8̆O              sߟr?5  E@$FY                                      D,|c  >zE|m  $FFlAP  `ѹGl4   k)uG"  j I<r                                       Jf=Md   XNti   7q{MLs  AUPP>  	Q\!    ߸]MV  =SEM]Pj  C)Sd9  -"oNg  hV,U  JW'  ZNC  .>XrYd1  #OH  C[b	  rF\l[{  {\+  V,0^`<  $T_y  t`|0M  Z˽_i  [L\\\  yc\,  dY   ;+d'`  ~fdN   يf`  3Fhsv  n]i!  hB  aSi8  ~BlA  NlL-F  dn	   ٞk  xpl<  Nq'I  nSVK  !/s,  Pn~tL7U  }ug&              ۞Tw0e  (x
w  &yͣR  y<*t  b{}q  5O| 2  qi}ǨB               m`{                                                              PĔ  %AT   .Lc   kx܏<  kݸd                          SqML  荌+  㻎Gh  n  43R@}  j?V  *d<e)  ZTj  EulK|   ˱D  XӖ{   QҖx  X՛  to'  @'1d+  q~y  "[[  NTL0K   `ħ̄1  -Ŏ,  P𓟄  DR  G l{  DT  5[oąt9  9v|hs   N)&  Z8u  "wf  !'K  ?BK,tz  [̰s5  rYU[o  -<T   TT  M3  R  L&ٔD0              "i <Q                          Eė#              <K(   ʹTQ  |칬`                                      n\DM                           nZ}  7-4Hw  5Oä3  e<*~              L$2                                      u\ &                          m!DS              !nv  &PЬ                          sw  wԬWU  q
ՔN   ;  @פ   iD(  )%_   ~̺|˵  (mG  m>4TbL   }4  Jn*d
  h>ެ.              Yfl  xVNdˮv  W<]                          T'4  dF$Ce                          =m~t  GRkq%  Un  4y  疢L<E   0?$N   0͘s  P@Rf  g/s  `(Y  yd2  ҐFZq  cX  EFL  1yD&  7(  3elt(g  p9i  }5  *dԺJ  %AFX  ۵;Ko  85n    }L  {pa  *
Ef  7T$l<  ]{O  _q  dj7`  gm5#p  VdW  %F
^	  K%o
=Q_Q  1s
#  k;:  (-   #jS    ذe+  	I  6A).=Z  GG	  cĉ  ]@o  i0M  D^O  >Kf   mK  qEr  [̰'fO  _u,wh  YPd  ڈ嘌  t)l  nc 2   uI  hU"M6   oA҄#Pm  <#c  ʉ%uF  R"Me  }t]'e!              &4)U   RI)E
   i+)>  ,u-  I|M-y   ~ ,Rp  XK@.E!  L80̀   u!J10ʸ  9ъ-E<  Q3=m  3
.  r޸37  D6l0  Лb,7}  .r8E'   7-Aw  Ý8}6  Bc.eȒO  B:$                          5RW?:ɿ  F(@m \               +B6  {B=k1  WDua  FEM  z#F   貙F3S  ŸHh*   gc?	IE   Hݿ  vDK]g  HTJ%"i  kF-O  #NEN  I`Nm&H  eBL%Z$|  "-Q              R7>S R:  ۝+T5|  CzU  xdT=#                                                  xN[  [UVT  D	]/  5^|               @`E4  R9a   rLbU^  KNV/cMu#  NXd=e  \eUA  vc}+  g%  5e  |"BiE;  HjMbj  gd'  Mmlŕ   MA'lUUV  U>Mn(  po  O'oUR;  |x1~hE  _IrmLg   :s  rmSW6                                      5xl  0yMj   z:C    JxY`                          8}~|b  yG  QUZx3  J*t߁\  ߿Ec'  TFv  sG*j               y=2:)                          ݁   S  A05 J  io-              d]  0Ώ=   e}f  T'ֳ叨  ٤גu  N6ie                          +              ʳ5Z  z~u   YeMq[  <0HpJ  ]Q              :Ϟe               ݿw  aGҠ'  ̴ޢ7   ڢ  :h  }m1}"  vOj7   gƦU#  G\Ū&  4U  tS;%  22   -gEU              Ҝ]O  }ţ   /u              |>)                          	w   @:@  䶐Mz  L              ܺ=<w   8	  WPO  /=c  .򹽥aU  Siu  |:-U  hEn  k=0  Wýo9   _#-g  ?ōiu                                      z;3                          c̕σ  fPn  8 %%  ε!  +?3Ee  6ż@   ,LѕoV  ӽ>  k/őY  u&              ו  0M׵0A  ,ץ  įEc   4TڥQ^w  Ct74  "eMv  w5(?  2؜fz  vە  ӴV.  jE#  xsy  ~)                                                  "M=   KwY                                                  W~D  SOM  v  Ө"  3ܶa  2=&   fҜ  ޣ(  w"}iR  vՐ                                      mԿ  uc              ȅCuj  qb" 6|   ~&l  `  	8	  V               i怌5  @  0   |?  Zd	)S  HImFÛ  2-yL  0/7  \]F                                       'ehQFd2   kR6Kc  \v>WI  \]  /  -YI>\  UU  v/w;   }#̯  wbFVh=  \B^*U	  F~2  =V)  ә;  RB #D  qJ!P  ^)$  DX#Ʋ  $8   A$   &9  'F  4B(T5   O)	0  *O  h+  P|,,.&~   m+*  -s,6a   m/   '0>  &$OĖ  6 0z  '23Ο  [s3S%  V>35Ҍ  T3/6NS   s76^  +-88|@  =8,o  ҅k7:H  c:n  <d}-  }<<2  Mk>nGx  k[~?X  IՕ@GƗ  6AV  kgBcC  c2C  "DC}  DD.W  ^&ED   {"Dv  !
#DNg  be:ֈE  L&J~t   h#Jf   phK.y  "'QK}P  %?xHMg  XJ)q  Q.ܻPF  ߉ĈP=  >vPK  ^5PC  (TFՊ  L
T  V.1  yWnP
  UFS  
&$Y  8չQk  WO  t\%	  b $nN  -.s  O_.K  
_w  Ea  9bnګ  Rqcn)   Z`^˨  e>nH  Qf~h>   fsa  e	  Qiƀ  M1a  	T\k!@X              /_mkH   7mV   [?nNn  @R6Fmv*                          ZOsW                          ܒvS(,   w!  xn  ty  yzj1  |y^7ā              "}Vz$y              .g  {)$  e~v  ;R3!h  _  ʒ<e(                          ˳߯8              N(N&  ї"k?  |tb  が}uN  Ɩ2"Ϭ  Gs-  >   \+1,  K&&[  ʉ>ܾ  !+Z̸
              &iÕe  [ٖ@  8wj                                      f   Pqޜ&Y                          ^$0              +s)                                       ,E>WP  =:n                          iS              
seq  -              \Z^                                                              e   3Iwi  e`n.l  \B÷F$  ~Z  b>  n䚵  דjjƅ  䱙K  |y2  QGv.Ss  DT-Ɨ  5\Ljg  h[lU  h,C  qwn  x`ޥ  qΤŖ0   ȳ  !"	5  On  SHȞ%;  z                                      *WΆ*              m&    
              l܍F.Sk               %~s  !_=                                                  q/hv               Ps  3>'  gn  nAO޾\U                                                  7edq     6]^  ^2m&L  1'   A\ j      }~8  7nnT   3v^k  U8.  XE'  )l&  ME&   ]x.   EfyNy  ΗBTE  }[k  =VN^   xZr3  i6M  vH>r  U  t.  =еr7  K]n+U  .  ^z >  93 OS3  ړ9O  KR+  
5Om  &SIS  $g>  Z   
*k  M	*	   [)ό
Oc  JLƋ^  \e  >    %~d  n:  ۑNgѱ   G~  tEvS  dg  b+
TV                ]ƫQ  yzoP,  U  BWgG  q_zn              eD>  '-Ő  ] 9`   !+]N   ;E\  #W  2h$7/  5A%   5;T&S+  1B)d'o 4  dQX(   8r&WF    }+g)  +'M  &P-v              '<c/Q   `T/"$               2_   ]&2m  Œ4/un  pAD5G'   T16wD   66/|Z  I8   8'mI  mRs:	3  C6g$  z;4  O=q  k}'r>#  }?6F   	D@P/  ʑ@w	
  D
Bj{  gCϬb   DG  rf5A  @AR  R93E/ǖ/  lH`   7oI  ¤GXJn   [J\  jQIJ)h  %aCMB  Y6gW               ӄ/PŲ  1CP7n  aRWLV  6GS/E   pFkSߠ;              w?LV<2c  ʢFVn  \VGF$   ˑX,	              [S:              x@]B@  3]w[2  f|_+   u>b!`'  åek`Oդ  #Rb)  ;?jc'6              hGUeo  l fA  Sgg]              &=%i               kOwe2  :eloNU               ߉%n              BFpo)   pײ   	4pQ   $04qW3`  t'  ku%  dv7u;  <ov                                                               &!}ݹ              9=C              /0G  }(  1;,  }{   qFFj  n#bO3M               ~  ᣏ#m   y#?KT                           c!  kr  G_   w   c~L߼L  (sjg	  ~Ufrx  .0*@  R	ȹ              Z;[t                          ^'   CPw"  ʡ#;  'e׌  5  _hwP  xnW	  'G   'C$  >52  3)   T֥ z  h!JMD   'Ö[   G@ɑ_  Mr'ժ  P2  G:_Ic   `  l
/k)  చ  w_  \4+  _  Vڲg^  s2  #Aȩ  )4O=d  /L(5  wr3A  ޸J   77i   ϵ  Y4wnM  񢅷(  ~	`+@  H7ʓ  X\z   1zнp  խ'ȶ   F"J  zWjB  &_hT  6xw  /2n  "GWu   Fǿb   .,%  л  Kb׆   п/;M  ͇?   T/ai  RL%~*  '}˿]+  qNΗ2     (7@  nqe=}  Bѿ#  +ӗW  pg0  eKx   T/,t  ]
ڧD  ;'  h ˣo  uL'p   aQk  Y	/~  Qm=GD  g^!  <)Фg  wNc  mY  FW1.  _  'w  P`ǂb  ,_  FUl7z  iJdWg1  ˃H  ΍7  r ~  !g  &f$ƻ  <lD  ]_'Q  9OC]  RW{6  _#'   #w5!  SN׆	   nr  Da<   .Up43  ΏJ@v  >?:  w+D  F|o1P  WZ  h~bBfmCL(K8iV5iP
Qd_=.Q&u&>UQ&m"U!;\Mzp:yaz[yEb,qvj^?w@pOT./NG9BTsAV~.ZaE|er(A3k?GD=HuTS}DtX;t4Dbqh9.<}V ZlB =PGbfG)jN\}df08[|{).9,rUY?sePTii~=yMU_$9];[ j-(>-_6*g.m)AF)B<9x>Uqo]gbXnKo	neqqu]-_X~l`W{-j'k<5Xgq[fck#MzB*Q?A.RAj5/VTlX3kQA<Cz
z^9~co!.={?`3Q.
]A5Wh<4Z7".is2|::)(W<.*-bT2JA#=5P
@^LX {1ilu1}E\ex|5(3x-OCj}*oE @7g)uMd\W7&,cCZs@}5~%m[tGedZ-g]B-3H-[#Q]p<nVNhuz1,Xp8msTx=a(\:4>sDQuGXOItQL	H{y 52>)]Ys8zO"Sh)C>Vxq&y`c3=S5x%hhV\bVwDI:O# "bD`4LtP(P'S2+kGBf GNX7MOG;c+r(pX)>^.2;j|:J	Z'T&.ran !}c$o>-7	L_% &%KMYX1P)tVVU}HR\X5&\1Z7ro]rEH8Z 7'*G%^;L(~at6>1!'ap#u\SNA8mC|v#5J@9FmR>C<jMqW\bxovW!b$O}26^OEf6j Z)W,`(~33ku<ATLa:Rq\32Z,ho]{%v1N~}j$u`p,ITf.I~ Gme\j*F0@#MzSCY{ g',1Ic6pYI49 [(\3}wDp=C<&a.pzp0;r!{#Fo+eQqQG>T0SkhrB4a|+2PqTw<_-Blt=*:lB;%:R@*B@ZYw 0AGARMUw~*'c/Z6PSgWfUtMK L3f}QtVo,%SJ3'/g8//`hDvZ3%3;(F~eQ&(q#tUMei IUd j50AB)k"nH'"Q)>EGN|A/2 _`	oj	]me&x+l5G0><.1#@^r Ge]>T[2s-@8gz;NsM>5GU**QuX;H=;cI1*I*ZTYjg7QPn,\
o/N;N\wELmWN"';^FYNd4j_zPMvwXJ^U`a&2%z.WrTW*CeSwkkvZKCs	KEzVb=Fi)A	7$]>Z<,ck!Hl3"`wgd38	{jnj)?5'QwK~megw@| $zG@Qst5bkpL4q5:gwn\2 ;Hv^Q+A8S|gTA-Mo~c[5*;ALRQn)?;9
L2a]5s_*5
j}z'{_9Is?mveqhBaxSa/]2ho)r*	(#=H0.xlsuz+x}eM(It7">ctI(M1#m)K0{l|!yY7+"7U -qjIdS2'l[(W[E\Yi]Q&6*pxLZ3< \:o{YZDv{"kzjU1Q`rBao9Tg%b7eAn[}Zz@^dChOm?Rl RYqRQC"R1,Q[	vE	
?ac_!TM[Gs;r`h~bBfmCL(K  9./external/rust/android-crates-io/crates/regex/src/lib.rs  T8,W]                 
MOPMNOBGPL	>:N8)G(+NEL5OLHJO&DIO<GKOP@KP*M$MOL,NI	.%I:90!!!7>*I?HK9FMNDIL!#NJN	JL63AKJICPPLAONM+ZLNLO1"KFG?3"IG1P6$PNM1O/6<K
)KQQND=WOHNPOWOHPDFJNC120.OCWH2OPKM3JFNJF60<GH&KLJK89760<NJM?H5NC*9%ON %+>KNP#NP	5QNBJHLMJMLKL+QLOLN'MKNFL
5HOMN,JH5'52P**NPFQ2<PMNPN4NPIPPOO%
LCJKMOKKPNOOL2ONONOKLH.NL.LP/LP
+HML*$*MOJ>8NOPJKI4V,A-V,KPMPNOJMKJNK	DEHL	8KBLFCNKCJE/8V-R9?>8JJK="'MCJ+&%K4;89.<99$.8%$$,++0 7'TLUOT,VUMLHMPM'*H&1S8HIIN$GWW#.1NMNJIIII&E@7G%+SNP0FP0)#JO300"A(0*K@-)MLN5%JE! $71(01/;9H8M9M:M(0%-.7J$P7J*%#)!"!-*".'LH-JJMM"MIMOPPMJOKPNOMP0KMPM7WJPPPOLP	JLN8LOKMLMILJJPOHMJ,HMILKPNLNJP1NNLP@MMPBM%LMONLCLBOKHOHKNMPKNPK?NKHFLIKNLO!!OOM.LOM,OOKNHJLLGK*OGPMNKLNNOJMKLKNLLOOJ+MNNPNKKPNL?LNIGMKK@ENPOL
J>LMBNILMPNKIKMN2LMOILLLMJ!LMPKLNMK]K-JL67pkD-LIGKJRHMQJLN>NPLIMMK*MIKMMPOKMMPPMPJLIOO3HMP7JOM 4PI-('#MAE8"1DDDDDDDDϯ³ĳƳŸǸɸ/ʈǳϣY*k    A./external/rust/android-crates-io/crates/regex/src/regex/bytes.rs  [#O? *V                 ՊՊ?>0COHNNMONK6OI(+@6")LP-LOLKR6PN:335$&#/&KKNMOOOL=<>;O**0""$/K'"/K>$=3=3!=5%P>NOMICEJM!A2A43>D83&LKLI!!5E#6&GGM JJI&E!5E)(6F"NJJFLA!5RQ"####P@PMOOMKKKJOP MJPI!BD.OF>MNK28/'JBP!QD.OMDLML785,MJOH)I#!BDI4,#M&NMPMOOMNFLLK!ET!O?;8
!*.3!TT,'5,'9,'*,""KPPOKGO&L!1(:!C!,-7P,7),*7D-+7ML2!,!747,7IM!,7>KNM$!+$7NOI!,!747P.!-!7J5JJ:JPNMI!KGO&M"2!.(>N!,-;Q,;),*;N-+;E,;0,;/,;!CIMMCOM.M2$LNPPK0PIKLM)P<!1?OPO-=K"--7LOM7!LI7LHIPP!IE0KNMM"-DO.P.%(FJOM.M2M9KGO&HOKL3-C">$5.I=&<
JC.O$-7&@GOJ!F)1)(NNI6OM.M2M9KGO&M"MJOJJ!F)1)&PNNCJL30J%0>$I-&1<$
LJ!,
: G)E0"-
8MNI NEJOL7ONNMM-ML!-;E,KPPN:8OL*!3@;K8M<NPJ!8OL*!3@)K*GMPPJ!8OL*!3@GK.FPNPJ!8OL*!3@BK3 F4.BC
N6OMHLO6-NJ!;/F///%1OPJ!8OL*!3/@CKC!%F8M6IP!%53!4/#BONQ+PO3O!H,.33.J3(OE!+,.(1,.(6L=KKP?!.*0*H*1**:JNO5JOPGJ3!C(*.4))(+39(DC%!6/C////:6MK@2!8PMMMPL.M0JKMKI<IL0JSI1,#"5&ON2@PI&#MPM@PI&!EJKI%5!K5<)%FH'*G9/(%?((776KLKLP5L
(%L1JNMLMMKPNH@PJ/$& %(OP?HP/!F4FF%"7C2J!9;<+OO(OGLNONP/!@4OO%":%CD2MPN0FCJ(KNLJ2NJ=!K@/I)#" J*!K<<K#
 444-NMG!GKF
/I!DELKLOON0/NNPKM1MJMLNPMLM$OJONLOLOG*!F@.F9BKH*PQ3O7!80"PODO%=LG*KJK$!80#!-KB:NPP!&$
=O-PE<7>C
00O*--
%2OA#$"5
"5@POOJM64K23#B?POO JMO5:8#BJNK1PL,DOJ6MC+H",+,@#6*-*51EDM8'MO%!G/D0/0<9PNG>!G/#D#P!++#:1+#!KMC7CJH0<@KL6OIF#,.GLOOJ,>HNL$:OIF$'31I-%!LOOJ,E@L-2OIF*-8<HOL-3OIFI3+-84=AOJN-=:B)!443;@OMNPOINKOO'+6#6%H4@HILLPNGPMN(3$O3)2
HA3KP&2+J;PN5P(ANOM-+9:
;4K#:,K":!K!:$K!:K :&K):*K):"K7/J522FK)A:=POJ7)@K*'%H':$JOPPAN L,;2!)-"!) ,,( ()-*=*--*A-Y9*v*J9*j-H.*P.˵͵ϵѵȂ˂΂тԂقۂ݂߂ɄՄ؄ۄބhscR    >./external/rust/android-crates-io/crates/regex/src/builders.rs  '̘m(mr                 MKH4OKNLM5JKFHI+ 	AJOP"(23L)
#(M
@(27883F(2 88?3D(278#<3J(288#C3@;:5D?4/>?;:5A<7250=EAF;700KPN)LMK4>
G/M56,
A;MLMPOPNPK,OOJMPPOM;KG,%. IH)-( EMP)D'
PJGL-%<(0PL21M0
DMMLJOP3ONOMM-%1"KG*
NOMJJML-%3,"L%!4
>NN8N4JNL#M-%1"%JJGNP%-""Q8A$
DPMMNNLJF1P>%1"*%EL%-*(+IJLLN4%UKNJITK0
DLL@M-%."GG*
AJNIPNINLM-%QO5P*,)=11@1PMMG1C1PMHP1N1
?NPLLLNLJH--%NM50'B%
NFLLIHJLNOONMMM.M%MN@SJ,
P"JMPEMILMLPMPLMGLNPOMNMLJNPNNKN0
3LNJPPPOFLJJNMIKMPMNKH%LNH,
3GHF=!LNN9'
@
K/O59-
F;MLMPOPNPK,OOJMPPOMAKG,(3 IH)2( EMP)G'
PJGL-(A(0PL21P0
EMMLJOP3OK%OPM-(6"-J*
NOMJJML-(8,"'%$4
?NN8N4JNL#M-(6"%JJ'NP(4"+D$
DPMMNNLJF1P>(6"*%'L(2*(+IJLON:(-+KNJI-+N0
ELL@MLOON?-J*
BJNIPNINLM-(QO5P*1)2586"$1
@NPLLLNLJH--(NM55'E%
NFLLIHJLNOONMMM.M(MN@.(M,
P"JMPEMILMLPMPLMGLNPOMNMLJNPNNK$0
3LNJPPPOFLJJNMIKMPMNKH(QSK,
"0KPN)LMK4>
G/M56+
A;MLMPOPNPK,LOMPKG,,. IH4-( EMP4NO,- IH+D'
PJGL-,<(1PL22M0
DMMLJOP3ONOMM-,1"LG*
NOMJJML-,3,#T%!4
>NN8N4JNL#M-,1"&JJONP,-"#Q8A$
DPMMNNLJF1P>,1"*&EL,-*),JO3MLJ,($+K0
DLL@M-,."PG*
AJNIPNINLM-,QO5P*,)>77A7PM!<I7D7PMJ%;7N1
?NPLLLNLJH--,NM50(B%
NFLLIHJLNOONMMM.M,MN@SJ,
P"JMPEMILMLPMPLMGLNPOMNMLJNPNNKN0
3LNJPPPOFLJJNMIKMPMNKH,LNH,
3KPN)!LNN9'
@
K/O59,
F;MLMPOPNPK,LJMKKG,/3 IH42( EMP45P*/2 IH+G'
PJGL-/A(1PL22P0
EMMLJOP3OK%OPM-/6".J*
NOMJJML-/8,#'%$4
?NN8N4JNL#M-/6"&JJ'NP/4",D$
DPMMNNLJF1P>/6"*&'L/2*),PL3MLJ/-$+N0
ELL@MLOON?-J*
BJNIPNINLM-/QO5P*1)3697"$1
@NPLLLNLJH--/NM55(E%
NFLLIHJLNOONMMM.M/MN@.(M,
P"JMPEMILMLPMPLMGLNPOMNMLJNPNNK$0
3LNJPPPOFLJJNMIKMPMNKH/QSK,
?@NPRW[=[N>F    ;./external/rust/android-crates-io/crates/regex/src/error.rs  eX 5ص                   e'M39LKNNONONNLOLON.J5.;+MNMKONOL2+
#N$+D
$K24G
JKN"K(M)&'&!.G
 b^duiAy    B./external/rust/android-crates-io/crates/regex/src/regex/string.rs  ZH+{=Ud                 5>)COHNNMIFMNKJ+JI(+@5")LP-LOLKR5P5 /2IFJIII* (AI""$/K'"/K>$=3=3!=5%P>NOMICEJMA2A43>D83&LKLI!5D#5&GGM JJI&E5D)(3E"NJJFLA5QO"O@PMOOMKKKJOP MJOMBC.LC;MNK27.&JBPQC.LJALML774+MJOH)I#BCI3+"L&NMPMOOMNFLLKES!O8
!$(3TS,'4+'8+')+""KPPOKGO&L1'9;,,6E,6#,)6?-*6;L2, 6B,61M,6,KO+6;C+6.OI, 6BP.- 6J52I:JPNMI!KGO&M"2.'=<,,:?,:#,):<-*:9,:*,:),:!CIMMCOM.M2$LNPPK0PIKLM)P<17OPO&=J11LOM7LG1LHIPPIC*KNMM"&DM(P.%(FJOM.M2M9KGO&HOKL3&B!A$5.@4&3
JC.N$-*(?FOJF)0)(NNI6OM.M2M9KGO&M"MJOJJF)0)&PNNCJL30J%0A$@$&13$
OJ!,
= G)<0"-
/MNI NEJOL7ONNMM-ML-:D,PPPN:8OL*3@;K8M<NPJ!8OL*3@)K*FM0PPJ!8OL*3@GK.F?NPJ!8OL*3@AK3 F46BC
N6OMHLO6-NJO;/E///%1OPJ!8LOL*3/@CKC!%F8M6IP!%534/#BONQ+PO3OH,.33.J3(OE+,.(1,.(6L=KKP?.*0*H*1**:JNO5JOPGJ3C(*.4))(+39(DC%NNL6/B////:6MK@2!8PMMJNMM<H M0JKMKI<IL0JSI1!#"(&ON2@MKKK#MPM@MKKK!EJKI%5!KOL>5<&%FG'*G )%-''776KLKLP5L
(%L1JNMLMMKPNH@PJ.#%$(OP?HP/F3>>$!7C2J9:9+OO(OGLNONP/@3GG$!:%CD2MPN0FCJ(KNLJ2NJ=K?/I("!J*K;9K#
 """-NMGGJF
-G!DELKLOON0)NNPKM1MJMLNPMLM$OJONLOLOG*F?.%E8@LH*PQ3O78/"HGBG%=LG*KJK$8/#!-KB:NPP!&$
=O-PE<7>C
00O*--
%2O#$"$
"5@POOJM64K22!B?POO JMO5:7!BJNK1PL,DOJ6MC+G",+,@#6*-*51EDM8'MO%G/C0/0<9PNG>G/#C#P++#:1+#!KMC7CJH0<@KL6OIF#,.GLOOJ,>HNL$:OIF$'31I-%!LOOJ,E@L-2OIF*,8<HOL-3OIFI3+,84=AOJN-=:B)!443;@OMNPOINKOO'+6#6%H4@HILKNP@MLN#,$N*)
H@-KK+LI6PL2P(@NOM&+9:
; J!9#J09J09%J09)J09"J./J522FJ)9:=POJ7"@I$&%G9$JOPPAP J,F2
ř˯ͯϯѯ^I˿16R    D./external/rust/android-crates-io/crates/regex/src/regexset/bytes.rs  } y]EDYذ                 J,FNHOMKOKNMKKJNOO;HO4E(.OKBOMN+)#A30+-E"@&PM4K29NOEIIK )"1/0Q%LM"OI!ObKJN4"5CON0<$<':
#,&/L6$%!(%!#5KMMMOMLN+=$<'26&OFPJ!8KNOM0$F@*K+GMEJM?POMLN+B$"L2A.&%;%EJM?POPJ!8B$F@L)ML%LFCBH<PJ!LGFCKJJMMNC. B#!
KK@79$0AK! 8$/A%%MLNL$#" 1O*.B#/$#-&7((2$#7((6L?LM9$"-&3&%29KNNL1KJ$"-&32/0&!JNP9$"%A,L7$"%"(!
,/&#(+'2+(+@MM2HE !$( !'*&D!
42/+D!
9BNJK.A3+*046/5=%K5>캺m('Q6    E./external/rust/android-crates-io/crates/regex/src/regexset/string.rs  ^ӯWP                 J%FNHOMKOKNMKKJNOO;E(.LM;NOL%"#A30+-E!@&PM2K2-NOEIIK)"1.0P%LL"OH!ObKJN4"5CON0<<&:
#,&/L6%!($!#5KMMMOFLN+=<&'5&OFPJ!8KNOM0F@*K+FMEJM?POFLN+B"K2A-&%:%EJM?POPJ!8BF@L)ML%KFCBH<PJ!LGFCKJJMMNC. B#!
KK@790AK! 8/A%%MLNL#"1O*.B#/#-&6((2#6((6L?LM9"-&2&%29KNNL1KJ"-&22/0&!JNP9"A,L7""(!
,/&#(+'2+(+@MM2HE$( !'*&D!
42/+D!
9BNJK.A3+*046/5=%K5<؟0	:x    ;./external/rust/android-crates-io/crates/regex/src/bytes.rs  ?,\@                 [/NBJBJ(M1=)JM3E.N8:OKMN8$:: 1OK	GNPOP@JO1N0JNLLN8NdCbEX=    ?./external/rust/android-crates-io/crates/regex/src/find_byte.rs  UO8!v                 9ONH*;3%;) |@~=+N=0X    ?./external/rust/android-crates-io/crates/regex/src/regex/mod.rs  Jɻ7%s̀,                 -- o=s"L=~hN    B./external/rust/android-crates-io/crates/regex/src/regexset/mod.rs  Jɻ7%s̀,                 -- Hjqq&-jK  ,06BAM!NY}\_`Qaa aarch64-linux-android ֛? 		   x΂     1       Z- ,"            g    )     +    ,!,&&         ,                    ,                              ,             Z7ٴ        rust-end-file            PQ            	 L      d  "1 !   ƪ 2z O1       p tF  \ O1  oc  \1 .         `              (/ ` \     P 0 8<@DHPdhp      
  2Y@>Ȳ! /       y              (/ y} D8IfL,y&#c\>Qu2fȿx,Hj={K a>i                                                       `]              !      |            g       |              j     ؔ                  }      l      |     }                                               t    L      \          l      |      J          t                             `      D           `                        @      C          X                                   0                                                       d           l                   p]                                      L                        (       m                   p    А      4            А                                                         ؔ                               ,          ,                                           	                   	     8              	    H            	     H              	                   	          p      ;
     $              >
    ,      p      
     4              
          h      
     D              
     `              
     p              
                   
                   
                '                   *                   -     ܢ              0     ̣              3                   6     ,              9                   <                   ?                   B     0              E     Ю              H                   K                                                             D                                                                            ȵ                                                       |              N                                    *                   -                                                           й                   й                                                         0                   t                                      ,                   T                   Ļ                                                    
                                           0                   p                                      X                               y                   |                                               $                                          z                   }          ,                                                  4                   8                   <                                                                                                                  t                  \              *     \              -     |              0                   3                   6                    9                   <                   ?                   B     0              E     T              H     |              K                   N                    Q     $              T                                                             :a                                       P                   h                   b                                                                                                                                                         0                   H                   @b                   `                   x                                                                                                                  (              
     H                   h                                      Xb                   Yb                                                         gb              "     lb              %     qb              (                   +     tb              .                   1     yb              4     b              7                   :     b              =     b              @     0              C     H              F     x              I                   L                   O                   R                   U                    X     b              [     b              ^     b              a                   d     8              g                     j                     m                     p                     s                     v     {F              y                   |      f                                                          0                  0                   <                  @                  @                   D                   P                   h                   P                   X                   `                                                            cn                 !                     "                      d                  #                                          f                   aT                  $                                                            ~U              #K   P             ?K   <             WK   D             pK   P             K   h                  f                   f              	     U              K    h                                   N                     y                                                                                                         `                                          X                                                               X                                                                                    ~                                                               %                                                                                                                              P    8             p                                                               e                     $                 4             R    D                 `                                 )                     s                                                                                        p                            U                                                .                                                                                     8     ܢ             t     ̣                  0             !    Ю      H      C!                     !          t       !                     "          \      "                     "                     #                     O#          \      #    D             ($                     h$                     $                 	%                 w%                 %                     ^&                     &    ȵ             '                     B'          4      '                     '                     (                     ^(                     (                     (                     )                     R)                     )    0      D       *    t      D       *          t       /+                     +    ,      (       ,    T      p       ,    Ļ             ,-                     -                 >.                     .                 */                     i/                     /                     /          (      R0                 0                     1    0      @       1    p      t       W2          t       2    X             3                     `3                     3                     3                     4                 m4    4            4    8            F5    <             5          |       6          |       |6                 6                     7                 7                 7                     J8    t             8          `       9          $       S9                     9           d       !:          (       :          $       :                     >;          `       ;    0      $        <    T      (       <    |      `       <          $       q=           $       =    $      d       P>           d       >    $      d       .?          `       ?    |      `       
@    T      p       @    <             A          t       {A          t       A           $       QB    ,      (       B    Ļ             bC                 C          `       HD    X             D          (       E    T      (       E                 E    $             %F    4             wF                 F    $             G    4             sG                 G    $             H    4             rH                 H          t       I    D             I                 4J                 J                 J            `d     0K                     wK                     K                      .note.android.ident .note.gnu.build-id .dynsym .gnu.version .gnu.version_r .gnu.hash .hash .dynstr .rela.dyn .relr.dyn .rela.plt .rodata .eh_frame_hdr .eh_frame .text .plt .data.rel.ro .fini_array .dynamic .got .got.plt .relro_padding .debug_loc .debug_abbrev .debug_info .debug_aranges .debug_ranges .debug_str .comment .debug_line .rustc .debug_loclists .debug_rnglists .debug_str_offsets .debug_addr .debug_line_str .symtab .shstrtab .strtab  regex.82ceb078db1ba294-cgu.0 $d _RINvMs_NtCsbehE3SSdn10_5regex8buildersNtB5_7Builder3newARej1_BS_EB7_ $x _RINvNvMs2_NtCsb7Rppvwwyke_5alloc7raw_vecINtB8_11RawVecInnerpE7reserve21do_reserve_and_handleNtNtBa_5alloc6GlobalECsbehE3SSdn10_5regex _RINvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB6_7Builder10build_manyNtNtCsb7Rppvwwyke_5alloc6string6StringECsbehE3SSdn10_5regex $x _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtNtCs9ERskLE0nwh_12regex_syntax3ast5parse6ParserECsbehE3SSdn10_5regex _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtNtCs9ERskLE0nwh_12regex_syntax3hir9translate10TranslatorECsbehE3SSdn10_5regex _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtCs9ERskLE0nwh_12regex_syntax3hir3HirECsbehE3SSdn10_5regex _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtCs9ERskLE0nwh_12regex_syntax3ast3AstECsbehE3SSdn10_5regex _RINvMsq_NtCsb7Rppvwwyke_5alloc4syncINtB6_3ArcSNtNtB8_6string6StringE15from_iter_exactINtNtNtNtCskpDkvhUlXjy_4core4iter8adapters6cloned6ClonedINtNtNtB1u_5slice4iter4IterBI_EEECsbehE3SSdn10_5regex $x _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeINtNtCsb7Rppvwwyke_5alloc5boxed3BoxNtNtCs9ERskLE0nwh_12regex_syntax3ast14ClassBracketedEECsbehE3SSdn10_5regex $x _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeINtNtCsb7Rppvwwyke_5alloc5boxed3BoxNtNtCs9ERskLE0nwh_12regex_syntax3ast8ClassSetEECsbehE3SSdn10_5regex _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtCs9ERskLE0nwh_12regex_syntax3ast12ClassSetItemECsbehE3SSdn10_5regex $x _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNCINvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtBP_7Builder19build_many_from_hirNtNtCs9ERskLE0nwh_12regex_syntax3hir3HirEs_0ECsbehE3SSdn10_5regex $x $x _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtCs9ERskLE0nwh_12regex_syntax3ast8ClassSetECsbehE3SSdn10_5regex $x $d $x $x _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtCsb7Rppvwwyke_5alloc6string6StringECsbehE3SSdn10_5regex $x _RINvNtCskpDkvhUlXjy_4core3ptr13drop_in_placeNtNtCsbehE3SSdn10_5regex5error5ErrorEBK_ $x $x $x $x _RNvMs2_NtCsb7Rppvwwyke_5alloc7raw_vecNtB5_11RawVecInner11finish_growCsbehE3SSdn10_5regex _RNCINvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB8_7Builder19build_many_from_hirNtNtCs9ERskLE0nwh_12regex_syntax3hir3HirEs_0CsbehE3SSdn10_5regex $x _RNSNvYNCINvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtBd_7Builder19build_many_from_hirNtNtCs9ERskLE0nwh_12regex_syntax3hir3HirEs_0INtNtNtCskpDkvhUlXjy_4core3ops8function6FnOnceuE9call_once6vtableCsbehE3SSdn10_5regex $x $x _RNvMNtCsbehE3SSdn10_5regex5errorNtB2_5Error21from_meta_build_error $x $x _RNvMs_NtCsbehE3SSdn10_5regex8buildersNtB4_7Builder10size_limit $x _RNvMs_NtCsbehE3SSdn10_5regex8buildersNtB4_7Builder14dfa_size_limit $x _RNvMs_NtCsbehE3SSdn10_5regex8buildersNtB4_7Builder15line_terminator $x $x $x $x $x _RNvMNtNtCshHduDTGquA3_14regex_automata4util8capturesNtB2_8Captures9get_group $x $x $x $x $x $x $x $x $x $x $x $x _RNvXs1i_NtCskpDkvhUlXjy_4core3fmtReNtB6_7Display3fmtCsbehE3SSdn10_5regex $x $x $x $x $x $x $x _RNvXs1g_NtCskpDkvhUlXjy_4core3fmtReNtB6_5Debug3fmtCsbehE3SSdn10_5regex $x _RNvXsn_NtCsb7Rppvwwyke_5alloc6stringNtB5_6StringNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvXs1i_NtCskpDkvhUlXjy_4core3fmtRNtNtCsb7Rppvwwyke_5alloc6string6StringNtB6_7Display3fmtCsbehE3SSdn10_5regex _RNvXs1g_NtCskpDkvhUlXjy_4core3fmtRNtNtCsb7Rppvwwyke_5alloc6string6StringNtB6_5Debug3fmtCsbehE3SSdn10_5regex $x _RNvXs1g_NtCskpDkvhUlXjy_4core3fmtRSNtNtCsb7Rppvwwyke_5alloc6string6StringNtB6_5Debug3fmtCsbehE3SSdn10_5regex $x $x _RNvXs1g_NtCskpDkvhUlXjy_4core3fmtRuNtB6_5Debug3fmtCsbehE3SSdn10_5regex $x $x $x $x $x $x $x $x $x $x $x $x $x $x $x $x $x _RNvXsJ_NtCskpDkvhUlXjy_4core6optionINtB5_6OptionuENtNtB7_3fmt5Debug3fmtCsbehE3SSdn10_5regex $x _RNvXsK_NtCskpDkvhUlXjy_4core3fmtNtB5_5ErrorNtB5_5Debug3fmt $x _RNvXsW_NtCsb7Rppvwwyke_5alloc6stringNtB5_6StringNtNtCskpDkvhUlXjy_4core3fmt5Write10write_char $x _RNvXsW_NtCsb7Rppvwwyke_5alloc6stringNtB5_6StringNtNtCskpDkvhUlXjy_4core3fmt5Write9write_str $x _RNvXsZ_NtNtCskpDkvhUlXjy_4core3fmt3numjNtB7_5Debug3fmt $x $x $x $x $x $x $x $x $x $x $x _RNvXsd_NtNtCskpDkvhUlXjy_4core5alloc6layoutNtB5_11LayoutErrorNtNtB9_3fmt5Debug3fmt $x $x $x $x $x $x $x $x $x $x $x $x $x $x _RNvYNtNtCsb7Rppvwwyke_5alloc6string6StringNtNtCskpDkvhUlXjy_4core3fmt5Write9write_fmtCsbehE3SSdn10_5regex $x $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d $d crtbegin_so.c __on_dlclose $x $x __on_dlclose_late $x $x $x $x $d $d $d $d $d $d $d $d $d $d $d $d $d $d abitag $d $d __FRAME_END__ $d $d _RNvCs1MC5dvy6A6L_7___rustc35___rust_no_alloc_shim_is_unstable_v2 _RNvCs1MC5dvy6A6L_7___rustc12___rust_alloc memcpy _RNvNtNtCskpDkvhUlXjy_4core9panicking11panic_const24panic_const_add_overflow __stack_chk_fail _RNvNtCsb7Rppvwwyke_5alloc7raw_vec12handle_error _RNvMs10_NtNtCshHduDTGquA3_14regex_automata4util10primitivesNtB6_9PatternID4iter _RNvMs0_NtCsb7Rppvwwyke_5alloc7raw_vecINtB5_6RawVecNtNtCs9ERskLE0nwh_12regex_syntax3ast3AstE8grow_oneBQ_ _RNvXs1f_NtNtCshHduDTGquA3_14regex_automata4util10primitivesNtB6_13PatternIDIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvMs1_NtNtCs9ERskLE0nwh_12regex_syntax3ast5parseNtB5_6Parser5parse _RNvMs0_NtCsb7Rppvwwyke_5alloc7raw_vecINtB5_6RawVecNtNtCs9ERskLE0nwh_12regex_syntax3hir3HirE8grow_oneBQ_ _RNvMs0_NtNtCs9ERskLE0nwh_12regex_syntax3hir9translateNtB5_10Translator9translate _RNvCs1MC5dvy6A6L_7___rustc14___rust_dealloc _RNvMs4_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_9RegexInfo3new _RNvNtNtCshHduDTGquA3_14regex_automata4meta8strategy3new _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcNtNtNtCshHduDTGquA3_14regex_automata4meta5regex10RegexInfoIE9drop_slowBM_ _RNvNtCskpDkvhUlXjy_4core6option13unwrap_failed _RNvNtCsb7Rppvwwyke_5alloc5alloc18handle_alloc_error _RNvNtCsb7Rppvwwyke_5alloc4sync32arcinner_layout_for_value_layout _RNvXs4_NtCsb7Rppvwwyke_5alloc6stringNtB5_6StringNtNtCskpDkvhUlXjy_4core5clone5Clone5clone _RNvNtCskpDkvhUlXjy_4core6result13unwrap_failed _RNvXss_NtCs9ERskLE0nwh_12regex_syntax3astNtB5_8ClassSetNtNtNtCskpDkvhUlXjy_4core3ops4drop4Drop4drop _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcDNtNtNtCshHduDTGquA3_14regex_automata4meta8strategy8StrategyEL_E9drop_slowBN_ _RNvXsr_NtCs9ERskLE0nwh_12regex_syntax3astNtB5_3AstNtNtNtCskpDkvhUlXjy_4core3ops4drop4Drop4drop _RNvXsm_NtCs9ERskLE0nwh_12regex_syntax3hirNtB5_3HirNtNtNtCskpDkvhUlXjy_4core3ops4drop4Drop4drop _RNvCsbehE3SSdn10_5regex6escape _RNvCs9ERskLE0nwh_12regex_syntax6escape _RNvXs1_NtCs9ERskLE0nwh_12regex_syntax5errorNtB5_5ErrorNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvXs0_NtNtCshHduDTGquA3_14regex_automata4meta5errorNtB5_10BuildErrorNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder10size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder14dfa_size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder15line_terminator _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder3new _RNvMNtNtCsbehE3SSdn10_5regex8builders5bytesNtB2_12RegexBuilder5build _RNvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_7Builder9configure _RNvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_7Builder6syntax _RNvMsj_NtNtCshHduDTGquA3_14regex_automata4meta5regexNtB5_7Builder5build _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArceE9drop_slowCshHduDTGquA3_14regex_automata _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcDNtNtNtCshHduDTGquA3_14regex_automata4util9prefilter10PrefilterIEL_E9drop_slowBN_ _RINvNtCskpDkvhUlXjy_4core9panicking13assert_failedjjEB4_ _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder5build _RNvMNtNtCsbehE3SSdn10_5regex8regexset5bytesNtB2_8RegexSet5empty _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder5build _RNvMNtNtCsbehE3SSdn10_5regex8regexset6stringNtB2_8RegexSet5empty _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder5build _RNvMs6_NtNtCshHduDTGquA3_14regex_automata4util8capturesNtB5_14GroupInfoInner9group_len _RNvNtCskpDkvhUlXjy_4core9panicking18panic_bounds_check _RNvNtNtCskpDkvhUlXjy_4core9panicking11panic_const24panic_const_mul_overflow _RNvCs1MC5dvy6A6L_7___rustc14___rust_realloc _RNvMs3_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5Regex3new _RNvMs3_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5Regex3new _RNvMsn_NtCsb7Rppvwwyke_5alloc4syncINtB5_3ArcSNtNtB7_6string6StringE9drop_slowCsbehE3SSdn10_5regex _RNvNtCsbehE3SSdn10_5regex9find_byte9find_byte _RNvNtNtCskpDkvhUlXjy_4core9panicking11panic_const24panic_const_sub_overflow _RNvXNtNtCsbehE3SSdn10_5regex5regex5bytesNtB2_5RegexNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvNtCskpDkvhUlXjy_4core3fmt5write _RNvXNvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB8_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB2_16CapturesDebugMapBW_3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter9debug_map _RNvMs6_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_8DebugMap5entry _RNvMs6_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_8DebugMap6finish _RNvXNvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtB8_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB2_16CapturesDebugMapBX_3fmt _RNvXs0_NtCsbehE3SSdn10_5regex5errorNtB5_5ErrorNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvXsi_NtNtNtCskpDkvhUlXjy_4core3fmt3num3impjNtB9_7Display3fmt _RNvXsi_NtCskpDkvhUlXjy_4core3fmteNtB5_7Display3fmt _RNvXs0_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5RegexNtNtNtCskpDkvhUlXjy_4core3str6traits7FromStr8from_str _RNvXs0_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5RegexNtNtNtCskpDkvhUlXjy_4core3str6traits7FromStr8from_str _RNvXs0_NvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtBb_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB5_5ValueBZ_3fmt _RNvXs_NtNtCshHduDTGquA3_14regex_automata4util6escapeNtB4_13DebugHaystackNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvNtNtCskpDkvhUlXjy_4core5slice5index16slice_index_fail _RNvXs0_NvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtBb_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB5_5ValueB10_3fmt _RNvNtCskpDkvhUlXjy_4core3str16slice_error_fail _RNvXs1_NtCsbehE3SSdn10_5regex5errorNtB5_5ErrorNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter11debug_tuple _RNvMs2_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_10DebugTuple5field _RNvMs2_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_10DebugTuple6finish _RNvXsh_NtCskpDkvhUlXjy_4core3fmteNtB5_5Debug3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter10debug_list _RNvMs5_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_9DebugList5entry _RNvMs5_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_9DebugList6finish _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter3pad _RNvXs2_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromNtNtCsb7Rppvwwyke_5alloc6string6StringE8try_from _RNvXs2_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromNtNtCsb7Rppvwwyke_5alloc6string6StringE8try_from _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvMsc_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_10PatternSet8contains _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs4_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvXsf_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_14PatternSetIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXsf_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_14PatternSetIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs7_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5MatchNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter12debug_struct _RNvMs1_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_11DebugStruct5field _RNvMs1_NtNtCskpDkvhUlXjy_4core3fmt8buildersNtB5_11DebugStruct6finish _RNvXs7_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5MatchNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXs7_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXsg_NtNtCshHduDTGquA3_14regex_automata4util6searchNtB5_14PatternSetIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXs8_NtNtCsbehE3SSdn10_5regex5regex5bytesRShINtNtCskpDkvhUlXjy_4core7convert4FromNtB5_5MatchE4from _RNvXs8_NtNtCsbehE3SSdn10_5regex5regex6stringReINtNtCskpDkvhUlXjy_4core7convert4FromNtB5_5MatchE4from _RNvXs9_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB5_8RegexSetNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsA_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8NoExpandNtB5_8Replacer14replace_append _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter25debug_tuple_field1_finish _RNvMsa_NtCskpDkvhUlXjy_4core3fmtNtB5_9Formatter9write_str _RNvXs6_NtNtCskpDkvhUlXjy_4core3fmt3numjNtB7_8LowerHex3fmt _RNvXs8_NtNtCskpDkvhUlXjy_4core3fmt3numjNtB7_8UpperHex3fmt _RNvXs_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB4_5RegexNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXs_NtNtCsbehE3SSdn10_5regex8regexset5bytesNtB4_8RegexSetNtNtCskpDkvhUlXjy_4core7default7Default7default _RNvXs_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB4_8RegexSetNtNtCskpDkvhUlXjy_4core7default7Default7default _RNvXs_NvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtBa_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB4_3KeyBY_3fmt _RNvXsb_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsc_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexjE5index _RNvNtCskpDkvhUlXjy_4core9panicking9panic_fmt _RNvXsc_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexjE5index _RNvXsd_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexReE5index _RNvMNtNtCshHduDTGquA3_14regex_automata4util8capturesNtB2_8Captures17get_group_by_name _RNvXsd_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_8CapturesINtNtNtCskpDkvhUlXjy_4core3ops5index5IndexReE5index _RNvXst_NtNtCsbehE3SSdn10_5regex5regex6stringReNtB5_8Replacer12no_expansion _RNvXst_NtNtCsbehE3SSdn10_5regex5regex6stringReNtB5_8Replacer14replace_append _RNvMNtNtCshHduDTGquA3_14regex_automata4util8capturesNtB2_8Captures23interpolate_string_into _RNvXsu_NtNtCsbehE3SSdn10_5regex5regex6stringRNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer12no_expansion _RNvXsu_NtNtCsbehE3SSdn10_5regex5regex6stringRNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer14replace_append _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex5bytesRShNtB5_8Replacer14replace_append _RNvMNtNtCshHduDTGquA3_14regex_automata4util8capturesNtB2_8Captures22interpolate_bytes_into _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex6stringNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer12no_expansion _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex6stringNtNtCsb7Rppvwwyke_5alloc6string6StringNtB5_8Replacer14replace_append _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer14replace_append _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex6stringINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer12no_expansion _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex6stringINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer14replace_append _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer14replace_append _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex6stringRINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer12no_expansion _RNvXsw_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer12no_expansion _RNvXsz_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer12no_expansion _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc3vec3VechENtB5_8Replacer12no_expansion _RNvXsy_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer12no_expansion _RNvXs4_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXs_NvXsb_NtNtCsbehE3SSdn10_5regex5regex6stringNtBa_8CapturesNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmtNtB4_3KeyBZ_3fmt _RNvXNtNtCsbehE3SSdn10_5regex5regex6stringNtB2_5RegexNtNtCskpDkvhUlXjy_4core3fmt7Display3fmt _RNvXs9_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_8RegexSetNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt _RNvXsy_NtNtCsbehE3SSdn10_5regex5regex5bytesINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer14replace_append _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvXs7_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits12double_ended19DoubleEndedIterator9next_back _RNvXsv_NtNtCsbehE3SSdn10_5regex5regex5bytesRShNtB5_8Replacer12no_expansion _RNvXsC_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_8NoExpandNtB5_8Replacer14replace_append _RNvXsx_NtNtCsbehE3SSdn10_5regex5regex6stringRINtNtCsb7Rppvwwyke_5alloc6borrow3CoweENtB5_8Replacer14replace_append _RNvXsz_NtNtCsbehE3SSdn10_5regex5regex5bytesRINtNtCsb7Rppvwwyke_5alloc6borrow3CowShENtB5_8Replacer14replace_append _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder10size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder14dfa_size_limit _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder15line_terminator _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder10size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder14dfa_size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders5bytesNtB4_15RegexSetBuilder15line_terminator _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder10size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder14dfa_size_limit _RNvMs_NtNtCsbehE3SSdn10_5regex8builders6stringNtB4_15RegexSetBuilder15line_terminator _RNvXs6_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_14SetMatchesIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator9size_hint _RNvXs3_NtNtCsbehE3SSdn10_5regex8regexset6stringNtB5_18SetMatchesIntoIterNtNtNtNtCskpDkvhUlXjy_4core4iter6traits8iterator8Iterator4next _RNvMNtNtCsbehE3SSdn10_5regex8builders6stringNtB2_12RegexBuilder3new _RNvXs1_NtNtCsbehE3SSdn10_5regex5regex5bytesNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromReE8try_from _RNvXs1_NtNtCsbehE3SSdn10_5regex5regex6stringNtB5_5RegexINtNtCskpDkvhUlXjy_4core7convert7TryFromReE8try_from _RNvXs_NtNtCsbehE3SSdn10_5regex5regex6stringNtB4_5RegexNtNtCskpDkvhUlXjy_4core3fmt5Debug3fmt rust_metadata_regex_82ceb078db1ba294 __dso_handle __cxa_finalize __emutls_unregister_key __atexit_handler_wrapper atexit __cxa_atexit pthread_atfork __register_atfork _DYNAMIC                                                                                                                                                                                      (             8      8                                0   o                   N                           =   o       0      0                                   L   o       P      P                                  V             ,      ,      @                           \             l      l      9                             d     `       U      U      _                            n    o       xU      xU                                    x      B       U      U                                      2       0]      0]                                                b      b      D                                           f       f                                                 |       |      tR                                                      0                                                        X                                          X      X                                                 h      h                                              8      8                                                 H      H                                                                                                                    &                                                  p                                                      Z     F                                                                                                        |     r                             .     0                   ́                            9     0                                                B                    m                                   N                          `d                            U                     n                                   e                          #                              u                          P                                                       U                                   0              S     p                                                       %      '                                         >                                                       N@     K                             