Files
boc/aamos-ledger-rust/target/debug/deps/libcompact_str-c5a6f121ec2d3c9f.rlib
T

7169 lines
1015 KiB
Plaintext
Raw Normal View History

!<arch>
/ 0 0 0 0 9260 `
h 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5_ZN102_$LT$compact_str..CompactString$u20$as$u20$core..convert..From$LT$alloc..boxed..Box$LT$str$GT$$GT$$GT$4from17h5de4a4635452cc97E_ZN103_$LT$compact_str..CompactString$u20$as$u20$core..convert..From$LT$alloc..borrow..Cow$LT$str$GT$$GT$$GT$4from17h082beb3a2cf8924bE_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h9aa1f591ec135b91E_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h0f637a08f533c9abE_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$9index_mut17h245ba42617b883efE_ZN11compact_str106_$LT$impl$u20$core..cmp..PartialEq$LT$compact_str..CompactString$GT$$u20$for$u20$alloc..string..String$GT$2eq17h7b4b1b1bc85ebe8eE_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h90583526fa60ec2aE_ZN11compact_str114_$LT$impl$u20$core..cmp..PartialEq$LT$compact_str..CompactString$GT$$u20$for$u20$alloc..borrow..Cow$LT$str$GT$$GT$2eq17h20e4312604b8264cE_ZN11compact_str4repr4Repr10as_mut_buf17h1578fedfa4770eb1E_ZN11compact_str13CompactString10insert_str17hbb007702cde267c5E_ZN11compact_str13CompactString11into_string17hbc5e2736bbfbb842E_ZN11compact_str13CompactString12ensure_range13illegal_range17ha8da2e1e797f1e01E_ZN11compact_str13CompactString15from_utf8_lossy17hd660153672e28fbeE_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h88daed066c2d87abE_ZN4core3ptr47drop_in_place$LT$compact_str..CompactString$GT$17h69ad19b637eb5d5cE_ZN91_$LT$core..slice..iter..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h36515402a413f310E_ZN75_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h0bf5d902431ce84fE_ZN145_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..ops..try_trait..FromResidual$LT$core..option..Option$LT$core..convert..Infallible$GT$$GT$$GT$13from_residual17h9e4f91def4589699E_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17hde736a791e460cb9E_ZN71_$LT$core..slice..iter..Iter$LT$T$GT$$u20$as$u20$core..clone..Clone$GT$5clone17h934b2d1bcf4ad185E_ZN11compact_str13CompactString18replace_range_grow17h4572ca2e231ff0eaE_ZN11compact_str13CompactString20replace_range_shrink17h9c25575110eacb36E_ZN11compact_str13CompactString23replace_range_same_size17hd01b9a86dc1ed1aeE_ZN11compact_str13CompactString3new17h42cad1dcfe72e3efE_ZN55_$LT$$RF$T$u20$as$u20$core..convert..AsRef$LT$U$GT$$GT$6as_ref17h5113da62b65eb078E_ZN11compact_str13CompactString4push17hc72ec724b5a64cafE_ZN11compact_str13CompactString5clear17hc33f3752b7b665f1E_ZN11compact_str13CompactString6insert17h0676458783062f41E_ZN11compact_str4repr4Repr7set_len17h49b7a66abcc278aaE_ZN11compact_str13CompactString8truncate17hd771a8b71776cb3cE_ZN11compact_str13CompactString9split_off17h1a08fbd54da7b8e4E_ZN4core3str6traits66_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$str$GT$5index17hbcc9a60f7269aeefE_ZN4core5slice3raw18from_raw_parts_mut17h05da4b03e707e6f9E_ZN11compact_str4repr4Repr11from_string16capacity_on_heap17hee53e7207277ad14E_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h127a23da4eb2a805E_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17hb9b225d093dce169E_ZN11compact_str4repr4Repr11from_string5empty17h647e30f9261c33edE_ZN5alloc3vec16Vec$LT$T$C$A$GT$3len17he7f4ae6bddf0e8b3E_ZN5alloc3vec16Vec$LT$T$C$A$GT$10as_mut_ptr17hf37f3d5728a6a7b5E_ZN4core3ptr8non_null16NonNull$LT$T$GT$3new17h445d30acd67b5316E_ZN4core6option15Option$LT$T$GT$6expect17hade4fd632e9dc3bcE_ZN4core3ptr56drop_in_place$LT$co
compact_str-c5a6f121ec2d3c9f.compact_str.ef1a6e0afedb5dd5-cgu.0.rcgu.o/
lib.rmeta/ 0 0 0 644 593872 `
ELF·P @@GNUÀrust
#rustc 1.96.0 (ac68faa20 2026-05-25)ÁÀ뉊]!ÜÛê(¹Þ—šên-5be7b69c3ff7b5b8ÁíàÄTËŸ ÜJîÄ)'ß\¥!-3d1337db07d0b3aeÁ¤²XctÔ'ÐÓ©z¨ɽÓ-a4945860e1c53b00Á¤°ð ¾ä-±($²ï=©Ã-7e98a21bfd32b0edÁòÖÀH•‘PIÓHã#£-055f30b747f859b6Árustc_std_workspace_coreÁ­Cçß^ò½èÝ$­Çÿ+Cé-c4878ee60b2242c9ÁŸÃï+Ñ]ŠqB<ÏïW#-8dd1dd90e70d0b6aÁ miniz_oxideÁ€š»J(P>àö÷g\K-1eb618da2918ab7fÁadler2ÁÆ;+Þ®5¥Ìýݰ¦ÛLˆ-f7919172d268e069Á hashbrownÁPäV9ÒÆèÜ"ÊÖVŽ\-0fc2184a5da6723aÁrustc_std_workspace_allocÁs&ØòØy¯s•bæ!‰ýŠ-97e4bf30be240674Á
std_detectÁhŠBîÙºÌI®ËÅš-9dbbf8346ba7ac8bÁrustc_demangleÁûë9´Ç×@Œ’ùXFº-f33013f239bf9f14Ácfg_ifÁÜLhž§Œaã¯>­-0a71c8f33a838301Á addr2lineÁ׎Þ!]8V$É@@-e618e6be60e87ba2ÁgimliÁ¸
°µ~Î1‹Ñt ðÁ€w-1f7768a68858f670ÁobjectÁ
áPÃ?­À¶¼QHJ¥-914cd6a4dbe590d1ÁmemchrÁ›º«8Ór­2Ù $¨ûib-cf21ca6f2bb15dcdÁë
‹ás«LÖ€îâƒ×ɯŒ-ee6f3747e38367f0ÁcastawayÁ…Ó%Á¸àrß©ENç)qìý-9177659aa712668eÁ rustversionÁTgÌüÁé¨Cå@Ö'G-f0da710c68354185Ástatic_assertionsÁ|÷—Qõh× @~¦M-8079cf0525352562Á®«ýºõó¿àlé ,Z¶÷k/-c82bfbac630248a2ÁitoaÁ®æ
9H}>xû, @º‡I-c4c95ef3ef39a8c3ÁryuÁ[9bÆÅÁü̸…z~¹e-1544af16adcd2e0eÁ arbitraryÁL…»æ ¬ibytesÁ,®»
Œ–markupÁ4Ô»Ÿ
”»proptestÁDý»»
¤â
quickcheckÁTª»Ù
´rkyvÁ$Ó»ù
„¼serdeÁ,÷» ŒßsmallvecÁDŸ»® ¤„testsÁ,ü 
,p»
ŒX® »® ¤}%Ì , &$•&4$…~$ú}lÌ ~Ì ,¼&$±&¢Ì ,Üd$ÑdÆÌ Ì ,«Ï$ Ï«Ì ,Ö0 $Ë0 Ì ,
$‡
À 
  
featuresÁmacrosÁformat_compactÁ capacityÁ%%
USIZE_SIZEÁ%CAP_ON_HEAP_FLAGÁ( ( %CAPACITY_IS_ON_THE_HEAPÁ+ %SPACE_FOR_CAPACITYÁ% MAX_VALUEÁ%/æ /as_usizeÁ1 /is_heapÁheapÁ444444444
MIN_HEAP_SIZEÁ4UNKNOWNÁ4 StrBufferÁ? 4amortized_growthÁ4
HeapBufferÁBµ BBcapÁ4Fæ F
with_capacityÁFwith_additionalÁFýJread_capacity_from_heapÁK Fã Fset_lenÁF˜4Pƒ4Rã4 allocate_ptrÁTallocate_with_capacity_on_heapÁ4deallocate_ptrÁV deallocate_with_capacity_on_heapÁW 4
heap_capacityÁYYYY¤Y˜YHeapBufferInnerHeapCapacityÁ_ý_bufferÁYlayoutÁ4inline_capacityÁcccc¤c˜cHeapBufferInnerInlineCapacityÁi·cÄÝllllll InlineBufferÁr
rˆt lvæ w v new_constÁy vemptyÁv½væù~~~~~~~~ù¥~'aÁù¥~from_as_ref_str_iteratorÁ¤š~éù¥~ù¥~ù˜¥~šù¥~éùŸ¥nonmaxÁnumÁ¢¢¢¢¢¢¢DEC_DIGITS_LUTÁ¢
impl_IntoReprÁ¢« into_reprÁ¢­¢impl_NonZero_IntoReprÁ¢NumCharsÁ° num_charsÁ¢²Ö¢´Ö¢Ö¢¸Ö¢ºÖ¢¼Ö¢¾Ö¢ ÀÖ¢
ÂÖ¢ ÄÖtraitsÁÆÆFALSEÁÆTRUEÁÆIntoReprÁÊÆÌÆÎÆÐÆÒÓ  MAX_SIZEÁ HEAP_MASKÁ LENGTH_MASKÁEMPTYÁReprÁÞ
ÞˆÞÞŠÞÞŒÞèæ è
new_inlineÁèãè from_utf8Áìèfrom_utf8_uncheckedÁîè from_stringÁðcapacity_on_heapÁðè into_stringÁóinto_string_heapÁèreserveÁè shrink_toÁèpush_strÁèpopÁèas_sliceÁèas_strÁèèýüàèis_heap_allocatedÁè
as_mut_bufÁè½è last_byteÁè from_inlineÁè from_heapÁè into_heapÁè as_mut_heapÁèas_heapÁè
as_mut_inlineÁè as_inlineÁƒŠ
clone_heapÁŒã
outlined_dropÁextendÁ¥  é³!¥˜é˜³!š¥š ³!ž¥ž  ¡é¡³!£¥£ 
¦³!§¥§ è«««««««««« «
«ToCompactStringÁ·to_compact_stringÁ«««»¥»¼#«CompactStringExtÁ¾concat_compactÁ¾ join_compactÁÀ¤«ÂšÂÂéÂŒ$Æ Â¢$È¤Íæ Υ͊ÍãͤÒͽÔÍ
from_utf16ÁÖÍfrom_utf16_lossyÁØÍÍis_emptyÁÍý;ÍÍ
as_mut_strÁÍas_bytesÁÍ as_mut_bytesÁÍpushÁâ ÍîÍÞÍremoveÁÍ½Í¯Í ensure_rangeÁéimpl RangeBounds<usize>Áé
illegal_rangeÁÍ
replace_rangeÁì»'Íreplace_range_same_sizeÁÍreplace_range_shrinkÁÍreplace_range_growÁÍtruncateÁÍas_ptrÁÍ
as_mut_ptrÁÍ
insert_strÁÍinsertÁõ ÍclearÁÍ split_offÁÍdrainÁù»'ÍÍÍ
shrink_to_fitÁÍretainÁýimpl FnMut(char) -> boolÁÍfrom_utf8_lossyÁÿ next_charÁé  REPLACEMENTÁ§' ensure_contÁÿ Í from_utf16xÁimpl Fn(u16) -> u16Áimpl Fn([u8; 2]) -> u16Á   Ífrom_utf16x_lossyÁ¯+Ê+ Í from_utf16leÁimpl AsRef<[u8]>ÁÍ from_utf16beÁº,Ífrom_utf16le_lossyÁº,Ífrom_utf16be_lossyÁº,ÍÍfrom_string_bufferÁ>å´ ¢É¤É¦É¨borrowÁª
borrow_mutÁ 
­¥­ ° ²
´é´·¹ï
»§¼¾é¾÷Á÷ÃéÃ÷ÆéÆ÷É÷Ë÷Í÷ÏéÏ÷ÒÒþÕ×××ÙùÚ¥ÜéÜùÞ¥àéàùâ¥äùå¥ çéçùé¥!ëùì¥"îùï¥#ñùò¥$ôùõ¥%÷³!ø¥&úéú³!ü¥'þéþ³!¥(³!ƒ¥)é³!¥ *г!¥+³!Ž¥,³!¥-é³!¥.ñï/š°š01Ÿ×DrainÁ¡é¡compact_stringÁ¡¹¡þ¡charsÁ234©×5«×6­ã7¯8±å±´9´´ó ´ü´ size_hintÁ´:º next_backÁ;%CapacityÁ½
½ˆ¿ %%%ÃƒÄ %Æ×%%É%ËÖÌ %Î %Ð ÑÑ Ñ 4Õ l× ¡NonMaxU8ÁÙV0ÁÚ
Ú ÙV1ÁÝ
Ý ÙV2Áà
à ÙV3Áã
ã ÙV4Áæ
æ ÙV5Áé
é ÙV6Áì
ì ÙV7Áï
ï ÙV8Áò
ò ÙV9Áõ
õ ÙV10Áø
ø ÙV11Áû
û ÙV12Áþ
þ ÙV13Á
 ÙV14Á
 ÙV15Á
 ÙV16ÁŠ
Š ÙV17Á
 ÙV18Á
 ÙV19Á
 ÙV20Á
 ÙV21Á
 ÙV22Áœ
œ ÙV23ÁŸ
Ÿ ÙV24Á¢
¢ ÙV25Á¥
¥ ÙV26Á¨
¨ ÙV27Á«
« ÙV28Á®
® ÙV29Á±
± ÙV30Á´
´ ÙV31Á·
· ÙV32Áº
º ÙV33Á½
½ ÙV34ÁÀ
À ÙV35ÁÃ
à ÙV36ÁÆ
Æ ÙV37ÁÉ
É ÙV38ÁÌ
Ì ÙV39ÁÏ
Ï ÙV40ÁÒ
Ò ÙV41ÁÕ
Õ ÙV42ÁØ
Ø ÙV43ÁÛ
Û ÙV44ÁÞ
Þ ÙV45Áá
á ÙV46Áä
ä ÙV47Áç
ç ÙV48Áê
ê ÙV49Áí
í ÙV50Áð
ð ÙV51Áó
ó ÙV52Áö
ö ÙV53Áù
ù ÙV54Áü
ü ÙV55Áÿ
ÿ ÙV56Á
 ÙV57Á
 ÙV58Áˆ
ˆ ÙV59Á
 ÙV60ÁŽ
Ž ÙV61Á
 ÙV62Á
 ÙV63Á
 ÙV64Áš
š ÙV65Á
 ÙV66Á 
  ÙV67Á£
£ ÙV68Á¦
¦ ÙV69Á©
© ÙV70Á¬
¬ ÙV71Á¯
¯ ÙV72Á²
² ÙV73Áµ
µ ÙV74Á¸
¸ ÙV75Á»
» ÙV76Á¾
¾ ÙV77ÁÁ
Á ÙV78ÁÄ
Ä ÙV79ÁÇ
Ç ÙV80ÁÊ
Ê ÙV81ÁÍ
Í ÙV82ÁÐ
Ð ÙV83ÁÓ
Ó ÙV84ÁÖ
Ö ÙV85ÁÙ
Ù ÙV86ÁÜ
Ü ÙV87Áß
ß ÙV88Áâ
â ÙV89Áå
å ÙV90Áè
è ÙV91Áë
ë ÙV92Áî
î ÙV93Áñ
ñ ÙV94Áô
ô ÙV95Á÷
÷ ÙV96Áú
ú ÙV97Áý
ý ÙV98Á
 ÙV99Áƒ
ƒ ÙV100Á
 ÙV101Á
 ÙV102ÁŒ
Œ ÙV103Á
 ÙV104Á
 ÙV105Á
 ÙV106Á˜
˜ ÙV107Á
 ÙV108Áž
ž ÙV109Á¡
¡ ÙV110Á¤
¤ ÙV111Á§
§ ÙV112Áª
ª ÙV113Á­
­ ÙV114Á°
° ÙV115Á³
³ ÙV116Á
 ÙV117Á¹
¹ ÙV118Á¼
¼ ÙV119Á¿
¿ ÙV120ÁÂ
 ÙV121ÁÅ
Å ÙV122ÁÈ
È ÙV123ÁË
Ë ÙV124ÁÎ
Î ÙV125ÁÑ
Ñ ÙV126ÁÔ
Ô ÙV127Á×
× ÙV128ÁÚ
Ú ÙV129ÁÝ
Ý ÙV130Áà
à ÙV131Áã
ã ÙV132Áæ
æ ÙV133Áé
é ÙV134Áì
ì ÙV135Áï
ï ÙV136Áò
ò ÙV137Áõ
õ ÙV138Áø
ø ÙV139Áû
û ÙV140Áþ
þ ÙV141Á
 ÙV142Á
 ÙV143Á
 ÙV144ÁŠ
Š ÙV145Á
 ÙV146Á
 ÙV147Á
 ÙV148Á
 ÙV149Á
 ÙV150Áœ
œ ÙV151ÁŸ
Ÿ ÙV152Á¢
¢ ÙV153Á¥
¥ ÙV154Á¨
¨ ÙV155Á«
« ÙV156Á®
® ÙV157Á±
± ÙV158Á´
´ ÙV159Á·
· ÙV160Áº
º ÙV161Á½
½ ÙV162ÁÀ
À ÙV163ÁÃ
à ÙV164ÁÆ
Æ ÙV165ÁÉ
É ÙV166ÁÌ
Ì ÙV167ÁÏ
Ï ÙV168ÁÒ
Ò ÙV169ÁÕ
Õ ÙV170ÁØ
Ø ÙV171ÁÛ
Û ÙV172ÁÞ
Þ ÙV173Áá
á ÙV174Áä
ä ÙV175Áç
ç ÙV176Áê
ê ÙV177Áí
í ÙV178Áð
ð ÙV179Áó
ó ÙV180Áö
ö ÙV181Áù
ù ÙV182Áü
ü ÙV183Áÿ
ÿ ÙV184Á
 ÙV185Á
 ÙV186Áˆ
ˆ ÙV187Á
 ÙV188ÁŽ
Ž ÙV189Á
 ÙV190Á
 ÙV191Á
 ÙV192Áš
š ÙV193Á
 ÙV194Á 
  ÙV195Á£
£ ÙV196Á¦
¦ ÙV197Á©
© ÙV198Á¬
¬ ÙV199Á¯
¯ ÙV200Á²
² ÙV201Áµ
µ ÙV202Á¸
¸ ÙV203Á»
» ÙV204Á¾
¾ ÙV205ÁÁ
Á ÙV206ÁÄ
Ä ÙV207ÁÇ
Ç ÙV208ÁÊ
Ê ÙV209ÁÍ
Í ÙV210ÁÐ
Ð ÙV211ÁÓ
Ó ÙV212ÁÖ
Ö ÙV213ÁÙ
Ù ÙV214ÁÜ
Ü ÙV215Áß
ß ÙV216Áâ
â ÙV217Áå
å ÙV218Áè
è ÙV219Áë
ë ÙV220Áî
î ÙV221Áñ
ñ ÙV222Áô
ô ÙV223Á÷
÷ ÙV224Áú
ú ÙV225Áý
ý ÙV226Á

ÙV227Áƒ
ƒ
ÙV228Á

ÙV229Á

ÙV230ÁŒ
Œ
ÙV231Á

ÙV232Á

ÙV233Á

ÙV234Á˜
˜
ÙV235Á

ÙV236Áž
ž
ÙV237Á¡
¡
ÙV238Á¤
¤
ÙV239Á§
§
ÙV240Áª
ª
ÙV241Á­
­
ÙV242Á°
°
ÙV243Á³
³
ÙV244Á

ÙV245Á¹
¹
ÙV246Á¼
¼
ÙV247Á¿
¿
ÙV248ÁÂ
Â
ÙV249ÁÅ
Å
ÙV250ÁÈ
È
ÙV251ÁË
Ë
ÙV252ÁÎ
Î
ÙV253ÁÑ
Ñ
ÙV254ÁÔ
Ô
¡¡¡Ù
ƒ¡Û
סÝ
¢ ß
¢
á
¢ã
¢å
¢ç
¢é
¢ë
¢í
¢ï
¢ñ
¢ó
¢õ
¢÷
¢ù
¢û
¢ý
¢ÿ
¢ ¢ƒ ¢ ¢  ¢! ½½½½½½½½½½ ½
½ ½ ½
½½½½½½½½½½½½½½½½
CompactStringÁ©
© ˆ<¬ ƒ
Utf16ErrorÁ®
® ˆ=>?³ ƒ@µ ×· 1
3
G
I
J
K
M
N
O
Q
S
w
y
|
}
é
ê
õ
ö
÷
÷
ø
ù
ú
û
ü
ý
þ
ÿ





ˆ
Š


Ž


š
ž
£
§
¸
½
¿
À
Æ
È
Ð
Ú
Û
Ü
Ý
Þ
ß
à
á
â
ä
å
å
æ
ç
è
é
ì
ì
î
î
ï
ï
ð
ð
ñ
ò
ó
ô
ô
õ
÷
ø
ù
û
ü
ý
ÿ




Ÿ
¡
£
¥
§
©
«
¯
¯
±
±
²
³
³


¸
¸
º
º
¼
¼
Í
Ô
Ö
Ö
Ö
Ø
Ø
Ø
ô
ø
ü

ƒ


Ž


˜
˜


š
œ

ž
ž
 
 
 
§
¨
©
ª
ª
ª
«
¬
¬
¬
­
®
¯
°
±
³
´

¸
º
»
¼
Ä
Ç
Ç
Ç
Ê
Ê
Ì
Ú
Ü
Ü
Ü
­
´



°Ê·¾Š ½½¾«6¿ˆ% ÃôÛÀoØÀo¿cÀoÐìÀoµßÀoÀoÀoØBB¯Cµ DEÎ!ò‰ž¥åOÚŒ"ºpÃLÞÞßµàˆáâŠãäŒå pGƨÂ5ÔÊÃLƒq éÃLƒq éÃLƒqžBoxÁ¡ˆˆ¢ˆl }.xÏçEçEèEGlobalÁ ¿±‡§í#ÃLƒqúHúHßûHÁ‘4Ý­f‰úM÷ÃLƒq© © ª ½f« ˆ îÄGÜ(ÃLƒq»¾¿BorrowedÁÀˆÁÂOwnedÁÈ¢ÓÛ?'°UFéŠ ÙÿÚÛÞ7ÜÝÞò7ßàá†8âãäš8åæç®8èéêÂ8ëìíÖ8îïðê8ñòóþ8ôõö’9÷øù¦9úûü»9ýþÿÐ9å9ƒú9ˆ:Ф:ŒŽ¹:Î:ã:ø:˜š;œ¢;žŸ ·;¡¢£Ì;¤¥¦á;§¨©ö;ª«¬‹<­®¯ <°±²µ<³´µÊ<·¸ß<¹º»ô<¼½¾‰=¿ÀÁž=ÂÃij=ÅÆÇÈ=ÈÉÊÝ=ËÌÍò=ÎÏЇ>ÑÒÓœ>ÔÕÖ±>×ØÙÆ>ÚÛÜÛ>ÝÞßð>àáâ…?ãäåš?æçè¯?éêëÄ?ìíîÙ?ïðñî?òóôƒ@õö÷˜@øùú­@ûüýÂ@þÿ×@ƒì@Aˆ–AŠŒ«AŽÀAÕAêA˜ÿAš”Bœž©BŸ ¡¾B¢£¤ÓB¥¦§èB¨©ªýB«¬­’C®¯°§C±²³¼C´µÑC·¸¹æCº»¼ûC½¾¿DÀÁÂ¥DÃÄźDÆÇÈÏDÉÊËäDÌÍÎùDÏÐÑŽEÒÓÔ£EÕÖ׸EØÙÚÍEÛÜÝâEÞßà÷EáâãŒFäåæ¡Fçèé¶FêëìËFíîïàFðñòõFóôõŠGö÷øŸGùúû´GüýþÉGÿÞGƒóGˆHˆŠžHŒ´HŽÊHàHöH˜ŒIšœ¢IžŸ¸I ¡¢ÎI£¤¥äI¦§¨úI©ª«J¬­®¦J¯°±¼J²³´ÒJµ·èJ¸¹ºþJ»¼½”K¾¿ÀªKÁÂÃÀKÄÅÆÖKÇÈÉìKÊËÌ‚LÍÎϘLÐÑÒ®LÓÔÕÄLÖרÚLÙÚÛðLÜÝÞ†MßàáœMâãä²MåæçÈMèéêÞMëìíôMîïðŠNñòó Nôõö¶N÷øùÌNúûüâNýþÿøNŽOƒ¤OˆºOŠÐOŒŽæOüO’P¨P˜š¾PœÔPžŸ êP¡¢£€Q¤¥¦–Q§¨©¬Qª«¬ÂQ­®¯ØQ°±²îQ³´µ„R·¸šR¹º»°R¼½¾ÆR¿ÀÁÜRÂÃÄòRÅÆÇˆSÈÉÊžSËÌÍ´SÎÏÐÊSÑÒÓàSÔÕÖöS×ØÙŒTÚÛÜ¢TÝÞ߸TàáâÎTãäåäTæçèúTéêëUìíî¦Uïðñ¼UòóôÒUõö÷èUøùúþUûüý”VþÿªV ƒ ÀVÖVˆ ìVŠ

Ü]
ƒ

ò]

ˆ^ˆ
Š
ž^
Œ

´^Ž

Ê^

à^

ö^
˜

Œ_š
œ
¢_
ž
Ÿ
¸_ 
¡
¢
Î_£
¤
¥
ä_¦
§
¨
ú_©
ª
«
`¬
­
®
¦`¯
°
±
¼`²
³
´
Ò`µ
·
è`¸
¹
º
þ`»
¼
½
”a¾
¿
À
ªaÁ
Â
Ã
ÀaÄ
Å
Æ
ÖaÇ
È
É
ìaÊ
Ë
Ì
bÍ
Î
Ï
˜bÐ
Ñ
Ò
®bÓ
Ô
Õ
ÄbÖ
öÛW;ù©»ÛítØít¿cítÊÊÊÊÊÊÊÊÊÊÊÊÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoéÊô ô õ ¨÷ ˆÐ  mjçítoé°°°°°°°°°°ÊÊÊÊÌìƒq ƒq؃qŒ"ƒqÐLƒqÐLƒq÷qÐLƒqŠrÐLƒqrÐLƒq‰tÐLƒqsZÎsZƒq·¥¾ØÎs³Îsé!Îsö!ÎsàÎsàÎsˆˆOsStrÁinnerÁë//˜þÑ/üàÎs
 Îs£ÎsÎsµßÎsô¡µß–sÎsµß 8Îsµß‰tÎsºÎsíßÎsÎsšeÎséÎsŠréÎs–séÎs é–séÎs‰téÎsré–sÎs黾¿—sÀˆÁ¸sÈ¢ÓÛ?'°UF8Îsé‰t éÎsïyÎs¿cÎsÄcÎsÃLÎsÃLÎs÷qÃLÎsŠrÃLÎsrÃLÎs‰tÃLÎs–sÃLÎsÎsÃL–sÎsÃLé¤ÎsÐLÎsÐLÎs÷qÐLÎsŠrÐLÎsrÐLÎs‰tÐLÎs–sÐL–sÎsÐLÎsÎsÐL‰tÎsêbÎsÄ ÎsÒ£ÙõÎsÒ£Š ® ® ¯ êf° ˆ †”Lçu>]ÔÛ„¨Ø„¨¿c„¨Äc„¨Ìì¡¡Ê4£ß4¤¹¥þ¦…5<–ݦÑúio8 騿cé¨Äc騌"é¨é!é¨ùM騌Mé¨òPé¨Á½×
Ù± ® ½Ø
Ù² ® ýP
ÙÞ¬ © ³ ® ƽÛ
ÙÕ© µ ® ©¡È½É½­© °úH²
´»Ë½¬© RÞ­¡ÞÞÞÞÞšÞÞÙ© Ü© à© ä© ç© ë© î© ñúHô»ß
á
ã
å
ç
é
ë
í
ï
ñ
«­ó
ô õ
ô ÷
ô ù
ô û
ô ý
ô ÿ
ô ô ƒ ô … ô ‡ ô ‰ ô ÌÎÐÒ²´¸º¼¾ÀÂÄæÞ§¡çÞ¨¡ÞÞ˜ÞÞ¡Þ¦Þ÷© ú© þ© © © Š© úH© »¹© ºÞ»Â© © ±¡ © ¢© ¤© ¦© ¨© ª© ·© ¹© »© ¾© Á© é Æ© É© ËúHͻϻҩ ש Ÿ® «¡© š© © ´¡º¡¼¡Š íÛØ¿c(Ðì#µß!Œ"ÃLÊp°
¢Ìì2 ÐLZi·¾³é!ö!à £ºíßšeéïy8ÄcêbÄ ÙõùMŒMòPì\
Ü\
À"üB8',T"Œ¿Àÿ' è4 1'/b¤Ö$ .üÖ Û ö (üƼü°R„åÛµ^:EÛflagÁaV'a'·Û
')$/6:'
USIZE_SIZEÁ
'*$/6:'
USIZE_SIZEÁ” 
 „ 
( üîE+Ûµ%T
',$/6:'
USIZE_SIZEÁtT' Ž. 1'/\üß1-ƒ¶,'œ'üÏ)ìÚÌÚ”Ú-( öF #hC
Ö
‹Ö°üÖ" ÷üÏ- û% 'KKü²K.VUUhƒ¶ªOc-
'À%07;'
USIZE_SIZEÁ(ÆËÄ"'Ào3 Ào=FP½Å'ÒÅàëòö'
USIZE_SIZEÁ( Í  € êÛµ! ¿cTY
‡djo]| ÒÇÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ŸÈŸÈ ÈErrorÁ O˜éBLÁ¿#  c cˆ¢cµ
 `£cbufÁ `àB¤GS
j×ÀsŠÁe  ÛµtÈÃ}ž±¬·ÆÃŠÁ®¤ÁÌ
êÛµÛµ).
·ßÛµÛµEJR
ÝÊH
Ô
Á¿Á¿ÈÃŽÈÃ6¹
CMÐÄÀ áÌ ßÁ¿%/
'$Í3?GL'
USIZE_SIZEÁùê P  Ï* ë ùÚ aÎÔÇ!ã Ï·Ç>ùÿó  Ñ·Ç$ÔÇ ùïÐÔÇ!øÑ·Çz?Ó

 yÓ

Ê(.Ô<GN{ _ }Áº

 qº

ÊÀo(.Ó<GN{ _ }Á¬ï.ÉÔS  
àW'×À %´¨
œÖìÖÜÖͲüÖ! ö% 'KüÐ(% /üÐ4Û | ½ ð0üŒä
ü˜Ø
ÀoDºÛµ5Yƒ¶FóÛµýK
@.ÓÛ×Ë‚ÌáͲ¾
ù¤ST ñ§S 
U£¢.¾ ƒíS   ìS 
ùÆS2 
ÅJð÷
ÿ×Ëû'×À#øS    ÷S 
¹ ! E
ML‚Ì HG ½ 0
S Z
baͲ xa  _ƒ   «
 ¬ h

uŒ 

i
gÛ 
nut ½ ¤ ïƒ0Ào|{êæKÃ-ÛµûÕùƒ¶æÛµ8ýí
ã&­.xÛ
'2$/6:'
USIZE_SIZEÁ4ä%Ûµ¼î%
3ÈÃüä%!ÐÄA2!&3ü¼%O$Õ%Á¿,Ë%ÈÃÈÃx<+ÛµÐÄ«³+Ûµ¿Í3ŒÈÃçÛµïöú+Ûµ¼ø
¬øͲ%üí"Ú !Ú? ŽüÐ@=¥ƒ¶3ƒÚŽÚUNKNOWNÁü˜"t 
äÕÔ ÌÐ
èÕ çŒØìÐ ì3 C D¼óý
¼DŒAü¿Íü‰ƒüÀL<×D2ûcur_lenÁ<
additionalÁJrequiredÁV amortizedÁa¯’ÜÎÃÜ£äÝ ùê P  Ö·Ç#ÔÇ ë ùÚ aÕÔÇ!ã Ö·Çx>Ç
×|Œç
Tô ÛÀoà§ ïíe¼îËè¿*  
ªó  l™  
â|$™  üó 9Ä€ 
÷pI¨ ü€ ,ä¹  BÛ GüÌü¸£üÖ ºp×À¼ÀoHìá@Àoìá¿  ûtextÁQUΟµ š«Žá ·áé­âzÙâUƒã3´d·áÀoìáÀ ñ
ä® BÐHü¯
¡üç
iüü
Tºp

Ào ìá£äÓý*ë
¨Îêµ ä·á*ØŽáüú!„ú
AT(Ô¶·áªÀo¯ìá­âË Ùâ
üË9ÄØƒã d
BüØ,ä‘ B³Iü²üÉêüçÌü¥Ž ºp×ÀÍÀo+ìá#£ä`Ò·ä(Áä
Îã[ŠÞ`d new_capacityÁrΟµ šäŽá6£è·áï­â®Ù⎃ãn¼º
 ¬ºͲ%L2=D{ _ }Á ÜÓPÜPäÝDÓPlàP= ”ÜP¼þPlþP
0DŒQ dŸR ªR$É ÔS  ×Ës×À~&ýWlýW<X
3&LX&ü•X(ô•X
UD´X!üÜX ´ÜX
gDóX!Y TY  —YTü›Oü üÄPÓüôP£üðW§
£ääÃOD¯ODÈPÀoøPqDìáôWÁ¿4ìá«ýNýRÎTµ G°=äÝ?ôí×Ë¿†ïŒ½ï]äï=¼‰]
 ¬‰]Ͳ%X2=D{ _ }Á
„Ãr4Ãr
kDÊr 4ërlër$òr
È‚(4òrŒër ûr$É(ÔS  ×Ë?#×ÀJ&¤£ud£u
4°u!ÔÄvŒÄv
Ÿ<Öv%) ü¾v   Jü“w!Ì“w
œ4­w
!òvÛìáÅwgüóqÒü¶rü•u°„ív ìá„›rD‡rèØèØ éØ²‚êØŸ²‚ªë¥CHÈ4ºrªØ ¸öô·ä<™uÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙìáLívTýÜÄ£raw_ptrÁµ dDŠóоó£×ËPÄô+ìô ¾õÀüü{$Ôü{
Û‚D—|&„¨|
×Àüü{=4¡|
ò[¸öûØûØüØ LayoutErrorÁ :ð¨?¢©lÄ¡|üÃ|5üÃ|3
Ë‚iij·cYâÌ%× GK üÃ|X4†}
Ø‚rl}¬†}t°}

 ×ÀüÃ||4©}
ò[¸ö×ùi
@´©}üÃ|‹¸öüÃ|§dÜ}
Ö‚1tÜ}ð}kü®{Âüè{ˆ ¸ölÐ{D¼{¸ölì{Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¸ö×ùT×À3÷ëÖû*Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Öû×ùÊ÷,¸ö5×À·ý
buffer_layoutÁHŒùÍùä³ú‹û4ÐûöŸü¯
Úu%07;ÚMAX_SIZEÁù*ê P  Ø·Ç#ÔÇù*Ú a×ÔÇ!*ã Ø·Çx>
ÎŽá´ÉÚÉ-ÔS  ×ËD(×ÀO&úŽá Ú ñ/  2Ú0^ ¤ß
$ 
.üß.
\‚Ü

Ùâ
 

 ‡£œö


…t?

üÎ
AÄÎ

¨ 
J   / ¤š  r´ wü‹©üëÉü‰«rrsÎtˆ 7HMŸ}&a×À$Àí¡ïTTLƒ¶UïÁä·äV«… ¾‡¾‡Îã·}jÚÆÚÒÚ#ÜŽáÓ×ËŽábÙâ:Â…÷í…Ô
Úx%07;ÚMAX_SIZEÁT€  Žá$€ ,… ¬€ D Úù3ž"#ù…ž"#
¶cü« 86×À
4ù2@#á2#
ÜWV#
ˆ
Žá
,ˆ

©




Ú î
/ 
2Ú0^ 
¤Ü
  $  . üÜ
. 
\ÿ
Ü
à| 
ü T  ¦
 ª$
 Ï
 Ó$ ' J   2  Á
 Å$ '
J$ .ܺ
 è$ 
'J
 4‹¤þ r˜yüÈ Ðüù Ÿü—
üãµü‡ä† ×À ¯)äÈäÈ ArgumentsÁæÈtemplateÁ `çÈÀ `üöMõô]Td¹ý ¾‡T›
( ƒ¶)à ‡£,‹*?¢ƒ¶ÃÊšƒ¶Dƒ¶ö¾‡œÎã3Ì·ÍÎ㬠´®
­ÜÚÚ
Ú^ÜŽáE†‹ù½‹ÆŽá¤Ž|üý rP|nu˜
 ŸŽáž ¤£ÚÀ o° ·
¿»†‹²6×À½ å°
¸´½‹ Óqï 
 î w
Ç Î ñ
ùøŽá ÷
ö
Œ
 º  
ó


 û
#*)Ú(V ZÚYˆ+8O Z- 

+Ü 
ŠÒ(/T
\[ŽXW üe
bk \pwvu˜
vв  Úܘ¥·  Ë¡ ¨ §! ¦É ! Í
ñ!ó ¯"¼Ó "Þ±  Ô ÕÆ#Åè #ì#ü¬H óé 
ñ  Ô ø† T% <%B ó ''' & r' '  
GyFC@=:(ä†7×À6q¿ ì ×Àà ü– Yù2Üì# Ø“Ç ×À` ¾‡= <= ƒ¶F à á”×Àr "c ) [ p Ó
4 I ƒ¶E ô
û

Ë
ƒ¶Ç
u
Ħ'
Úâ龇ã Îãz  
·  Îãõ´øø 'ÚL
ÚX
Ú© Ü

Úz%07;ÚMAX_SIZEÁ×À!œ…
 |…
yK%  ž{üÞ@ä†×À×À(|€D‡ÚÉ6ÔS  ×Ë/ !×À(/&Úd•D•Ú  / 2Ú0^¤Ž $  .üŽ.¾‡
ÜüîYÍ|ü»
ç ä†Ü¸nJBƒ¶KåHL{üÚ°ÚƒÚÚÚÜ×Ë4›¾‡¤Ž r¨}üé?ä†$ÿ 䆾‡_9(6
5„ã
ÊLô¡ ò6
„ï
ÿMô¡ÉL2$¤ŒÚ6

ÄN°s?$ü¶'Œ¶
ðG &$/ Å 
ý 
×ÀÜå¼åШ ,
'$

ûM°
, $* <”%  Û
…2 Ç $ œß 
$+ôßÚ „©—°% $l• œò 
$+üò# $,üÜ:¬Ü
¸4U$! 5

 "
¾‡D› $  # «£$ 
Ü¢¾‡«£«£Ã­£þôÉûT™gö"#n!"Yüì
9ôì

¸v!Ì‹  "#ü¾
j

Ó4í üã
D"üÚ
N &  
ß4&( ù %"  ( 6
)Ϯ  
ÒLs°(P)F'" 4…
5
*üó Œó Ö±*7$
 "-  
5
Ž7d-
¾‡/ š. —£/d™
µ"¾‡—£—£»™£¹< =áï_å-.m,$Xüú
,

‡2 ú
,ìˆ+$üü
*¤´0  0 $+ 0üŠÉ2
3 äÃ
|243*1$ŒÎ4
ìëŒë
4&$  6#*62>ŽüŽ
$5$! 6 #NæŠ püÔº
üÚ´ ü²Ü
üо
üª©ü¸üüËÖ7ƒqô¡°¤Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ °¢Ws°<ä†×À¹Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ» °ØŽYnƒ¶jØÃÀ”Á–s£åúƒ¶öƒ¶Å –sb×À¿á”' ¾‡qÁ·Zoƒ¹Ã7¹Ãp°j–s «…˜ˆÉÉ»±Æƒ¶¸Ú¬ßØä†¨* ùfù ú5r
curr_lenÁ
inline_bufÁ
®: char_lenÁ¸
min_remainingÁstringÁ ÓÖ
ÚþÚȯ —°K ¦±Ã
Ö±
Ш<
î²
γ· —° ³¶a¶·â˜¸ŠÁ¸h¹.Þ¹ØÖ±Š¿» ¼¬µ½î½ë°Ì–s°Ù„‹L
ÊL¥$‹\Ì‹
àOÈÉLUü‹#
ÄN†­†­CopiedÁˆ­itÁõ7E*tRǰȃqŽ´üÁsƒqÈçÈаÈù?ûÇ&ªÈþáÈÎ$4
3&4. µ
é
×ÀÜѼÑШ,#!$†\†$
ûMš.!4," Û¤ ¬

â§Ì
- ÚŽá  ¤Î   +
üÎ 
Ú $•„•
ÿMÝË+l¤Ú    +üÚ$ 
,üÄ;¬Ä³¶S  þ3
¾‡PÞ «£¶·Q6 !ü±9ô±˜¸ÌÐ
!ü˜UÁ¸±ü¨DüŸN!Ô¬Á¸!&  œ³4†#$”4
$Ϡ4
ÒL–s§ÌÝË#R$H"d3
%ü¯Œ¯Ö±%7 - Ø3
 œ!)¾‡+P¹* —£+¿»)R*6(!XÅ, «£ 
µ"‡£Á·(Ĭ,B'-¤âŽ -ü¬K
Ÿu'ü¬%-K&üÒ%¬.  . +.\!T…01ä…<µ½031)/!Œ2쩌©î½2$! ÇÈ!ü¸3D3Zj4 N¯fü¢¦
ü¼Œ
ü’üœüÀÝüüÝü³¦5ƒqÝËŽä†×ÀMÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ§ÌQ ÝËn-§Ì$×À §Ì Ç܃¶Ø?ÃÀr ÝËŽ–s
Odƒ¶`ƒ¶/(¹ÃÌ×Àaá”ÖÃØÁ·ÁÖ&¹Ã@ܹÃÝË–sÀs«…׫…#˜ˆkÉ»ShÁ·!á”Ùƒ¶&Ú¬MF䆿òù¶Ä¤ ÊÄ¾Õ str_sliceÁ½ bytes_lenÁ½ €Åà™ÅFSÚШ×ËŠ ËÌ Žáö£ÎS³¶¶·˜¸þÁ¸ÞÁ¸¦ÎÒRÖ±§Ì¿»züÔ>ŽÚÕñ§Ìåµ½cî½2Ý˧̖sÝË)„Ú ûÇüÁ *ÄÁ 
×À°ÈG(ñ üøyƒqȰÈù6ûÇ¥°à„ƒ"Lˆ"ȯ$ƒ"\ˆ"üê!*Äê!
r°F'š"ü !zƒq$Û!ô¡$Ï!°ù6ȯ¤èჄ¨#L­#ȯ$¨#\­#ü#*Ä#
s°F'¿#˜üÇ"xƒq$€#ô¡$ô"°ù6ȯ¤Ÿãƒ„Û$Là$ȯ$Û$\à$üÂ$*ÄÂ$
Îs°F'ò$üó#ƒq$³$ô¡$§$°ù6ȯ¤Öäƒ&L•&ûÇ$&\•&ü÷%*Ä÷%
»¾¿—sÀˆÁ¸sÈ¢ÓÛ?'°UF°Èp§&Ÿü©%~ƒq$è%È$Ü%°ÈÏù6ûÇíæÌ 
10Á 11Á 12Á
13Á14Á15Á16Á17Á18Á19Á20Á21Á22Á23Á24Á25Á26Á27Á28Á29Á30Á31Á 32Á!33Á"34Á#35Á$36Á%37Á&38Á'39Á(40Á)41Á*42Á+43Á,44Á-45Á.46Á/47Á048Á149Á250Á351Á452Á553Á654Á755Á856Á957Á:58Á;59Á<60Á=61Á>62Á?63Á@64ÁA65ÁB66ÁC67ÁD68ÁE69ÁF70ÁG71ÁH72ÁI73ÁJ74ÁK75ÁL76ÁM77ÁN78ÁO79ÁP80ÁQ81ÁR82ÁS83ÁT84ÁU85ÁV86ÁW87ÁX88ÁY89ÁZ90Á[91Á\92Á]93Á^94Á_95Á`96Áa97Áb98Ác99Ád100Áe101Áf102Ág103Áh104Ái105Áj106Ák107Ál108Ám109Án110Áo111Áp112Áq113Ár114Ás115Át116Áu117Áv118Áw119Áx120Áy121Áz122Á{123Á|124Á}125Á~126Á127Á128Á129Á130Áƒ131Á132Á133Á134Á135Áˆ136Á137ÁŠ138Á139ÁŒ140Á141ÁŽ142Á143Á144Á145Á146Á147Á148Á149Á150Á151Á˜152Á153Áš154Á155Áœ156Á157Áž158ÁŸ159Á 160Á¡161Á¢162Á£163Á¤164Á¥165Á¦166Á§167Á¨168Á©169Áª170Á«171Á¬172Á­173Á®174Á¯175Á°176Á±177Á²178Á³179Á´180Áµ181Á182Á·183Á¸184Á¹185Áº186Á»187Á¼188Á½189Á¾190Á¿191ÁÀ192ÁÁ193ÁÂ194ÁÃ195ÁÄ196ÁÅ197ÁÆ198ÁÇ199ÁÈ200ÁÉ201ÁÊ202ÁË203ÁÌ204ÁÍ205ÁÎ206ÁÏ207ÁÐ208ÁÑ209ÁÒ210ÁÓ211ÁÔ212ÁÕ213ÁÖ214Á×215ÁØ216ÁÙ217ÁÚ218ÁÛ219ÁÜ220ÁÝ221ÁÞ222Áß223Áà224Áá225Áâ226Áã227Áä228Áå229Áæ230Áç231Áè232Áé233Áê234Áë235Áì236Áí237Áî238Áï239Áð240Áñ241Áò242Áó243Áô244Áõ245Áö246Á÷247Áø248Áù249Áú250Áû251Áü252Áý253Áþ254Á(9Ç  Ú
"ít- ít7@Jƒ(:Î ÿ
 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ƒˆŠŒŽ˜šœžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿþýüûúùø÷öõôóòñðïîíìëêéèçæåäãâáàßÞÝÜÛÚÙØ×ÖÕÔÓÒÑÐÏÎÍÌËÊÉÈÇÆÅÄÃÂÁÀ¿¾½¼»º¹¸·µ´³²±°¯®­¬«ª©¨§¦¥¤£¢¡ Ÿžœš˜ŽŒŠˆƒ~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! 
%.
×À GP ×À"fo ×ÀAŽ
×À`¤­×ÀÃÌ×Àžâë×À½
×ÀÜ )×Àû?H×À_h×À:ˆ×ÀZŸ¨×Àz¿È×Àšßè×Àºÿ×ÀÚ(×Àú?H×À_h×À:ˆ×ÀZŸ¨×Àz¿È×Àšßè ×Àºÿ!×ÀÚ("×Àú?H#×À_h$×À:ˆ%×ÀZŸ¨&×Àz¿È'×Àšßè(×Àºÿ)×ÀÚ(*×Àú?H+×À_h,×À:ˆ-×ÀZŸ¨.×Àz¿È/×Àšßè0×Àºÿ1×ÀÚ(2×Àú?H3×À_h4×À:ˆ5×ÀZŸ¨6×Àz¿È7×Àšßè8×Àºÿ 9×ÀÚ ( :×Àú? H ;×À_ h <×À: ˆ =×ÀZŸ ¨ >×Àz¿ È ?×Àšß è @×Àºÿ 
A×ÀÚ
(
B×Àú?
H
C×À_
h
D×À:
ˆ
E×ÀZŸ
¨
F×Àz¿
È
G×Àšß
è
H×Àºÿ
 I×ÀÚ ( J×Àú? H K×À_ h L×À: ˆ M×ÀZŸ ¨ N×Àz¿ È O×Àšß è P×Àºÿ  Q×ÀÚ ( R×Àú? H S×À _ h T×À:  ˆ U×ÀZ Ÿ ¨ V×Àz ¿ È W×Àš ß è X×Àº ÿ 
Y×ÀÚ 
(
Z×Àú ?
H
[×À
_
h
\×À:

ˆ
]×ÀZ
Ÿ
¨
^×Àz
¿
È
_×Àš
ß
è
`×Àº
ÿ
a×ÀÚ
(b×Àú
?Hc×À _hd×À: ˆe×ÀZ Ÿ¨f×Àz ¿Èg×Àš ßèh×Àº ÿi×ÀÚ (j×Àú ?Hk×À _hl×À: ˆm×ÀZ Ÿ¨n×Àz ¿Èo×Àš ßèp×Àº ÿq×ÀÚ (r×Àú ?Hs×À
_ht×À:
ˆu×ÀZ
Ÿ¨v×Àz
¿Èw×Àš
ßèx×Àº
ÿy×ÀÚ
(z×Àú
?H{×À_h|×À:ˆ}×ÀZŸ¨~×Àz¿È×Àšßè×À» ×ÀÜ!*×ÀýBKƒ×Àcl×À?×À`¥®×ÀÆÏ×À¢çðˆ×ÀÃ×Àä)2Š×ÀJS×À&ktŒ×ÀGŒ×Àh­Ž×ÀÎ××Àªïø×ÀË×Àì1:×À
R[×À.s|×ÀO×Àpµ¾×ÀÖß×À²÷˜×ÀÓ!×Àô9Bš×ÀZc×À6{œ×ÀWœ¥×Àx½Æž×ÀÞçŸ×Àºÿ ×ÀÛ )¡×ÀüAJ¢×Àbk£×À>ƒŒ¤×À_¤­¥×ÀÅΦ×À¡æï§×À¨×Àã(1©×ÀIRª×À%js«×ÀF¬×Àg¬µ­×ÀˆÍÖ®×À©î÷¯×Àʰ×Àë09±×À QZ²×À-r{³×ÀNœ´×Ào´½µ×ÀÕÞ×À±öÿ·×ÀÒ ¸×Àó8A¹×ÀYbº×À5zƒ»×ÀV¤¼×Àw¼Å½×À˜Ýæ¾×À¹þ¿×ÀÚ(À×Àû@IÁ×ÀajÂ×À=Ã×À^£¬Ä×ÀÄÍÅ×À åîÆ×ÀÁÇ×Àâ'0È×ÀHQÉ×À$irÊ×ÀEŠË×Àf«´Ì×ÀÌÕÍ×À¨íöÎ×ÀÉÏ×Àê/8Ð×À PYÑ×À,qzÒ×ÀMÓ×Àn³¼Ô×ÀÔÝÕ×À°õþÖ×ÀÑ××Àò7@Ø×ÀXaÙ×À4yÚ×ÀUš£Û×Àv»ÄÜ×ÀÜåÝ×À¸ýÞ×ÀÙ'ß×Àú
O X ð×À+p y ñ×ÀLš ò×Àm² » ó×ÀŽÓ Ü ô×À¯ô ý õ×ÀÐ!!ö×Àñ6!?!÷×ÀW!`!ø×À3x!!ù×ÀT™!¢!ú×Àuº!Ã!û×ÀÛ!ä!ü×À·ü!"ý×ÀØ"&"þ×Àù>"G"ÿ×À_"h"×À;€"‰"×À\¡"ª"×À}Â"Ë"ƒ×Àžã"ì"×À¿#
#×Àà%#.#×À F#O#×À" g#p#ˆ×ÀC Š##
êc¢#¨#²# Ü
Ê#àÁ×#‰…à#íÂé#×Àò#ú#$±$$ÉÌ($ù;ê P  Þ
·Ç#ÔÇù;Ú aÝ
ÔÇ!;ã Þ
·Çx>ü÷ó
 È8Eá” éüÙ©á”ÏŽÏ7ób"\
0001020304050607080910111213141516171819\
2021222324252627282930313233343536373839\
4041424344454647484950515253545556575859\
6061626364656667686970717273747576777879\
8081828384858687888990919293949596979899"Á?È<ø˜
±'ø<²˜
ëP<Æ%H<¦ p<Ð €<õ ø<Í û<“ ¨< ø< %`<§ 
ôÑ,<´ ;7x<§ ˜  
À<Ø 8<Ý 

+P<å  7˜ 

ˆ
P<Õ

ÿ
+ 7`<Õ
ð<Ð
P<â
Â… B 7`<â
p< ©á”¸<0< 
„t6 7@<  
À
7 È<°& P<«(<°'" X<Þ(<ã'- 
7>
>' P< (<•'- 7>  >'X<Â d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€<Â  +@;  =7[ [X<ù
#<€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€<ù
'<ˆ
('+@;
("=7[
!"[H<§ )& )(7M ) 0<ï
î8<ç+7P<ï -  0<ƒ
Õ 8<û-4,7`<ƒø<ÎE À<Îí…+,S<*7= 0<ó©ß8<ë!/7P<ó 2@<® 32& 32(7M 13À<Ÿ 0<§ðß 8<Ÿ1}07€<§ø<±È À<±í…/è0O.<7>5P<¡45 74@<œ 67d& 6& :4H<È ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:Ædp<È ? @?+@; @9= 7[ 89[@<ð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdH<
E&
E(#7M
E
0<Ö©ß8<Î8G$7P<Ö
I 
0<êðß 8<âI/H%7`<êø<µE
À<µí…GHNF=7= K40<Ú JK
& J+'H<û L& L((7M L N4H<¶ MN€<¶ OM0 OM!0)7 Q  0<§ðß 8<ŸQ/P*7`<§ø<ž( oP  p o" q+:L rpXj s rqy ts t :<† S40<† T< UT+@; US=,7[ RS[H<¦V& V(-7MV0<ê©ß8<âRX.7P<ê <…Z 0<þðß 8<öZ/Y/7`<þø<ÉEÀ<Éí…XYNW>7=p<¿ 14H<è [& [(27M [ < ]  0<”ðß 8<Œ]/\37`<”à< i\òì j i k)8J ljVh m lkw nm n 91?ß
_9?ç
` à
 ‰?Þ
^ _`A?ÿ
a^òóI?‰ b^òóI?® daQ?» ebÉ?­ cdec56ù?è ! f ǽá?Ì h ۼؓù?Œ] ù?Œ 
òWf!?­ aQ?³ bY?¿ hZg7F8ø<°´ó \-ø<»ƒ 4ð POø<×Î 0ŽV
¡
&G0à
ø<çýø<£Áø< Óø<Ëø<Á £ø<Ú Šø<¹
«ø<ƒáø<ÔÀø<¹Û ø<ð¤
ø<•»ø<¿Ò ø<ý¨ ù?þ
Œ ù?Ý Ÿ uƒqP<ëƒq@<§p<• (<Å ÅÞ@<Þ m ƒqŠ·ä8<½
«…I¹ùdÁä8<‡á”¯Û|Xng ¿ÆÍÔÛÿ
£ª±¸¿ãê­
Áä3·äõ

½ Áä
·ä
f
|
µûw
(<™¸  ¨  j  y   Ž ² ¹ K R Y ` µû
¼ Áä8
·äÿ 
Ž ¤ µûk    ·äÅÝ< µû±èÁäd·ä+Cµû··äTlòóòó}òó²òó«òóòóyLtlǽȽɽ}ʽ˽NeÁ̽ͽMatchÁBÙe±æµé!?á hÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙØ“Òòì/ 7 > E L S òì3
;
B
I
P
W
[
num_digitsÁi kis_nonnegativeÁ|¹~currÁtbuf_ptrÁi lut_ptrÁ_ƒ : d1Á 
d2Áñ !¹` 4ÚL
8ÚRleft_valÁša right_valÁb¿f®ù©á”¯ÒÉÝÒ£÷Ó×ÔšÕzÂ…V†Ö´Öõ©ßðßGí…©ßÜðßEí…©ßÖ
ðß
í…q
ðß+ ©ßŽ
ðßS
í…)
ðßp ¾õ؃qy Õäà
Üòó Q ?È@ø˜@ø
±'ø@²˜ÝÒP@Æ#H@¦ p@Ð €@õ ø@Í û@“ ¨@‘ ø@‘ %`@§ ÷Ó)@´ ;7x@§ ˜  
À@Ø 8@Ý ×Ô
)P@å  7˜ 

ˆ
P@Õ
šÕ
) 7`@Õ
ð@Ð
P@â
Â… @ 7`@â
p@‘ ©á”¸@‘0@ †Ö1 7@@  
À
7 È@°& P@«(@°'" X@Þ(@ã'- 
7>
>' P@ (@•'- 7>  >'X@Â d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€@Â  +@;  =7[ [X@ù
#@€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€@ù
'@ˆ
('+@;
("=7[
!"[H@§ )& )(7M ) 0@ï©ß8@ç+7P@ï - @û 0@ƒðß 8@û-/,7`@ƒø@ÎE À@Îí…+,N@‘*7= 0@ó©ß8@ë!/7P@ó 2@@® 32& 32(7M 13À@Ÿ 0@§ðß 8@Ÿ1}07€@§ø@±È À@±í…/è0O.<7>5P@¡45 74@@œ 67d& 6& :4H@È ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:Ædp@È ? @?+@; @9= 7[ 89[@@ð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdH@
E&
E(#7M
E
0@Ö©ß8@Î8G$7P@Ö
I 
0@êðß 8@âI/H%7`@êø@µE
À@µí…GHNF=7= K40@Ú JK
& J+'H@û L& L((7M L N4H@¶ MN€@¶ OM0 OM!0)7 Q  0@§ðß 8@ŸQ/P*7`@§ø@ž( oPòì p o! q*9K rpWi s rqx ts t :@† S40@† T@ UT+@; US=,7[ RS[H@¦V& V(-7MV0@ê©ß8@âRX.7P@ê @…Z @ö0@þðß 8@öZ/Y/7`@þø@ÉEÀ@Éí…XYNW>7=p@¿ 14H@è [& [(27M [ @ ] @Œ 0@”ðß 8@Œ]/\37`@”à@ i\òì j i k)8J ljVh m lkw nm n 91Cß
_9Cç
` â
òó‰CÞ
^ _`ACÿ
a^òóIC‰ b^òóIC® daQC» ebÉC­ cdec56ùCè ! f ǽáCÌ h ۼؓùCŒ] ùCŒ ¾õf!C­ aQC³ bYC¿ hRg7>8ø@°´é \-ø@»ƒ 4å POø@×Î 0mK

&=0â
ø@çýø@£Áø@‘ Óø@Ëø@Á £ø@Ú Šø@¹
«ø@ƒáø@ÔÀø@¹Û ø@ð¤
ø@•»ø@¿Ò ø@ý¨ ùCþ
Œ ùCÝ Ÿ uƒqP@ëƒq@@§p@• (@Å ¤½@@Þ O¹ùj·ä8@½
«…+¹ùFÁä8@‡á”ø˜Äe{AWPî ¨¯½Äèï
Œš¡¨ÌÓµûgž
Áä·äá
ù
® Áä
·äñ W
m
µûh
(@™© ƒ   [ q j q x  £ ª < C J Q µûv
­ Áä)
·äð 
 µû\ ú êýú·ä´Ì@  
µû¡ØÁäT·ä3µû§·äD\ìþjòóòóòóqòóf9aYµÿ!Cá —€+òì Ž  œ £ ª òì  ˜ Ÿ ¦ ­ ¼ЀÁ Ãò€Ç¹É˜¼¨­ »ƒ x Ú]
è- !¹ž 4ÚŠ
8ÚÉRœ‚Åa°‚¾bDfÙ
©á”‹†ÑÝÒ«÷Ó×ÔÚÕÂ…g†Ö-‚Š ©ßðßbí…8©ßüðßeí…;©ßö ðß» í… ðßK ©ß¯ ðßt í…J ðß¾õûƒq¤ öâ
òó"Q1?ÈDø˜Dø
±'øD²˜ÝÒPDÆ#HD¦ pDÐ €Dõ øDÍ ûD“ ¨D‘ øD‘ %`D§ ÷Ó)D´ ;7xD§ ˜  
ÀDØ 8DÝ ×Ô
)PDå  7˜ 

ˆ
PDÕ
šÕ
) 7`DÕ
ðDÐ
PDâ
Â… @ 7`Dâ
pD‘ ©á”¸D‘0D †Ö1 7@D  
À
7 ÈD°& PD«(D°'" XDÞ(Dã'- 
7>
>' PD (D•'- 7>  >'XDÂ d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€DÂ  +@;  =7[ [XDù
#D€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€Dù
'Dˆ
('+@;
("=7[
!"[HD§ )& )(7M ) 0Dï©ß8Dç+7PDï - Dû 0Dƒðß 8Dû-/,7`DƒøDÎE ÀDÎí…+,ND‘*7= 0Dó©ß8Dë!/7PDó 2@D® 32& 32(7M 13ÀDŸ 0D§ðß 8DŸ1}07€D§øD±È ÀD±í…/è0O.<7>5PD¡45 74@Dœ 67d& 6& :4HDÈ ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:ÆdpDÈ ? @?+@; @9= 7[ 89[@Dð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdHD
E&
E(#7M
E
0DÖ©ß8DÎ8G$7PDÖ
I 
0Dêðß 8DâI/H%7`DêøDµE
ÀDµí…GHNF=7= K40DÚ JK
& J+'HDû L& L((7M L N4HD¶ MN€D¶ OM0 OM!0)7 Q  0D§ðß 8DŸQ/P*7`D§øDž( oPòì p o! q*9K rpWi s rqx ts t :D† S40D† TD UT+@; US=,7[ RS[HD¦V& V(-7MV0Dê©ß8DâRX.7PDê D…Z Dö0Dþðß 8DöZ/Y/7`DþøDÉEÀDÉí…XYNW>7=pD¿ 14HDè [& [(27M [ D ] DŒ 0D”ðß 8DŒ]/\37`D”àD i\òì j i k)8J ljVh m lkw nm n 91Gß
_9Gç
` ä
òó‰GÞ
^ _`AGÿ
a^òóIG‰ b^òóIG® daQG» ebÉG­ cdec56ùGè ! f ǽáGÌ h ۼؓùGŒ] ùGŒ ¾õf!G­ aQG³ bYG¿ hRg7>8øD°´é \-øD»ƒ 4å POøD×Î 0mK

&=0ä
øDçýøD£ÁøD‘ ÓøDËøDÁ £øDÚ ŠøD¹
«øDƒáøDÔÀøD¹Û øDð¤
øD•»øD¿Ò øDý¨ ùGþ
Œ ùGÝ Ÿ uƒqPDëƒq@D§pD• (DÅ ¤½@DÞ O¹ùj·ä8D½
«…+¹ùFÁä8D‡á”ø˜Äe{AWPî ¨¯½Äèï
Œš¡¨ÌÓµûgž
Áä·äá
ù
® Áä
·äñ W
m
µûh
(D™© ƒ   [ q j q x  £ ª < C J Q µûv
­ Áä)
·äð 
 µû\ ú êýú·ä´ÌD  
µû¡ØÁäT·ä3µû§·äD\ìþjòóòóòóqòóf9aYµÿ!Gá —€+òì Ž  œ £ ª òì  ˜ Ÿ ¦ ­ ¼ЀÁ Ãò€Ç¹É˜¼¨­ »ƒ x Ú]
è- !¹ž 4ÚŠ
8ÚÉRœ‚Åa°‚¾bDfÙ
©á”ï·ÒÝÒ¬÷Ó×ÔÚÕÂ…g†Ö-ç» ©ßðßbí…8©ßüðßeí…;©ßö ðß» í… ðßK ©ß¯ ðßt í…J ðß¾õûƒq¤ öä
òó"Q1?ÈHø˜Hø
±'øH²˜ÝÒPHÆ#HH¦ pHÐ €Hõ øHÍ ûH“ ¨H‘ øH‘ %`H§ ÷Ó)H´ ;7xH§ ˜  
ÀHØ 8HÝ ×Ô
)PHå  7˜ 

ˆ
PHÕ
šÕ
) 7`HÕ
ðHÐ
PHâ
Â… @ 7`Hâ
pH‘ ©á”¸H‘0H †Ö1 7@H  
À
7 ÈH°& PH«(H°'" XHÞ(Hã'- 
7>
>' PH (H•'- 7>  >'XHÂ d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€HÂ  +@;  =7[ [XHù
#H€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€Hù
'Hˆ
('+@;
("=7[
!"[HH§ )& )(7M ) 0Hï©ß8Hç+7PHï - Hû 0Hƒðß 8Hû-/,7`HƒøHÎE ÀHÎí…+,NH‘*7= 0Hó©ß8Hë!/7PHó 2@H® 32& 32(7M 13ÀHŸ 0H§ðß 8HŸ1}07€H§øH±È ÀH±í…/è0O.<7>5PH¡45 74@Hœ 67d& 6& :4HHÈ ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:ÆdpHÈ ? @?+@; @9= 7[ 89[@Hð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdHH
E&
E(#7M
E
0HÖ©ß8HÎ8G$7PHÖ
I 
0Hêðß 8HâI/H%7`HêøHµE
ÀHµí…GHNF=7= K40HÚ JK
& J+'HHû L& L((7M L N4HH¶ MN€H¶ OM0 OM!0)7 Q  0H§ðß 8HŸQ/P*7`H§øHž( oPòì p o! q*9K rpWi s rqx ts t :H† S40H† TH UT+@; US=,7[ RS[HH¦V& V(-7MV0Hê©ß8HâRX.7PHê H…Z Hö0Hþðß 8HöZ/Y/7`HþøHÉEÀHÉí…XYNW>7=pH¿ 14HHè [& [(27M [ H ] HŒ 0H”ðß 8HŒ]/\37`H”àH i\òì j i k)8J ljVh m lkw nm n 91Kß
_9Kç
` æ
òó‰KÞ
^ _`AKÿ
a^òóIK‰ b^òóIK® daQK» ebÉK­ cdec56ùKè ! f ǽáKÌ h ۼؓùKŒ] ùKŒ ¾õf!K­ aQK³ bYK¿ hRg7>8øH°´é \-øH»ƒ 4å POøH×Î 0mK

&=0æ
øHçýøH£ÁøH‘ ÓøHËøHÁ £øHÚ ŠøH¹
«øHƒáøHÔÀøH¹Û øHð¤
øH•»øH¿Ò øHý¨ ùKþ
Œ ùKÝ Ÿ uƒqPHëƒq@H§pH• (HÅ ¤½@HÞ O¹ùj·ä8H½
«…+¹ùFÁä8H‡á”ø˜Äe{AWPî ¨¯½Äèï
Œš¡¨ÌÓµûgž
Áä·äá
ù
® Áä
·äñ W
m
µûh
(H™© ƒ   [ q j q x  £ ª < C J Q µûv
­ Áä)
·äð 
 µû\ ú êýú·ä´ÌH  
µû¡ØÁäT·ä3µû§·äD\ìþjòóòóòóqòóf9aYµÿ!Ká —€+òì Ž  œ £ ª òì  ˜ Ÿ ¦ ­ ¼ЀÁ Ãò€Ç¹É˜¼¨­ »ƒ x Ú]
è- !¹ž 4ÚŠ
8ÚÉRœ‚Åa°‚¾bDfÙ
©á”ÔéÒÝÒ¬÷Ó×ÔÚÕÂ…g†Ö-Ìí ©ßðßbí…8©ßüðßeí…;©ßö ðß» í… ðßK ©ß¯ ðßt í…J ðß¾õûƒq¤ öæ
òó"Q1?ÈLø˜Lø
±'øL²˜ÝÒPLÆ#HL¦ pLÐ øLÍ û¨L‘ øL‘ %`L§ ÷Ó)L´ ;7xL§ ˜   ÀLØ 8LÝ ×Ô )PLå 7˜ 
 ˆ
PLÕ
šÕ ) 7`LÕ
ðLÐ
PLâ
Â… @
7`Lâ
pL‘ ©á”¸L‘0L †Ö1
 7@L  
À
7 ÈL°& PL«(L°'" XLÞ(Lã'- 
7>
>' PL (L•'- 7>  >'XLÂ d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€LÂ  +@; =7[ [XLù
"L€d!5
"7F
#Cdaÿÿÿÿÿÿÿÿs
$
% #$¢
%
¤d7Æ
!
Æd€Lù
&Lˆ
'&+@;
'!=7[
![HL§ (& ((7M ( 0Lï©ß
8Lç*7PLï , Lû 0Lƒðß
8Lû,/+7`LƒøLÎE ÀLÎí…*+NL‘)7= 0Ló©ß
8Lë .7PLó 1@L® 21& 21(7M 02ÀLŸ 0L§ðß
8LŸ0}/7€L§øL±È ÀL±í….è/O-<7>4PL¡34 63@Lœ 56d& 5& 93HLÈ :d!5 :97F ;Cdaÿÿÿÿÿÿÿÿs <9 = ;<¢ =
9¤d7Æ 8
9ÆdpLÈ > ?>+@; ?8= 7[ 78[@Lð
@d!5
@3!7F
ACdaÿÿÿÿÿÿÿÿs
B3
C AB¢
C 3¤d"7Æ
3 3ÆdHL
D&
D(#7M
D
0LÖ©ß
8LÎ7F$7PLÖ
H 
0Lêðß
8LâH/G%7`LêøLµE
ÀLµí…FGNE=7= J30LÚ IJ
& I+'HLû K& K((7M K M3HL¶ LM€L¶ NL0 NL!0)7 P  0L§ðß
8LŸP/O*7`L§øLž( nOòì o n! p*9K qoWi r qpx sr s :L† R30L† SL TS+@; TR=,7[ QR[HL¦U& U(-7MU0Lê©ß
8LâQW.7PLê L…Y Lö0Lþðß
8LöY/X/7`LþøLÉEÀLÉí…WXNV>7=pL¿ 14HLè Z& Z(27M Z L \ LŒ 0L”ðß
8LŒ\/[37`L”àL h[òì i h j)8J kiVh l kjw ml m 91Oß
^9Oç
_ è
òó‰OÞ
] ^_AOÿ
`]òóIO‰ a]òóIO® c`QO» daÉO­ bcdb56ùOè ! e ǽáOÌ g ۼؓùOŒ] ùOŒ ¾õe!O­ `QO³ aYO¿ gRf7>8øL°´é [-øL»ƒ 4å ONøL×Î 0mK

&=0è
øLçýøL£ÁøL‘ ÓøLËøLÁ £øLÚ ŠøL¹
«øLƒáøLÔÀøL¹Û øLð¤
øL•»øL¿Ò øLý¨ ùOþ
Œ ùOÝ Ÿ tƒqPLëƒq@L§pL• (LÅ ¤@LÞ G¹ùb·ä8L½
«…#¹ù>Áä8L‡á”ð¼]s9OHæ  §®µ¼àç
ʀ赞_
Áä·äÙ
ñ
¦ Áä~
·äé O
e
µû`
(L™¡ {   S i b i p w  ¢ 4 ; B I µûn
¥ Áä!
·äè 
w  µûT ò êýò·ä¬ÄL þµûÐÁäL·ä+µûŸ·ä<TìþbòóòóŽòóiòó^1YQµÿ!Oá þ—€#òì~     ¢ òì    ž ¥ ´Ѐ¹ »ò€¿¹Á˜¼¨­
»
ƒ x Ú]
è- ¹ž 3ÚŠ
7ÚÉQœ‚½`°‚aDeѩᔹ›¸ÝÒ÷Ó×Ô»šÕÂ…_†Ö%ŸŸ©ßðßZí…0©ßôðß]í…3©ßî ðß³ í… ðßC ©ß§ ðßl í…B ðß¾õóƒqœ îýè
ÿòóQ)?ÈPø˜Pø
±'øP²˜ÝÒPPÆ#HP¦ pPÐ €Põ øPÍ ûP“ ¨P‘ øP‘ %`P§ ÷Ó)P´ ;7xP§ ˜  
ÀPØ 8PÝ ×Ô
)PPå  7˜ 

ˆ
PPÕ
šÕ
) 7`PÕ
ðPÐ
PPâ
Â… @ 7`Pâ
pP‘ ©á”¸P‘0P †Ö1 7@P  
À
7 ÈP°& PP«(P°'" XPÞ(Pã'- 
7>
>' PP (P•'- 7>  >'XPÂ d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€PÂ  +@;  =7[ [XPù
#P€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€Pù
'Pˆ
('+@;
("=7[
!"[HP§ )& )(7M ) 0Pï©ß8Pç+7PPï - Pû 0Pƒðß 8Pû-/,7`PƒøPÎE ÀPÎí…+,NP‘*7= 0Pó©ß8Pë!/7PPó 2@P® 32& 32(7M 13ÀPŸ 0P§ðß 8PŸ1}07€P§øP±È ÀP±í…/è0O.<7>5PP¡45 74@Pœ 67d& 6& :4HPÈ ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:ÆdpPÈ ? @?+@; @9= 7[ 89[@Pð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdHP
E&
E(#7M
E
0PÖ©ß8PÎ8G$7PPÖ
I 
0Pêðß 8PâI/H%7`PêøPµE
ÀPµí…GHNF=7= K40PÚ JK
& J+'HPû L& L((7M L N4HP¶ MN€P¶ OM0 OM!0)7 Q  0P§ðß 8PŸQ/P*7`P§øPž( oPòì p o! q*9K rpWi s rqx ts t :P† S40P† TP UT+@; US=,7[ RS[HP¦V& V(-7MV0Pê©ß8PâRX.7PPê P…Z Pö0Pþðß 8PöZ/Y/7`PþøPÉEÀPÉí…XYNW>7=pP¿ 14HPè [& [(27M [ P ] PŒ 0P”ðß 8PŒ]/\37`P”àP i\òì j i k)8J ljVh m lkw nm n 91Sß
_9Sç
` ê
òó‰SÞ
^ _`ASÿ
a^òóIS‰ b^òóIS® daQS» ebÉS­ cdec56ùSè ! f ǽáSÌ h ۼؓùSŒ] ùSŒ ¾õf!S­ aQS³ bYS¿ hRg7>8øP°´é \-øP»ƒ 4å POøP×Î 0mK

&=0ê
øPçýøP£ÁøP‘ ÓøPËøPÁ £øPÚ ŠøP¹
«øPƒáøPÔÀøP¹Û øPð¤
øP•»øP¿Ò øPý¨ ùSþ
Œ ùSÝ Ÿ uƒqPPëƒq@P§pP• (PÅ ¤½@PÞ O¹ùj·ä8P½
«…+¹ùFÁä8P‡á”ø˜Äe{AWPî ¨¯½Äèï
Œš¡¨ÌÓµûgž
Áä·äá
ù
® Áä
·äñ W
m
µûh
(P™© ƒ   [ q j q x  £ ª < C J Q µûv
­ Áä)
·äð 
 µû\ ú êýú·ä´ÌP  
µû¡ØÁäT·ä3µû§·äD\ìþjòóòóòóqòóf9aYµÿ!Sá —€+òì Ž  œ £ ª òì  ˜ Ÿ ¦ ­ ¼ЀÁ Ãò€Ç¹É˜¼¨­ »ƒ x Ú]
è- !¹ž 4ÚŠ
8ÚÉRœ‚Åa°‚¾bDfÙ
©á”„ÍÔÝÒ®÷Ó×ÔÚÕÂ…g†Ö-þÐ ©ßðßbí…8©ßüðßeí…;©ßö ðß» í… ðßK ©ß¯ ðßt í…J ðß¾õûƒq¤ öê
òó"Q1?ÈTø˜Tø
±'øT²˜ÝÒPTÆ#HT¦ pTÐ øTÍ û¨T‘ øT %`T§ 
œÓ, ;7xT§ ˜   ÀTØ 8TÝ ×Ô )PTå 7˜ 
 ˆ
PTÕ
šÕ ) 7`TÕ
ðTÐ
PTâ
Â… @
7`Tâ
pT‘ ©á”¸T‘0T †Ö1
 7@T  
À
7 ÈT°& PT«(T°'& XTÞ(Tã'!5 
7F
F' PT (T•'!5 7F  F'XTÂ d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€TÂ  +@; =7[ [XTù
"T€d!5
"7F
#Cdaÿÿÿÿÿÿÿÿs
$
% #$¢
%
¤d7Æ
!
Æd€Tù
&Tˆ
'&+@;
'!=7[
![HT§ (& ((7M ( 0Tï©ß
8Tç*7PTï , Tû 0Tƒðß
8Tû,/+7`TƒøTÎE ÀTÎí…*+NT‘)7= 0Tó©ß
8Të .7PTó 1@T® 21& 21(7M 02ÀTŸ 0T§ðß
8TŸ0}/7€T§øT±È ÀT±í….è/O-<7>4PT¡34 63@Tœ 56d& 5& 93HTÈ :d!5 :97F ;Cdaÿÿÿÿÿÿÿÿs <9 = ;<¢ =
9¤d7Æ 8
9ÆdpTÈ > ?>+@; ?8= 7[ 78[@Tð
@d!5
@3!7F
ACdaÿÿÿÿÿÿÿÿs
B3
C AB¢
C 3¤d"7Æ
3 3ÆdHT
D&
D(#7M
D
0TÖ©ß
8TÎ7F$7PTÖ
H 
0Têðß
8TâH/G%7`TêøTµE
ÀTµí…FGNE=7= J30TÚ IJ
& I+'HTû K& K((7M K M3HT¶ LM€T¶ NL0 NL!0)7 P  0T§ðß
8TŸP/O*7`T§øTž( nOòì o n! p*9K qoWi r qpx sr s :T† R30T† ST TS+@; TR=,7[ QR[HT¦U& U(-7MU0Tê©ß
8TâQW.7PTê T…Y Tö0Tþðß
8TöY/X/7`TþøTÉEÀTÉí…WXNV>7=pT¿ 14HTè Z& Z(27M Z T \ TŒ 0T”ðß
8TŒ\/[37`T”àT h[òì i h j)8J kiVh l kjw ml m 91Wß
^9Wç
_ ì
òó‰WÞ
] ^_AWÿ
`]òóIW‰ a]òóIW® c`QW» daÉW­ bcdb56ùWè ! e ǽáWÌ g ۼؓùWŒ] ùWŒ ¾õe!W­ `QW³ aYW¿ gRf7>8øT°´é [-øT»ƒ 4å ONøT×Î 0K

&=0ì
øTçýøT£ÁøT‘ ÓøTËøTÁ £øTÚ ŠøT¹
«øTƒáøTÔÀøT¹Û øTð¤
øT•»øT¿Ò øTý¨ ùWþ
Œ ùWÝ Ÿ tƒqPTëƒq@T§pT• (TÅ Ç@TÞ c¹ù~·ä8T½
«…?¹ùZÁä8T‡á” ¬ØyQg`ò  §®µ¼àç
ʀ赞_
Áä·äÙ
ñ
¦ Áä~
·äé O
e
µû`
(T™¡ {   S i b i p w  ¢ 4 ; B I µûn
¥ Áä!
·äè 
w  µûT ò êýò·ä¬ÄT þµûÐÁäL·ä+µûŸ·ä<TìþbòóòóŽòóiòó^1YQµÿ!Wá þ—€#òì~     ¢ òì    ž ¥ ´Ѐ¹ »ò€¿¹Á˜¼¨­
»
ƒ x Ú]
è- ¹ž 3ÚŠ
7ÚÉQœ‚½`°‚aDeÑ©á”ëþßÝÒ¹¤€5×ÔךÕÂ…{†ÖAÜ‚©ßðßZí…0©ßôðß]í…3©ßî ðß³ í… ðßC ©ß§ ðßl í…B ðß¾õóƒqœ îýì
ÿòóQ)?ÈXø˜Xø
±'øX²˜ÝÒPXÆ#HX¦ pXÐ €Xõ øXÍ ûX“ ¨X‘ øX‘ %`X§ ¤€) ;7xX§ ˜  
ÀXØ 8XÝ ×Ô
)PXå  7˜ 

ˆ
PXÕ
šÕ
) 7`XÕ
ðXÐ
PXâ
Â… @ 7`Xâ
pX‘ ©á”¸X‘0X †Ö1 7@X  
À
7 ÈX°& PX«(X°'& XXÞ(Xã'!5 
7F
F' PX (X•'!5 7F  F'XXÂ d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€XÂ  +@;  =7[ [XXù
#X€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€Xù
'Xˆ
('+@;
("=7[
!"[HX§ )& )(7M ) 0Xï©ß8Xç+7PXï - Xû 0Xƒðß 8Xû-/,7`XƒøXÎE ÀXÎí…+,NX‘*7= 0Xó©ß8Xë!/7PXó 2@X® 32& 32(7M 13ÀXŸ 0X§ðß 8XŸ1}07€X§øX±È ÀX±í…/è0O.<7>5PX¡45 74@Xœ 67d& 6& :4HXÈ ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:ÆdpXÈ ? @?+@; @9= 7[ 89[@Xð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdHX
E&
E(#7M
E
0XÖ©ß8XÎ8G$7PXÖ
I 
0Xêðß 8XâI/H%7`XêøXµE
ÀXµí…GHNF=7= K40XÚ JK
& J+'HXû L& L((7M L N4HX¶ MN€X¶ OM0 OM!0)7 Q  0X§ðß 8XŸQ/P*7`X§øXž( oPòì p o! q*9K rpWi s rqx ts t :X† S40X† TX UT+@; US=,7[ RS[HX¦V& V(-7MV0Xê©ß8XâRX.7PXê X…Z Xö0Xþðß 8XöZ/Y/7`XþøXÉEÀXÉí…XYNW>7=pX¿ 14HXè [& [(27M [ X ] XŒ 0X”ðß 8XŒ]/\37`X”àX i\òì j i k)8J ljVh m lkw nm n 91[ß
_9[ç
` î
òó‰[Þ
^ _`A[ÿ
a^òóI[‰ b^òóI[® daQ[» ebÉ[­ cdec56ù[è ! f ǽá[Ì h ۼؓù[Œ] ù[Œ ¾õf![­ aQ[³ bY[¿ hRg7>8øX°´é \-øX»ƒ 4å POøX×Î 0K

&=0î
øXçýøX£ÁøX‘ ÓøXËøXÁ £øXÚ ŠøX¹
«øXƒáøXÔÀøX¹Û øXð¤
øX•»øX¿Ò øXý¨ ù[þ
Œ ù[Ý Ÿ uƒqPXëƒq@X§pX• (XÅ ÄÝ@XÞ k¹ù·ä8X½
«…G¹ùbÁä8X‡á”´àYohú ¨¯½Äèï
Œš¡¨ÌÓµûgž
Áä·äá
ù
® Áä
·äñ W
m
µûh
(X™© ƒ   [ q j q x  £ ª < C J Q µûv
­ Áä)
·äð 
 µû\ ú êýú·ä´ÌX  
µû¡ØÁäT·ä3µû§·äD\ìþjòóòóòóqòóf9aYµÿ![á —€+òì Ž  œ £ ª òì  ˜ Ÿ ¦ ­ ¼ЀÁ Ãò€Ç¹É˜¼¨­ »ƒ x Ú]
è- !¹ž 4ÚŠ
8ÚÉRœ‚Åa°‚¾bDfÙ&©á”ݰøÝÒÒ¤€:×Ôߚե…ƒ†ÖIß´'©ßðßbí…8©ßüðßeí…;©ßö ðß» í… ðßK ©ß¯ ðßt í…J ðß¾õûƒq¤ öî
òó"Q1?È\ø˜\ø
±'ø\²˜ÝÒP\Æ#H\¦ p\Ð €\õ ø\Í û\“ ¨\‘ ø\‘ %`\§ ¤€) ;7x\§ ˜  
À\Ø 8\Ý ×Ô
)P\å  7˜ 

ˆ
P\Õ
šÕ
) 7`\Õ
ð\Ð
P\â
Â… @ 7`\â
p\‘ ©á”¸\‘0\ †Ö1 7@\  Ͳ
7È\°& P\«(\°'& X\Þ(\ã'!5 
7F
F' P\ (\•'!5 7F  F'X\Â d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€\Â  +@;  =7[ [X\ù
#\€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€\ù
'\ˆ
('+@;
("=7[
!"[H\§ )& )(7M ) 0\ï©ß8\ç+7P\ï - \û 0\ƒðß 8\û-/,7`\ƒø\ÎE À\Îí…+,N\‘*7= 0\ó©ß8\ë!/7P\ó 2@\® 32& 32(7M 13À\Ÿ 0\§ðß 8\Ÿ1}07€\§ø\±È À\±í…/è0O.<7>5P\¡45 74@\œ 67d& 6& :4H\È ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:Ædp\È ? @?+@; @9= 7[ 89[@\ð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdH\
E&
E(#7M
E
0\Ö©ß8\Î8G$7P\Ö
I 
0\êðß 8\âI/H%7`\êø\µE
À\µí…GHNF=7= K40\Ú JK
& J+'H\û L& L((7M L N4H\¶ MN€\¶ OM0 OM!0)7 Q  0\§ðß 8\ŸQ/P*7`\§ø\ž( oPòì p o! q*9K rpWi s rqx ts t :\† S40\† T\ UT+@; US=,7[ RS[H\¦V& V(-7MV0\ê©ß8\âRX.7P\ê \…Z \ö0\þðß 8\öZ/Y/7`\þø\ÉEÀ\Éí…XYNW>7=p\¿ 14H\è [& [(27M [ \ ] \Œ 0\”ðß 8\Œ]/\37`\”à\ i\òì j i k)8J ljVh m lkw nm n 91_ß
_9_ç
` ð
òó‰_Þ
^ _`A_ÿ
a^òóI_‰ b^òóI_® daQ_» ebÉ_­ cdec56ù_è ! f ǽá_Ì h ۼؓù_Œ] ù_Œ ¾õf!_­ aQ_³ bY_¿ hRg7>8ø\°´é \-ø\»ƒ 4å POø\×Î 0ˆK

&=0ð
ø\çýø\£Áø\‘ Óø\Ëø\Á £ø\Ú Šø\¹
«ø\ƒáø\ÔÀø\¹Û ø\ð¤
ø\•»ø\¿Ò ø\ý¨ ù_þ
Œ ù_Ý Ÿ uƒqP\ëƒq@\§p\• (\Å ¿Ø@\Þ f¹ù·ä8\½
«…B¹ù]Áä8\‡á”´ÛYohú ¨¯½Äèï
Œš¡¨ÌÓµûgž
Áä·äá
ù
® Áä
·äñ W
m
µûh
(\™© ƒ   [ q j q x  £ ª < C J Q µûv
­ Áä)
·äð 
 µû\ ú êýú·ä´Ì\  
µû¡ØÁäT·ä3µû§·äD\ìþjòóòóòóqòóf9aYµÿ!_á —€+òì Ž  œ £ ª òì  ˜ Ÿ ¦ ­ ¼ЀÁ Ãò€Ç¹É˜¼¨­ »ƒ x Ú]
è- !¹ž 4ÚŠ
8ÚÉRœ‚Åa°‚¾bDfÙ!©á”èâóÝÒͤ€5×ÔÚšÕ Â…~†ÖDͲ"©ßðßbí…8©ßüðßeí…;©ßö ðß» í… ðßK ©ß¯ ðßt í…J ðß¾õûƒq¤ öð
òó"Q1?È`ø˜`ø
±'ø`²˜ÝÒP`Æ#H`¦ p`Ð €`õ ø`Í û`“ ¨`‘ ø`‘ %``§ ¤€) ;7x`§ ˜  
À`Ø 8`Ý ×Ô
)P`å  7˜ 

ˆ
P`Õ
šÕ
) 7``Õ
ð`Ð
P`â
Â… @ 7``â
p`‘ ©á”¸`‘0` †Ö1 7@`  
À
7 È`°& P`«(`°'& X`Þ(`ã'!5 
7F
F' P` (`•'!5 7F  F'X`Â d!5 7F Cdaÿÿÿÿÿÿÿÿs  ¢  ¤d7Æ  Æd€`Â  +@;  =7[ [X`ù
#`€d!5
#7F
$Cdaÿÿÿÿÿÿÿÿs
%
& $%¢
&
¤d7Æ
"
Æd€`ù
'`ˆ
('+@;
("=7[
!"[H`§ )& )(7M ) 0`ï©ß8`ç+7P`ï - `û 0`ƒðß 8`û-/,7``ƒø`ÎE À`Îí…+,N`‘*7= 0`ó©ß8`ë!/7P`ó 2@`® 32& 32(7M 13À`Ÿ 0`§ðß 8`Ÿ1}07€`§ø`±È À`±í…/è0O.<7>5P`¡45 74@`œ 67d& 6& :4H`È ;d!5 ;:7F <Cdaÿÿÿÿÿÿÿÿs =: > <=¢ >
:¤d7Æ 9
:Ædp`È ? @?+@; @9= 7[ 89[@`ð
Ad!5
A4!7F
BCdaÿÿÿÿÿÿÿÿs
C4
D BC¢
D 4¤d"7Æ
4 4ÆdH`
E&
E(#7M
E
0`Ö©ß8`Î8G$7P`Ö
I 
0`êðß 8`âI/H%7``êø`µE
À`µí…GHNF=7= K40`Ú JK
& J+'H`û L& L((7M L N4H`¶ MN€`¶ OM0 OM!0)7 Q  0`§ðß 8`ŸQ/P*7``§ø`ž( oPòì p o! q*9K rpWi s rqx ts t :`† S40`† T` UT+@; US=,7[ RS[H`¦V& V(-7MV0`ê©ß8`âRX.7P`ê `…Z `ö0`þðß 8`öZ/Y/7``þø`ÉEÀ`Éí…XYNW>7=p`¿ 14H`è [& [(27M [ ` ] `Œ 0`”ðß 8`Œ]/\37``”à` i\òì j i k)8J ljVh m lkw nm n 91cß
_9cç
` ò
òó‰cÞ
^ _`Acÿ
a^òóIc‰ b^òóIc® daQc» ebÉc­ cdec56ùcè ! f ǽácÌ h ۼؓùcŒ] ùcŒ ¾õf!c­ aQc³ bYc¿ hRg7>8ø`°´é \-ø`»ƒ 4å POø`×Î 0K

&=0ò
ø`çýø`£Áø`‘ Óø`Ëø`Á £ø`Ú Šø`¹
«ø`ƒáø`ÔÀø`¹Û ø`ð¤
ø`•»ø`¿Ò ø`ý¨ ùcþ
Œ ùcÝ Ÿ uƒqP`ëƒq@`§p`• (`Å ÄÝ@`Þ k¹ù·ä8`½
«…G¹ùbÁä8`‡á”´àYohú ¨¯½Äèï
Œš¡¨ÌÓµûgž
Áä·äá
ù
® Áä
·äñ W
m
µûh
(`™© ƒ   [ q j q x  £ ª < C J Q µûv
­ Áä)
·äð 
 µû\ ú êýú·ä´Ì`  
µû¡ØÁäT·ä3µû§·äD\ìþjòóòóòóqòóf9aYµÿ!cá —€+òì Ž  œ £ ª òì  ˜ Ÿ ¦ ­ ¼ЀÁ Ãò€Ç¹É˜¼¨­ »ƒ x Ú]
è- !¹ž 4ÚŠ
8ÚÉRœ‚Åa°‚¾bDfÙ&©á”î”øÝÒÒ¤€:×Ôߚե…ƒ†ÖIð˜'©ßðßbí…8©ßüðßeí…;©ßö ðß» í… ðßK ©ß¯ ðßt í…J ðß¾õûƒq¤ öò
òó"Q1œ‰%Œ‰%
4°%œ°%4·%
*$¾%d·%ô¦%L¦%
éGÊ%¬üÓ$wüø$Rƒq$é$$à$

BufferÁ 
djüÒ%vTü$×ÀÅ ¢ÈáT·+÷Æ&¥ÇÿÕÇÕœ¯&Œ¯&÷Æ4Ö&œÖ&4Ý&
*$ä&dÝ&ôÌ&LÌ&ÕÇEð&®üù%wüž&Rƒq$&$†&¢ÈT¢&×ÀàȰ%·(Z÷ÆôäÉÍÕÇ£Pdã(dè(
·
 dã((dè(°dã(Hdî(
ËLXdî(d‡)ô
ød¶(Qƒq dÌ(’š dÃ(7ÆË¯öËPeã(eè(
·
 eã((eè(°eã(Heî(
ËLXeî(e‡)ö
øe¶(Qƒq eÌ(Κ eÃ(7ˆÍ¯¸ÍPfã(fè(
·
 fã((fè(°fã(Hfî(
ËLXfî(f‡)ø
øf¶(Qƒq fÌ(Š› fÃ(7ÊίúÎPgã(gè(
·
 gã((gè(°gã(Hgî(
ËLXgî(g‡)ú
øg¶(Qƒq gÌ(Æ› gÃ(7ŒÐ¯¼ÐPhã(hè(
·
 hã((hè(°hã(Hhî(
ËLXhî(h‡)ü
øh¶(Qƒq hÌ(‚œ hÃ(7ÎѯþÑPiã(iè(
·
 iã((iè(°iã(Hiî(
ËLXiî(i‡)þ
øi¶(Qƒq iÌ(¾œ iÃ(7Ó¯ÀÓPjã(jè(
·
 jã((jè(°jã(Hjî(
ËLXjî(j‡) øj¶(Qƒq jÌ(úœ jÃ(7ÒÔ¯‚ÕPkã(kè(
·
 kã((kè(°kã(Hkî(
ËLXkî(k‡) øk¶(Qƒq kÌ( kÃ(7”Ö¯ÄÖPlã(lè(
·
 lã((lè(°lã(Hlî(
ËLXlî(l‡) øl¶(Qƒq lÌ(ò lÃ(7Öׯ†ØPmã(mè(
·
 mã((mè(°mã(Hmî(
ËLXmî(m‡) øm¶(Qƒq mÌ(®ž mÃ(7˜Ù¯ÈÙPnã(nè(
·
 nã((nè(°nã(Hnî(
ËLXnî(n‡)ˆ øn¶(Qƒq nÌ(êž nÃ(7ÚÚ¯ŠÛPoã(oè(
·
 oã((oè(°oã(Hoî(
ËLXoî(o‡)Š øo¶(Qƒq oÌ(¦Ÿ oÃ(7œÜ¯ÌÜ \¿8   Î8

<Ý8 
­8 è8

l÷8 d ˆ9

P\ÿkÓßcîLY iš9³üþ7œ,—88hoÆÍ¹6Xt:    ¢:
L±:
 
 ¾:
<Í: ÷ Ø:
,ç:  ð:
<ÿ: 
 þ9 Š;
l™; d
 ª;
P\k Óßcî
LY iÈ Õÿå D Qöa À
ÍœÝ
¼;µüÏ9í,è9Ü9ìóJQ¨¯
dk¹`d´<
 
 Ä<
<Ó< 
 Þ<
Lí< d
 ú<
\‰= è ¢< ˜=
„§= '  »=
Q]ÿÿm
Öâ'ò Q^çoÏ Ücí M Z k Í=·üò;Û ,Œ<ÿ;^eÇÎ&-Œäë¹Rt ŒÅ>  Ú>
lé> ñØ ú>
\‰? ü ˜?
L§? ÿ ´?
<Ã?  ÷ÿ 
 Î?
,Ý?
 
  æ?
<õ? 
 €@
L@ d œ@
\«@ è³> º@
„É@ ' Ý@
Q]ÿmÖâ'òQ^çoÏ Ücí 
M Z k  Ë
Øÿÿé

IVöÿgÇÔœÿåERücÃÐðØáï@¹üƒ>ì,>>?F¨¯fmÅÌ$+ƒŠâéAH §¹˜º dçA   ÷A
<†B 
  B
L B d  ­B
\¼B è  ËB
lÚB  '  
 ëB
|úB
  † 
  C
ŒœC @B  ±C
œÀC €–˜  ×C
¬æC áõ ÕA ÿC
 ¬ŽD Êš; §D

S_ÿÿÿÿqÜèÿÉš;ú[hÿàõ{Ý ê–˜ý 
_ l?B  á


cp'ƒåòçgtcéö  ºD»ü¥A•,¿A²AU\ÀÇ!(ãêDK¥¬
gnÈϹ˜º>´²E(  (<ÌE
 =¼ÜE& 6eÄ &;÷E

=¬‡F$ 
ú $:  F
 =œ¯F" igÿ "9 ÆF
=ŒÕF  Á½ðÿ  
8 êF
=|ùF ayþÿ  7 ŒG
=lG ñØÿÿ 6 ¬G
=\»G üÿÿ 5 ÊG
=LÙG ÿÿÿ 4 æG
=<õG ÷ÿÿÿ 3 €H
=,H  2 ˜H
=<§H 
 1 ²H
=LÁH d 0 ÎH
=\ÝH è / ìH
=lûH  '  . ŒI
=|I
  † 
 - ®I
=Œ½I @B ", ÒI
=œáI €–˜ $+ øI
=¬‡J áõ '* E  J
 =¬¯J Êš; %)ÈJ

=S_ÿÿÿq%(ÜèÿÉš;ú'&[hÿàõ{$#Ý ê–˜ý "!_ l?B  á

cp'ƒåòçgtcéö  kxÿÿÿÿíúöÿÿÿ
o|œÿÿÿñþüÿÿ
sðØÿÿ õ!`yþÿ!
w#À½ðÿ#ù% €igÿ %{ 'ˆ 
ú 'ý )
6eÄ
)ÛJ½üðDë*,ŠEýD+2÷þX_¹À!{Üã=Dž¥ÿ`gÁÈ" ) ƒ Š ä ë E
L
¦
­
  h o ¹$G>dÓK( $(< ãK
=<òK& 
$&; ýK
=LŒL$ d$$: ™L
=\¨L" è$"9 ·L
=lÆL  '$ 
8 ×L
=|æL  †$ 7 ùL
=ŒˆM @B$6 M
=œ¬M €–˜$5 ÃM
=¬ÒM áõ$4 ëM
 =¼úM Êš;$3•N

=Ì¥N ä T$2ÂN
 =ÜÒN èvH$1ñN
 =ìO ¥Ôè$0¢O

=ü²O  rN %/ÕO
=üåO!  @zóZ% .ŠP
=üšP#
 €Æ¤~%
 -ÁP
=üÑP% Áoò†#%",úP
=üŠQ' Š]xEc%$+µQ
=üÅQ) d§³¶à
%'*ÁKòQ
=ü‚R è‰#ÇŠ%%)¥R
=Xdÿÿÿÿÿÿÿÿz%(êöÿÿç‰#ÇŠ '&sÿÿc§³¶à
$#þ  ÿÿ‰]xEc" "! ÿÿÀoò†#­  
!ÿƤ~8
Ÿ¬ÿ?zóZÃ)6ÿŸrN M³Àÿ¥Ôè×=JÿçvHaÇÔÿã TëQ^ÿÉš;uÛèÿàõÿer–˜
ïü?B y!Ÿ†!
 # '' # %š ç± %
'$
c;
'¡
)®
 Å
)¸R¿ü‘K§*,«KžKˆñøW^½Ä#*ïöT[¹À%ƒŠèïM T ² ¹ 

|
ƒ
á
è
F M « ²   ¹$Gtü°SL %LrÓS
süãS)J œXLIò%JqT
sü T'H v¢‡ºœþ%HpËT
süÛT%F ?
yÜÿ%Fo„U
sü”U#D €9[rüÿ%D
n»U
süËU!B À…ï ¥ÿÿ%B mðU
sü€V@ `±çöÿÿ%@l£V
sì³V> ðZ+ÿÿÿ$>kÔV

sÜäV< ‰·èÿÿÿ$<jƒW
 sÌ“W: ô«ýÿÿÿ$:i°W
 s¼ÀW8 6eÄÿÿÿÿ$8hÛW

s‘W6 
úÿÿÿÿ$6g „X
 sœ“X4 igÿÿÿÿÿ$4f ªX
sŒ¹X2 Á½ðÿÿÿÿÿ$2e ÎX
s|ÝX0 ayþÿÿÿÿÿ$0d ðX
slÿX. ñØÿÿÿÿÿÿ$. c Y
s\ŸY, üÿÿÿÿÿÿ$,"b ®Y
sL½Y* ÿÿÿÿÿÿÿ$*$a ÊY
s<ÙY( ÷ÿÿÿÿÿÿÿ$(&` äY
s,óY& $&(_ üY
s<Z$ 
$$*^ Z
sL¥Z" d$",] ²Z
s\ÁZ  è$ .\ ÐZ
slßZ '$0[ ðZ
s|ÿZ  †$2Z [
sŒ¡[ @B$4Y ¶[
sœÅ[ €–˜$6X Ü[
s¬ë[ áõ$8W „\
 s¼“\ Êš;$:V®\

s̾\ ä T$<UÛ\
 sÜë\ èvH$>TŠ]
 sìš] ¥Ôè$@S»]

süË]   rN % BRî]
süþ]!
 @zóZ%
DQ£^
sü³^# €Æ¤~%FPÚ^
süê^% Áoò†#%HO“_
sü£_' Š]xEc%KNžSÎ_
sôÞ_ d§³¶à
$IM€`
sWcÿÿÿÿÿÿÿyILéõÿÿc§³¶à
 KJrÿÿ‰]xEcHGý 
ÿÿÀoò†#! FEˆ ÿƤ~¬ DC
 ÿ?zóZ7
BAªÿŸrN Á@?'4ÿ¥ÔèK>=±¾ÿçvHÕ<;;Hÿã T_:9ÅÒÿÉš;é87O\ÿàõs65Ùæ–˜ý43cp?B21íúŸ†0/w!'!.- # ç% #,+ %˜ c¯ %*)
'"
 9
'('Ÿ
)¬
ÿÿÿÿÿÿÿÿÃ
)&%) +6 öÿÿÿÿÿÿÿM +$#³ -À œÿÿÿÿÿÿÿ× -"!= /J üÿÿÿÿÿÿa / Ç 1Ô ðØÿÿÿÿÿÿë 1Q
3^
`yþÿÿÿÿÿu
3Û
5è
À½ðÿÿÿÿÿÿ
5e7r€igÿÿÿÿÿ7ï9ü
úÿÿÿÿ9y;6eÄÿÿÿÿ;=ô«ýÿÿÿ'=?š‰·èÿÿÿ±?A%ðZ+ÿÿÿ<A
£C°`±çöÿÿÇC .E;À…ï ¥ÿÿRE
¹GÆ€9[rüÿÝGDIQ?
yÜÿhIÏKÜv¢‡ºœþóKZMgœXLIò~M“`ÁüîR¥
N,ˆSûRìóR Y ¸ ¿ 
%
ƒ
Š
è
ï
M T ² ¹   | ƒ á è F
M
«
²
u|Úá?F¤« nuÓÚ8?¤ gnÌÓ18ûahÇÎ-4šù_fÅ̹ C<7
Š×À!Ì&
„&
êJ$ >ü.ȃq$×À×À34e
×À!ÄT
„TžäH" küA,Ƀq$M×À×À3ì·
 Ü·
À–s$ü›:Ú%þ
0b11111110ÁÀ
0b11000000Áþ×À!¤í
 „ížäJ$ üÙ)݃q×ÀŒ×À5 
â
Žá


 ü
$ 
݃qüò
í  Ú¼´ Œ´ 
w  ÌÛ ŒÛ î½ ¬
|

G$­
 ¬À


ƒ
!å
éüª
»üÓ
üž `ü’
Mƒq
×À
×
q#ä† ºp$–
Îã7;Ý.·0cڠ݃qŽá ½êhî½Iˆë+®ë ¾ŽáÚìü¼üШ$”̧Œ§î½Ïùsž"#ù”ž"#†‹üåXŒV×À1ùr@#ár#½‹Q!êüù
Öü¯ üï[ƒq×À$‘³#ä†{Ø“ºÎã59Ý3]ÚŽá¢ШVî½8†‹½‹àˆ¹Àã
ëêŽáéè ÂïÑ Ú% ß*
21Ш0N ˜!(I
QPî½Om ¿ É È Îoº; y 
ˆ†‹ŒV×À ¯}
½‹ Ï  ê}z
ƒqx×Àwv×Àª¡³ä†×Àxä†\üÐyùrÜì#'Ø“gÎããèÝã2Ú¤ÕÚ
݃qüÒ¤ü¦#̦
H!¬×®ëüëüšâü›[ƒqÖºpý·QôÚá݃qñöÍ®ë¬ ý4
⇣1
Düè"¤è
¶vJ
!ø•è#

ž$Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
×ÀÅÏÅÏ Utf8ErrorÁÆÏ valid_up_toÁ¯vÇÏ error_lenÁ¯vlÅooÛÜ èì
ÎÒÞðüè#l×ÀÕÇ Ì 
 Š[Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ˆê)?ÈXM´­ú´
¡$Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ƒqúòûí
* Ô „¿ Ö¿ƒqú / ÕH üÎìüàuu|ƒÈ
îü¼úäøï•¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜òû×À1¾ùaᔜ äø¸#òû,×ÀsƒqaŽÂ§¾ äŽ c¹­#Þø‘ùå¸ùÅÕǼèüÓäø©äø°äø·ŠÞø%ô™œ™ÝÒ ¬ºÚ  $  'K ¤î
 
  
3¼Á À Ú ƒ/ 2Ú0_Ôë
õŒ
¬ðŒÉ šÕ& X—“! «£l’!üÔ,!8
#ü!)| !ÚÕ!,°! ´ !$§"¼§"<¬"×Ô&L´" ”¬"$É" Ò"
Ó"+ü²¡ gîüþÕ
ü ³
üŠÉ üÞÀü½ –ƒqäøäá”,‚ñÿ«ƒq\Aƒ¶JøÿÅ#¹ù«¤ƒ¶­«…¹ù%±«…ãÁ·
Œ¹ù¦ŽÂÉ
Ì‡ÝÆ ÈâÞ{n1Ú?ÚKÚ ÞøÁ
Ús©ÝÒ „… šÕÝüÔ¢ÚÕ×ÔHäøƒqäø" 4­%
 ¶%d¶%D¸%
Ø4'T¸%¬Ö%lÖ%ôí4ä% å'lå'<é'†ï%Lé'& Â)
œ±)„±)
ñ8 \×)  á)$ <Ö*,Ö*
òlð*
 + <+ƒ+
õ4 '  ,ƒ+œ+
 DŒ+Ú

 “,T“,4•,
Ñ4' D•,ì,Œ,½ê=
 Ì®,Œ®,î½
4À,  ˆ-
tˆ-TŠ-
Ð48dŠ-üñ,&´ñ,
¼ªBªBö­BŽÂ÷<®B÷<9)
-ÜnLàrc ¯-<¯-
ë!ÃÛÃÛ ManuallyDropÁÅÛ»¬µÜÀ,%*õ f_e±-
‹Càr,±- Ò-tÒ-
÷!è‘ *"(TÔ-
ÒBàrTdÔ-Ôù-Œù-ìô<.!ü›.$ "×Àüù-G4”.
°TìáZ:ü”.,äÙ. B¬„/|„/®ë$”/  ¨/©/üä$Å
(7G(Úõð hü©%€
üÌ%Ý üë+füå,¾ü¥-þüÄ-ßüï-´üÎ.Uƒq$š%s ÷$l%¯ –sÀoÐ%8Á¿Qs×Cqø– Šä†4ï+×À+ø– Dè‘ ,é,õ –sß©- õ 4 è‘ P·ä<È- õ  è‘ Óìáó-ª÷×Àeºp$Ò.è
¾

should_inlineÁ og_capÁÚÎ$Ýï
¾ÞϤ÷¹µ ¢·^ƒÚˆŒ ôíò†ïŹ w‘Ž &ÒŽ ì´ ½êpî½SÅ ï ôâ‘ Ç’ ‚“ òª“ ùìô¬—” u®ë.–ss!$æBTæBëB
û(,ëBüC(\¡C
´ÕCT­C¼¡CüÍC. Ž,×ÀüCl4ÆC
°Td9üÆC6$œD
|œDD¡D
ü
( T¡DüŠD! Ü‹E DžEÚ $ðGlðG4õG
ú(
DõG$ÄHÄÄHŒÉH
þ(
œÉHüÞG ŒÞG½ê
s  Ì–HŒ–Hî½ 4¨H
,ŽH  üˆEï
* ®H ³”ûK\€L
$ûKl€L$ßIlßI4äIï &DäIüÃI6ÜÃI
I<TîI&¬J|J®ë$ŸJ,‡JüÀH·* £J üôL'´ôL£èMTM'ü€N'<ŒN
M\€N””NÜŒN.ü€N04¨N
Ó[ZD¨N.$•Ol•O4šOï &DšOüùN6ÜùNÆ  ;T¤O%¬ÉO|ÉO®ë$ÙO,ÁOüýMð* ÝO ýOü¥BØ
õüÜB¡
üúBƒ
üÈGrü¸IwüàK—üÛLœüîNÑB¹ùL´BT¿BàB ƒq/|þBÇÀ ×Àâk˜Å¥ ²aä†4ÌG×À7Å¥ QƒqÇÅ¥ 3ºp$¼I×À9Å¥ Sƒqù ºp”ßLC Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ûþ¦ äºp$òN×ÀmÅ¥ ƒq. \ŠÞbgneeded_capacityÁnÝ? · heap_bufferÁ\äKamortized_capacityÁ ··`öÚ»› 
ã› í¬œ «ëœ rï õ¥ž ƽê¦î½ƒqjèŸ ï íÆ  Ϯ몃q£èO‡¢ )â ôï ®Æ  ®ëlƒqM$Ù\TÙ\Þ\»› &,Þ\<û\ý\Žá û\,ý\¬Á]<Æ]„… $Á]<Î]„Æ]ŒÁ^TÆ^šÕ$Á^dÆ^l€_   *
 û^ £
¤ú^
µ"‡£££¹ƒ£¹„£þ-'ºˆÉ¬g,õ^ |c\ª_Œª_1vß

d½_D¿_Ž ½_T¿_”½_9vç
‰vÞ
 
Avÿ
  Iv‰  Ö® Iv® Qv» Év­  ùvè !  ǽávÌ  ۼؓùvŒ] ùvŒ 
òW!v­ Qv³ Yv¿ ZEd¢`D¤`Ž ¢`
T¤`ü†`)|`ÚÕ\†`D ì’`l«b  *Üžb<£b×Ô$žbW
´£bÂb÷ü¡\¡üÏ\óüí\Õü¬^–üÞ^äùvþ
Œ ùvÝ Ÿ  Ä\¹ùL±\×À ¼\Ó\Å¥ !<ñ\Õ«…°«…:ï¬ d¥ƒ¶®Ö® Ö® Ö® çýá”Ö® ¼Òá”Ö® ²Ö® ¥x ˜µÿ!vá E—€jäá”Òƒ¶Û ¾str_lenÁž,°^ push_bufferÁ\â^œ‚ƒ°‚zÁð »› Žáw„… WšÕ0å¬ ¸òŠ IŽ0òŠ ú¯ GŽÚÕã×Ô$clc4”cï &D”c¬c,c
ô|<<cÜc¥c
ÚOÞÏÞÏCharsÁàÏù¯vyÞi®¾Ïžv,¥c]üc"$«c
ûM‚®‚®RevÁ„®ùùBÿ=£“ Ž
¿· ¼4«cøœc#

ž$ÔÁ|$( 4 Füc#
l$§dT§d¬d»› &
 ,¬d˜±c
¡$ÔÁÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÀü^e§º f
 l´dD·dγ
´d
T·dÔ§d
 
 * üšd(<Ÿd×Ô$šd X  üŸd#DÏd Û¼
Ýd
 øüÖb‡ü†c×HOV®ÔÁdïb¹ùLáb•¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜§º kÔÁÔ ¬¸ L¬¸ U¿· ×À³Å¥ ÍgIŒXÅ¥ rʃ¶®ÝchÁŠc
Ž n^e§º ¹Ò
U ï J’· ,¹·  ¦¸ §†¹ N»› ⺠\γQ×Ôø„ÃfLÈf
$Ãf\Èf$ÐgüÐg Áä4hòìœhÁäü©i%d´i
¥ÏLªi\ÁiÜ
Ì´iü©i. üšiHtši
Å.DÙiÚ
34þi
´¦l L³lÛ ´Ël¤ïl
ü£lk<Ùn 4ân
ü½n,ܽn
ër 9
1*ñnùüÇeª ü³f¾ü¾g³üúg÷ü‰ièüìi…á”,áeÅ¥ ,×eL·fÁä\Âg ƒqœÐgÁädþgòìçTiÚ\ðiUÁä vâz { heap_pointerÁ}lengthÁ| heap_lengthÁy
 JÜ
ÚÝÛý¿ ÿëÀ ·Á Tî ¤|…pDŠp
ù$…pTŠpüæo/ôæo˜¸?púü…o˜×À$oÅ¥ ,“oá”7ŸÆ ž˜¸{„³rL¸rý¿ $³r\¸rüÌs%d×sëÀ LÍs\äsÜ
Ì×süÌs.ü½sHt½s·Á )DüsÚ
.4¡t\Ât´ïvLüvÛÌ”wüìvL\ÂwÓwûü¼q—ü£r°ü¬s§üü±t¢ ,ÑqÅ¥ ,ÇqL§rT°s(f\“t TµtæHâL™Ä OªÄ B
length_refÁKËÜ{Ú?Ûý¿ "ëÀ ·Á À„¡yL¦yý¿ $¡y\¦y´Á{LÎ{Ûœæ{læ{
ý$ô{!D—|
Úü¾{k¯|üü¥xŠü‘yž,¿xÅ¥ ,µxL•y»âRÏÛÚý¿ áÌ Ò}L}ý¿ $}\}´§}L´}ÛÃ}þüË|xüý|F$î|Å¥ ,ä|L}âImÛý¿ ±4ítŠ‘üþŒüÿŽ›ŽÅ¥ ,‘ŽítâQ/˜ít ©³ ƒ‘ ‰‘ÆÃ¾¹Å¥ ít³ítu|Ôâ×䱕 ƒqÕ•ü¨”­ƒq$Ö”ä†4½”Ý
24Æ• x ƒq Ì•~{ƒqvä†sä†VݪÔî™ ƒqšƒüƒq$–™ºp$·
1$ƒš w ƒq ‡š}ƒzƒquºprºpT·ƒ§$ž Ô­ž ºp ƞ͞üõXºpT˜žƒq$žƒqd6$½£ü¼£# ºpü¶£)òì !*ºp9K Zfz ºp òì¨
  
ÂÔ  àê
 ø
 å£ü¸¢­ᦠ|Ü¢¹ùL΢“× b ƒqt½£òìcks{òìš¡¨o$Ý·üÜ·) ä†üÚ·+òì !*ä†:L [g{ ä† òìª
 ¸ 
ÄÖ  âì
 ú
 ‹¸ˆüᶪ߮lÿ¶Å¥ ,õ¶Û d„Ä „Ý·òìcks{òìš¡¨n„é¸Lî¸ý¿ $é¸\¾L¾Û „µ¾Tµ¾
$À¾$„οLÓ¿
ˆ$ο\Ó¿l€À$‡À
}4€À4‡Àüî¿ Œî¿î½D žÀŠü·¸çüÙ¸Åü¸¿`ƒq$ʸÅ¥ ,À¸Lݸ-ß®4¼¿ä†º0â3Ý,_Ûý¿ ©½ß Wçß 4”à î½é$‘ÂđŒ–Â¥ž )œ–Â(œ¸Âl¸Â
Ž$ÆÂ$ÜÄüÉÀÛÀ¹ùLÑÀüŽÂG¢Å¥ ¼%J¥ž Çþâ dÙÅ „èÅLíÅȯ$èÅ\íÅÜèÅDùÅ
©N°HTùÅ ‚Æ DÐÆ|ÐÆ$ÙÆ
äB°/4ÙÆ-ÌÐÆ<àÆ
¦T YLàÆ0 ±È
D©Ç ¤©ÇL²Ç
ÿMø­ø­PeekableÁú­ù¹Bû­peekedÁ¹Bh´Ñ :)œ° z
\²Ç\—Ç
ÌÈÇ<ÍÇ„… $ÈÇ \ÕÇ ¤ÍÇDëÇ üýÇ- ô¡¹ùüëÇ@DôÇ
œNÕæ ô¡¶è Âè ƒh
 üôÇ7y  ­ ²ÈüÅ£Ï à
5üÕÅÝü’Ç ÊŹùL·Åô¡$ÂÅÕæ I°; Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙôå îê  Õæ <ÃÀŸ Õæ ¼&¬Õæ éè îõÜùÞû) lower_boundÁ w ȯ=àä ³å Íîå Õæ `Ïæ F„… Àßè EÕæ |$ȹù4¢È £È\È«…ÔÈ\‘È ¼ ÈBÄ‘È.üÈ)D†È
÷´\ü†È$ªÈd €È éè ~ þÇ×À«¦Ä³«…Þ öÄï $¹ùÉ®O$¼Å¹ùò ¼Ñî â
_ref__selfÁ„µÉLºÉûÇ$µÉ\ºÉ̵É4ÆÉªÈBDÆÉü©É&4®É
ÒLƒqçÈ$©ÉSü®É!ÖÉüßÈwžÉ¹ùL‹ÉÈ$–É}çÈ­°Èà.ù0_ûÇ
ªÈæ´ñ Ä„ËÊLÐÊûÇ$ËÊ\ÐʤåÊ œÈ×ÀÂè üËÊ/DÜÊ
œN°ÈœÈ¶ó Âè kôÜÊËšü‚ÊÀʹùL­ÊÈ$¸Ê°Èíéó Ì.ù0_ûÇßó Ì$éʹù„éÊDîÊÑî - ÷Ê\îÊùÊœ_èÊ éó y×À æÊ¹ù¾$²Ê¹ùÑî £«ï „ôËLùËȯ$ôË\ùËÔŽÌ  ô¡rÂè üôË5D…Ì
œN° ô¡¯÷ Âè Šfü…Ì$°ÌžüªËé˹ùLÖËô¡$á˰êá÷ É.ù0`ȯ×÷ Ì$—̹ù¥Ì UniqueÁ ž_markerÁ8Åá™-Ýñ§ ïíe¼îËè¿* ¥Œ—ÌDœÌÑî ßÐdœÌ §Ì¨Ì( 7–Ì á÷ Qr ”Ì×ÀK rV¹ùxrgÒú p¾;$Û˹ù±Ñî ïrÆrË„¯ÍL´ÍûÇ$¯Í\´ÍÔÉÍ ¥È“æÂè ü¯Í5DÀÍ
œN°È¥È¯ý Âè küÀÍ$ëÍ£üáÌŠ¤Í¹ùL‘ÍÈ$œÍ°Èïâý Î.ù0`ûÇ!Øý Î$Ò͹ùàÍ
ë!“æ(1ŒÒÍD×ÍÑî bSd×Í âÍãͰ¥¿ÑÍ âý Ù“æ ÏÍ×ÀÏ “æÚ¹ù¾)$–͹ù(Ïÿ Ñî 哿½“æÃ„ÚÎLßÎȯ$ÚÎ\ßÎÔôÎ ©ô¡–sÂè üÚÎ5DëÎ
œN°©ô¡«‚
Âè ŠfüëÎ$–ϧü’ÎÏιùL¼Îô¡$ÇΰêÝ‚
É.ù0`ȯÓ‚
Ì$ýιù‹Ï
ë!s'0ŒýÎD‚ÏÑî aRd‚Ï ÏŽÏª©¹üÎ Ý‚
Ó–s úÎ×ÀÍø– Õ¹ùö¾&$ÁιùÈ„
Ñî á–s¸–s½£$” 1|ó=É|á=‰|á=
 ô¡4*©|•>™|•>
 $Á|§@É|¦@
Ñ|¥@ 
Ù|¤@  á|£@
 é|¢@ 
ù| @  ù| @0A|Á@
"      

 CastTokenÁˆ G7TA¹šÕ“‡


÷‡
ˆ G7TA¹šÕÇ
ô¡)|Ê@y|Á@ù|è7ÿ{ýO^e){“Q“‡
){±Q1~ó= É~á= ‰~á=އ
,"){®P«Ç
´   öË%Ÿ ©~•>
™~•>
 $Á~§@  É~¦@ Ñ~¥@ Ù~¤@ á~£@ é~¢@ ù~ @  ù~ @0 A~Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕù‹
ô¡)~Ê@ y~Á@ù~è7ÿ!}ýO!
)}“Q$“‡
)}±Q%$1€ó='%É€á=‰€á=އ
'/& $)}®P"«ù‹
Û #"  ¸Í#%Ÿ ©€•>™€•> 
 (
&Á€§@01É€¦@/0Ñ€¥@./Ù€¤@-.ဣ@,-逢@+,ù€ @ *+ù€ @0A€Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕõ
ô¡*ƒ%)€Ê@)y€Á@ù€è7ÿ2)ýO2)“Q5)“‡
)±Q651ó=86É‚á=‰‚á= އ
8/7$)®P3)«õ
ƒ 43 L… úÎ4%Ÿ\… ©‚•>™‚•>

 9&Á‚§@ABÉ‚¦@@AÑ‚¥@?@Ù‚¤@>?á‚£@=>é‚¢@<=ù‚ @ ;<ù‚ @0AÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕý“
ô¡;ƒ6)‚Ê@:y‚Á@ù‚è7ÿC:ýOC)“QF:“‡
)±QGF1„ó=IGÉ„á=‰„á=އ
I/H$)®PD:«ý“
« ED L­ ¼ÐE%Ÿ\­ ©„•>™„•>
 J&Á„§@ RSÉ„¦@ QRÑ„¥@ PQÙ„¤@ OPá„£@ NOé„¢@ MNù„ @  LMù„ @0 A„Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ‰˜
ô¡LƒG)„Ê@Ky„Á@ù„è7ÿTKƒýOT“QWK“‡
±Q$XW1†ó=%ZXɆá=%‰†á=އ
Z/Y$®PUK«‰˜
Ó #VU # þÑV%Ÿ ©†•>&™†•>
 [&Á†§@'cdɆ¦@'bcц¥@'abÙ†¤@'`aᆣ@'_`醢@'^_ù† @ ']^ù† @0'A†Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ•œ
ô¡]ƒX)†Ê@\y†Á@ù†è7ÿ$e\ýO$e)…“Q$h\“‡
)…±Q+ih1ˆó=,kiɈá=,‰ˆá=އ
k/j $)…®P$f\«•œ
û *gf * ÀÓg%Ÿ ©ˆ•>-™ˆ•>
 l!&Áˆ§@.tuɈ¦@.stш¥@.rsÙˆ¤@.qrሣ@.pq鈢@.opùˆ @ .noùˆ @0.AˆÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕ¡ 
ô¡nƒi)ˆÊ@m"yˆÁ@ùˆè7ÿ+vmýO+v$#)‡“Q+ym“‡
)‡±Q2zyó=3|zÉŠá=3‰Šá=އ
|/{%$)‡®P+wm«¡ 
£ 1xw 1 ‚Õx%Ÿ ©Š•>4™Š•>
 }&&ÁЧ@5ÉŠ¦@5ÑŠ¥@5ƒÙФ@5ƒáŠ£@5銢@5ùŠ @ 5ùŠ @05Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ­¤
ô¡zÊ@~'Á@ùŠè7ÿ2~ýO2)()‰“Q2Š~“‡
)‰±Q9Šó=:ÉŒá=:‰Œá= އ
*&)‰®P2ˆ~«­¤
Ë 8ˆ 8 ÄÖ(Ÿ ©Œ•>;™Œ•>!
 Ž+'ÁŒ§@<ÉŒ¦@<ÑŒ¥@<ÙŒ¤@<ጣ@<錢@<ùŒ @ <ùŒ @0<Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕÓ¨
ô¡Ê@,Á@ùŒè7ÿ9˜ýO9˜.-)“Q9“‡
)‹±Q@œó=AžœÉŽá=A‰Žá=$އ
ž2/&)®P9«Ó¨
ô ?š ? ŠÛš(Ÿ ©Ž•>B™Ž•>%
 Ÿ0'Áާ@C§¨Éަ@C¦§ÑŽ¥@C¥¦Ùޤ@C¤¥áŽ£@C£¤éŽ¢@C¢£ùŽ @ C¡¢ùŽ @0CÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕ­
ô¡¡œÊ@ 1Á@ùŽè7ÿ@© ýO@©32)“Q@¬ “‡
)±QG­¬1ó=H¯­Éá=Há=(އ
¯4&)®P@ª «­
 F«ªl F ÌÜ«(Ÿ ©•>I•>)
Ö® °5%Á§@J¸¹É¦@J·¸Ñ¥@J·Ù¤@Jµá£@J´µé¢@J³´ù @ J²³ù @0JAÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕÖ® ô¡²­)Ê@±6yÁ@ùè7ÿGº±ýOGº87)“QG½±“‡
)±QN¾½1’ó=OÀ¾É’á=O‰’á=,އ
À2¿9&)®PG»±«Ö® Ç M¼» M †Ø¼(Ÿ ©’•>P™’•>-
òóÁ:%Á’§@QÉÊÉ’¦@QÈÉÑ’¥@QÇÈÙ’¤@QÆÇá’£@QÅÆé’¢@QÄÅù’ @ QÃÄù’ @0QAÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕòóô¡Ã¾)’Ê@Â;y’Á@ù’è7ÿNËÂýONË=<)“QNΓ‡
)‘±QUÏÎ1”ó=VÑÏÉ”á=V‰”á=0އ
Ñ>&)®PNÌ«òó ñ TÍÌ T ÈÙÍ(Ÿ ©”•>W™”•>1
 Ò?'Á”§@XÚÛÉ”¦@XÙÚÑ”¥@XØÙÙ”¤@X×Øá”£@XÖ×锢@XÕÖù” @ XÔÕù” @0XA”Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ‡º
ô¡ÔÏ)”Ê@Ó@y”Á@ù”è7ÿUÜÓýOUÜBA)““QUßÓ“‡
)“±Q\àß1–ó=]âàÉ–á=]‰–á=4އ
âC&)“®PUÝÓ«‡º
 [ÞÝl™ [L 
ËÞ-Ÿ\ ©–•>^™–•>5
 ãD'Á–§@_ëìÉ–¦@_êëÑ–¥@_éêÙ–¤@_èéá–£@_çèé–¢@_æçù– @ _åæù– @0_AÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕº¾
ô¡åà)–Ê@äEy–Á@ù–è7ÿ\íäýO\íGF)•“Q\ð䓇
)•±Qcñðó=dóñɘá=d‰˜á=8އ
óH&)•®P\î䫺¾
Á bïî b 
Ëï-Ÿ ©˜•>e™˜•>9
 ôI&Á˜§@füýɘ¦@fûüј¥@fúûÙ˜¤@fùúᘣ@føù阢@f÷øù˜ @ fö÷ù˜ @0fA˜Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕíÂ
ô¡öñÊ@õJÁ@ù˜è7ÿcþõýOcþLK)—“Qcõ“‡
)—±Qjó=kÉšá=k‰šá=<އ
M&)—®Pcÿõ«íÂ
ê iÿ i 
Ë,Ÿ ©š•>l™š•>=
ôå N%Áš§@mŽÉš¦@mŒÑš¥@mŒÙš¤@mŠáš£@mŠéš¢@mˆùš @ mˆùš @0mÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕôå ô¡Ê@OÁ@ùšè7ÿjýOjQP)™“Qj“‡
)™±Qqó=rÉœá=r‰œá=@އ
2”R&)™®Pj«ôå  pl“ pL• 
Ë,Ÿ\• ©œ•>s™œ•>A
ø– S%Áœ§@tžŸÉœ¦@tžÑœ¥@tœÙœ¤@tœáœ£@tšéœ¢@tšùœ @ t˜ùœ @0tÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕø– ô¡–s˜Ê@TÁ@ùœè7ÿq ýOq VU)“Qq£“‡
)›±Qx¤£ó=y¦¤Éžá=y‰žá=Dއ
¦X&)®Pq¡«ø–  È wÈ„
¡¢W w ÕÇ¢9Ÿ©ž•>z™ž•>E
 Îs§Y'Áž§@{¯°Éž¦@{®¯Ñž¥@{­®Ùž¤@{¬­áž£@{«¬éž¢@{ª«ùž @ {©ªùž @0{Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ‰Ð
ô¡Îs©¤Ê@¨ZÁ@ùžè7ÿx±¨ýOx±\[)“Qx´¨“‡
)±Qµ´ó=·µÉ á=‰ á=Hއ
·^')®Px²¨«‰Ð
 ù ~
ë!Îs²³]" ~ Õdz>Ÿ© •>™ •>I
 ’š¸_)Á §@ÀÁÉ ¦@¿ÀÑ ¥@¾¿Ù ¤@½¾á £@¼½é ¢@»¼ù  @ º»ù  @0A Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕÐÔ
ô¡’šºµÊ@¹`Á@ù è7ÿ¹ŸýOÂba“QŹ“‡
±QÆÅó=ÈÆÉ¢á=‰¢á=Lއ
Èc'®Pù«ÐÔ
¡ÄÃ 
Ë’šÄ0Ÿ ©¢•>ˆ™¢•>M
 ΚÉd)Á¢§@ÑÒÉ¢¦@ÐÑÑ¢¥@ÏÐÙ¢¤@ÎÏᢣ@ÍÎ颢@ÌÍù¢ @ ËÌù¢ @0Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ”Ù
ô¡ΚËÆÊ@ÊeÁ@ù¢è7ÿÓÊ¡ýOÓgf“QÖÊ“‡
±Q×Öó=ŽÙ×ɤá=މ¤á=Pއ
Ùh'®PÔÊ«”Ù
Ô ŒÕÔ Œ 
ËΚÕ0Ÿ ©¤•>™¤•>Q
 Š›Úi)Á¤§@âãɤ¦@áâѤ¥@àáÙ¤¤@ßàᤣ@Þß餢@ÝÞù¤ @ ÜÝù¤ @0Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕÜÝ
ô¡Š›Ü×Ê@ÛjÁ@ù¤è7ÿäÛ£ýOälk“QçÛ“‡
±Qèçó=êèɦá=‰¦á=Tއ
êm'®PåÛ«ÜÝ
ˆæå 
ËŠ›æ0Ÿ ©¦•>™¦•>U
 Æ›ën)Á¦§@óôɦ¦@òóѦ¥@ñòÙ¦¤@ðñᦣ@ïð馢@îïù¦ @ íîù¦ @0Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ¤â
ô¡Æ›íèÊ@ìoÁ@ù¦è7ÿõì¥ýOõqp“Qøì“‡
±Qùøó=œûùɨá=œ‰¨á=Xއ
ûr'®Pö쫤â
¼ š÷ö š 
ËÆ›÷0Ÿ ©¨•>™¨•>Y
 ‚œüs)Á¨§@žɨ¦@žƒѨ¥@žƒÙ¨¤@žá¨£@žé¨¢@žÿù¨ @ žþÿù¨ @0žÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕìæ
ô¡‚œþùÊ@ýtÁ@ù¨è7ÿý§ýOvu“Qý“‡
±Q¢Šó=£ŒŠɪá=£‰ªá=\އ
Œ4w'®Pý«ìæ
𠡈 ¡ 
Ë‚œˆ0Ÿ ©ª•>¤™ª•>]
 ¾œx)Áª§@¥ɪ¦@¥Ѫ¥@¥Ùª¤@¥áª£@¥éª¢@¥ùª @ ¥ùª @0¥Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕ´ë
ô¡¾œŠÊ@ŽyÁ@ùªè7ÿ¢Ž©ýO¢{z“Q¢šŽ“‡
±Q©šó=ªɬá=ª‰¬á=`އ
|'®P¢˜Ž«´ë
¤ ¨˜ ¨ 
˾œ0Ÿ ©¬•>«™¬•>a
 úœž})Á¬§@¬¦§ɬ¦@¬¥¦Ѭ¥@¬¤¥Ù¬¤@¬£¤á¬£@¬¢£é¬¢@¬¡¢ù¬ @ ¬ ¡ù¬ @0¬Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕüï
ô¡úœ Ê@Ÿ~Á@ù¬è7ÿ©¨Ÿ«ýO©¨“Q©«Ÿ“‡
±Q°¬«ó=±®¬É®á=±‰®á=dއ
®(®P©©Ÿ«üï
Ø ¯ª© ¯ 
Ëúœª0Ÿ ©®•>²™®•>e
 ¯*Á®§@³·¸É®¦@³·Ñ®¥@³µÙ®¤@³´µá®£@³³´é®¢@³²³ù® @ ³±²ù® @0³Á@
"      ìˆ


÷‡
ˆ G7TA¹šÕÆô
ô¡±¬Ê@°ƒÁ@ù®è7ÿ°¹°­ýO°¹“Q°¼°“‡
±Q·½¼ó=¸¿½ɰá=¸‰°á=hއ
¿(®P°º°«Æô
Œ»º 
Ë»0Ÿ ©°•>¹™°•>i
 òÀ*Á°§@ºÈÉɰ¦@ºÇÈѰ¥@ºÆÇÙ°¤@ºÅÆá°£@ºÄÅé°¢@ºÃÄù° @ ºÂÃù° @0ºÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕ“ù
ô¡ò½Ê@ÁˆÁ@ù°è7ÿ·ÊÁ¯ýO·ÊŠ“Q·ÍÁ“‡
±Q¾ÎÍó=¿ÐÎɲá=¿‰²á=lއ
Ð(®P·ËÁ«“ù
 ½ÌË ½ 
ËòÌ0Ÿ ©²•>À™²•>m
 ®žÑŒ*Á²§@ÁÙÚɲ¦@ÁØÙѲ¥@Á×ØÙ²¤@ÁÖ×á²£@ÁÕÖé²¢@ÁÔÕù² @ ÁÓÔù² @0ÁÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕàý
ô¡®žÓÎÊ@ÒÁ@ù²è7ÿ¾ÛÒ±ýO¾ÛŽ“Q¾ÞÒ“‡
±QÅßÞó=ÆáßÉ´á=Ɖ´á=pއ
á(®P¾ÜÒ«àý
ø ÄÝÜ Ä 
Ë®žÝ0Ÿ ©´•>Ç™´•>q
 êžâ*Á´§@ÈêëÉ´¦@ÈéêÑ´¥@ÈèéÙ´¤@Èçèá´£@Èæçé´¢@Èåæù´ @ Èäåù´ @0ÈÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕ­‚ ô¡êžäßÊ@ãÁ@ù´è7ÿÅìã³ýOÅì“QÅï㓇
±QÌðïó=Íòðɶá=͉¶á=tއ
ò(®PÅíã«­‚ ­ Ëîíl­ Ë 
Ëêžî0Ÿ ©¶•>Ι¶•>u
 ¦Ÿó*Á¶§@Ïûüɶ¦@ÏúûѶ¥@ÏùúÙ¶¤@Ïøùá¶£@Ï÷øé¶¢@Ïö÷ù¶ @ Ïõöù¶ @0ÏÁ@
"      ìˆ


÷‡
ˆ G7TA¹šÕú† ô¡¦ŸõðÊ@ôÁ@ù¶è7ÿÌýôµýOÌý˜“QÌô“‡
±QÓº Ôƒ ×Àì  ÔÌ  
Ѓ2‚š#®PÌþô«ú† â Òÿþ Ò 
˦Ÿÿ0Ÿ  ÕŸä ÕñŸö¨ Õˆ ˆ “‡
Ÿß Ö
x
Æb“‡
a‹¡,Š ‚È‚ÈArgumentÁ„È´ÀbökÏ®ÝWj´©×Œ³ Ó׊ä×êy
«cŒœ¡,ù¸ç¨. Õì¨ 
îbÎs}ñ¹ö¨ ¡ù¸ì¨) üî' ÕŽ
%×ÀüÏG Õ 
ò[±ÂŽB„ž¡üç/  ¯ Õî   œÕ  © 1 ; ¾ Ô¢üƨ
½Øüýñ ù|µ=²ù|Ñ=–ù|„>ãù|ô?sù{«PVù{ÊP7ù{QSù~µ=²ù~Ñ= ù~„>ã
ù~ô?s ù}«PVù}ÊP7
ù}QSù€µ=²ù€Ñ=–ù€„>ãù€ô?sù«PVùÊP7ùQSù‚µ=²ù‚Ñ=–ù‚„>ãù‚ô?sù«PVùÊP7ùQSù„µ=²ù„Ñ=–ù„„>ãù„ô?s ùƒ«PVùƒÊP7"ùƒQSù†µ=²$ù†Ñ=–%ù†„>ã&ù†ô?s'ù…«PV$ù…ÊP7)ù…QS$ùˆµ=²+ùˆÑ=–,ùˆ„>ã-ùˆô?s.ù‡«PV+ù‡ÊP70ù‡QS+ùе=²2ùŠÑ=–3ùŠ„>ã4ùŠô?s5ù‰«PV2ù‰ÊP77ù‰QS2ùŒµ=²9ùŒÑ=–:ùŒ„>ã;ùŒô?s<ù‹«PV9ù‹ÊP7>ù‹QS9ù޵=²@ùŽÑ=–AùŽ„>ãBùŽô?sCù«PV@ùÊP7EùQS@ùµ=²GùÑ=–Hù„>ãIùô?sJù«PVGùÊP7LùQSGù’µ=²Nù’Ñ=–Où’„>ãPù’ô?sQù‘«PVNù‘ÊP7Sù‘QSNù”µ=²Uù”Ñ=–Vù”„>ãWù”ô?sXù“«PVUù“ÊP7Zù“QSUù–µ=²\ù–Ñ=–]ù–„>ã^ù–ô?s_ù•«PV\ù•ÊP7aù•QS\ù˜µ=²cù˜Ñ=–dù˜„>ãeù˜ô?sfù—«PVcù—ÊP7hù—QScùšµ=²jùšÑ=–kùš„>ãlùšô?smù™«PVjù™ÊP7où™QSjùœµ=²qùœÑ=–rùœ„>ãsùœô?stù›«PVqù›ÊP7vù›QSqùžµ=²xùžÑ=–yùž„>ãzùžô?s{ù«PVxùÊP7}ùQSxù µ=²ù Ñ=–ù „>ãù ô?sùŸ«PVùŸÊP7ùŸQSù¢µ=²ù¢Ñ=–ù¢„>ãˆù¢ô?sù¡«PVù¡ÊP7ù¡QSù¤µ=²ù¤Ñ=–Žù¤„>ãù¤ô?sù£«PVù£ÊP7ù£QSù¦µ=²ù¦Ñ=–ù¦„>ãù¦ô?sù¥«PVù¥ÊP7ù¥QSù¨µ=²ù¨Ñ=–œù¨„>ãù¨ô?sžù§«PVù§ÊP7 ù§QSùªµ=²¢ùªÑ=–£ùª„>ã¤ùªô?s¥ù©«PV¢ù©ÊP7§ù©QS¢ù¬µ=²©ù¬Ñ=–ªù¬„>ã«ù¬ô?s¬ù««PV©ù«ÊP7®ù«QS©ù®µ=²°ù®Ñ=–±ù®„>ã²ù®ô?s³ù­«PV°ù­ÊP7µù­QS°ù°µ=²·ù°Ñ=–¸ù°„>ã¹ù°ô?sºù¯«PV·ù¯ÊP7¼ù¯QS·ù²µ=²¾ù²Ñ=–¿ù²„>ãÀù²ô?sÁù±«PV¾ù±ÊP7Ãù±QS¾ù´µ=²Åù´Ñ=–Æù´„>ãÇù´ô?sÈù³«PVÅù³ÊP7Êù³QSÅù¶µ=²Ìù¶Ñ=–Íù¶„>ãÎù¶ô?sÏùµ«PVÌùµÊP7ÑùµQSÌù·ÅR(Óü”« Ôæ Õî ÖÎs “‡
 ƒq$ “‡
)|¹=ìˆ
I|Õ=ò‹ –O¥‰
Q|ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ç
“‡
1|ø? Þˆ
BOވ
[Oàˆ
tOâˆ
Oäˆ
¦Oæˆ
¿Oèˆ
ØOêˆ
¹|¨@I{«PÇ
:N(N“‡
«N“‡
)~¹=ìˆ
I~Õ= ò‹ ¤N¥
Q~ˆ>
Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ù‹
“‡
1~ø? 

N
#N
<N˜
UNš
nNœ
‡Nž
 N 
¹~¨@I}«Pù‹
>M,M“‡
²M“‡
)€¹=ìˆ
I€Õ=ò‹ ­Mª‘
Q€ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
õ
“‡
1€ø? ™‘

M™‘
$M›‘
>M
XMŸ‘
rM¡‘
ŒM£‘
¦M¥‘
¹€¨@I«Põ
9L'L“‡
­L“‡
)¹=ìˆ
I‚Õ=ò‹ ¨L²•
Q‚ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ý“
“‡
1ø? ¡•
L¡•
L£•
9L¥•
SL§•
mL©•
‡L«•
¡L­•
¹‚¨@I«Pý“
2KK“‡
¨K“‡
)„¹=ìˆ
I„Õ=ò‹ ¡K¾™
Q„ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
‰˜
“‡
1„ø? ­™
ýJ­™
K¯™
1K±™
KK³™
eKµ™
K·™
™K¹™
¹„¨@«P‰˜
*JJ“‡
 J“‡
)†¹=$ìˆ
I†Õ=%ò‹ ™JÊ
Q†ˆ>&Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
•œ
“‡
1†ø?' ¹
õI¹
J»
)J½
CJ¿
]JÁ
wJÃ
JÅ
¹†¨@I…«P•œ
"I$I“‡
˜I$“‡
)ˆ¹=+ìˆ
Õ=,ò‹ ‘IÖ¡
ˆ>-Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¡ 
“‡
1ˆø?. Å¡
íHÅ¡
IÇ¡
!IÉ¡
;IË¡
UIÍ¡
oIÏ¡
‰IÑ¡
¹ˆ¨@I‡«P¡ 
H+H“‡
H+“‡
¹=2ìˆ
Õ=3ò‹ ‰Hï¥
ˆ>4Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
­¤
“‡
ø?5 Þ¥
ÙGÞ¥
õGà¥
Hâ¥
-Hä¥
IHæ¥
eHè¥
Hê¥
¹Š¨@I‰«P­¤
üF2èF“‡
yG2“‡
¹=9ìˆ
Õ=:ò‹ oG—ª
ˆ>;Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ó¨
“‡
ø?< †ª
¶F†ª
ÒFˆª
îFŠª

Gλ
&GŽª
BGª
^G’ª
¹Œ¨@I‹«PÓ¨
ÓE9¾E“‡
QF9“‡
¹=@ìˆ
Õ=Aò‹ FFÅ®
ˆ>BÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
­
“‡
ø?C ´®
ŒE´®
¨E¶®
ÄE¸®
àEº®
üE¼®
F¾®
4FÀ®
¹Ž¨@I«P­
©D@”D“‡
'E@“‡
)¹=Gìˆ
IÕ=Hò‹ Eñ²
Qˆ>IÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ö® “‡
1ø?J à²
dDà²
€Dâ²
œDä²
¸Dæ²
ÔDè²
ðDê²
 Eì²
¹¨@I«PÖ® CGlC“‡
ÿCG“‡
)¹=Nìˆ
I’Õ=Oò‹ ôC·
Q’ˆ>PÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
òó“‡
1ø?Q Œ·
<CŒ·
XCŽ·
tC·
C’·
¬C”·
ÈC–·
äC˜·
¹’¨@I‘«PòóYBNDB“‡
×BN“‡
)”¹=Uìˆ
I”Õ=Vò‹ ÌBË»
Q”ˆ>WÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
‡º
“‡
1”ø?X º»
Bº»
.B¼»
JB¾»
fBÀ»
B»
žBÄ»
ºBÆ»
¹”¨@I“«P‡º
/AUA“‡
­AU“‡
)¹=\ìˆ
I–Õ=]ò‹ ¢Aþ¿
Q–ˆ>^Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
º¾
“‡
1ø?_ í¿
ã@í¿
ÿ@ï¿
Añ¿
7Aó¿
SAõ¿
oA÷¿
Aù¿
¹–¨@I•«Pº¾
@\ë?“‡
~@\“‡
)˜¹=cìˆ
Õ=dò‹ s@°Ä
ˆ>eÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
íÂ
“‡
1˜ø?f ŸÄ
µ?ŸÄ
Ñ?¡Ä
í?£Ä
 @¥Ä
%@§Ä
A@©Ä
]@«Ä
¹˜¨@I—«PíÂ
Ó>c½>“‡
P?c“‡
¹=jìˆ
Õ=kò‹ E?ßÈ
ˆ>lÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ôå “‡
ø?m ÎÈ
‰>ÎÈ
¥>ÐÈ
Á>ÒÈ
Ý>ÔÈ
ù>ÖÈ
?ØÈ
1?ÚÈ
¹š¨@I™«Pôå §=j‘=“‡
$>j“‡
¹=qìˆ
Õ=rò‹ >ŽÍ
ˆ>sÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ø– “‡
ø?t ýÌ
]=ýÌ
y=ÿÌ
•=Í
±=ƒÍ
Í=…Í
é=‡Í
>‰Í
¹œ¨@I«Pø– z<q×Àd<“‡
ù<q“‡
¹=xìˆ
Õ=yò‹ î<ÍÑ
ˆ>zÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
‰Ð
“‡
ø?{ ¼Ñ
#<¼Ñ
?<¾Ñ
[<ÀÑ
w<ÂÑ
“<ÄÑ
¯<ÆÑ
Ë<ÈÑ
¹ž¨@I«P‰Ð
>;x×À(;“‡
¿;x“‡
) ¹=ìˆ
Õ=ò‹ µ;Ö
Q ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÐÔ
“‡
1ʿ? ΅
Ý:ŒÖ
ú:ŽÖ
;Ö
4;’Ö
Q;”Ö
n;–Ö
;˜Ö
¹ ¨@«PÐÔ
ô9’šà9“‡
v:“‡
¹=ìˆ
Õ=ò‹ l:áÚ
ˆ>ˆÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
”Ù
“‡
ø? ÐÚ
¢9ÐÚ
¿9ÒÚ
Ü9ÔÚ
ù9ÖÚ
:ØÚ
3:ÚÚ
P:ÜÚ
¹¢¨@«P”Ù
¶8†Κ¢8“‡
:9†“‡
¹=ìˆ
Õ=Žò‹ 09©ß
ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÜÝ
“‡
ø? ˜ß
e8˜ß
8šß
Ÿ8œß
¼8žß
Ù8 ß
ö8¢ß
9¤ß
¹¤¨@«PÜÝ
y7Š›e7“‡
ý7“‡
¹=ìˆ
Õ=ò‹ ó7ñã
ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¤â
“‡
ø? àã
(7àã
E7âã
b7äã
7æã
œ7èã
¹7êã
Ö7ìã
¹¦¨@«P¤â
<6”Æ›(6“‡
À6”“‡
¹=ìˆ
Õ=œò‹ ¶6¹è
ˆ>Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ìæ
“‡
ø?ž ¨è
ë5¨è
6ªè
%6
B6®è
_6°è
|6²è
™6´è
¹¨¨@«Pìæ
ÿ4‚œë4“‡
ƒ5“‡
¹=¢ìˆ
Õ=£ò‹ y5í
ˆ>¤Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
´ë
“‡
ø?¥ ðì
®4ðì
Ë4òì
è4ôì
5öì
"5øì
?5úì
\5üì
¹ª¨@«P´ë
Â3¢¾œ®3“‡
F4¢“‡
¹=©ìˆ
Õ=ªò‹ <4Éñ
ˆ>«Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
üï
“‡
ø?¬ ¸ñ
q3¸ñ
Ž3ºñ
«3¼ñ
È3¾ñ
å3Àñ
4Âñ
4Äñ
¹¬¨@«Püï
ƒ2©úœo2“‡
“‡
¹=°ìˆ
Õ=±ò‹ þ2”ö
ˆ>²Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Æô
“‡
ø?³ ƒö
12ƒö
N2…ö
k2‡ö
ˆ2‰ö
¥2‹ö
Â2ö
ß2ö
¹®¨@«PÆô
A1°-1“‡
Æ1°“‡
¹=·ìˆ
Õ=¸ò‹ ¼1áú
ˆ>¹Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
“ù
“‡
ø?º Ðú
ï0Ðú
 1Òú
)1Ôú
F1Öú
c1Øú
€1Úú
1Üú
¹°¨@«P“ù
ÿ/·òë/“‡
„0·“‡
¹=¾ìˆ
Õ=¿ò‹ z0®ÿ
ˆ>ÀÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
àý
“‡
ø?Á ÿ
­/ÿ
Ê/Ÿÿ
ç/¡ÿ
0£ÿ
!0¥ÿ
>0§ÿ
[0©ÿ
¹²¨@«Pàý
½.¾®ž©.“‡
B/¾“‡
)´¹=Åìˆ
Õ=Æò‹ 8/ûƒ ˆ>ÇÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
­ “‡
ø?È êƒ k.êƒ ˆ.ìƒ ¥.îƒ Â.ðƒ ß.òƒ ü.ôƒ /öƒ ¹´¨@«P­‚ {-Åêžg-“‡
“‡
¹=Ììˆ
Õ=Íò‹ ö-Ȉ ˆ>ÎÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ú† “‡
ø?Ï ·ˆ )-·ˆ F-¹ˆ c-»ˆ €-½ˆ -¿ˆ º-Áˆ ×-È ¹¶¨@«Pú† ;,̦Ÿ',“‡
¾,Ì“‡
ý ÓÎs Ô×À­,\*àÁÉ* Îs,,Ø“±*ò‹ ò‹ 8,µŒ <,ÖµŒ ,Œ O, ÷ã [,×Àè*ƒq€*ò‹ u,Øy ~» src_tokenÁ^eìˆ
dest_tokenÁ^e¥‰
 F»'m¾ ¯ » m»ø ñã ù
^eìˆ
ä ø ^e¥
 ­ »’k
"¾ Ö "»l$»_%ñã _^eìˆ
ä ]^eª‘
 )»ïi3¾ þ 3»kj5»Á6ñã Á^eìˆ
ä ¿^e²•
 s:»IhD¾ ¦ D»ÇhF»"Gñã "^eìˆ
ä   ^e¾™
 Ô!K»¢f"U¾ Î #U» g$W»ƒ%Xñã ƒ&^eìˆ
ä '^eÊ
 5(\»ûd)f¾ ö *f»ye+h»ä,iñã ä-^eìˆ
ä â.^eÖ¡
 /m»Tc0w¾ ž 1w»Òc2y»E3zñã E4^eìˆ
ä C5^eï¥
 ÷6~»—a7ˆ¾ Æ 8ˆ»b9Š»©:ñã ª;^eìˆ
ä ¨<^e—ª
 \=»Ô_>¾ ï ?»\`@»Aœñã B^eìˆ
ä C^eÅ®
 ÂD »^Eª¾ ˜ Fª»˜^G¬»uH­ñã vI^eìˆ
ä tJ^eñ²
 (K±»N\L»¾  M»»Ö\N½»ÛO¾ñã ÜP^eìˆ
ä ÚQ^e·
 ŽR»ŒZS̾ ì TÌ»[UλAVÏñã BW^eìˆ
ä @X^eË»
 ôYÓ»ÈXZݾ  [Ý»PY\ß»§]àñã ¨^^eìˆ
ä ¦_^eþ¿
 Z`ä»ÿVaî¾ ¼ bWcð»
dññã e^eìˆ
ä  f^e°Ä
 Àgõ»8Uhÿ¾ å iÿ»ÀUj»tkñã ul^eìˆ
ä sm^eßÈ
 'n»sSo¾ Ž p»ûSq»Ûrñã Üs^eìˆ
ä Út^eŽÍ
 Žu»­Qv¡¾ ¹ w¡»5Rx£»@y¤ñã Az^eìˆ
ä ?{^eÍÑ
 ó|¨»ÖO}²¾ ê ~²»`P´»¥µñã §^eìˆ
ä ¥^eÖ
 Yƒ¹»òM„þ œÃ»N†Å»Æñã ˆ^eìˆ
ä 
^eáÚ
 ÁŠÊ»L‹Ô¾ Ï ŒÔ»ªLÖ»tŽ×ñã u^eìˆ
ä s^e©ß
 'Û»EJ’å¾ ƒå»ÓJ”ç»Úèñã Û^eìˆ
ä Ù^eñã
 ˜ì»nH™ö¾ · šö»üH›ø»@œùñã A^eìˆ
ä ?ž^e¹è
 óŸý»—F ¾ ë ¡»%G¢»¦£Šñã §¤^eìˆ
ä ¥¥^eí
 Y¦Ž»ÀD§˜¾ Ÿ ¨˜»NE©š» ªñã 
«^eìˆ
ä  ¬^eÉñ
 ¿­Ÿ»çB®©¾ Ó ¯©»vC°«»r±¬ñã s²^eìˆ
ä q³^e”ö
 %´°» º¾ º»šA·¼»Ø¸½ñã Ù¹^eìˆ
ä ׺^eáú
 »Á»/?¼Ë¾ ½ ½Ë»¾?¾Í»>¿Îñã ?À^eìˆ
ä =Á^e®ÿ
 ñÂÒ»S=Ãܾ ó ÄÜ»â=ÅÞ»¤Æßñã ¥Ç^eìˆ
ä £È^eûƒ  WÉã»w;Êí¾ ¨ Ëí»ï»
Íðñã  Î^eìˆ
ä  Ï^eȈ  ½
Ðô»þ¾ Ý Òþ»*:Ó¾p
Ô®t
ÕÀb9ÖˆÀp9׊A7އ
Ù{¾‡
°{Ùˆ
{އ
þyö˵yô‹
y
yއ
"x¸Í×wð
¸w”‘
wއ
6vúÎëuø“
Ìuœ•
/uއ
Gt¼Ðûs„˜
Üs¨™
?sއ
WrþÑ rœ
ìq´
Oqއ
gpÀÓpœ 
üoÀ¡
_oއ
wn‚Õ+n¨¤
 nÙ¥
bmއ
slÄÖ"lΨ
lª
Vkއ
bjŠÛjü¬
ði¯®
Diއ
PhÌÜþgª±
ÞgÛ²
4gއ
@f†ØîeÖµ
Îe‡·
$eއ
0dÈÙÞc‚º
¾cµ»
cއ
b‚¾
Ìaµ¾
§aè¿
û`އ
`µÂ
µ_èÂ
_šÄ
å^އ
ò]æÆ
 ]˜Ç
|]ÉÈ
Ò\އ
ß[•Ë
[ÇË
i[øÌ
¿Zއ
ËYÈ„
‰YÕÇmY„Ð
OY·Ñ
£Xއ
®WôÓ
kWÕÇJWËÔ
,W‡Ö
wVއ
UÚØ
+UÙ
UËÚ
OTއ
TS¢Ý
ÿR×Ý
ØR“ß
#Rއ
(Qêá
ÓPŸâ
¬PÛã
÷Oއ
üN²æ
§Nçæ
€N£è
ËMއ
ÐLúê
{L¯ë
TLëì
ŸKއ
¤JÂï
OJ֕
(J³ñ
sIއ
wHΙ
!HÁô
úGþõ
DGއ
FFÙø
ðEŽù
ÉEËú
Eއ
D¦ý
¿CÛý
˜C˜ÿ
âBއ
äAó ŽA¨‚ gAåƒ ±@އ
³?À† ]?õ† 6?²ˆ €>³Š =‹‹ .=‹Œ ¶<½ ë<˜Ž ¿;ôŽ b;ÎsÚ:„Ê+ 
(LÏ+ 
ÊL ¢$Ê+ \Ï+ ‡, 
×Àìí+ Ìí+ ³Š ,üÊ+  $è+ 
óN’† ÉLÎsÇš¢Îs £‡ Îsñ^e üŒ,Z üè+  æ, 
í, ü–+× ,<Æ2Îsl²+ ’† ,¨+  Îs#×ÀC+|Œ† »³Š W‰‡ < » ¬, l·, 4¼, 
⣇ $·, D¼, ̬, D®, 
åXL¼®,  ×, æ,  å, pÇÎs™,   ˜Îs,, ·‡ $”, Îã â×ÀÙ¾-÷0äÒ‰ ‚Š ÜÎs”Æ- 
õ- 
×ÀìÛ- ÌÛ- ³Š , ÷- 
„’. L—. Œ† $. \—. Ü’. D£. 
©N CT£. LÁ. ”Á. 4Ë. 
â¤/DË. $õ. 
\õ. $ú. 
ûMø­ø­áå ú­ù¹Bû­€æ ¹Bh´Ñ :)œ 
l 4ú. j  Tè.   $í.  Û·‡ t/ l§/ 4¬/ Ò‰  $§/ D¬/ ü/& Dž/ ‚Š OC
¼ž/ $Æ/ \Æ/ $Ë/ 
äB , 4Ë/ *¬Æ/ <Ò/ 
£T ·‡ V
LÒ/ / tî/ äî/ Dý/ ‚Š &†0 lý/ t­0 
 À0 
$Á0 =Müó,Î iy,çÈMüÂ-ÿ üƒ.¾ ü·.Š ü Îslª- ’† ,- ¹ L™- Îsä×ÀÙø D‡.  ×À».  ¹ aÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ·‡ ` ø }þ·‡ õ¬Îã î×ÀæR Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÄ Û‰• äÉ” þoÎã 3V seperatorÁcß4LùbsepÁ^÷ç 5³Š \Œ† +ùŒ 
³ ×ò ŸÒ‰ õ‚Š Ô  ¾ o‚Š (ø ã¹ êø ñ¹ øÎsþ ºÄ
ƒq
Ùƒq-5Ž
© º
­ ,Îs7‰Ð
?ƒqÅ¥ Waõ— ¤$Ó-
lÓ-
4Ø-

âô¡-DØ-
ÄÉ-
LÉ-
ÕÇCü»-'
©  ç-
è-
ü†-b
ÎÎs$¬-
ô¡$ -
ƒq×ÀË“‡
ãÎã$T¡™ òÕÇÊô¡ô¡´Þ2
„Þ2
žä$ï2
üÐ2%
© û2
Ðüš2a
Îs$Á2
×À$²2
ƒqmÎã6žäŒ¯
´žä²Ï ó2
¸ ©  ô2
½Ð»Îs¸×Àƒq!×ÀÎãÒôì¤C
œ¤C
ÝÒD¸C
ü–C,
© ÈC
ÑüÞBj
Îs$‡C
DóB
ƒqlý4ÝÒŠ¤øL
|øL

ìäøˆM
&üøL'
M

Ú[ƒqúÎs
ª TlM
ÕŸ 
M
¥M
ÒüªL{
Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Îsú¼ÖL
äøËL
îüõŽÂ™Ÿ ÅŸ ïôÛU
ÌÛU

îäøõU
&üÍU-
© €V
ÔüU
Îs$¾U
äø³U
ƒqtŽÂ6Á¡ ä^
dä^
4è^

âäø
/Dè^
L¥_
üˆ_'
äˆ_

Ñ(!TÛ_
$ß_

“tÛ_
4ß_
œÛ_
4æ_

àOÄlÄlIterÁÇlµ ™lÈl
end_or_lenÁ™lÉlþø ™lŒœjSž £Dæ_
üÂ_-
ÄÂ_

Ø2†­†­óLj­ƒÈõ7E*tRdž¤ ÖXø¡Â_-


ÊL©ª©ª DecodeUtf16Á«ªùÕ1¬ªŽÂÕ1Z¯/
ë‹‘Ž¥ Äos
ø¡¹_Í
 
œ¡
ûMì¥  ³ ¼À
 Ì

Þ ½_
 ÛÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
³ª³ªDecodeUtf16ErrorÁ´ªcodeÁÕ1£Ì¿Ã.ÍQ `
,…`

a
<a
 Ö¿Îs„¨ ›a
 ˆ`
«¡`
\¡`
$¥`

â( ª`
<¥`
œÚ`
 Ö¿Îs„¨^e„¨Ššœa
³Ãü“\‰
©ÖüÚ^Â
üú^¢
ahü`,
Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Îs„¨ÄÁ\
äø¶\
ø¢ Þ^
ñÿøÎs<þ^
Ëì¥ ì¥ òŽ¥ †¤ ¸ì¥ ¯Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙϧ ý ì¥  ϧ 6@!Îã ;ÎsŽÂôŽÂõretÁñùu
®®¤éî¢ 
Úsö­£ íÓ£ Í€¤ §ˆ¥ 'æ¥ Ðý¦ ×äøõ© ÕÎsäøÎsäø%½f
d½f
4Áf
î¢ %DÁf
Lþf
üáf'
äáf
­£ &T³g
$·g
Ó£ ³g
4·g
œ³g
4¾g
€¤  =D¾g
ü›g,
¼›g
ˆ¥ <ø¢g,

æ¥ ;#
ø¢
=

LQý¦ 
] fj v
^e g
 Ûϧ Üg
<Ög

Õh
 Ýh
 h
,­h

×Àœ h
D¤h
‚Š <2 |¤h
 óg
«ùg
\ùg
$ýg
õ© & h
<ýg
Þh
½Íüðeî
³lØ$ü³f«
üÓf
ÀǤðg
Îs$¤f
äø™f
·¬ ·f
ñÿÎs<×f
ãì¥ Dì¥ rŽ¥ ¡†¤ Òì¥ hp‹­ yÙ­ Zϧ ,ðg
nÎã aÎã Ð×Àʎ´ŽÂ¸¼­ ²ùï
®l®Ò]
î¢ çü® Ê­£ ÁÓ£ £€¤ ˆ¥ cæ¥ Eý¦ Läø}‚Š Nõ© Îsäø˜4ùm
ƒqdùm
€n
»› *,€n
n
ÚüÔm7
,ém
‰Ð
,ßm
Å¥ l5»› tT¹q
¾q

Ú$¹q
,¾q
|¹q
 Çq
Îq
Ûüq>
$ªq
‰Ð
, q
{3ܹ ˜4¦w
ƒqŒ¦w
D­w
ëœ *T­w
½w
ÜüüvA
,w
‰Ð
,Œw
Å¥ l5ëœ t
ƒqÔ¥

„… +T´
œ¬
Å
Ýüî~W
š
Îã Lý~
Tˆ
¹ù}ŠÞ!L„… 4ƒ‚
ƒq|ƒ‚
4Š‚
ï -DŠ‚
˜‚
ÞüÜ<
×À
‰Ð

Å¥ u9ï |$§…
T§…
¬…
ܹ ),¬…
4ë…
ƒqœë…
Tò…
šÕ.dò…
ÿ…
 «£<þ…
üÔY8!üÄ…B
üÄ…!

¹vüæ…
'ކ
ßüꄤ
üq
¦ÄDŠ…
Îã Lü„
¡…
‰Ð
4«…©«…ö¹ùÁ·á@C{ܹ lšÕ6üÔø¢À ×4߈
ƒqŒßˆ
Dæˆ
ŸÆ -Tæˆ
Tóˆ
øˆ
ܹ $óˆ
,øˆ
ñˆ
 «£tðˆ

Ü¢‡£Á·C,„‰
àü´ˆP
á”,Έ
‰Ð
,Ĉ
á”ÙÅ¥ ÷Á·˜È+PŸÆ 
ܹ ì…à ª
ƒqœò

šÕ.

áüµV
«…
Îã 
¹ùv9šÕ|4¶—
ƒqd¶—
½—

ø0,½—
È—
äü†—B
ÔÁdŸ—
Îã L‘—
¹ùx9†Æ ~4®š
ƒq”®š
Dµš
Ñî . ¾š
\µš
Æš
åü€šF
£š
Îã Lš
×À ›š
¹ùˆ¾!PÑî $€¤
T€¤
…¤
ܹ ),…¤
Œ¦¤
T«¤

ß$¦¤
d«¤
¸¤
 —£<·¤

µ"É»f@)4ü¤
 Üü¤
,¥
’·  )
<¥
& 
üü¤/
$¥¥

ûM¿·  S4¥¥
üÀ¥/
  -×Àüü¤t
4¹¥

°Tc ;ü¹¥7
l‡¦
DЦ
㇦
TЦ
4Þ¦
dަ
å¦
Žá),å¦
¬Þ¦

 
+œ‡§
Tާ

ã|4‡§

dާ
|Ǩ
˨

éǨ
4Ϩ
 \˨
äǨ
Áäü·¨=
|·¨

ª1å¨
Lê¨
 5d©

 
+Ô‚©
<‡©

ç$‚©
]¬‡©
¹©
æü¿£ú
üö£Ã
ü”¤¥
üó¤Æ
üú¥¿
üΦë
üý¦¼
$ç£
Îã LÍ£
أ
ú£
‰Ð
¹¦Ä>¦ÄÉ»oÔÁå ¿· &¿· /×ÀJ×Àß4þ¥
LÒ¦
s×ÀŽƒ¶_·ä§
¿ÁäÜ·äd¨ƒ¶±àidxÁæésubstrÁ4˜¤
ñ½ ÷¤
ch_lenÁ¿
num_bytesÁɵ ¯´ ܹ ë†É ÊÍÉ ’· OÅÊ !ŒË áγµŽáÛÌ &ˆÍ ÓÍ ½ÇÎ O4Å­
ƒq¼Å­
<Ì­
×Ô.<Ô­
„Ì­
â­
çüŠ­X
º­
Îã L ­
<«­
¹ùnew_lenÁ(V×Ô¡4ò
ƒqÔò
ŒÊ²
¥ž -œÊ²
ã²
èü‘²R
$´²
‰Ð
,ª²
Å¥ s7¥ž z,ðµ
œðµ
\öµ

¦#»'3löµ
2Ìêµ
^e Þ·
   ɶ
#ExcludedÁÖ® !#„Õ¶
\×¶
ã›  Õ¶
 ã¶
 t×¶
 £¶
$IncludedÁÖ® !$ ©¶
 
 ´Ï¶

|ž·
lž·

ë  ý¶
 Û ƒ·
  »·
,„¸
Œ„¸
LЏ

§#—Ö 1
\Џ
0¼þ·

Tð¹
õ¹
ܹ $ð¹
,õ¹
 ǹ
%“Ö Ö® % ͹

 µ¸
&ƒ× Ö® &„Á¸
\ø
ã›  Á¸
 ϸ
tø
A´»¸
|й
lй
èØ  é¸
Û ï¸

 §¹
’º

,˜º
\’º
|¼
l¼
èØ lغ
4ݺ

Þ$غ
Dݺ
,†»
Ìóº
„õº

Ý| óº
1¼õº
3 ¤»

¼‘»
„“»
ûÝ  ‘»
/¬“»
1 ,Ü»
!ã»
"
dÛ»
!" ì»
|·»
l·»
èØ í»
=ü´Ý
øé
üÞµ
Ä’¶
ü¸¶
dø¶
üô·ù
ü¤¸
dä¸
͹
üк
'tÊ´
‰Ð
´
—Ö ,§´
,âµ
ç£é£ê£ƒ× 룈ì£í£“Ö î£ˆï£ð£ UnboundedÁiΉ£i7|Ö®  —Ö 3œ’¶
BºÇÀ<ø¶
àø·
§á ·œâ Ñœ¤¸
ÇÀù<ä¸
°SwqF×À Ôº
üºÒGŒÖ® Ö® &Ö® uÖ® ~ ¸rangeÁÀ¹Ä¹}¹ù¹ þ-
¹+¹¹¾æ Ó‘Ö Öã› ,èØ ËÙ 1ܹ åã› ]èØ èØ y¿Ý `ûÝ +ûÝ á—Ö xèØ m—Ö 
$´Ã
Ä´Ã
d¹Ã

é—Ö /,ÆÃ
œ¹Ã
,¦Ã
­Ã
\åÃ
   + Dۀ
 ”ŽÄ
݀
ŽádŽÄ
,݀
π
 
ü€Ä!
‰Ä

» h 3
ĉÄ
1
üúÃ'
ÿVüŽÆ1
”“Æ

ð$ŽÆ
,¦Æ
­Æ
d²Æ
 ü“Æ,
ü°Å3
¤µÅ

ï$°Å
,ÊÅ
ÑÅ
dÖÅ
 üµÅ.
üÌÄ6
¼ÑÄ

î$ÌÄ
,éÄ
ðÄ
dõÄ
 üÑÄ1
ÒÆ
ìüÃÂ
ü¡Ã±
üÖÃü
–Ã
Îã LØÂ
—Ö ,ãÂ
×ÀdƒÃ
>4ùà ƒ‰Ð
žDÚÃ
ƒ¶G¿ßÀßÁßLessÁÂßÃßÄß~Å߯ßÇßGreaterÁÈßåºÝÈnûê7*Ö® ~Ö® M~|°Ä
ãÏã æ replace_withÁô¹5þ/dest_lenÁõpàæ œŽá¾è Íœé vãé 6ªê ö4ÎÞ
ƒqŒÎÞ
DÕÞ
ŸÆ -TÕÞ
ÔÎÞ
4àÞ
†Ö?DàÞ
îÞ
òü¢ÞL
ÁäLºÞ
‰Ð
,°Þ
á”Å¥ ¥AŸÆ ¬†ÖŠ4üß
ƒqœüß
TĈ
šÕ.dƒà
üüß
Tà
Â…@dà
¤à
óüÁßc
·ä<áß
Îã LÓß
«…ˆ¹ù§AšÕ­Â…$Ãþ
ÄÃþ
dÈþ
àæ ),Õþ
œÈþ
,µþ
¼þ
$‰ÿ
$Óÿ
 ôÓ
 #
+Øÿ
 £d×ÿ

Ü¢ï¬ 
n D *ÄÓÿ
,äÿ
’·  „Óÿ
<äÿ
üåþ
 ¡üÿ
ùüáý
ü°þÌ

¡¡Ê4£ß4¤¹¥þ¦…5<–ݦÑúioLœþ
Îã Lîý
—Ö ,ùý
œùà Û‰Ð
ö ÎsŒ‰ÿ
¿· ×ÀP×Àª‰Ð
³ï¬ rÏã u¹þàæ bôÓ
¨ó ¾’· 4ó†
ƒqôó†
Lú†

ö0d„‡
¼ú†
˜‡
ûü¸†`
è†
Îã LɆ
dÔ†
q¹ù% min_capacityÁ4b“÷ ¯
ƒqœ 

“÷ . ±

º
üüöŽD

Îã L
t¹ù?“÷ Œð•
Tõ•
†É $ð•
dõ•
 ž–
  »–
 üÆ–Ù
 Û–

<Ý–
 Ý–
 —£ \Ü–

ܢɻ
Z A +¤Û–
,è–
’·  dÛ–
<è–
*ÜÛ–
$ð–
ÅÊ P4ð–
'
DЖ

Õ–
Ûl’—
D•—
γ’—
T•—
L°—
l°—
 '
•"”*¹è ?4=C tÕ˜
Tט
ÛÌ  Õ˜

dט
<
t‰™
‹™
ˆÍ  ‰™
/ d‹™
/ÁäDŸ™
|™™
›™
ˆÍ  ™™
/ l›™
üù˜8
|ù˜
ÓÍ N4ª™

.”Õ™
 ,ü­—É
Œƒš
 ,D’›
´…›
<Š›
ÇÎ $…›
/ŒŠ›
 £›
¤›
üÓ”Ñ

ýü蕼
ü‹–
ü©–û
ü÷–¨
ü…—š
ü͘w
”•
Îã Lá”
Îý lì”
¦Ä ì•
d

ÔÁzžÐ ¼¿· Å×Àÿ×ÀEÉ»0Fx4‰—
6 Îý R¹è K·ä ј
RÁäÚ·äãû·ä¦¾ƒ¶Tƒ¶Çß  predicateÁ¾dest_idxÁ"src_idxÁ+ñ½ aÿÐ î»Òô
†É ë¶û C’· ÅÊ çγÈý \ÛÌ ˆÍ ÝˆÍ ÓÍ lÇÎ £Îý yÎý ¬ø¤
Tø¤
 ×À#9
@DĴ
ŽKTƒ¥
c δ
 üݤ1
ƒá”,ð¤
á”°×À¯×À·@4Á?ü½x
@ ?(@0:?B<Ž
\Ž
 Ͻ
!5 ;F
F„Ž
 Ô½
&œœ¾
Ö¿Îs„¨^e„¨^e8<åÀ
\åÀ
 ïÀ
!5  
;F  
FüÈÀ)
äÈÀ
­£  ~;!œÊÂ
DÌÂ

§u ÊÂ
2ŒÌÂ
ðÂ
= á”=+7KT¶Æ
4¸Æ
†Ö ¶Æ
'2D¸Æ
øÂ
> á”
>
+7K  ôÂ
 ·¬ DàÃ
$âÃ
Ó£  àÃ

24âÃ
ŒàÃ
4éÃ
€¤ C 2DéÃ
DöÃ
@ üàÃ
òÃ

™NŽ¥ ¯+pN 2lòÃ
üÈÃ8
¼ÈÃ

Ø2â­â­MapÁå­ùæ­±Å@Iœóë ¶¥Ž¥ À
 
2køÂÈÃ8
 
ÊL©ª©ªø¤ «ªùÕ1¬ªŽÂÕ1Z¯/
ë‹‘÷
Î2fjøÂ¿Ã

ûMç
«1´¸Ä^e ÃÃ
Ûϧ 4—Ä
 ì£Ä
<¥Ä

ç[Ÿ¨ „¨À
Ê+Ÿ¨ „¨ £Ä
^eù’
”­Ä
"1Ü¥Ä
ÂÔÄ
+2ðãÄ


ž$Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
„¨"í!1uy#!#ô£Ä
$!lü—Ä+
$žÄ
õ©  X$6=1üžÄ$
ÞÄÀÄ

¡$Ò« Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Àü„¨^eÑ•
t1`|-2Œ¶Æ
$ÁÆ

ÛŽ 'Ý&24ÁÆ
<ÉÆ
)\ÉÆ
* ÓÆ
!5 *)2F( )Fü Æ5
¬ Æ

ërŽ &Æ(%2.DŠÇ
$΂

“tŽ % ŠÇ
/24΂
ŒŠÇ
4“Ç

àOÄlÄl£ Çlµ ™lÈl©£ ™lÉlþø ™lŒœjSžŽ Ž / .2D“Ç
T Ç
?  0üŠÇ!
ς

™N†­†­óLj­ƒÈõ7E*tRÇô˜
ƒ“
.ø0-2|œÇ
üòÆ:
¼òÆ

Ø2â­â­ƒ
å­ùæ­±Å@Iœóë ¶¥•š
ƒ“
-Ï, 2iøÅòÆ:
 
ÊL©ª©ªø¤ «ªùÕ1¬ªŽÂÕ1Z¯/
ë‹‘„›
,Ì+!2fj 1+øÅéÆ˜
"
31

ûMò›
3«2#0´¸
42Ä
4%$ íÆ
52Ûϧ 4ÃÇ
7ìÏÇ
<ÑÇ

ç[Ÿ¨ „¨ŒÀ
ƒ“
Œ“
5 ÏÇ
^eû
”ÙÇ
9&0ÜÑÇ
Å€È
1+2ðÆÏÇ

é“
9Š8'0# :8/ :()ôÏÇ
;8lüÃÇ+
$ÊÇ
õ© 7õ;56>0üÊÇ$

ÇìÇ
Ç•
^eѕ
*0­È 1-24¦È
<T£È
 Ö¿Îs„¨< ²È
?,5@/6#8;3@/9³È
S 12Ù2p;@4<ü ¼
,3­/¼.3Ì?.7Ü/ë3û?3: 4Ô¿ "¦ü·Àü
üîÂõ
ÈÏáèïDüÆ
r y
ø ÿ  ZAÒ« ÄŸ½
á” ¸¼
À
Dʼ
ƒ“
Tñ¼


œ

ÎsT»À
Ï æ Þ á”·¬ á”ôÁÂ
 ‡£· ¿ Æ ð¤
T \ c ·¬ Ž ç
^
ç
Ø
÷
 Ž¥ q †¤ ¦ À
\ ç

­ 
 ç
©
:
ϧ Ý ŒÎã Õ •¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜Ñ•
š ï“
$
È  
Ž “Æ
 Ž TÁä
%<4ò›
óò›
k„›
㕚
Œô˜
ǃ“
 ò›
) ­ 2 ò›
>Ïϧ {
Îã s¡¦
öï“
s{Ï ÎsUá”á”?FÁfrom_intÁš
from_bytesÁ§ ÁÀ
ù ®Â Ž ?
^eѕ
¹ 
$Á %ùK
1®ƒ 5Ž d ^eÑ•
¹Ä;Œ*òŠ ÒòŠ ­£ ˜Œ
t†ÖíÓ£ \€¤ 7³
õ
ñ
¾
á
T
ï‘
[
é’
Z ç
õ é“
ç õ© A Ç•
õ ç
 â–

òŠ a
‰˜
ó ¼˜
Æ î˜
 š
 þš
šì›
2úœ
9ë
Aò›
éé“
Ûõ© Ç•
éò›
Îsò›
ç
Ž Îsƒ“
!À
(ƒ“
/À
6ƒ“
=À
D¿Ä

„¨°Ä
ù’

Ÿ¨ ®Ä
1
ëÇ
Œß„¨ÜÇ
û
÷Ÿ¨ ÚÇ

<ü—Ër
J I(J0:IB<Ë
\Ë
 §Ë
!5 
 5F
 FË
 ¬Ë
´—Ë
TôË
 ,õË
 ýË
<ÐË
\ÐË
 ÚË
& (5M
ÎË
«£
|ÍË
…Ã  ÌË
 ; 5%ÌÄË
 $ÅË
  ÜË
œýÊ
 ’Ë
á”<ÁÌ
\ÁÌ
 ËÌ
!5 5F Fü¤Ì)
ä¤Ì
­£ ~5!œ¦Î
D¨Î
˜Œ
 ¦Î
 /Œ¨Î
ÌÎ
Gá”G+7K
TðÒ
4òÒ
†Ö ðÒ
//DòÒ
ÔÎ
Há”H+7K
 ÐÎ
·¬ D¼Ï
$¾Ï
Ó£  ¼Ï

/4¾Ï
Œ¼Ï
4ÅÏ
€¤  C/DÅÏ
DÒÏ
J !ü¼Ï
ÎÏ
³
a!?/lÎÏ
ü¤Ï8
¼¤Ï
ñ
G/!øÊ¤Ï8
 á
>/ $"øÊ›Ïô
?%"NSï‘
%_$.hl&$x&^e ŸÏ
'$Ûϧ ùÏ
('<óÏ
(ÊŽÑ
"(/4ÐÐ
+,àÐ
, ×À´ÐÐ
D×Ð
‚Š +@,5#7.|×Ð
 ˜Ð
)'«4žÐ
*tžÐ
$¥Ð
õ© *)) ªÐ
#8.<¥Ð
ŒðÒ
$ûÒ
â–
/
./4ûÒ
<ƒÓ
1\ƒÓ
2 Ó
!5 21/F0 1FüÚÒ5
¬ÚÒ
‰˜
.µ0ƒ-/&DÄÓ
$ÆÓ
¼˜
- ÄÓ
7/4ÆÓ
ŒÄÓ
4ÍÓ
î˜
7C6/DÍÓ
TÚÓ
I 8üÄÓ!
ÖÓ
š
6a8?5/|ÖÓ
ü¬Ó:
¼¬Ó
þš
5G4 /!øË¬Ó:
 ì›
4>3!/ $93øË£Óö
"?<9NSúœ
<_;#-hl=;x=%$ §Ó
>;Ûϧ ƒÔ
?><ýÓ
?'&˘Õ
9(/4ÚÔ
B,êÔ
C ×À´ÚÔ
DáÔ
‚Š B@C5:9-|áÔ
 ¢Ô
@>«4¨Ô
At¨Ô
$¯Ô
õ© A)@ ´Ô
::-<¯Ô
œ¾Õ
*)4àÕ
E,ðÕ
F ×À´àÕ
DçÕ
‚Š E@F5D;/|çÕ
4ŠÖ
 •Ö
I+2J,3–Ö
f9/"/P5`J16ü¹ÈÝ
}+0,œ0¬I04¼1ã˜Ü "
"0* üøÊž
ü“̃
üÊÎÓ
!¼•Ð
üÉÒÞ
¼ŸÔ
 KÎs$¾É
á” ×È
À
DéÈ
ƒ“
TÉ
] á”U á”m µ
! 8 0 á”ë Á·
w
Ž
ƒ¶ˆ
ÎsT—Ì
š ± © ݤ
ôÎ
ð¤
ˆð¤
 % , ·¬ Wç
ç
°÷
莥 :†¤ oÀ
%ç
¾‹­ Çó¥
Чϧ P,•Ð
¼Îã ®Îã #×À‘§
ÍÒ
 §
Áä kzò›
&ò›
V„›
Ž•š
àô˜
ƒ“
Ëò›
\d­ m“¨
vMϧ ÿ,ŸÔ
k Îã ]Îã Ò×ÀËúÎã ,×À%ᔾá”ÇéðÁœ¨
²¨
trailing_extra_byteÁ Áÿ  YÁ_
ù "® '®m)Á-ù9® >®
@K$òŠ ?òŠ s
…à ð òŠ  ­£  ˜Œ
ó †Öt Ó£ ã
€¤ ¾
³
|
ñ
T
á
4
ï‘
;
ç
t ‚Š ? õ© ñâ–
ÇòŠ ¦‰˜
8¼˜
î˜
îš
¬þš
ì›
dúœ
kò›
­‚Š xõ© *‚Š Æò›
Éç
ë Îsžƒ“
¥À
¬ƒ“
³À
º ¾Û
T¾Û
4ÀÛ

âº,‡£4DÀÛ
ü£ÛH
Ô£Û


’Ð
ƒÑ^dÊÛ
¼Î
 ”ØÛ
ÃÎ
 N ðÛ
ñÛ
üÔÚ
Ò« Ä€Û
…Î
èÚ
á”ë …Î
Á!UÿÍ
¶Î
ç…Î
…Î
Ÿ žá
Tžá
4 á
ÿÍ
(D á
üƒáH
Ôƒá


‘Ð
ÑRdªá
ôÐ
 ”¸á
ûÐ
 N Ðá
Ñá
ü´à
Ò« Äàà
…Î
Èà
á”ßÞÏ
øÁQÿÍ
îÐ
ã…Î
…Î
 ´è
T´è
4¶è
ÿÍ
(D¶è
ü“èN
ü“è

¼Î
ÃÎ
MdÀè
¼Î
 ”Îè
ÃÎ
 I æè
çè
üÒç
Îs$„è
…Î
ìç
á”ÙÞÏ
òÁPÿÍ
ÿ£Ó
Ü…Î
…Î
 Èï
TÈï
4Êï
ÿÍ
(DÊï
ü§ïN
ü§ï

ôÐ
ûÐ
MdÔï
ôÐ
 ”âï
ûÐ
 I úï
ûï
üæî
Îs$˜ï
…Î
ە
á”ÙÞÏ
òÁPÿÍ
ÿÐÕ
Ü…Î
…Î
Üõ‰
Œõ‰
Ö± ‡Š
,ŠŠ
 1œšŠ
 © ³Š
šü³‰
üê‰I
Îs$Û‰
s ͉
ƒq$î‰
¾ PÖ±¹´‰‹
”‰‹

Î×Àœ‹
×À
1¥‹
œüêŠ;
Îs$úŠ
‰Ù
kl”Œ
4™Œ
¿Ý $”Œ
D™Œ
§Œ
Ÿüò‹5
×À$…Œ
‰Ð
,û‹
 1¿Ý wŒ
T
†É $
d
¤
¡üߌE
¦ÄDúŒ
Îã LìŒ
 1†É wlŽ
4†Ž
¿Ý $Ž
D†Ž
”Ž
£üÞ6
×À
‰Ð

 1¿Ý wl€
4…
¿Ý $€
D…
ÌõŽ
TõŽ

àG$
¥üÐŽD
 Å¢4äŽ
‰Ð
,ÚŽ
×À<¿Ý ¬¸Ý



à

ˆ
§üÏ9
á”
‰Ð

 1ËÞ
y

¿Ý 

ù
©üÃ6
×À$×
‰Ð

 1¿Ý wŒæ‘
Të‘
†É $æ‘
dë‘
ý‘
«ü·‘F
¦ÄDÓ‘
Îã LÅ‘
 1†É wl‚“
4‡“
¿Ý $‚“
D‡“
)t““
4™“
¡™ ,““
D™“
)ü‚“
 
·ß×À×ÀŽ\-§“
¯üØ’O
$ó’
‰Ð
,Þ’
“‡
,å’
 ×Àä×Àì¦ã
½×ÀÅ:¹
<j¿Ý &¡™ öÅâ
Ål©™
4®™
¿Ý $©™
D®™
Ì©™
$·™

›eL,¼™
\·™
È™
¼üö˜R
ž™
‰Ð
,‰™
Ìä
,
×À©"º!S¿Ý ÓÄä
®|Ç¡
\É¡

 Ç¡
lɡ
Ü¡
Ìü›¡A
s$¸¡
Îs £¡
¾
0ÿå
x|Ö¢
\Ø¢
ÿå
 Ö¢
lآ
äÊ¢
»ì¢
Îüž¢N
Ҿ$Ȣ
Îs ¦¢
–s|¾8ÿå
š õ£
ôÓ
Œæ£
»ý£
Ñü¶£G
“æ$×£
‰Ð
¾£
×Àu¾:ôÓ
㏬
Lí¨
ȯ$è¨
\í¨

<ù¨

ÄN°ƒqKLù¨
œŒ©
 © ¥©
Úü—¨Ž
üݨH
Îs$Ψ
ô¡$¨
ƒq$á¨
°¾ù "Yȯçöé
㦻
LȻ
ûÇ$¶ª
\Ȼ
僚
<Ǫ

ÄN°ÈƒqKLǪ
œÚª
 © óª
Þüá©
ü«ªH
Îs$œª
È$ª
ƒq$¯ª
°È¾ù "YûÇçðë
„‚¬
L‡¬
ûÇ$‚¬
\‡¬
Ô‚¬
<“¬
ðë
BL“¬
œ¦¬
 © ¿¬
âü®«
ü÷«H
Îs$è«
È$Ü«
ƒq$û«
°Èµù "YûÇÞðë
¹„Ì­
LÑ­
ȯ$̭
\Ñ­
ÔÌ­
<Ý­
öé
BLÝ­
œð­
 © ‰®
åü÷¬
üÁ­H
Îs$²­
ô¡$¦­
ƒq$Å­
°µù "YȯÞöé
¹„¢¯
L§¯
ûÇ$¢¯
\§¯
Ô¢¯
<³¯
ðë
BL³¯
œÆ¯
 © ߯
éüÉ®
ü—¯H
Îs$ˆ¯
È$ü®
ƒq$›¯
°Èµù "YûÇÞðë
¹„è°
Lí°
ȯ$è°
\í°
Ôè°
<ù°
öé
BLù°
œŒ±
 © ¥±
ìü•°
üݰH
Îs$ΰ
ô¡$°
ƒq$á°
°µù "YȯÞöé
¹„¼²
LÁ²
ȯ$¼²
\Á²
Ô¼²
<Ͳ
öé
BLͲ
œà²
 © ù²
ïüâ±
ü±²H
Îs$¢²
ô¡$–²
ƒq$µ²
°µù "YȯÞöé
¹d‚´
 „‘´
L–´
ȯ$‘´
\–´
  ´
 D±´
|±´
$º´
î²)
4º´
'¬«´
H÷´
ÛÎsŒŸµ
\£µ
ÿå
ٵ
l£µ
l×´
\×´

·4µ
 D͵
  
¤Âµ
4Ƶ

ÒLsÎs° U
J 㮵
èµ
 ˆ¶

‰¶
 øµ
< ü¯³Ú
Yh  x ˆ  3
ò\üþ³
üò´
ü‘µh
 s$ï³
ô¡$ã³
°Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÎse Â$Ï´
Îs2s<•µ
«¹Ãæ°ß|ù©û*ŽÂŽÂUj ȯ@î²÷ÿå
íø
qÀù
%–sº°ê°ñ°ø¼”·
Œ”·

ÅL–sÎsÈ$¦·
/ô”·
$¬·

è–s“æU4¬·
¸·
õüŶs
“æ$…·
È$ù¶
–sœù9þ
ºÃþ
4¬¸
ƒqœ¬¸
4³¸

ÒLƒqô¡9$º¸
d³¸
Ÿ
øüæ·_
¡¸
Îã Lޏ
ô¡$™¸
¹ùù!Pðÿ
¦4Ź
ƒqœÅ¹
4̹

ÒLƒqôå È;$Ó¹
d̹
Þ¹
üüû¸c
º¹
Îã L§¹
È$²¹
¹ùù!P¸¨4ܺ
ƒqœÜº
4ãº

ÒLƒq×ÀÈ;$êº
dãº
õº
ü“ºb
Ѻ
Îã L¾º
È$ɺ
¹ùù!P‚ƒ¨4ñ»
ƒqœñ»
4ø»

ÒLƒqrô¡:$ÿ»
dø»
м
ƒü§»c
æ»
Îã LÓ»
ô¡$Þ»
¹ùù!PÌ„§„’½
L—½
ûÇ$’½
\—½
Ô¬½
 ȯý Îã ü’½5
D£½

œN°Èȯý ¶†cü£½$
ν
üļŠ
‡½
Îã Lô¼
È$ÿ¼
°Èç݆Æ.ù0`ûÇÓ†Î$µ½
Îã ý
Ïÿ "+Œµ½
Dº½
‚Š \Mdº½
 Ž
ƽ
¢±´½
 ݆Ë“æ ²½
×ÀÉ
ÑÎã ï¾&$ù¼
Îã Ïÿ  ‚Š â“æº“æÀ4ƾ
ƒqœÆ¾
4;

ÒLƒq–sô¡:$Ô¾
d;
ß¾
üþ½a
»¾
Îã L¨¾
ô¡$³¾
¹ùù!P‚‹§
 Ìç¿

ȯ$ç¿
!%øÌÞ¿8
?NSî²_ hlxŠ â¿
ÛÎsˆÀ
 ôÓ
 "

+̕ ΜDÿ¿
Á¸$ú¿
d 
dÿ¿
E œÀ
` p ü¿
Ž?F Ó¿
¹ÃLÀ¿
ô¡$Ë¿
°¦°¯æû
¸ ÂÁÎsAì×À9‰Ð
Bdùfù¾ŠÊȯ-î²4ôÓ
°iÁ¸\ÎsvÎs|°ƒ
 Í«Á

ȯ$«Á
!%øÍ¢Á8
?NSî²_ hlxŠ ¦Á
ÛÎsÌÁ
 ôÓ
 "

+ÍÙÁ
 Œ¾Á
DÃÁ
‚Š $¾Á
d 
dÃÁ
E àÁ
` p üÓÀ
?F —Á
Îã L„Á
ô¡$Á
°¦°¯æû
¸ ÂÁÎsAì×À9‰Ð
Bdùfù¾ŠÊȯ-î²4ôÓ
°i‚Š \ÎsvÎs|°ƒÔéÂ
 léÂ
4îÂ

Ð$éÂ
DîÂ
$þÂ
 {4÷Â

ÒLsÎsÈrGd÷Â
ŠÃ
üšÂp
 ‰Ã
5ÞÂ
“æLËÂ
È$ÖÂ
 ¹ÃÈÙo6ù8±–9€—iȧâ½Ì
´ ¸Ì

„¨ „¨"+5¿Ì


×ÀãÝÌ
"ŠÁNS¤Á`eQrãÄÌ
 àÁ£™Ÿí§×À¯ŠÁž  «‰›³Õ±â쇛ŠÁà¤ÁÿlÔÓ
4ÙÓ

°$ÔÓ
DÙÓ
ÔÈÓ
LÊÓ
ÉÌ ÈÓ
NÄÊÓ
èÓ
¬ü…Óc
àÁ\²Ó
Ãô ,ŒÓ
í “Ó
×À¤±!Tè›ÎÉÌ¥´ÓÖ
Òõ òì#  1
:ÎsI[ 
j  vŠ Îs ¡×
´
òìÃ
ÑÝï û  "TÿÖ
D‹×
•×
 ×ÀüÓÖE
¤êÖ
ãé \N@üêÖ.
®ü˜Ô
ªÔ
Ãô L Ô
hÎã ߪ×ÀŸÒõ 1òì%òì.6=DKˆ°ãé úT¸Ø
¿· œ¸Ø
4ÃØ

™w2DÃØ
ÑØ
°ü‘Ø@
×À$©Ø
ßœ,ŸØ
 ¿· }<Ò¢ƒlÅÙ
4ÊÙ
è›$ÅÙ
DÊÙ
ØÙ
³üšÙ>
×Àl­Ù
ßœ,£Ù
 1è›wTÐÚ
¿· ŒÐÚ
$ÛÚ
ÅÊ /4ÛÚ
çÚ
ü£ÚD
ÔÁd¹Ú
ý L«Ú
žÐ w9ÅÊ |TíÛ
¿· ”íÛ
,øÛ

Ù¿· 3<øÛ
ÔíÛ
,ۆ

€N¿· L<€Ü
 Ά
Ü
üûÚ
·,Û
Ãô $„Û
¿· ¿¡£ÝO™¦äȦ»Ãô Ãô ˜T§Ý
¿· ´§Ý
L²Ý

M¿· 4\²Ý
 ÂÝ
ÃÝ
üûÜH
¹ÔÁdÝ
Ãô DƒÝ
žÐ §G±¨­Ãô Ãô ŠT´Þ
¿· ´´Þ
L¿Þ
±¨/\¿Þ
ÐÞ
»ü‚ÞN
ÔÁdÞ
ý LÞ
žÐ w9±¨|ùäê P  ¸ ·Ç$ÔÇ äë ùäÚ a· ÔÇã ¸ ·Ç|@œÖ ½¾%Ào0Ûµ8?¼² rs#ä†/¾‡7>| Þ'ß4ƒq?òìGNU\cítjqÄ«
© ª %Îs0ƒq7>¬ÇÌ
® ¯ &„¨29@«¡© ª ® ¯ · Àí$f
Y4„
 ZL
£®D­
¿ßŽ
še Ž e 4×
¢e

ÃL AddÁ
Ä 
AddAssignÁLž
ÙõBoundÁ,­
ç£r,¸
é!DerefMutÁDÃ
ö! RangeBoundsÁ\Ñ
¤#FromStrÁ<ö
ïyœù
ÅÏס
 `ž
‰foÅ
»Ï¡
ˆ
FusedIteratorÁlî
òP͵
Þªô#„Ö
¾Ë¥#|ì
·Ìü³ß
øÉ] ü&
É]<div align="center">
<h1><code>compact_str</code></h1>
<p><strong>A memory efficient string type that can store up to 24* bytes on the stack.</strong></p>
<a href="https://crates.io/crates/compact_str">
<img alt="version on crates.io" src="https://img.shields.io/crates/v/compact_str"/>
</a>
<img alt="Minimum supported Rust Version: 1.57" src="https://img.shields.io/badge/MSRV-1.57-blueviolet">
<a href="LICENSE">
<img alt="mit license" src="https://img.shields.io/crates/l/compact_str"/>
</a>
<br />
<a href="https://github.com/ParkMyCar/compact_str/actions/workflows/ci.yml">
<img alt="Continuous Integration Status" src="https://github.com/ParkMyCar/compact_str/actions/workflows/ci.yml/badge.svg?branch=main&event=push"/>
</a>
<a href="https://github.com/ParkMyCar/compact_str/actions/workflows/cross_platform.yml">
<img alt="Cross Platform Status" src="https://github.com/ParkMyCar/compact_str/actions/workflows/cross_platform.yml/badge.svg?branch=main&event=push"/>
</a>
<a href="https://github.com/ParkMyCar/compact_str/actions/workflows/msrv.yml">
<img alt="Minimum Supported Rust Version Status" src="https://github.com/ParkMyCar/compact_str/actions/workflows/msrv.yml/badge.svg?branch=main&event=push"/>
</a>
<a href="https://github.com/ParkMyCar/compact_str/actions/workflows/clippy.yml">
<img alt="Clippy Status" src="https://github.com/ParkMyCar/compact_str/actions/workflows/clippy.yml/badge.svg?branch=main&event=push"/>
</a>
<p align=right><sub>* 12 bytes for 32-bit architectures</sub></p>
</div>
<br />
### About
A `CompactString` is a more memory efficient string type, that can store smaller strings on the stack, and transparently stores longer strings on the heap (aka a small string optimization).
It can mostly be used as a drop in replacement for `String` and are particularly useful in parsing, deserializing, or any other application where you may
have smaller strings.
### Properties
A `CompactString` specifically has the following properties:
* `size_of::<CompactString>() == size_of::<String>()`
* Stores up to 24 bytes on the stack
* 12 bytes if running on a 32 bit architecture
* Strings longer than 24 bytes are stored on the heap
* `Clone` is `O(n)`
* `From<String>` or `From<Box<str>>` re-uses underlying buffer
* Eagerly inlines small strings
* Heap based string grows at a rate of 1.5x
* The std library `String` grows at a rate of 2x
* Space optimized for `Option<_>`
* `size_of::<CompactString>() == size_of::<Option<CompactString>>()`
* Uses [branchless instructions](https://en.algorithmica.org/hpc/pipelining/branchless/) for string accesses
### Traits
This crate exposes two traits, `ToCompactString` and `CompactStringExt`.
#### `ToCompactString`
Provides the `to_compact_string(&self)` method for converting types into a `CompactString`. This trait is automatically implemented for all types that are `std::fmt::Display`, with specialized higher performance impls for:
* `u8`, `u16`, `u32`, `u64`, `usize`, `u128`
* `i8`, `i16`, `i32`, `i64`, `isize`, `i128`
* `f32`, `f64`
* `bool`, `char`
* `NonZeroU*`, `NonZeroI*`
* `String`, `CompactString`
#### `CompactStringExt`
Provides two methods `join_compact(seperator: impl AsRef<str>)` and `concat_compact()`. This trait is automatically implemented for all types that can be converted into an iterator and yield types that `impl AsRef<str>`. This allows you to join Vec's, slices, and any other collection to form `CompactString`s.
### Macros
This crate exposes one macro `format_compact!` that can be used to create `CompactString`s from arguments, like you can `String`s with the `std::format!` macro.
### Features
`compact_str` has the following optional features:
* `serde`, which implements [`Deserialize`](https://docs.rs/serde/1/serde/trait.Deserialize.html) and [`Serialize`](https://docs.rs/serde/1/serde/trait.Serialize.html) from the popular [`serde`](https://docs.rs/serde/1/serde/) crate, for `CompactString`
* `bytes`, which provides two methods `from_utf8_buf<B: Buf>(buf: &mut B)` and `from_utf8_buf_unchecked<B: Buf>(buf: &mut B)`, which allows for the creation of a `CompactString` from a [`bytes::Buf`](https://docs.rs/bytes/1/bytes/trait.Buf.html)
* `markup`, which implements [`Render`](https://docs.rs/markup/0.13/markup/trait.Render.html) trait, so `CompactString`s can be used in templates as HTML escaped strings
* `arbitrary`, which implements the [`arbitrary::Arbitrary`](https://docs.rs/arbitrary/1/arbitrary/trait.Arbitrary.html) trait for fuzzing
* `proptest`, which implements the [`proptest::arbitrary::Arbitrary`](https://docs.rs/proptest/1/proptest/arbitrary/trait.Arbitrary.html) trait for fuzzing
* `quickcheck`, which implements the [`quickcheck::Arbitrary`](https://docs.rs/quickcheck/1/quickcheck/trait.Arbitrary.html) trait for fuzzing
* `rkyv`, which implements [`rkyv::Archive`](https://docs.rs/rkyv/0.7/rkyv/trait.Archive.html), [`rkyv::Serialize`](https://docs.rs/rkyv/0.7/rkyv/trait.Serialize.html) and [`rkyv::Deserialize`](https://docs.rs/rkyv/0.7/rkyv/trait.Deserialize.html) for fast zero-copy serialization, interchangable with serialized Strings
* `smallvec`, provides the `into_bytes()` method which enables you to convert a `CompactString` into a byte vector, using [`smallvec::SmallVec`](https://docs.rs/smallvec/latest/smallvec/struct.SmallVec.html)
### How it works
Note: this explanation assumes a 64-bit architecture, for 32-bit architectures generally divide any number by 2.
Normally strings are stored on the heap since they're dynamically sized. In Rust a `String` consists of three fields, each of which are the size of a `usize`.
e.g. its layout is something like the following:
`String: [ ptr<8> | len<8> | cap<8> ]`
1. `ptr` is a pointer to a location on the heap that stores the string
2. `len` is the length of the string
3. `cap` is the total capacity of the buffer being pointed to
This results in 24 bytes being stored on the stack, 8 bytes for each field. Then the actual string is stored on the heap, usually with additional memory allocated to prevent re-allocating if the string is mutated.
The idea of `CompactString` is instead of storing metadata on the stack, just store the string itself. This way for smaller strings we save a bit of memory, and we
don't have to heap allocate so it's more performant. A `CompactString` is limited to 24 bytes (aka `size_of::<String>()`) so it won't ever use more memory than a
`String` would.
The memory layout of a `CompactString` looks something like:
`CompactString: [ buffer<23> | len<1> ]`
#### Memory Layout
Internally a `CompactString` has two variants:
1. **Inline**, a string <= 24 bytes long
2. **Heap** allocated, a string > 24 bytes long
We define a discriminant (aka track which variant we are) *within* the last byte, specifically:
1. `0b11111110` - All 1s with a trailing 0, indicates **heap** allocated
2. `0b11XXXXXX` - Two leading 1s, indicates **inline**, with the trailing 6 bits used to store the length
and the overall memory layout of a `CompactString` is:
1. `heap: { ptr: NonNull<u8>, len: usize, cap: Capacity }`
2. `inline: { buffer: [u8; 24] }`
<sub>Both variants are 24 bytes long</sub>
For **heap** allocated strings we use a custom `HeapBuffer` which normally stores the capacity of the string on the stack, but also optionally allows us to store it on the heap. Since we use the last byte to track our discriminant, we only have 7 bytes to store the capacity, or 3 bytes on a 32-bit architecture. 7 bytes allows us to store a value up to `2^56`, aka 64 petabytes, while 3 bytes only allows us to store a value up to `2^24`, aka 16 megabytes.
For 64-bit architectures we always inline the capacity, because we can safely assume our strings will never be larger than 64 petabytes, but on 32-bit architectures, when creating or growing a `CompactString`, if the text is larger than 16MB then we move the capacity onto the heap.
We handle the capacity in this way for two reaons:
1. Users shouldn't have to pay for what they don't use. Meaning, in the _majority_ of cases the capacity of the buffer could easily fit into 7 or 3 bytes, so the user shouldn't have to pay the memory cost of storing the capacity on the heap, if they don't need to.
2. Allows us to convert `From<String>` in `O(1)` time, by taking the parts of a `String` (e.g. `ptr`, `len`, and `cap`) and using those to create a `CompactString`, without having to do any heap allocations. This is important when using `CompactString` in large codebases where you might have `CompactString` working alongside of `String`.
For **inline** strings we only have a 24 byte buffer on the stack. This might make you wonder how can we store a 24 byte long string, inline? Don't we also need to store the length somewhere?
To do this, we utilize the fact that the last byte of our string could only ever have a value in the range `[0, 192)`. We know this because all strings in Rust are valid [UTF-8](https://en.wikipedia.org/wiki/UTF-8), and the only valid byte pattern for the last byte of a UTF-8 character (and thus the possible last byte of a string) is `0b0XXXXXXX` aka `[0, 128)` or `0b10XXXXXX` aka `[128, 192)`. This leaves all values in `[192, 255]` as unused in our last byte. Therefore, we can use values in the range of `[192, 215]` to represent a length in the range of `[0, 23]`, and if our last byte has a value `< 192`, we know that's a UTF-8 character, and can interpret the length of our string as `24`.
Specifically, the last byte on the stack for a `CompactString` has the following uses:
* `[0, 192)` - Is the last byte of a UTF-8 char, the `CompactString` is stored on the stack and implicitly has a length of `24`
* `[192, 215]` - Denotes a length in the range of `[0, 23]`, this `CompactString` is stored on the stack.
* `[215, 254)` - Unused
* `254` - Denotes this `CompactString` is stored on the heap
* `255` - Denotes the `None` variant for an `Option<CompactString>`
### Testing
Strings and unicode can be quite messy, even further, we're working with things at the bit level. `compact_str` has an _extensive_ test suite comprised of unit testing, property testing, and fuzz testing, to ensure our invariants are upheld. We test across all major OSes (Windows, macOS, and Linux), architectures (64-bit and 32-bit), and endian-ness (big endian and little endian).
Fuzz testing is run with `libFuzzer`, `AFL++`, *and* `honggfuzz`, with `AFL++` running on both `x86_64` and `ARMv7` architectures. We test with [`miri`](https://github.com/rust-lang/miri) to catch cases of undefined behavior, and run all tests on every Rust compiler since `v1.57` to ensure support for our minimum supported Rust version (MSRV).
### `unsafe` code
`CompactString` uses a bit of unsafe code because we manually define what variant we are, so unlike an enum, the compiler can't guarantee what value is actually stored.
We also have some manually implemented heap data structures, i.e. `HeapBuffer`, and mess with bytes at a bit level, to make the most out of our resources.
That being said, uses of unsafe code in this library are constrained to only where *absolutely* necessary, and always documented with
`// SAFETY: <reason>`.
### Similar Crates
Storing strings on the stack is not a new idea, in fact there are a few other crates in the Rust ecosystem that do similar things, an incomplete list:
1. [`smol_str`](https://crates.io/crates/smol_str) - Can inline 22 bytes, `Clone` is `O(1)`, doesn't adjust for 32-bit archs
2. [`smartstring`](https://crates.io/crates/smartstring) - Can inline 23 bytes, `Clone` is `O(n)`, is mutable
3. [`kstring`](https://crates.io/crates/kstring) - Can inline 15 or 22 bytes dependent on crate features, `Clone` is `O(1)`, can also store `&'static str`s
4. [`flexstr`](https://crates.io/crates/flexstr) - Can inline 22 bytes, `Clone` is `O(1)`, can also store `&'static str`s
<br />
Thanks for readingme!
Á«¡© ª ® ¯ · À1í1Y1 Z1£®1¿ßŽ1še Ž"1 e 1¢e
1ÃL ÿ¯ 1Ä 
•°1Ùõ²°þ0ç£rý0é!ݰõ0ö!ø°ê0¤#–±ã0ïyœùâ0ÅÏ×á0 `žà0‰foß0»Ï¡Þ0ˆ‘²Ñ0òPÍÐ0µÏ0Þªô#Î0¾Ë¥#Í0·Ìä2ç2ê2Ý2à2dp
Ø2Û2Ì2Ï2œ¢
Ã2T»
¶2¹2—2š2Äæ
Ž2L„
22i2l2V2Y2I2L2427222Lå
 22þ12$•
ô1÷1ç1ê1„¸
ß1|Î
Ò1Äã
¹1dþ
D

4
ÜÓüIF Creates a `CompactString` using interpolation of runtime expressions.ÁJúüNEB The first argument `format_compact!` receives is a format string.Áü”" This must be a string literal.Áü·A> The power of the formatting string is in the `{}`s contained.ÁùúüýNK Additional parameters passed to `format_compact!` replace the `{}`s withinÁüÌ<9 the formatting string in the order given unless named orÁü‰JG positional parameters are used; see [`std::fmt`] for more information.ÁÔúüØIF A common use for `format_compact!` is concatenation and interpolationÁ of strings.Áü²FC The same convention is used with [`print!`] and [`write!`] macros,Áüù85 depending on the intended destination of the string.Á²úü¶2/ To convert a single value to a string, use theÁüé;8 `ToCompactString::to_compact_string` method, which usesÁü¥/, the [`std::fmt::Display`] formatting trait.ÁÕú # PanicsÁæúüêIF `format_compact!` panics if a formatting trait implementation returnsÁl´
an error.ÁÂúüÆ41 This indicates an incorrect implementation sinceÁüûGD `ToCompactString::to_compact_string` never returns an error itself.Á(|Ãì6 ï è  õ , ö ÷ ÿ, ø8argÁù& ü8¯ý
*ƒ   æ , 8, ' 8¥#|˜ '§ 8¼#Œ©  º  à   » , ¼ 8' 8í'È 8ë Õ  Ö  ß , ×  Ø  Ý , Ù 8Ø Ú 
Þ D™
$
%4l~¡¢ÆÚÛÜÝÞßœùLÅÏ í*ë"µ 3#oL»$«6D½Õ¯T•BÖÎr×Îs×Î7DÇÙØÊÙ¤»$­¯Ÿ¡„?•d£'(+-.½¾ÎÐL Û%&´¼BTH%üÆ/„Ï%)¤¸ÕZ2[((üî/¼ô%,î[üß”å%Ô²Ào013üŒ)Ào//ôíýÎfü• &¹  ¹ Ào/ ¬ /
1$­ ÷j11ì¼%<Ã%º  º Ào/ Ë%/†ï$Ì%=>?ABTVYcÕ46íë47µ "48«6D@½49µ$[Þ4;µß4;øDe Ú4<$rtdfÌ/Y,NLN+-ÔÐ4¤’<˜4”¬@ü¿C„Æ£èöÝÃnŠÞÌn¬™ºp!ò‰ž¥åOÚCDES̵¹BBìáØBBŒèìBBÀo|´ºpGHIJMNOô»  » ºpF  FˆëÎãƒqü¯
-
ºpFFñöýïrü=¼  ¼ ºpF žFÆ  ÎãìtŠÞõtüùD€½  ½ ºpF F
Jü³6¼¶4¾  ¾ ºp Ô
KthisÁ$ÎÒuKKüœC¿  ¿ ºpþ¦ F «F‡¢ ëêü¡E,<¯EÀ  À ºpF ·EF
N$¼EÂEÌÅF<ÌFÁ  Á ºpF ÔFF
O$ÙFÌ–GºpQÙQ¼¶G,¹GÂ  Â ºpºpP ¿GP
Q$ÀGÄ´LºpS"S”ÓL$ÖLÃ  Ã ºpR ÛLR
S$àLü›ODd¢O£ä·áýáwü¿RFôÂR4ìá½ïýDáRüÿY;t†ZìáÀo
Vµ •ZάZüÍZ:üÐZ 4ìá
Wµ ñZžxWWŒÞclâc4]^_bµ €dYZ¤,d“FY[L©d?Y\Lúc9Td,„¢düÇd1,Îdìá
]ýDÔdüèk=<ökìá
^µ þkýD•lü—m"ÜžmY__Ž`ýYa·YäwçU|äwçU|`a|ÄmDÄmY__ŒÝm4ÝmY__ «ü‘n/4˜n¸ö
býDŸnœÕp|Ùp4ghikµ ùpcd¤,q“FceL¢q?cfLóp9T†q,„›qüóq8,rìáäïý²züœy=<ªyìá
hµ ²yýDÉyüËz$ìÒzcºúYâÌ%×2ÍjŒúz4úzcii «ü®{/4µ{¸öŠóýë}T»4¿rs×µ 
lmµ$!Þloµßlo\+ ÜlpøD< ÚlqL],PR/1 "Hä†7HMŸ}&astuä†PH9«½ä†rr
s”Êrr«½JŒ˜ä†wy{|}ü‹%Ä  Ä ä†v £v½êÎãƒ>„wwüÈ * Å  Å ä†v å vШÎã<‰0“yyäÞä†vv
{ü»,Æ  Æ ä†v Ñvµ½ê•ÔéÇ  Ç ä†ä†v õv”à dmÃL~oŒ»~Îr~×Îs~×µÞ~ƒµß~ƒøD¿ Ú~½flש ~½fª ~Äa¸„¬,–ž tvPR¤ÐCüç ƒq‡ÅLüŽ;L‘ô¡ƒq¥ˆˆÍìô¡ ÇLô¡Ìžô¡ÈL
ô¡ù¬Ÿ57ü’(銊ƒq‹ÅLüÁ?ȃq¥ŒŒÍìÈ ÎÇLÈìÑÈÈL÷q|Þ
éÈù<>ü¸ªÄ»~Ý˃q¤ŽšŽÍì§Ì ÔÍìÝË ×à§ÌùMÝËÝËúM§ÌÐL–s§Ì¬¯ÃL–s§Ì
§ÌÝËùƒüÊ'éƒq’ÅLÏüø>ȃq¥áÅ òÅäˆ ÈÈLŠrt• 
éÈù÷¯46üõ $ƒq•ÅLü !?L£!ô¡ƒq¥œÄ ­!­Äì°!ô¡ÈLr|½!
ô¡ù®°.0üž""ƒq˜ÅL˜üÇ"=LÊ"ô¡ƒq¥œÄ Ô"­ÄÜ×"ô¡ÈLslä"
˜ô¡ù.0üÃ#)ƒq›ÅLüó#DLö#ô¡ƒqš¥œœšœÄ €$­Äüƒ$"ô¡ÈLÎs¤$
ô¡ù²/1üö$,éžžƒqŸÅLŸû$ü©%CL¬%ȃq¥  áÅ ¶%òÅü¹%!ÈÈL‰tœÆ%
ŸéÈù³57ÙÝ
á©°í뢤²˜í¢¥µ ¡¢¦Ê¢§µÞ¢¨µß¢¨np]_¼®P\ËAÜÙ¢ ‡£Ô® É ö Ï è , Ð8¿ Ñ& Ò8¼$ Ø, Ú8conv_tyÁ& â8¼*ê í ó888
, 8¿ Š Œ í+ š  ¢8Ý8 °8 ¼ Á8(Ã8µ Ë ãD8ç8Ѐ ö8Æ'8ÖL  8% 8£8§8  °8µ'8ãl¸ Å Ð8Ѐ% Ñ+ ä å ÿ8« ë þ8unused_comparisonsÁ”ì8 8ò€t•  ¤ 8« 7ˆ ® % ¯ 8Á 8Å 8¹ É  Ë 8Í 8ò€ ß 
88ú , ý 8·Ð8$˜

 Ç   ¥    ¤ 8$” 8 , œ 8·Ð<  ¦ 8æ  ³  µ 7 ´ % È 8Ú 8Þ 8˜  ç 8Ѐ 8ô 8ó % ü 8"  Ö  ñ 8  Ü 8½  ä  ï 8Ѐ % ò 8¹
8¨
 Å
8"
 Î
 ï
8
 Ô
8È
 ß
 à
 á
8ÿ(
 ì
 í
% ð
8ƒ8»<‡ 8Ût Ÿ8ñ( ¦ §% ¨8"  Ï%8­8í°'³8š'¼ ¾, ¿8¿ À Á  ÃÅ7Š È Ê ©8%8¹ «­710000Á  '8Ô8ƒ Ø Ü Þ è8¹ ß á7Û8ê8ó% ò8¹ 7Û,•% š8¹8Ú½ À  Ì8ƒ à Ç7100ÁÉÎ7 Ñ% Ò8ð8èô ÷ ù ƒ8ƒ ú þ7åÜ7 ˆ% 8˜¬7Œ ¯% °8µ Î'Ñ8èœÓ æ  8» î8ž
 õ ø8Úö$ ù8¨ 8ž
  Ž8˜$ 7Š % 8µ ±'´8蜶 É ø 8» ò8ž
 ù ü8èú$ ý8¨ ¦8ž
 ­ 8˜ ³7Š µ$ ·7Š Ù$ Ú% ù888¹  Ÿ8¹ ¡8£8ó% «88¹ œž7åÜ¡ ¥ 8¿8ÚÃ Æ È Ð8¹ É Ë7åÜÍÒ7 Õ% Ö8¹ ðò7åÜõ% ø8˜$’7Š š% 8µ µ'¸8蜺 Í ù 8» Õ8ž
 Ü ß8ÚÝ$ à8¨ é8ž
 ð õ8˜$ ö7Š ø% ú8×8¹ Ú Ü710ÁÞ á Ü8˜7 ƒ% 
ž8¨ ¦8ž
 ­ ²8˜ ´  ¾8¹ ·8¹8ȼ À7ˆ% Æ8 ã ¤8ý8Ú 8¹ ˆ7 % Œ8˜«7Š ®% ¯8µ É'Ì8èœÎ á  8» é8ž
 ð ó8Úñ$ ô8¨ ý8ž
  8˜$…$ Š7Š Œ% Ž8» ¾8ò€t¿ Î ½ 8˜í7 ð% ñ
8¨ 8ž
4” š Ÿ8˜$› ¡7% §8debug_assert_eqÁ µ  ¾8˜$ »7ˆ ½% ¿8 % ô´¨$¬Ë¬ÔÓ$LÖ$ƒq««
¬œã´Î%®Ë®Ôù%Lü%ƒq­­
®Ùäü½'"¬Ê' à' ™) æ' î', ç'8¿ è'& é'8õ
$ê'*ð' ó' )8$ý'8D(8
(, (8¿ ( ( )+  ( ¡( ¨(8Ý4¢(8 ¶(8L¹( Â( Ç(8$Ã((É(8µ$Ì( Ñ( †)8$ã( ç(8getÁè( ë( ì( í(8Lî( ÷( ø(% —)t“7D™7¢°°Îìü“78°èðèð±±±ü¨7!L«7¢ðð°°
±ðð¹µ7¤Í7³±³ôþ7L8¢²²
³¹î爛9µ±µôÏ9LÒ9¢´´
µ¹¬À;·±·üò;Lõ;¢
·¹¬Ñ=¹±¹üƒ>L†>¢¸¸
¹¹õû¬ó@»±»ü¥AL¨A¢ºº
»¹¬¾D½±½üðDLóD¢¼¼
½¹®í¬ßJ¿±¿ü‘KL”K¢¾¾
¿¹ÐᬼRÁ±ÁüîRLñR¢ÀÀ
Á¹¼—`ñÃüµ`!L¸`¢ÂÂ
ùÂ`¼±bűÅüÏb!LÒb¢ÄÄ
ŹÜbÈÉʵ$ ÞÆÇµßÆÇ\,ƃq„A$Gƃq”®ÊÊèðü®6ÊèðèðËËËÜÇððƒqÊÊ
Ëðð¬æÍËÍÔ‚L…ƒqÌÌ
Í$¬‰ÏËÏÔ¥ƒqÎÎ
Ï´¬ÑËÑÔɃqÐÐ
Ñ´¿ÓËÓÔ܃qÒÒ
Ó ÓÓ”÷Û,„Î,¤¥Â,„¿£,„Ù–,Ì›¼̰ŒÙƒqÑhƒqpGƨÂ5ÔÊßàáâãäåòìítƒqiLòìítƒqÞÞ
ßÞÞòìÞÞÉû64ÁÜ«ü¥#ÞÞÒÞÞÛÞÞÞÞítÌÑ ƒqÌî ƒq
ƒqéêëìîðóõö÷øùúûüþÿƒˆôª
±
È  È ƒqè »
èÕÇÎãËüù
+T†É  É ƒqè èžäÎãîÉüš-ƒqèèÝÒýüÎCäøîüèííèÍìäø ßàäø‡£™Ÿ ŽÂÃ$&ü²AœÀäøƒqèïïèé„ Ôú„Á¡ ŽÂϾüä$:\ë$–sƒqèèÖ±¾î·û— ï·ü†&&„‰&–sƒq¹ ¾ š&”¨',«'ƒq‘Ž üˆ0"\0ƒq–sèè
ó$›0üð0/„ó0ºps
ô‡¯$„1ü¥B,<¬BÊ  Ê ƒqè ´Bè„… $¹BŠÞå±üƒP0LŠPË  Ë ƒqè ”Pè“÷ $™P÷ dŸPü¡\#D¨\Ì Í  Ì ƒq Í è ±\èÑî $¶\¾¬üÖb%ÝbÎ  Î ƒqÔÁè ábè†Æ $æbüÇeDÎeÏ  Ï ƒq Ï ‡£è ×eèŸÆ $Øeä…o4ŒoÐ  Ð ƒq Ð è “oèï $”oÔ¼qÃqÑ  Ñ ƒqè Çqè»› $Èqü¥xD¬xÒ  Ò ƒqè µxèëœ $¶xüÌy&lÏyÓ  Ó ƒq ãyáÌ ‡¯$ÝyüË|'ŒÒ|Ô  Ô ƒqè ä|襞 $å|ü‚0TÕ  Õ ƒq Õ ‡£è èšÕü²†,<À†Ö  Ö ƒqè Ȇè×Ô$͆Ó†üþL‡Ž×  × ƒqè ‘Žèý¿ $’Žü¨”2\±”䆃qèèî½Ý‚Ÿüî˜,L÷˜ºpƒqèè®ë·ìžüõ-L…žƒqºpèè
ü¸¢3\¢Ø  Ø ƒq Ø ºpè ΢èèŸ $Ó¢üȧ'<Ò§Ù  Ù ƒq Ù ºpè Ú§è
$Û§ü±7ḻÚ  Ú ƒq Ú ä†è Ú±è
$ß±üá¶+Lë¶Û  Û ƒq Û ä†è õ¶èçß $ö¶œ¸ƒqŠÙм·¸,º¸Ü  Ü ƒqƒq À¸
Š$Á¸ü”¹"T—¹Ý  Ý ƒqƒq ¨¹½ß ‡¯$¢¹”¢Àƒq"”ÉÀ$ÌÀÞ  Þ ƒqŒ ÑÀŒ
$ÖÀüïÂ!lòÂß  ß ƒq †Ãþâ ‡¯$€ÃÔàăqÒLüÅ;4’Åà  à ƒqô¡¥ ·ÅœÄ ™Å­Ä̜ŽÄ\©Å
ô¡?•ùù—/1ýÇ<closure_kind>Á<closure_signature>Á<upvars>Áéè ¦Èü¶È"éƒq–ÒL»ÈüßÈ?4âÈá  á ƒqÈ¥ ‹ÉáÅ éÈòÅììÈ‚Æ|ùÈ
éÈ$Éù“•68üÚÉ!éƒqšÒLšßÉü‚Ê>4…Êâ  â ƒqȘ¥ ­Ê˜áÅ ŒÊòÅäʺÉtœÊ
šéÈ6”ù0•57åÊšõ™œŽšœ¬šœœšéó ô…˃qžÒLžüªË?4­Ëã  ã ƒqô¡¥ŸŸ ÖËœÄ ´Ë­Äì·ËáÊ|ÄË
žô¡J’ùC”/1DŽÌžõ™ Žš ¬š  žá÷ ü´Ì&颢ƒq£ÒL£¹ÌüáÌC4äÌä  ä ƒqÈ¡¥¤¤ ‘Í¡

ayT´
4¸
·¾×$  `«­WriteÁ, êb«®²3 í«¯
match_typeÁTM ¨«± LifetimeFreeÁd] Z«²D† Ê«´Ùµ$” Þ«µ½fl¨ © «½fª «L ×
ÃÅL- ¶D= Ÿ\s tv_a¤¡ RÌ” ü¸8 5 A trait for converting a value to a `CompactString`.Áñ úüõM J This trait is automatically implemented for any type which implements theÁüÃ[ X [`fmt::Display`] trait. As such, [`ToCompactString`] shouldn't be implemented directly:ÁüŸW T [`fmt::Display`] should be implemented instead, and you get the [`ToCompactString`]Áä÷  implementation for free.Á ··èðü”´ ·èðè𠸸¸ü™- ü´4 1 Converts the given value to a [`CompactString`].Áí ú # ExamplesÁˆ ú
Basic usage:Á¥ ú<­  ```Áü¹% " use compact_str::ToCompactString;Áüã% " # use compact_str::CompactString;Á út• let i = 5;Áü¨' $ let five = CompactString::new("5");ÁÔ úüÜ, ) assert_eq!(i.to_compact_string(), five);Á< ¼¬Œœ æ  æ ððÎs· ® ·
¸ðð üý*  # SafetyÁ× úüÛ5 2 * [`CompactString`] does not contain any lifetimeÁü‘"  * [`CompactString`] is 'staticÁü´H E * [`CompactString`] is a container to `u8`, which is `LifetimeFree`.ÁÎsü« ! ƒqü†+ ýÞ úüâ a ^ In this implementation, the `to_compact_string` method panics if the `Display` implementationÁüÄ
P M returns an error. This indicates an incorrect `Display` implementation sinceÁü• F C `std::fmt::Write for CompactString` never returns an error itself.ÁÜ ú  # NoteÁë úüï c ` We use the [`castaway`] crate to provide zero-cost specialization for several types, those are:ÁüÓ 0 - * `u8`, `u16`, `u32`, `u64`, `u128`, `usize`Áü„
0 - * `i8`, `i16`, `i32`, `i64`, `i128`, `isize`Áôµ
 * `NonZeroU*`, `NonZeroI*`Á
* `bool`Á
* `char`Áüî
  * `String`, `CompactString`Á”Ž  * `f32`, `f64`Áü¡d a * For floats we use [`ryu`] crate which sometimes provides different formatting than [`std`]Á¥¼¼œÄ  Äcô¡ ô¡½¸½#%üÆ, ŒÉ ç  ç ô¡Îs» Û »
½ô¡ ÔÁ# üòa ^ A trait that provides convience methods for creating a [`CompactString`] from a collection ofÁüÔd a items. It is implemented for all types that can be converted into an iterator, and that iteratorÁü¹4 1 yields types that can be converted into a `str`.Áî úüò. + i.e. `C: IntoIterator<Item = AsRef<str>>`.Á¡ úÔ¥  # Concatenate and JoinÁüÀZ W Two methods that this trait provides are `concat_compact(...)` and `join_compact(...)`Á< ¼¬ü£ & # use compact_str::CompactStringExt;ÁÊ úüÎ 9 6 let words = vec!["☀ï¸", "🌕", "🌑", "☀ï¸"];Áˆ! úüŒ!2 / // directly concatenate all the words togetherÁü¿!( % let concat = words.concat_compact();Áüè!/ , assert_eq!(concat, "☀ï¸ðŸŒ•🌑☀ï¸");Á˜" úüœ"' $ // join the words, with a seperatorÁüÄ". + let join = words.join_compact(" âž¡ï¸ ");Áüó"E B assert_eq!(join, "â˜€ï¸ âž¡ï¸ ðŸŒ• âž¡ï¸ ðŸŒ‘ âž¡ï¸ â˜€ï¸");Á<¹# ¼¬„Ë# ¾¾èðüÁ#ã ¾èðèð ¿À¿ÀÀ¿ü¨&* üâ#G D Concatenates all the items of a collection into a [`CompactString`]Á®$ úl¶$
# ExampleÁ<È$ ¼¬üÔ$& ‹½ÿ$ úü‡%- * let items = ["hello", " ", "world", "!"];Áü¹%) & let compact = items.concat_compact();Áç% úüï%( % assert_eq!(compact, "hello world!");Á<œ& ¼¬t«& è  è ððÎs¾ º& ¾
¿ðð$»& üÝ)E üØ&T Q Joins all the items of a collection, placing a seperator between them, forming aÁ¬±'  [`CompactString`]ÁË' úlÓ' ÅÂ<å' ¼¬üñ'& ‹½œ( úü¤(6 3 let fruits = vec!["apples", "oranges", "bananas"];Áüß(, ) let compact = fruits.join_compact(", ");Á) úü˜)4 1 assert_eq!(compact, "apples, oranges, bananas");Á<Ñ) ¼¬dà) é  é ðð¤Îs¾¤ÁÁ ü) ¾Íì½É í) à½ÉTð)
Àðð½É$ý) “• Lƒ* 35ü¦*i šÃÄÃÄŠŢÈL Å£‡ d+ Íì¢ ®* ࣇ TÕ* ÅÇLìÊÔô* Í죇 «* ¢ÆÈ¿ÀÆÈ ceé* ü–+) t™+ ê  ê ¢Îs ¨+ Â
Æ£‡ ¢$©+ lŒ, Æõ™ÇŽšÇ¬šÇÇÆ üó,D dö, ë  ë ¢¹ Îs¤ÉÉ ’- ÂÍì¹ ƒ- ๠T†-
È£‡ ¢¹ $“- “• ¡79
ž”Ì
ÎsÎÐÑÒÔÖØÚÛÜÝÞßàáâäåæçèéìîïðñòóôõ÷øùûüýÿšü†-*
üåO
L Creates a new [`CompactString`] from any type that implements `AsRef<str>`.Áü¹ H
E If the string is short enough, then it will be inlined on the stack!Á†!
útŽ!
ô«¡!
ú|©!
### InlinedÁ<½!
¼¬üÉ!%
ü¬üó!P
M // We can inline strings up to 12 characters long on 32-bit architectures...ÁüÈ"'
$ #[cfg(target_pointer_width = "32")]ÁÜô"
 let s = "i'm 12 chars";Áü”#:
7 // ...and up to 24 characters on 64-bit architectures!ÁüÓ#'
$ #[cfg(target_pointer_width = "64")]Áüÿ#'
$ let s = "i am 24 characters long!";Á«$
úü³$)
& let compact = CompactString::new(&s);Áá$
úÜé$
 assert_eq!(compact, s);Áü‰%(
% // we are not allocated on the heap!Áü¶%*
' assert!(!compact.is_heap_allocated());Á<å%
¼¬ñ%
údù%
### HeapÁ<Š&
¼¬ü–&%
ü¬üÀ&>
; // For longer strings though, we get allocated on the heapÁüƒ'I
F let long = "I am a longer string that will be allocated on the heap";矄'+
( let compact = CompactString::new(long);Á(
úô‰(
 assert_eq!(compact, long);Áü¬($
! // we are allocated on the heap!ÁüÕ()
& assert!(compact.is_heap_allocated());Á<ƒ)
¼¬)
ú„—)
### CreationÁ<¬)
¼¬ü¸)#
use compact_str::CompactString;Áà)
úìè)
 // Using a `&'static str`ÁÜŠ*
 let s = "hello world!";矻*'
$ let hello = CompactString::new(&s);ÁÖ*
ú¼Þ*
 // Using a `String`Áüú*%
" let u = String::from("🦄🌈");Áü¤+(
% let unicorn = CompactString::new(u);ÁÑ+
úÌÙ+
 // Using a `Box<str>`Áü÷+D
A let b: Box<str> = String::from("📦📦📦").into_boxed_str();ÁüÀ,'
$ let boxed = CompactString::new(&b);Á<ì,
¼¬-
ô¡ÎsÍ¥ÏÏÍœÄ ‘-
àô¡T”-
Îô¡ÎãL"(*üš2+
üî-;
8 Creates a new inline [`CompactString`] at compile time.Á®.
út¶.
ô«<É.
¼¬üÕ.#
ÁÙý.
úü…/N
K const DEFAULT_NAME: CompactString = CompactString::new_inline("untitled");Á<Ø/
¼¬ä/
úüì/S
P Note: Trying to create a long string that can't be inlined, will fail to build.ÁœÄ0
 ```compile_fail矆0%
ü¬ü†1u
r const LONG: CompactString = CompactString::new_inline("this is a long string that can't be stored on the stack");Á<€2
¼¬T§2
ì  ì ÎsÍ ¸2
Í³Š Îãû#üÞB-
ü3]
Z Creates a new empty [`CompactString`] with the capacity to fit at least `capacity` bytes.Áã3
úüë3^
[ A `CompactString` will inline strings on the stack, if they're small enough. Specifically,ÁüÎ4X
U if the string has a length less than or equal to `std::mem::size_of::<String>` bytesÁü«5Z
W then it will be inlined. This also means that `CompactString`s have a minimum capacityÁüŠ6%
" of `std::mem::size_of::<String>`.Á´6
út¼6
ô«Ï6
ú¼×6
 ### "zero" CapacityÁ<ó6
¼¬üÿ6%
ü¬ü©7@
= // Creating a CompactString with a capacity of 0 will createÁüî7:
7 // one with capacity of std::mem::size_of::<String>();Áü­80
- let empty = CompactString::with_capacity(0);Áüâ81
. let min_size = std::mem::size_of::<String>();Á˜9
úü 9+
( assert_eq!(empty.capacity(), min_size);ÁäÐ9
 assert_ne!(0, min_size);Áüñ9(
% assert!(!empty.is_heap_allocated());Á<ž:
¼¬ª:
ú¼²:
 ### Max Inline SizeÁ<Î:
¼¬üÚ:%
ü¬ü„;P
M // Creating a CompactString with a capacity of std::mem::size_of::<String>()ÁôÙ;
 // will not heap allocate.Áüü;1
. let str_size = std::mem::size_of::<String>();Áü²<7
4 let empty = CompactString::with_capacity(str_size);Áî<
úüö<+
( assert_eq!(empty.capacity(), str_size);Áü¦=(
°ê<Ó=
¼¬ß=
ú¼ç=
 ### Heap AllocatingÁ<ƒ>
¼¬ü>%
ü¬ü¹>C
@ // If you create a `CompactString` with a capacity greater thanÁü?F
C // `std::mem::size_of::<String>`, it will heap allocated. For heapÁüÌ?3
0 // allocated strings we have a minimum capacityÁ„@
úüŒ@F
C const MIN_HEAP_CAPACITY: usize = std::mem::size_of::<usize>() * 4;Á×@
úüß@6
3 let heap_size = std::mem::size_of::<String>() + 1;ÁüšA8
5 let empty = CompactString::with_capacity(heap_size);Á×A
úüßA4
1 assert_eq!(empty.capacity(), MIN_HEAP_CAPACITY);Áü˜B'
$ assert!(empty.is_heap_allocated());Á<ÄB
¼¬låB
ÎsÍÍ­£ ý÷*üªLC
üÎC6
3 Convert a slice of bytes into a [`CompactString`].Á‰D
úü‘D
~ A [`CompactString`] is a contiguous collection of bytes (`u8`s) that is valid [`UTF-8`](https://en.wikipedia.org/wiki/UTF-8).Áü—EP
M This method converts from an arbitrary contiguous collection of bytes into aÁüìEE
B [`CompactString`], failing if the provided bytes are not `UTF-8`.Á¶F
úü¾F^
[ Note: If you want to create a [`CompactString`] from a non-contiguous collection of bytes,Áü¡GT
Q enable the `bytes` feature of this crate, and see `CompactString::from_utf8_buf`ÁúG
útH
ô«œ•H
 ### Valid UTF-8Á<­H
¼¬ü¹H%
ü¬üãH=
: let bytes = vec![240, 159, 166, 128, 240, 159, 146, 175];矴IH
E let compact = CompactString::from_utf8(bytes).expect("valid UTF-8");ÁòI
úüúI$
! assert_eq!(compact, "🦀💯");Á<£J
¼¬¯J
ú¬·J
 ### Invalid UTF-8Á<ÑJ
¼¬üÝJ%
ü¬ü‡K$
! let bytes = vec![255, 255, 255];Áü°K1
. let result = CompactString::from_utf8(bytes);ÁæK
úìîK
 assert!(result.is_err());Á<L
¼¬L±L
äø–  ÍÓÓÍé„ »L
ú„\¾L
ÒäøŽÂ°. üUA
ü«M_
\ Converts a vector of bytes to a [`CompactString`] without checking that the string containsÁN
valid UTF-8.Á¤N
úü¬NI
F See the safe version, [`CompactString::from_utf8`], for more details.ÁúN
údO
¦¯“O
úü›O[
X This function is unsafe because it does not check that the bytes passed to it are validÁüûO`
] UTF-8. If this constraint is violated, it may cause memory unsafety issues with future usersÁüàPN
K of the [`CompactString`], as the rest of the standard library assumes thatÁü³Q'
$ [`CompactString`]s are valid UTF-8.ÁßQ
útçQ
ô«úQ
ú„‚R
—¬—R
ú<ŸR
¼¬ü«R%
ü¬ôÕR
 // some bytes, in a vectorÁüøR1
. let sparkle_heart = vec![240, 159, 146, 150];Á®S
úü¶S
 let sparkle_heart = unsafe {ÁüÛS9
6 CompactString::from_utf8_unchecked(sparkle_heart)Á4™T
 };Á¤T
úü¬T&
# assert_eq!("💖", sparkle_heart);Á<×T
¼¬.\ñT
œU
äøÎsÍÕÕÍé„ £U
ú„\¦U
ÔäøŽÂm2 ü“\F
ü†VS
P Decode a [`UTF-16`](https://en.wikipedia.org/wiki/UTF-16) slice of bytes into aÁüÞVS
P [`CompactString`], returning an [`Err`] if the slice contains any invalid data.Á¶W
út¾W
ô«¤ÑW
 ### Valid UTF-16Á<êW
¼¬üöW%
ü¬ü XP
M let buf: &[u16] = &[0xD834, 0xDD1E, 0x006d, 0x0075, 0x0073, 0x0069, 0x0063];ÁüõX:
7 let compact = CompactString::from_utf16(buf).unwrap();Á´Y
úü¼Y%
" assert_eq!(compact, "ð„žmusic");Á<æY
¼¬òY
ú´úY
 ### Invalid UTF-16Á<•Z
¼¬ü¡Z%
ü¬üËZP
M let buf: &[u16] = &[0xD834, 0xDD1E, 0x006d, 0x0075, 0xD800, 0x0069, 0x0063];Áü [-
* let res = CompactString::from_utf16(buf);ÁÒ[
úÔÚ[
 assert!(res.is_err());Á<ù[
¼¬Tš\
äøÒ« Í××Íé„ ¥\
àäøø¢ d¨\
ÖäøŽÂÞ0*,üðe8
ü¢a[
X Decode a UTF-16–encoded slice `v` into a `CompactString`, replacing invalid data withÁü‚b.
+ the replacement character (`U+FFFD`), �.Áµb
út½b
ô«Ðb
ú„Øb
—¬íb
ú<õb
¼¬üc%
ü¬ü«c"
 // ð„žmus<invalid>ic<invalid>ÁüÒc-
* let v = &[0xD834, 0xDD1E, 0x006d, 0x0075,Áü„d-
* 0x0073, 0xDD1E, 0x0069, 0x0063,Á´¶d
 0xD834];ÁÑd
úüÙd@
= assert_eq!(CompactString::from("ð„žmus\u{FFFD}ic\u{FFFD}"),Áüže3
0 CompactString::from_utf16_lossy(v));Á<Öe
¼¬„÷e
äøÎsÍÙÙÍé„ ˆf
îdf
ØäøŽÂþ. ÔÔm
üähW
T Returns the length of the [`CompactString`] in `bytes`, not [`char`]s or graphemes.ÁÀi
úüÈi`
] When using `UTF-8` encoding (which all strings in Rust do) a single character will be 1 to 4Áü­j]
Z bytes long, therefore the return value of this method might not be what a human considersÁìk
 the length of the string.Á±k
út¹k
ô«<Ìk
¼¬üØk%
ü¬ü‚l2
/ let ascii = CompactString::new("hello world");Áü¹l
 assert_eq!(ascii.len(), 11);ÁÞl
úüæl+
( let emoji = CompactString::new("👱");Áü–m
 assert_eq!(emoji.len(), 4);Á<ºm
¼¬Ûm
í  í ÎsÍ ßm
Íܹ $àm
ôq
ü‘nP
M Returns `true` if the [`CompactString`] has a length of 0, `false` otherwiseÁæn
útîn
ô«<o
¼¬üo%
ü¬ü·o)
& let mut msg = CompactString::new("");Áäåo
 assert!(msg.is_empty());Á†p
úÔŽp
 // add some charactersÁü­p"
 msg.push_str("hello reader!");ÁìÔp
 assert!(!msg.is_empty());Á<öp
¼¬D—q
î  î ÎsÍ  q
Í
Û$¡q
üüv
üÔq<
9 Returns the capacity of the [`CompactString`], in bytes.Á•r
úTr
â³ü¬r_
\ * A `CompactString` will always have a capacity of at least `std::mem::size_of::<String>()`Ás
út˜s
ô«¤«s
 ### Minimum SizeÁ<Äs
¼¬üÐs%
ü¬üús1
éü°t)
& let compact = CompactString::new("");ÁÞt
úüæt,
) assert!(compact.capacity() >= min_size);Á<—u
¼¬£u
ú´«u
 ### Heap AllocatedÁ<Æu
¼¬üÒu%
ü¬üüu4
1 let compact = CompactString::with_capacity(128);Áüµv(
% assert_eq!(compact.capacity(), 128);Á<âv
¼¬Dƒw
ï  ï ÎsÍ Œw
Í
Ü$w
üî~,
üÃw]
Z Ensures that this [`CompactString`]'s capacity is at least `additional` bytes longer than矴x\
Y its length. The capacity may be increased by more than `additional` bytes if it chooses,矠y&
# to prevent frequent reallocations.Á±y
úT¹y
â³üÈy_
\ * A `CompactString` will always have at least a capacity of `std::mem::size_of::<String>()`Áü¬zW
T * Reserving additional bytes may cause the `CompactString` to become heap allocatedÁˆ{
úd{
ýü¡{0
- Panics if the new capacity overflows `usize`ÁÖ{
útÞ{
ô«<ñ{
¼¬üý{%
ü¬§|
úü¯|5
2 const WORD: usize = std::mem::size_of::<usize>();Áüé|/
, let mut compact = CompactString::default();Áü}2
/ assert!(compact.capacity() >= (WORD * 3) - 1);ÁÔ}
úÌÜ}
 compact.reserve(200);Áüú})
ÏØü¨~'
$ assert!(compact.capacity() >= 200);Á<Ô~
¼¬<õ~
ð  ð ÎsÍ ý~
Í
Ý$
ŠÞ¯6äÜ
üËC
@ Returns a string slice containing the entire [`CompactString`].Á“€
út›€
ô«<®€
¼¬üº€%
ü¬üä€(
% let s = CompactString::new("hello");Á
úü™$
! assert_eq!(s.as_str(), "hello");Á
¼¬
ñ  ñ Îs ñ Í ê
Í¿Ý 
üê„(
üž‚K
H Returns a mutable string slice containing the entire [`CompactString`].Áî‚
útö‚
ô«<‰ƒ
¼¬ü•ƒ%
ü¬ü¿ƒ,
) let mut s = CompactString::new("hello");Áüðƒ*
' s.as_mut_str().make_ascii_uppercase();ÁŸ„
úü§„$
! assert_eq!(s.as_str(), "HELLO");Á<Є
¼¬Tñ„
ò  ò Îs ò Í ü„
ꠃ $
ü´ˆ
ü”†=
: Returns a byte slice of the [`CompactString`]'s contents.ÁÖ†
útÞ†
ô«<ñ†
¼¬üý†%
ü¬ü§‡(
ÁªÔ‡
úü܇9
6 assert_eq!(&[104, 101, 108, 108, 111], s.as_bytes());Á<šˆ
¼¬D»ˆ
ó  ó Îs ó ‡£Í Ĉ
ÍËÞ
$ň
üµ2
üë‰C
@ Provides a mutable reference to the underlying buffer of bytes.Á³Š
úd»Š
¦¯üÌŠW
T * All Rust strings, including `CompactString`, must be valid UTF-8. The caller mustÁ|¨‹
guaranteeÁü¼‹I
F that any modifications made to the underlying buffer are valid UTF-8.ÁŠŒ
út’Œ
ô«<¥Œ
¼¬ü±Œ%
ü¬üÛŒ,
ª­Œ
úü”,
) let slice = unsafe { s.as_mut_bytes() };矁!
 // copy bytes into our stringÁüë6
3 slice[5..11].copy_from_slice(" world".as_bytes());Áü¦Ž
 // set the len of the stringÁìËŽ
 unsafe { s.set_len(11) };ÁíŽ
úüõŽ!
 assert_eq!(s, "hello world");Á<
¼¬
ô  ô Îs ô ‡£Í Ð
Í
á
üÖ’
ü‘D
A Appends the given [`char`] to the end of this [`CompactString`].ÁÚ
ú
ô«
¼¬ü%
ü¬ü«‘*
' let mut s = CompactString::new("foo");ÁÚ‘
ú„â‘
s.push('b');Á„÷‘
s.push('a');Á„Œ’
s.push('r');Á¡’
úä©’
 assert_eq!("foobar", s);Á<Ê’
¼¬$Ý’
õ  õ ÎsÍ â’
Íõ© $ç’
ñ½ í’
§“
ââü†—%
ü¸“I
F Removes the last character from the [`CompactString`] and returns it.Áü†”6
3 Returns `None` if this [`CompactString`] is empty.ÁÁ”
útÉ”
ô«<Ü”
¼¬üè”%
ü¬ü’•*
' let mut s = CompactString::new("abc");ÁÁ•
úüÉ•#
assert_eq!(s.pop(), Some('c'));Áüñ•#
assert_eq!(s.pop(), Some('b'));Áü™–#
assert_eq!(s.pop(), Some('a'));ÁÁ–
úôÉ–
 assert_eq!(s.pop(), None);Á<ì–
¼¬
ö  ö ÎsÔÁÍ ‘—
Í
ä$–—
ü€š#
üΗG
D Appends a given string slice onto the end of this [`CompactString`]Áš˜
út¢˜
ô«<µ˜
¼¬üÁ˜%
ü¬üë˜*
Ò½š™
ú´¢™
 s.push_str("123");Á½™
úäÅ™
 assert_eq!("abc123", s);Á<æ™
¼¬D‡š
÷ ø  ÷ Îs ø Í š
Í‚Š $•š
¾>ü¿£,
üÌšU
R Removes a [`char`] from this [`CompactString`] at a byte position and returns it.Á¦›
úü®›N
K This is an *O*(*n*) operation, as it requires copying every element in theÁ\œ
 buffer.Á‘œ
úd™œ
ýªœ
úü²œN
K Panics if `idx` is larger than or equal to the [`CompactString`]'s length,Áü…1
. or if it does not lie on a [`char`] boundary.Á»
ú
ô«Ö
ú¤Þ
 ### Basic usage:Á÷
ú<ÿ
¼¬ü‹ž%
ü¬üµž3
0 let mut c = CompactString::from("hello world");Áíž
úüõž!
 assert_eq!(c.remove(0), 'h');Áü›Ÿ
 assert_eq!(c, "ello world");ÁÀŸ
úüÈŸ!
 assert_eq!(c.remove(5), 'w');ÁüîŸ
 assert_eq!(c, "ello orld");Á< 
¼¬ž 
úÔ¦ 
 ### Past total length:ÁÅ 
úœÍ 
 ```should_panicÁüå %
ü¬ü¡4
1 let mut c = CompactString::from("hello there!");Á”È¡
 c.remove(100);Á<ß¡
¼¬ë¡
úìó¡
 ### Not on char boundary:Á•¢
úœ¢
…Êüµ¢%
ü¬üߢ,
) let mut c = CompactString::from("🦄");Á£
c.remove(1);Á<¥£
¼¬4Æ£
ù  ù ÎsÍ Í£
Í
æ$Ò£
ÁÐ C?üŠ­0
ü¿©<
9 Forces the length of the [`CompactString`] to `new_len`.Á€ª
úüˆªR
O This is a low-level operation that maintains none of the normal invariants forÁüߪZ
W `CompactString`. If you want to modify the `CompactString` you should use methods likeÁü¾«
 `push`, `push_str` or `pop`.Áã«
údë«
¦¯üü«:
7 * `new_len` must be less than or equal to `capacity()`Áü»¬<
9 * The elements at `old_len..new_len` must be initializedÁ<˜­
ú  ú ÎsÍ  ­
ÍÇÎ $¥­
­Ó ]?ü‘²'
üè­C
@ Returns whether or not the [`CompactString`] is heap allocated.硨
út¸®
ô«|Ë®
÷Ð<ß®
¼¬üë®%
ü¬ü•¯2
/ let hello = CompactString::new("hello world");Á̯
úüÔ¯(
% assert!(!hello.is_heap_allocated());Á<°
¼¬°
ú´•°
±Ÿ<°°
¼¬ü¼°%
ü¬üæ°Z
W let msg = CompactString::new("this message will self destruct in 5, 4, 3, 2, 1 💥");Áű
úüͱ%
" assert!(msg.is_heap_allocated());Á<÷±
¼¬Œ˜²
û  û ÎsÍ ª²
Í
è$«²
ü´H
d“´
ü  ü Îs—Ö ùà Í»'êê  ´
ÍÍì—Ö ¼®´
¤#—Ö ”³´
àæ $¡´
Ïã Ë;-/¼Œµ
lµ
èØ üÃÂS
üó»9
6 Removes the specified range in the [`CompactString`],Áü±¼*
' and replaces it with the given string.Áüà¼E
B The given string doesn't need to be the same length as the range.Áª½
úd²½
ýý
úü˽F
C Panics if the starting point or end point do not lie on a [`char`]Áü–¾*
' boundary, or if they're out of bounds.Áž
út;
ô«à¾
ú„è¾
—¬ý¾
ú<…¿
¼¬ü‘¿%
ü¬ü»¿4
1 let mut s = CompactString::new("Hello, world!");Áô¿
úüü¿$
! s.replace_range(7..12, "WORLD");Áü¥À#
assert_eq!(s, "Hello, WORLD!");ÁÍÀ
úüÕÀ#
s.replace_range(7..=11, "you");ÁüýÀ!
 assert_eq!(s, "Hello, you!");Á£Á
úü«Á;
8 s.replace_range(5.., "! Is it me you're looking for?");ÁüëÁ9
6 assert_eq!(s, "Hello! Is it me you're looking for?");Á<©Â
¼¬lÊÂ
ý þ  ý Îs—Ö þ Í»'íí ØÂ
ͬؼêÂ
¾Ø”ïÂ
ì—Ö $ÝÂ
Ïã ;žì ;13üüÆZ
¼†Ç
ÿ   ÿ Îs  Í žÇ
ͪê $£Ç
¹,©Ç
þ·Ç
žì dÃÇ
üªÉW
¤´É
    Îs  Í ÉÉ
Íãé $ÎÉ
¹,ÔÉ
þâÉ
žì dîÉ
üøÏU
”‚Ð
ƒ   ƒ Îs  Í •Ð
Íœé $šÐ
¹, Ð
þ®Ð
žì dºÐ
ü§Û*
ü¿Ö7
4 Truncate the [`CompactString`] to a shorter length.ÁûÖ
úüƒ×^
[ If the length of the [`CompactString`] is less or equal to `new_len`, the call is a no-op.Áæ×
úüî×P
M Calling this function does not change the capacity of the [`CompactString`].ÁÃØ
údËØ
ýÜØ
úüäØL
I Panics if the new end of the string does not lie on a [`char`] boundary.ÁµÙ
út½Ù
ô«ÐÙ
ú„ØÙ
—¬íÙ
ú<õÙ
¼¬üÚ%
ü¬ü«Ú4
‹Ü”äÚ
 s.truncate(5);ÁÜûÚ
 assert_eq!(s, "Hello");Á<›Û
¼¬D®Û
   ÎsÍ ·Û
Í
ñ$¼Û
­Ó <ÂÛ
ü¢Þ!
üÝÝ2
/ Converts a [`CompactString`] to a raw pointer.Á4©Þ
   ÎsÁäÍ °Þ
Í
ò$±Þ
üÁß'
üôÞ:
7 Converts a mutable [`CompactString`] to a raw pointer.ÁTÈß
   Îs·äÍ Óß
Í
ó$Øß
ü×â6
üªà(
% Insert string character at an index.Á×à
útßà
ô«òà
ú„úà
—¬á
ú<—á
¼¬ü£á%
ü¬üÍá-
* let mut s = CompactString::new("Hello!");Áüÿá
 s.insert_str(5, ", world");Áü£â#
assert_eq!(s, "Hello, world!");Á<Ëâ
¼¬TÞâ
ˆ   ˆ Îs  Í éâ
Í
ô$îâ
ÁÐ ôâ
™Å4€ã
ü—ì.
üóé#
Insert a character at an index.Á›ê
út£ê
ô«¶ê
ú„¾ê
—¬Óê
ú<Ûê
¼¬üçê%
ü¬ü‘ë3
0 let mut s = CompactString::new("Hello world!");Á¬Éë
 s.insert(5, ',');Áüãë#
èí<‹ì
¼¬4žì
Š  Š ÎsÍ ¥ì
Í
õ$ªì
ÁÐ °ì
ñ½ ¼ì
ýì
õõ¼Ùð
üŽí8
5 Reduces the length of the [`CompactString`] to zero.ÁËí
úüÓíP
Æå¨î
ú<°î
¼¬ü¼î%
ü¬üæîX
U let mut s = CompactString::new("Rust is the most loved language on Stackoverflow!");ÁüÃï!
 assert_eq!(s.capacity(), 49);Áéï
útñï
s.clear();Á„ð
ú´Œð
 assert_eq!(s, "");Áü§ð!
˜ô<Íð
¼¬,àð
   ÎsÍ æð
Í
÷$ëð
üŽõ.
ü¢ñ=
: Split the [`CompactString`] into at the given byte index.Áäñ
úüìñP
ÆåÁò
údÉò
ýÚò
úüâò7
4 Panics if `at` does not lie on a [`char`] boundary.Ážó
ú„¦ó
—¬»ó
ú<Ãó
¼¬üÏó%
ü¬üùó4
‹Üü²ô+
( assert_eq!(s.split_off(5), ", world!");ÁÜâô
ªè<‚õ
¼¬L•õ
Œ  Œ ÎsÎsÍ Ÿõ
Í
ø$¤õ
at绛
üáýD
ü÷L
I Remove a range from the [`CompactString`], and return it as an iterator.ÁÒ÷
úüÚ÷P
Æå¯ø
úd·ø
ýÈø
úüÐøP
M Panics if the start or end of the range does not lie on a [`char`] boundary.Á¥ù
út­ù
ô«Àù
ú„Èù
—¬Ýù
ú<åù
¼¬üñù%
ü¬ü›ú4
‹ÜÔú
úüÜú
 let mut d = s.drain(5..12);Áü€ûI
F assert_eq!(d.next(), Some(',')); // iterate over the extracted dataÁüÎûF
C assert_eq!(d.as_str(), " world"); // or get the whole data as &str窟
úü¡üQ
N // The iterator keeps a reference to `s`, so you have to drop() the iterator,Áü÷ü'
$ // before you can access `s` again.Ád£ý
drop(d);Áä´ý
 assert_eq!(s, "Hello!");Á<Õý
¼¬,èý
   Îs—Ö ¡¡Ê4£ß4¤¹¥þ¦…5<–ݦÑúio Í»'úú îý
ͬؼ€þ
¾Ø”…þ
ù—Ö $óý
Ïã ¦F(*ü¸†0
ü‚€F
C Shrinks the capacity of this [`CompactString`] with a lower bound.ÁÍ€
úüÕ€H
E The resulting capactity is never less than the size of 3×[`usize`],Áü¢*
' i.e. the capacity than can be inlined.ÁÑ
ú
ô«ì
ú„ô
—¬‰‚
ú<‘‚
¼¬ü%
ü¬üÇ‚2
/ let mut s = CompactString::with_capacity(100);Áüþ‚"
 assert_eq!(s.capacity(), 100);Á¥ƒ
úü­ƒP
M // if the capacity was already bigger than the argument, the call is a no-opÁ¬‚„
 s.shrink_to(100);Áüœ„"
õ„Ä
ú¤Ë„
 s.shrink_to(50);Áüä„!
 assert_eq!(s.capacity(), 50);ÁŠ…
úü’…*
' // if the string can be inlined, it isÁ¤Á…
 s.shrink_to(10);ÁüÚ…?
< assert_eq!(s.capacity(), 3 * std::mem::size_of::<usize>());Á<ž†
¼¬L¿†
Ž  Ž ÎsÍ Ɇ
Í
û$Ά
÷ )IüöŽ
üž‡G
D Shrinks the capacity of this [`CompactString`] to match its length.Áê‡
úüò‡H
Ђü¿ˆ*
£ƒîˆ
úüöˆK
H This method is effectively the same as calling [`string.shrink_to(0)`].ÁƉ
útΉ
ô«á‰
ú„é‰
—¬þ‰
ú<†Š
¼¬ü’Š%
ü¬ü¼ŠV
S let mut s = CompactString::from("This is a string with more than 24 characters.");Á—‹
úœŸ‹
 s.reserve(100);Áü·‹!
 assert!(s.capacity() >= 100);ÁÝ‹
ú¼å‹
 s.shrink_to_fit();ÁüŒ&
# assert_eq!(s.len(), s.capacity());Á<¬Œ
¼¬¸Œ
ú<ÀŒ
¼¬üÌŒ%
ü¬üöŒ4
1 let mut s = CompactString::from("short string");Á¯
úœ·
ÖŒüÏ!
ôŒõ
ú´ý
 s.shrink_to_fit();Áü˜Ž?
ï‡<ÜŽ
¼¬lýŽ
   ÎsÍ 
Í
ü$
üÓ”A
üÀ;
8 Retains only the characters specified by the predicate.Á
úüˆT
Q The method iterates over the characters in the string and calls the `predicate`.Áá
úüéH
E If the `predicate` returns `false`, then the character gets removed.Áü¶‘B
? If the `predicate` returns `true`, then the character is kept.Áý‘
út…’
ô«˜’
ú
¼¬ü¬’%
ü¬üÖ’3
0 let mut s = CompactString::from("äbð„žd€");ÁŽ“
úü–“0
- let keep = [false, true, true, false, true];ÁüË“
 let mut iter = keep.iter();Áüï“(
% s.retain(|_| *iter.next().unwrap());Áœ”
úô¤”
 assert_eq!(s, "bð„žâ‚¬");Á<Ç”
¼¬4Ú”
   ÎsÎý Í”*þþ á”
ÍÍìÎý Äû”
“"Îý ¹è œ€•
Îý ¹è ˜"$
ýÎý $æ”
íƒ
Lð”
KMü£(
üª›J
G Decode a bytes slice as UTF-8 string, replacing any illegal codepointsÁù›
útœ
ô«”œ
ú<œœ
¼¬ü¨œ%
ü¬üÒœ+
( let chess_knight = b"\xf0\x9f\xa8\x84";Á
ú
assert_eq!(Á
"🨄",Áü²5
2 CompactString::from_utf8_lossy(chess_knight),Á
 );Á÷
úüÿ3
0 // For valid UTF-8 slices, this is the same as:Á|·ž
©™|Ëž
™üßžG
D CompactString::new(std::str::from_utf8(chess_knight).unwrap()),Á4«Ÿ
›š<¶Ÿ
¼¬Ÿ
ú¤ÊŸ
 Incorrect bytes:ÁãŸ
ú<ëŸ
¼¬ü÷Ÿ%
ü¬ü¡ %
" let broken = b"\xf0\x9f\xc8\x84";ÁË 
ú|Ó 
©™„ç 
"�Ȅ",Áüü /
, CompactString::from_utf8_lossy(broken),Á4°¡
›š»¡
úüáF
C // For invalid UTF-8 slices, this is an optimized implemented for:Á|Ž¢
©™„¢¢
 ü·¢=
: CompactString::from(String::from_utf8_lossy(broken)),Á4ù¢
›š<„£
¼¬|—£
   ‡£ÎsÍ ª£
Í
ÿÁ §£
üã
LÆ£
      ‡£ÉL Äï Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ ‡£У
ù$á£
ŽÂ›¤
! ­¤
Äݤ
\ã¤
ÛÐÌœ¥
d©¥
 ¶¥
Ò¨
 ȥ
á¥
 , ɥ
8ÁРʥ
& ͥ
8«<Î¥
$ Õ¥
, ×¥
8Ïã ,Ø¥
& ݥ
8ò
Þ¥
*ã¥
 æ¥
è
 ç¥
¨
8ý¥
8¦
8´ …¦
‡¦
8ù$‰¦
 ¦
8ƒ,ަ
 “¦
”¦
% •¦
8,«¦
8´ ±¦
 ²¦
8ó $³¦
 ·¦
¸¦
 º¦
°¨
8Û$Ô¦
 ئ
Û¦
 Ù¦
8® Ú¦
8ݦ
8matchesÁ<à¦
 ç¦
 è¦
ò¦
8® é¦
$ ê¦
, ì¦
8Ïã ,í¦
*ô¦
 ÷¦
ã§

8ŽÂ•§
 ˜§
§
, ™§
8ÁÐ š§
 ٤
8® ¡§
% ¢§
ˤ
8ù$Á§
Ƨ
8´ ȧ
% ɧ
8 ý§
*ÿ§
84‚¨
8Û$‰¨
 ¨
™¨
8é*\ލ
$ š¨
% Ĩ
Äá¨
\î¨
 ú¨
֩
 Ω
™©
, ©
8ÁÐ Ž©
& ‘©
8«<’©
*›©
 ž©
è©
 Ÿ©
ç©
8§'dµ©
 Á©
 ©
Ô©
, é
8ÁÐ Ä©
$ Ç©
70x80Á$É©
#Í©
70xBFÁ$Щ
% Õ©
% é©
Ĺ
ÿÿü ¼
\£¼
   ‡£À
ƒ“
Ò« ͯ+ˆÊ+ˆ »¼
ÍÍìÀ
œÔ¼
Í샓
¼ý¼
"À
tÙ¼
À
›¬˜"ä¼
"ƒ“
Ž ”‚½
ƒ“
Ȭ˜"‘½
À
ƒ“
ÁzDœ¨
xD²¨
vD н
­Ä
õ™Žš¬šù’
ÙÇ
õ™ŒŽšŒ¬šŒŒû
ü¹È
Œ¼È
   ‡£À
ƒ“
Îsͯ+ŽÊ+Ž ÚÈ
Í쫜óÈ
þ«¼œÉ
¬tøÈ
¦¬ƒÉ
½¬”¡É
Ô¬°É
À
ƒ“
ÁŸ5œ¨
5²¨
5Y[]_ ©É
üÔÚD
üœÖG
D Decode a slice of bytes as UTF-16 encoded string, in little endian.ÁèÖ
údðÖ
# ErrorsÁ×
úü‰×^
[ If the slice has an odd number of bytes, or if it did not contain valid UTF-16 characters,Áüì×!
 a [`Utf16Error`] is returned.Á’Ø
útšØ
ô«­Ø
ú<µØ
¼¬üÁØ%
ü¬üëØK
H const DANCING_MEN: &[u8] = b"\x3d\xd8\x6f\xdc\x0d\x20\x42\x26\x0f\xfe";Áü»ÙH
E let dancing_men = CompactString::from_utf16le(DANCING_MEN).unwrap();ÁüˆÚ-
* assert_eq!(dancing_men, "👯â€â™‚ï¸");Á<ºÚ
¼¬dÛÚ
…Î
Ò« ͺ,ÍÍì…Î
„ëÚ
à…Î
‡£\ðÚ
…Î
ÁO3+-ü´àD
ü÷ÛD
A Decode a slice of bytes as UTF-16 encoded string, in big endian.ÁÀÜ
údÈÜ
ǰÙÜ
úüáÜ^
ë°üÄÝ!
Ô±êÝ
útòÝ
ô«…Þ
ú<Þ
¼¬ü™Þ%
ü¬üÃÞM
J const DANCING_WOMEN: &[u8] = b"\xd8\x3d\xdc\x6f\x20\x0d\x26\x40\xfe\x0f";Áü•ßL
I let dancing_women = CompactString::from_utf16be(DANCING_WOMEN).unwrap();Áüæß/
, assert_eq!(dancing_women, "👯â€â™€ï¸");Á<šà
¼¬d»à
…Î
Ò« ͺ,Í뵄Ëà
ýµ\Ðà
…Î
Á`4!üÒç6
ü×áM
J Lossy decode a slice of bytes as UTF-16 encoded string, in little endian.穉
úü±â]
Z In this context "lossy" means that any broken characters in the input are replaced by theÁü“ã[
X \<REPLACEMENT CHARACTER\> `'�'`. Please notice that, unlike UTF-8, UTF-16 is not selfÁüóãX
U synchronizing. I.e. if a byte in the input is dropped, all following data is broken.ÁÐä
útØä
ô«ëä
ú<óä
¼¬üÿä%
ü¬ü©å2
/ // A "random" bit was flipped in the 4th byte:ÁüàåK
H const DANCING_MEN: &[u8] = b"\x3d\xd8\x6f\xfc\x0d\x20\x42\x26\x0f\xfe";Áü°æE
B let dancing_men = CompactString::from_utf16le_lossy(DANCING_MEN);Áüúæ9
6 assert_eq!(dancing_men, "�\u{fc6f}\u{200d}♂ï¸");Á<¸ç
¼¬”Ùç
…Î
Îsͺ,Í뵄ïç
ýµ\ôç
…Î
Á¹6!üæî6
üíèJ
G Lossy decode a slice of bytes as UTF-16 encoded string, in big endian.Á¼é
úüÄé]
ïºü¦ê[
×»ü†ëX
½¼ãë
útëë
ô«þë
ú<†ì
¼¬ü’ì%
ü¬ü¼ì2
/ // A "random" bit was flipped in the 9th byte:ÁüóìM
J const DANCING_WOMEN: &[u8] = b"\xd8\x3d\xdc\x6f\x20\x0d\x26\x40\xde\x0f";ÁüÅíI
F let dancing_women = CompactString::from_utf16be_lossy(DANCING_WOMEN);Áü“î4
1 assert_eq!(dancing_women, "👯\u{200d}♀�");Á<Ìî
¼¬”íî
…Î
Îsͺ,˜˜Í뵄ƒï
ýµ\ˆï
…Î
Á
8!ü™ò"
üð4
1 Convert the [`CompactString`] into a [`String`].Áºð
útÂð
ô«Õð
ú<Ýð
¼¬üéð%
ü¬ü“ñ.
+ let s = CompactString::new("Hello world");ÁäÆñ
 let s = s.into_string();Áüçñ!
 assert_eq!(s, "Hello world");Á<ò
¼¬\ ò
Îs–sÍÍÿå
$¬ò
ü³‰,
üæòE
B Convert a [`String`] into a [`CompactString`] _without inlining_.硗
úü¸ó[
X Note: You probably don't need to use this method, instead you should use `From<String>`Áü˜ô/
, which is implemented for [`CompactString`].ÁÌô
úüÔô^
[ This method exists incase your code is very sensitive to memory allocations. Normally whenÁü·õ]
Z converting a [`String`] to a [`CompactString`] we'll inline short strings onto the stack.Áü™ö]
Z But this results in [`Drop`]-ing the original [`String`], which causes memory it owned onÁüûö_
\ the heap to be deallocated. Instead when using this method, we always reuse the buffer thatÁüß÷T
Q was previously owned by the [`String`], so no trips to the allocator are needed.Á¸ø
útÀø
ô«Óø
ú¬Ûø
 ### Short StringsÁ<õø
¼¬üù#
ÁÙ©ù
úü±ù*
' let short = "hello world".to_string();Áüàù:
7 let c_heap = CompactString::from_string_buffer(short);ÁŸú
úü§ú[
X // using CompactString::from_string_buffer, we'll re-use the String's underlying bufferÁü‡û(
% assert!(c_heap.is_heap_allocated());Á´û
úü¼û]
Z // note: when Clone-ing a short heap allocated string, we'll eagerly inline at that pointÁüžü"
 let c_inline = c_heap.clone();ÁüÅü+
( assert!(!c_inline.is_heap_allocated());Áõü
úüýü!
 assert_eq!(c_heap, c_inline);Á<£ý
¼¬¯ý
ú´·ý
 ### Longer StringsÁ<Òý
¼¬üÞý#
ÁÙ†þ
úüŽþA
> let x = "longer string that will be on the heap".to_string();ÁüÔþ$
! let c1 = CompactString::from(x);Áýþ
úü…ÿA
> let y = "longer string that will be on the heap".to_string();ÁüËÿ2
/ let c2 = CompactString::from_string_buffer(y);Á‚€
úüŠ€Q
N // for longer strings, we re-use the underlying String's buffer in both casesÁüà€$
! assert!(c1.is_heap_allocated());Áü‰$
! assert!(c2.is_heap_allocated());Á
¼¬¾
ú¬Æ
 ### Buffer Re-useÁ
¼¬üì#
ÁÙ”‚
úüœ‚'
$ let og = "hello world".to_string();ÁôÈ‚
 let og_addr = og.as_ptr();Áë‚
úüó‚6
3 let mut c = CompactString::from_string_buffer(og);Á쮃
 let ex_addr = c.as_ptr();ÁЃ
úü؃`
] // When converting to/from String and CompactString with from_string_buffer we always re-useÁü½„2
/ // the same underlying allocated memory/bufferÁüô„!
 assert_eq!(og_addr, ex_addr);Áš…
úü¢…L
I let long = "this is a long string that will be on the heap".to_string();Áüó…"
 let long_addr = long.as_ptr();Áš†
úü¢†/
, let mut long_c = CompactString::from(long);ÁüÖ†'
$ let long_ex_addr = long_c.as_ptr();Á‚‡
úüЇ`
] // When converting to/from String and CompactString with From<String>, we'll also re-use theÁüï‡^
[ // underlying buffer, if the string is long, otherwise when converting to CompactString weÁ¬Òˆ
 // eagerly inlineÁüìˆ(
% assert_eq!(long_addr, long_ex_addr);Á<™‰
¼¬”º‰
–sÎsÍÍ
š¾2Eô·Š
Îsœ´œ¤êŠ
<íŠ
Îs
œä©‹
ÎsžŸê!ë!Ÿ\Ì‹
4Ñ‹
¼ò‹
,õ‹
   Îs   û‹

Ÿ$ü‹
ü«Œ
Îs¡÷!¡üߌ#
LâŒ
   Îs    ìŒ
 
¡$ñŒ
ü¨!
Îs£â£ÄÞ

˜  ˜ Îs ˜ ¢ è
¢
£
ü˜Ž#
Îs¥â¥ÔÐŽ
4ÓŽ
   Îs  Å¢¤ ÚŽ
¤
¥$ÛŽ
ü˜"
Îs§â§ÌÏ

š  š Îs 𠇣¦ Ù
¦
§
üŒ"
Îs©¢©ÄÃ

   Îs  ¨ Í
¨
©
üý%
Îs«¥«ü·‘$
Tº‘
œ  œ Îs œ ª Å‘
ª
«$Ê‘
Ì
ÎsüŸ’2
¥®®œÄ ¤’
úÞT§’
Îs¯·ß¯üØ’
Û’
 ž   Îs ž ô¡­ Þ’
­
¯ô¡$ß’
¹
Dü«“(
–s±·ß±üÚ“+
Ý“
Ÿ    Ÿ –s   Îs° à“
°
±$á“
¹
,ç“
ü¹”&
8¡ ¡ Ò£³·ß³üæ”+
é”
¢ £  ¢ Ò£ £ Îs² ì”
²
³8$í”
¹
,ó”
ü½•2
éµµ‰t¶·ß•
üö•+
ù•
¤ ¥  ¤ ‰t ¥ Îs´ ü•
´
é$ý•
¹
,ƒ–
ÔÍ–
Îs¸»¸üî–'
ñ–
¦ §  ¦ Îs § Îsôë · õ–
·
¸$ö–
¹
,ü–
üË—!
Îsºïߺüó—7
\ö—
¨ ©  ¨ Îs © ÎsÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙôë ¹ ‚˜
¹
º$ƒ˜
¹
,‰˜
ÜÔ˜
Îs¼›e¼üö˜(
$ù˜
ª «  ª Îs « Ìä
»½½ ‰™
»ÍìÌä
þ˜
¢eÌä
4
¼Ìä
$Š™
º€G/1üÌ™(
é¿¿ÎsÀëÀÑ™
Üû™
$þ™
ŠrÎs¾¾
Àé¾ ƒš
üßš#
ÎsÂëÂÔ‰›
$Œ›
–sÎsÁÁ
¾ ‘›
üú›+
éÄÄÎsÅëÅÿ›
ô¬œ
$¯œ
±¤ÎsÃÃ
Åé¾ ´œ
üôœ-
éÇÇÎsÈëÈùœ
ü¨"

‰tÎsÆÆ
ÈécowÁ°
ü£Ÿ%
ÎsÊëÊäÏŸ
$ÒŸ
rÎsÉÉ
Ê­ ן
üã #
–sÌëÌü›¡!
$ž¡
Îs–sËË
̾ŠIüà¡)
8¬ ¬ é¤ÎëÎüž¢!
$¡¢
Îsé¤ÍÍ
Î8¾_Iüð¢1
éÐЉtÑëÑõ¢
ü¶£%
$¹£
Å¥‰tÏÏ
Ñé¾=Iô¤
ÎsÓÔðyñyÔD¦¤
«¤
ÒÒÀüüФ8
DÓ¤
­  ­ Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÎsÎsðyÒ ߤ
Ò
Ô¾ ܤ
ü·¥!
ÎsÖÀcÖüߥ8
â¥
® ¯ °  ® Îs ¯  c cˆ¢cµ
 `£cŽÂ `àB¤GS
° àÁÕ æ¥
Õ
Ö$ç¥
± í¥
üͦ#
ÎsØÅcØü÷¦8
ú¦
± ² ³  ± Îs ²  c cˆ¢cµ
 `£cŽÂ `àB¤GS
³ àÁ× þ¦
×
Ø$ÿ¦
± …§
üç§)
ÎsÚÅLÚü—¨;
Lš¨
ô¡ÎsÙ¥ÛÛÙœÄ ¤¨
­Ä̧¨
½Ä\´¨
Úô¡ùŠK(*ü©©1
éÝÝÎsÞÅLÞ®©
üá©?
Lä©
ÈÎsÜ¥ßßÜáÅ î©
òÅìñ©
‚Æ|þ©
ÞéÈùIK.0ü÷ª0
éááÎsâÅLâüª
ü®«>
L±«
ÈÎsà¥ããàáÅ »«
òÅ侫
ºÉtË«
âéÈùK.0üì-
ÎsåÅLåü÷¬?
Lú¬
ô¡Îs䥿æäœÄ „­
­Ä쇭
áÊ|”­
åô¡ù¾J(*ü®5
éèèÎséÅLé’®
üÉ®C
LÌ®
ÈÎsç¥êêçáÅ Ö®
òÅüÙ®!
ÚΜæ®
ééÈù‡J/1üã¯+
ÎsìÅLìü•°=
L˜°
ô¡Îsë¥ííëœÄ ¢°
­ÄÜ¥°
‚Ìl²°
ìô¡ù4J(*ü©±2
ÎsïÅLïüâ±D
Lå±
ô¡Îsî¥ððîœÄ ï±
­Äüò±"
¤Í¤ÿ±
ïô¡ùâI)+üý²+
–sòÅLòü¯³D
L²³
ô¡–sñ¥óóñœÄ ¼³
­Äü¿³"
¤Í¤Ì³
òô¡ù¾G)+ü1
8´ ´ é¤õÅLõüŶD
Lȶ
Èé¤ô¥ööôáÅ Ò¶
òÅüÕ¶"
ÈÈLÎs¤â¶
õ8ÈùÁF8:ü¼·#
ÎsøÒLøüæ·;
4é·
µ  µ Îsô¡÷¥ùù ޏ
÷œÄ ð·
­ÄÌó·
½Ä\€¸
øô¡$“¸
ù¼F02üɸ+
éûûÎsüÒLüθ
üû¸?
4þ¸
   ÎsÈú¥ýý §¹
úáÅ …¹
òÅ숹
‚Æ|•¹
üéÈ$¬¹
ùÉF68üâ¹*
éÿÿÎs€ÒLç¹
ü“º>
4–º
·  · ÎsÈþ¥ ¾º
þáÅ º
òÅä º
ºÉt­º
éÈ$ú
ùÖF68üùº'
ÎsƒÒLƒü§»?
4ª»
¸  ¸ Îsô¡¥ Ó»
œÄ ±»
­Äì´»
áÊ|Á»
ƒô¡$Ø»
ùÉF02ü޼/
éÎs‡ÒL“¼
üļC
4Ǽ
¹  ¹ ÎsÈ¥ˆˆ ô¼
áÅ μ
òÅüѼ!
ÚΜ޼
éÈ'Eù‰F68D¬½
õ™Žš¬š݆üÒ½%
Îs‹ÒLüþ½=
4¾
º  º Îsô¡Š¥ŒŒ ¨¾
ŠœÄ ˆ¾
­ÄÜ‹¾
‚Ìl˜¾
ô¡$­¾
ùwE02üã¾%
–sŽÒLŽü¿D
4’¿
»  » –sô¡¥ À¿
œÄ ™¿
­Äüœ¿"
¤Í¤©¿
Žô¡$Å¿
ùWD13ü À,
Îs‘ÒLüÓÀD
4ÖÀ
¼  ¼ Îsô¡¥ „Á
œÄ ÝÀ
­ÄüàÀ"
¤Í¤íÀ
ô¡$‰Á
ùªB13üäÁ/
é‰t•ÒLéÁ
üšÂD
4Â
½  ½ ‰tÈ¥ ËÂ
áÅ ¤Â
òÅü§Â"
­Œ¤´Â
éÈ$ÐÂ
ùŸA79üŽÃ!
Îs˜ëbîb˜ü¶Ã/
L¹Ã
¾ ¿  ¾ Îs ¿ àÁ ÃÃ

˜$ÈÃ
¾ ÎÃ
üœÄJ
LŸÄ
À Á  À ÎsäÈäÈä’æÈ÷’ `çÈÀ `üöMõô]TdÁ àÁ ³Ä

$­Ä
À$¾Ä
ü«Æ
8  Îs›œÆ Ç œ\ÒÆ
4ׯ
ššÎsüêÆ+
íÆ
à Îs à ÎsÒ£Æ š €Ç
š
œ8$õÆ
rhsÁûÆ
üÊÇ&
8Ä Ä ÎsžÛõžü÷Ç#
TúÇ
Å Æ  Å Îs Æ  …È

ž8$ŠÈ
½žÈ
üãÌ
„¨ Åc üŠÍ8
Í
Ç È É  Ç „¨ È  c cˆ¢cµ
 `£cŽÂ `àB¤GS
É àÁŸ ‘Í
Ÿ
 $’Í
± ˜Í
¤šÏ
ü“ÎD
A An iterator over the exacted data by [`CompactString::drain()`].Á.üØÎA
1iterators are lazy and do nothing unless consumedÁ,¥Ï
颢¡¡Ê4£ß4¤¹¥þ¦…5<–ݦÑúioé<–ݦÑúio£¤¥¦®«Ï
üµÏ"
tµÏ
¡¡Òõ dÝÏ
,ÝÏ
¡¡TïÏ
ïÏ
¡¡ÔÿÏ
,ÿÏ
¡¡ÞÏÞÏ˶ àÏù¯vyÞi®¾ÏžéôæÐ
8Ê Ê é¨ôˆÑ
8Ë Ë é¨ì«Ñ
8Ì Ì é¨ªÀcªüÏÑ8
ÒÑ
Í Î Ï  Í é¨ Î  c cˆ¢cµ
 `£cŽÂ `àB¤GS
Ï àÁ© ÖÑ
©
ª8$×Ñ
± ÝÑ
üÑÒ
8РР騬Åc¬ü…Ó8
ˆÓ
Ñ Ò Ó  Ñ é¨ Ò  c cˆ¢cµ
 `£cŽÂ `àB¤GS
Ó àÁ« ŒÓ
«
¬8$Ó
±¬F¼ìÓ
8Ô Ô é¨®"®”˜Ô
$›Ô
Õ  Õ é¨­  Ô
­
®8$¥Ô
t¥×
8Ö Ö é¨°䑨
üº×D
A The remaining, unconsumed characters of the extracted substring.Á4˜Ø
×  × é¨ × ¯ ŸØ
¯
°8$ Ø
ÄÕØ
8Ø Ø é¨²³ê!ë!³\ôØ
4ùØ
±±üšÙ
,Ù
Ù  Ù é¨ Ù é¨ê!± £Ù
±
³8$¤Ù
ÜÜÙ
8Ú Ú é¨µ·¸¹úMûM€NÿMƒN·¹¸LþÙ
$ƒÚ
´´ü£Ú"
$¦Ú
Û  Û é¨ÔÁ´ «Ú
´
8$°Ú
¼ûÚ
,þÚ
騴´
·8ŒDü“Ü-
L–Ü
Ü  Ü é¨ÃÀ´  Ü
´
¸8$¡Ü
üûÜ!
$þÜ
é¨ÔÁ´´
¹8$‡Ý
üÇÝ&
8Ý Ý é¨»M»ü‚Þ'
L…Þ
Þ  Þ é¨ÔÁº Þ
º
»8$”Þ
üÔÞ
8ß ß é¨†CÀoÃô¾¿ÀÀoÆC<%Ô³Ào½½
¾„ê%½½Ô³¬^ À<Ào
_
_
_=Ào
_
_=ÀoÄÙÄ
_
_à  à ÀoÀoÃÆÃ
Ä
_¬^Å_Å_>ÀoÇÀcÇÅ_Å_á â ã  á Ào â  c cˆ¢cµ
 `£cŽÂ `àB¤GS
ã àÁÆ ÍÆ
ÇÅ_±Å_bb?Àobb?ÀoÊ·ßÊbbä å  ä Ào å ÀoÉ
ÔÉ
Êb¹
b{b{b@ÀoÌÌ{b{b{bæ  æ ÀoË ßË