Files
boc/aamos-ledger-rust/target/debug/deps/libtower-2ddc70745406efb3.rmeta
T

3034 lines
932 KiB
Plaintext
Raw Normal View History

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ÁtokioÁ·ØÃýø‘f»¹é딄-087392fa1a31dd29Ápin_project_liteÁ`b#ÒÿùM.è}²ð@ñ-7ea160027a0fdab2Á parking_lotÁŠÝ2.eÒõ²òêÕ†-689a5c8a340e7370Álock_apiÁð¹f^ô}¬öFº™”z¨ò-3f3c7099ed5d8d40Á
scopeguardÁ\…ŒÞ=0ÔB­ïÅA&¹-ccb5054c1d5044beÁparking_lot_coreÁÁ¶+¿™-h¢¼S¯Œ1\-5d7acafd3d98b936ÁsmallvecÁ½™îg—ÝÚt´±’ª®b-e608f34be3f30508ÁserdeÁŸÿ\.©åý¼ Òš-050607dac4fda6a6Á serde_deriveÁ,w|êñ]ù¿¥­C£ð-975c43f96d83014eÁ
serde_coreÁ_³-À Ëï ¢ÖzéÌ»S-cb84d8e698130faaÁ®«ýºõó¿àlé ,Z¶÷k/-c82bfbac630248a2ÁÚ+z˜ÖËó>zj–„÷-8f89ea8b6e77f2aaÁmioÁÄ©aZ¦ê@Þ'íˆA-d6954a24ebe3831fÁbytesÁ^ÍÏ8+än÷+j-122b7cf70504f583Á tokio_macrosÁóÁm¹^E¼>ŽCê
z3-074a4ab5bbda1a72Ásocket2Á/Æm·}ï3rÑ®‚fqB-f5f25707507e8a7cÁsignal_hook_registryÁ‹A´Ùqà’D;i-a201455211635890ÁerrnoÁ—ë@\ZéíJ÷MˆI-14c535580c974ea2Á
tower_serviceÁ/r(®'ÛÒÕù˜K”-5cde83e30b362864Á tower_layerÁhKBL†
™£ N,9Ÿíö@-94e864a87e0c69afÁ futures_coreÁJäI@fÄ
×ß›ë:²-b2a01c322c9ccc85Á futures_utilÁo.@\ù>,>.¥&ÖG/o-a464b0ed45ad8247Á futures_taskÁurªVŠˆ* ¨ªoèÿÅ7-8cf213f034b18043Á futures_sinkÁ‚BÛ˜õµËUæh—òË…-40585509b14a1deaÁslabÁiجôm¥(
A
[¾Äƒh-70c6c4d8a9a778fcÁ
futures_ioÁG™êéå&í“Êþ(ã½-10d9063ddf3dea8bÁìÐâà`éÙBÞðg+-67d59ffd555808adÁ sync_wrapperÁHV“6—¦®2˜uÏ)§Š.-8483b33ba75575bcÁbalanceÁ<»9»¼œ9bufferÁ4ç9»Ù”Ê9discoverÁD”:»õ¤õ9filterÁ4Á:»”¤:hedgeÁ,ë:»¯ŒÏ:limitÁ,”;»ÊŒø:¬$¼;»¬„¡; load_shedÁLè;» load-shedÁ¬È;+testsÁ,û ready_cacheÁ\Ã<» ready-cacheÁ¼¡< reconnectÁLö<»ç¬Ö<£,™0$Ž0°£,×1$Ì1÷ _obj_safeÁLì spawn_readyÁ\Ò=» spawn-readyÁ¼°=steerÁ,>»÷Œå=Ú£,‡,$ü+
sample_floyd2Álß»¼œ»
£ÀmacrosÁ
opaque_futureÁmakeÁmake_connectionÁMakeConnectionÁå
ConnectionÁErrorÁFutureÁ
poll_readyÁš¤ååðšš make_serviceÁ"""""""""sharedÁ++++++1¤1æ +4¤4¥4ResponseÁ444š4Ñ" MakeServiceÁ<å<RequestÁ<ñ<<ServiceÁ< MakeErrorÁ<<š<ù< into_serviceÁ<
as_serviceÁ"HžH¤HåHµ"MžM¤MåMµMñMMÑMßMMšMù" IntoServiceÁYžYµYY_markerÁ"^ž^µ^ƒ"bžbµb×"fžf¤fåfµfñfffšfÑ" AsServiceÁp'aÁpžpµppÀ"vžvµv×"zžz¤zåzµzñzzzšzÑfutureÁŠretryÁŒbackoffÁ MakeBackoffÁBackoffÁ make_backoffÁИ˜ next_backoffÁ£æ ž£žÐžß¢£¢baseÁ¢jitterÁ¦£¦¦ƒ ª>¬×ŒbudgetÁ¯
tps_budgetÁ°°°°°°°°°° ° TpsBudgetÁ»
generationÁ»reserveÁ»slotsÁ»windowÁ»writerÁ»deposit_amountÁ»withdraw_amountÁ°Ãæ ÃexpireÁÃsumÁÆ ÃputÁÃtry_getÁ°ÊdepositÁÊwithdrawÁ°Í>°Ïׯ¯BudgetÁÒÏ#ÒÞ#ŒìÕÕÕÕÕÕÕÕÕÕ Õ
Õá¡á¤áµáæ Õæ¡æ¤æµæ°æŠ ŒlayerÁìììï¡ïæ ìò¡ò¤òÑò»%ŒpolicyÁ÷÷PolicyÁùReqÁùResÁùùùþù
clone_requestÁŒŒŒŒŒŒŒŒŒˆ¡ˆ¤ˆæ ˆget_refÁˆget_mutÁˆ
into_innerÁŒ¡¤µñšÑtimeoutÁ˜errorÁæ Ÿ×˜ì¢¢¢¢¢¢¢¢¢¢¬¥¬æ ¢¯¯¥¯¯°¯Š ˜»%µµµµ¹æ µ»¤»Ñ»»%˜˜˜˜˜˜˜˜Æ¥Ææ Ƶ'ÆÄ'ÆÓ'˜Ì¤ÌµÌñÌÌÌšÌÑutilÁÔÕÕÕÕÕÕÕÕÕÕ Õ
Õ Õâ¤ââ×ÕæF1ÁæF2ÁæŸææ Õë©,ë³,ëŸë×Õð©,ð³,ðŸð°ðŠ Õö¤ööæ ö»%Õû¤ûûµûFutÁûñûûûšûÑÕæ Õˆ¤ˆˆÑˆ»%ÔboxedÁ»%ŽŽŽŽŽŽŽŽŽBoxLayerÁInÁ¥¦Î.Ž›/¥¦æ ¢¢ Ž¥›/¥¥¥¦¥¥Ñ¥»%ެ›/¬¥¬¦¬¬ƒŽ²›/²¥²¦²²× layer_cloneÁ¸¸¸¸¸¸¸¸¸BoxCloneServiceLayerÁÁ/Á¥Á¦ÁÁÎ.¸Ç›/ǥǦÇÇæ ÌÌ ¸Ï›/ϥϦÏÏÑÏ»%¸Ö›/Ö¥Ö¦ÖÖƒ¸Ü›/ܥܦÜÜ×layer_clone_syncÁâââââââââBoxCloneSyncServiceLayerÁë/ë¥ë¦ëëÎ.âñ›/ñ¥ñ¦ññæ öö âù›/ù¥ù¦ùùÑù»%â›/¥¦ƒâ›/¥¦×猌ŒŒŒŒŒŒŒŒ Œ
Œ Œ Œ
BoxServiceÁš¥š¦ššinnerÁŒ BoxFutureÁŸ¥ŸŒ¢¥¢¦¢¢æ ¦¤¦ ¢»%©¤Œ«¥«¦««ñ«««š«ÑŒ´¥´¦´´×unsyncÁ¹¹¹¹¹¹¹¹¹¹ ¹
¹UnsyncBoxServiceÁťŦÅÅš7¹UnsyncBoxFutureÁʥʹͥͦÍÍæ Ѥͻ%Ó¤¹Õ¥Õ¦ÕÕñÕÕÕšÕѹޥަÞÞ×¹ã¤ãµãñãããšãÑÔ boxed_cloneÁññññññññññ ñ
ñBoxCloneServiceÁý
ý¥ý¦ýýˆñƒ¥ƒ¦ƒƒæ ¤ ƒ»%ФñŒ¥Œ¦ŒŒñŒŒŒšŒÑñ¥¦ƒñ CloneServiceÁš£š clone_boxÁñ£¥è>ñ¡¥¡¦¡¡×Ôboxed_clone_syncÁ¦¦¦¦¦¦¦¦¦¦ ¦
¦BoxCloneSyncServiceÁ²
²¥²¦²²ˆ¦¸¥¸¦¸¸æ ¼¤¼ ¸»%¿¤¦Á¥Á¦ÁÁñÁÁÁšÁѦʥʦÊʃ¦Ì>Ï£Ïè>¦Ò£Ò¥Òè>¦Ö¥Ö¦ÖÖ×Ôcall_allÁÛžÜÜÜÜÜÜÜÜÜÜ Ü
ÜèSvcÁè¤è¢è×ÜDriveÁííis_emptyÁípushÁíŠ Üò¤Cò¤ò¢òæ òÓ'ò take_serviceÁò unorderedÁÜú¤Cú¤ú¢úú poll_nextÁÛorderedÁ 
Œ¤CŒ¤Œæ ŒÓ'Œ­DŒÁD¤C¤÷D˜˜ÜC˜ìC˜Š ÛÁD 
©¤C©¤©æ ©Ó'©­D¯¤C¯¤¯¯÷D´´ÜC´ìC´Š ÛÛÛÔeitherÁ¼¼¼¼¼¼¼¼¼¼ÆÆÆµÆñÆÆÆšÆÑ¼ÏÏϰϊ ¼Ô¤ÔÔÔÑÔ»%Ôfuture_serviceÁÚÚÚÚÚÚÚÚÚäIãã¤ã£ãÚèè¤èæ Úìì¤ì×Úðð¤ð×Úôô¤ô£ôôñôôôšôÑÔÙþþþþþþþþþþˆ¤ˆˆ×þŒ¤ŒŒæ Œ»%þ¤µñšÑþæ þž¤žžÑž»%Ô map_requestÁ£££££££ª¤ªª×£®¤®®æ ®»%£³¤³³R1Á³R2Á³ñ³³³š³Ñ£½½æ £À¤ÀÀÑÀ»%Ô map_responseÁÅÅÅÅÅÅÅÅÅÅϤÏÏ×ÅÓ¤ÓÓæ Ó»%ÅØ¤ØØµØñØñØØØšØÑÅââæ Åå¤ååÑå»%Ô
map_resultÁêêêêêêêêêêô¤ôô×êø¤øøæ ø»%êý¤ýýµýñýýñýýýšýÑꈈæ ê¤Ñ»%Ô
map_futureÁ¤æ »%µ'Ä'Ó'¡£¡¤¡¡¥¡¡á-¡ñ¡¡¡š¡Ñ­¤­­×±±æ ´¤´´Ñ´»%¹¹×ÔoneshotÁ¼¼¼¼¼¼¼¼¼¼ ¼Ç¤Ç­&Ç not_readyÁÇcalledÁ¼Ì¤Ì­&Ì׼ФЭ&Ðæ ¼Ô¤Ô­&Ô°ÔŠ ÔoptionalÁÙ¸(ÚÚÚÚÞæ Úà×ÚÙìãããããããããì¥ìæ ãïï¥ïï°ïŠ ÙÙÙÙÙÙú¥úæ üµÙþ¥þµþñþþþšþÑÔreadyÁ 
 ReadyOneshotÁ¥µš7_pÁ˜ ¥˜ µ¥µæ Ÿ ¥Ÿ µŸ °Ÿ Š ¤ ¥¤ µ¤ ×Ȩ
¨ Ó¨ ¥¨ µ¨ ˆ® ¥® µ± Ó± ¥± µ± æ Ó¥µ°Š ¼ ¥¼ µ¼ ×Ô
service_fnÁÀ À À À À À À ç]Ç ¥À É ¥É ×À Ì ¥Ì Ì µÌ £Ì Ì ñÌ Ì Ì šÌ ÑÔthenÁ× × × × × × × × × ×  × 
× ã ¤ã ã ×× ç ¤ç ç æ ç »%× ì ¤ì ì µì ñì ì á-ì ñì ì ì šì Ñ× ø ø æ × û ¤û û Ñû »%ÔrngÁ






RngÁ
next_u64Á
next_f64Á

next_rangeÁ

£
áa
Ž
æ 

>


 with_hasherÁ


áaÔÔÔÔÔÔÔÔÔÔ Ô
Ô Ô Ô
ÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔÔ Ô!Ô"Ô#Ô$Ô%Ô&Ô'Ô(Ô)Ô*Ô+Ô,Ô-Ô.Ô¸(Ç

É
É
É
É
É
É
Ô
ServiceExtÁÑ
µÑ
ÈZÑ

ready_oneshotÁÑ
ÄVÑ
ÐBÖ
¤Ñ
Ø
Ñ
êOÚ
Ú
ñÑ
ÙÝ
Ý
Ñ
ôQà
à
ñà
Ñ
ìMä
ä

NewRequestÁÑ
_ç
ç
ñç
ç
á-Ñ
„Tì
ì
á-ì
ñì
Ñ
Î.Ñ
š<Ôó
¥ó
µÔ option_layerÁö
builderÁø
ø
ø
ø
ø
ø
ø
ÿ
>ø
 æ ø
ƒ ƒ »% ¥ƒ ßg ¥ƒ layer_fnÁ ƒ þ ¡ƒ ©(ƒ ìMŽ Ž ôNŽ þNƒ êO ƒ Ù ƒ „T ƒ ‘_˜ ƒ š ƒ ôQœ ƒ Ó'ƒ serviceÁŸ ¤ƒ ç]¡ ƒ  check_cloneÁƒ check_service_cloneÁ¤ ¤ƒ 
check_serviceÁ¦ ¤¦ ¥¦ ¦¦ ƒ Î.« ¤« £ƒ š<® ¤® £ƒ »?± ¤± £ø
´ ´ ×ø
· ¤· · Ñ· »%»%¼ ¼ ¼ ¼ ¼ ·+Á Á Á sealedÁÌ SealedÁÍ ¥BoxErrorÁ+SharedÁÐ ¤Ð ¥j+Ó ¤Ó ×+Ö ¤Ö ƒ+Ù ¤+Û ¤Û æ +Þ ¤Þ ×+á ¤á °á Š + SharedFutureÁå ¤å š7+è é ¤è __assert_not_repr_packedÁë ¤è 
ProjectionÁí '__pinÁí ¤í š7è 
ProjectionRefÁñ ¾oñ ¤ñ š7é projectÁõ ¾oé  project_refÁ÷ ¾oè __OriginÁù ¾où ¤ù __dummy_lifetimeÁù š7è þ ¾oþ ¤è MustNotImplDropÁè  ¥è  ¤ExponentialBackoffMakerÁ £ minÁ maxÁ â  ­aŒ £Œ × £ ƒExponentialBackoffÁ £ èq óq â  ­a 
iterationsÁ  £ ×
œ £œ ƒInvalidBackoffÁŸ
Ÿ ˆ ¢ ×°
GenerationÁ¤ Ö¤ timeÁ°§ ×ÕResponseFutureÁ© ¡© ¤© µ© requestÁ© þ© ºÕ° ¡° ¤° µ° ×Õµ  ¡ ¤ µµ „oº ¡º ¤º µµ ¬o¾ ¾o¾ ¡¾ ¤¾ µ¾ Çt¾ þ¾ ºµ ÜoÆ ¾oÆ ¡Æ ¤Æ µÆ ÇtÆ þÆ º ‰pÎ ¾o  pÐ ¾oµ »pÒ ¾oÒ ¡Ò ¤Ò µÒ ÛpÒ ÇtÒ þÒ ºµ Û ¾oÛ ¡Û ¤Û µµ qµ á ¥µ 㠡㠤㠵ÕStateÁç ç ¡ç CalledÁê ìç WaitingÁì waitingÁç RetryingÁî
Õð ð ¡ð ×Õ StateProjÁô ¾oô ô ¡ô «xø ìô Áxú Ðxô ßxü
Õþ ÿ ÿ ¡ÿ ‰p
¾oþ »p
¾o

¡
Ûp
«x
Áx
ßxþ Œ
¾oŒ
Œ
¡þ qþ 
¥þ 

¡ì
RetryLayerÁ
¡
Œ&ì
¡
×ìœ
¡œ
ƒŒRetryÁŸ
¡Ÿ
¤Ÿ
Œ&Ÿ
¥jŒ¤
¡¤
¤¤
ƒŒ¨
¡¨
¤¨
׌¬
­
¡­
¤¬
„o°
¡°
¤¬
¬o³
¾o³
¡³
¤³
Œ&³
¥j¬
Üo¹
¾o¹
¡¹
¤¹
Œ&¹
¥j­
‰p¿
¾o­
 pÁ
¾o¬
»pÃ
¾oÃ
¡Ã
¤Ã
ÛpÃ
Œ&Ã
¥j¬
Ê
¾oÊ
¡Ê
¤¬
q¬
Ï
¥¬
Ñ
¡Ñ
¤ElapsedÁÔ
Ô
ˆ×
×Ù
>¢™tÛ
¥Û
responseÁÛ
sleep碧
¥ß
×¢â
ã
¥â
„oå
¥â
¬oç
¾oç
¥ç
Åç
Õâ
Üoì
¾oì
¥ì
Åì
Õã
‰pñ
¾oã
 pó
¾oâ
»põ
¾oõ
¥õ
Ûpõ
Åõ
Õâ
û
¾oû
¥â
qâ
ÿ
¥â
¥µ TimeoutLayerÁƒ©(µ×µƒ˜TimeoutÁ¥š7©(˜¥×˜¥ƒÕAndThenÁ¤š7±Õ˜¤˜˜ƒÕ
AndThenFutureÁœ©,œ³,œŸœš7Õ¡¢©,¢³,¢Ÿ¡„o¦©,¦³,¦Ÿ¡¬oª¾oª©,ª³,ªŸªš7¡Üo°¾o°©,°³,°Ÿ°š7¢‰p¾o¢ p¸¾o¡»pº¾oº©,º³,ºŸºÛpºš7¡Á¾oÁ©,Á³,ÁŸ¡q¡Ç¥¡É©,ɳ,ÉŸÕ AndThenLayerÁÍÍ±Õ ÐЃÕ
ÓÓ×¹ UnsyncBoxedÁÖ¤Öš7¹Ù¤Ù×ÜCallAllÁܤCܤܢܥjÜstreamÁÜqueueÁÜeofÁÜcurr_reqÁÜ忤Cæ¤æ¢å„oê¤Cê¤ê¢å¬oî¾oî¤Cî¤î¢î¥jîˆîˆî¨ˆåÜoø¾oø¤Cø¤ø¢ø¥jø‚ˆøˆøˆø¨ˆæ‰p¾oæ p¾oå»p¾o¤C¤¢Ûp¥j‚ˆˆˆ¨ˆå¾o¤C¤¢åqå¥å¤C¤¢Ó‡¤C¤š7¡¤C¡¤¡×¥¦¤C¦¤¥„o©¤C©¤¥¬o¬¾o¬¤C¬¤¬š7¥Üo±¾o±¤C±¤±š7¦‰p¾o¦ p¸¾o¥»pº¾oº¤Cº¤ºÛpºš7¥À¾oÀ¤CÀ¤¥q¥Å¥¥Ç¤CǤCallAllUnorderedÁʤCʤʚ7ΤCΤÎ×ÒÓ¤CÓ¤Ò„oÖ¤CÖ¤Ò¬oÙ¾oÙ¤CÙ¤Ùš7ÒÜoÞ¾oÞ¤CÞ¤Þš7Ó‰pã¾oÓ på¾oÒ»pç¾oç¤Cç¤çÛpçš7Òí¾oí¤Cí¤ÒqÒò¥Òô¤Cô¤¼EitherÁ÷÷÷LeftÁú
úˆ÷RightÁý
ýˆ¼ƒ¼¼×¼EitherResponseFutureÁ¼„o¬o¾oÜo¾o‰p ¾o p¢¾o»p¤¾o¤¤¤Ûp¤ª¾oªªq¯¥±±¼KindÁ´´´Ö‘·š7´ï‘¹š7¼KindProjÁ»¾o»»»Ö‘¿š7»ï‘Áš7¼ÃÄÄĉpǾoûpɾoÉÉÉÛpÉÖ‘Éï‘ÃоoÐÐÃqÃÕ¥Ã××Ú
FutureServiceÁÚÚ¤ÚºÚÞÞ¤ÞƒÚŽxââ¤âå
åˆâÑè
èˆÚëë¤ëƒþMapErrÁï¤ïïš7ï±þô¤ôôƒþ MapErrLayerÁøø±þûûƒþþþ×þŸæ þ Ÿ×þ
Ÿ°Š þ MapErrFutureÁŽŽŸŽš7þŸ„oŸ¬o¾oŸš7Üož¾ožžŸžš7‰p£¾o p¥¾o»p§¾o§§Ÿ§Ûp§š7­¾o­­Ÿq²¥´´Ÿ£
MapRequestÁ·¤··š7·±£¼¤¼¼ƒ£MapRequestLayerÁÀÀ±£ÃÃ£ÆÆ×Å MapResponseÁɤÉÉš7ɱÅΤÎ΃ÅMapResponseLayerÁÒÒ±ÅÕÕ×ÅØØƒÅÛÛŸÛæ Å ßߟß×Å
ããŸã°ãŠ ÅMapResponseFutureÁèèŸèš7ÅìííŸì„oððŸì¬oó¾oóóŸóš7ìÜoø¾oøøŸøš7í‰pý¾oí pÿ¾oì»p¾oŸÛpš7ì¾oŸìq쌥쎎Ÿê MapResultÁ¤š7±ê¤ƒêMapResultLayerÁšš±ê×ê  ƒê££Ÿ£æ ê §§Ÿ§×ê
««Ÿ«°«Š êMapResultFutureÁ°°Ÿ°š7ê´µµŸ´„o¸¸Ÿ´¬o»¾o»»Ÿ»š7´ÜoÀ¾oÀÀŸÀš7µ‰pžoµ pǾo´»pɾoÉÉŸÉÛpÉš7´Ï¾oÏÏŸ´q´Ô¥´ÖÖŸ MapFutureÁÙ¤ÙÙš7Ù±Þ¤ÞÞƒMapFutureLayerÁââ±å僼OneshotÁè¤è­&躼ì¤ì­&ì×¼ðñ¤ñ­&ð„oô¤ô­&ð¬o÷¾o÷¤÷­&÷ºðÜoü¾oü¤ü­&üºñ‰p¾oñ pƒ¾oð»p¾o¤­&Ûpºð¾o¤­&ðqð¥ð¤­&¼Žx¤­&NotReadyÁ˜svcÁ˜reqÁ«xfutÁDoneÁ
¼‘yŸ¾oŸ¤Ÿ­&Ÿ÷«£‡¬£’¬Ÿ«x¦¥¬Ÿ°¬¨
¼ª«¤«­&«‰p®¾oª»p°¾o°¤°­&°Ûp°÷«°«x°°¬ª¸¾o¸¤¸­&ªqª½¥ª¿¤¿­&Ú©Â
ˆÚÅ×ã™tǥǚ7ãÊ¥Ê×ãÍΫ́oХͬoÒ¾oÒ¥Òš7ÍÜoÖ¾oÖ¥Öš7ΉpÚ¾oΠpܾoÍ»pÞ¾oÞ¥ÞÛpÞš7Íã¾oã¥ÍqÍç¥Íé¥ÙOptionalÁë¥ëš7Ùî¥î×À  ServiceFnÁñ¥ñ±À ô¥À ö¥öƒ× ThenÁù¤ùùš7ù±× þ¤þþƒ×  ThenLayerÁ±× ×× ˆˆƒ× ©,³,Ÿæ ×  ©,³,Ÿ×× 
©,³,Ÿ°Š × 
ThenFutureÁ©,³,Ÿš7×  ¡©,¡³,¡Ÿ „o¥©,¥³,¥Ÿ ¬o©¾o©©,©³,©Ÿ©š7 Üo¯¾o¯©,¯³,¯Ÿ¯š7¡‰pµ¾o¡ p·¾o »p¹¾o¹©,¹³,¹Ÿ¹Ûp¹š7 À¾oÀ©,À³,ÀŸ q Æ¥ È©,ȳ,ÈŸ
 HasherRngÁÌÌhasherÁÌcounterÁ
ÐЃ
ÓÓ×ø
ServiceBuilderÁÖÖ»%ø
ÙÙƒ






!
:
:
:
;
D
D
D
E
G
W
W
W
X
a
e
e
e
n
n
n
o
v
y
y
y
z



ƒ

š
¡
¤
¥
©
­
­
­
Å
Æ
È
É
Ë
Ì
Ð
Ð
Ð
Ó
Ô
ë
ë
ë
ö
þ
þ
þ
ÿ
ÿ
Œ





 
 
 
´
´
´
¾
É
Ê
Ò
Ò
Ò
Ó
å
å
å
ï
ï
ï
õ
õ
õ
ƒ
ƒ
ƒ

Œ
«
±
·
·
·
Õ
Û
á
á
á
ÿ




²
²
²
³
¸
¸
¸
Ü
Ü
Ü
Ý
â
â
â
é
é
é
ê





œ
 
¥
¥
¥
È
È
È
É
Î
Ñ
Õ
Ú
Ú
Ú
ì
ì
ì
ï
ð
ñ
ñ
ñ
ø
ÿ
ÿ
ÿ




š

œ
œ
œ
®
³
³
³

·
¸
¸
¸
Í
Í
Í
Î
Ó
Ó
Ó
Ù
ï
ï
ï
ó
ó
ó
ü
ü
ü
ý






š
¢
­
­
­
»
»
»
¼
Ä
Ò
Ò
Ò
à
à
à
á
é
÷
÷
÷





ž
Ÿ
«
«
«
¬
°
°
°
¸
»
»
»
Ï
Ï
Ï
Ø
Ø
Ø
á
á
á
ô
ô
ô




£
£
£
§
§
§
®
»
»
»
¼
¿
¿
¿
Ë
Ë
Ë
Õ
Õ
Õ
Ö
æ
æ
æ
ö
ö
ö
÷
ÿ
ˆ

Š


Ó
Ÿ



»
Õ
Õ
Õ
Ø
à
à
à
ä
ä
ä
ë
Ž
Ž
Ž




ž
£
£
£
¨
¨
¨
´
´
´
º
ó
ó
ó



ž
§
«
«
«
°
Ø
Ø
Ø
á
á
á
å



ˆ





¦
Ò
Õ
Õ
Õ
Û
Û
Û
ê
¤
¤
¤
©
Ñ
Ñ
Ñ
Ö
ƒ
Š
Š
Š

á
î
÷
ý



ˆ
ˆ
ˆ




¿
Å
È
È
È
Ñ
×
×
×
Ú
â
â
â
ç
ç
ç
ð

Ÿ
Ÿ
Ÿ
¢
ª
ª
ª
¯
¯
¯
¸
á
ç
ï
ï
ï
ô
Æ
Æ
Æ
Ì
Ì
Ì
Ð
ð
ð
ð
ø




Š



š
š
š
¥
Ò
Õ
Õ
Õ
Û
 <•˜Òà
ùÎ
þ
ÆšÏíÄñ®Ô±Ó¼æÅ
Ñ
Í Í ¤å·Ë¿cÐ Ð ¸mÒ ¥j+˜å¢ToWQù¯ËØÔËŠ ÔË&ÔË¥“íå å Ínç š7+ÕØéêò¢¤ ¥ å å Ínç š7+ÕØéêò¢¯Ë¿cúÌ‚ØúÌÍ žåµ<ÉÍÑÍÖÍØYY\"]À">hx7cÉ͵¿cõÍ&YY\"]À">hx7cÉÍÖÍÑÍ¿cppÃt"uÀ"´ÔÁ Ÿ¶Oý8žµ&ppÃt"uÀ"´ÔÁ Ÿ¶Oý8Äϵå¿c  Áqˆ èq óqŠ â  ­aNG]H£Ø¦Ð¿c  ¸r èq óq â  ­a˜ úr$E‡æ×ïö¡øÐØÑ¦Ð˜Ñ³  Áqˆ èq óqŠ â  ­aNG]HÌÌŠ·Î£·
ϱ·
EäšBE ÖJÖJ RandomStateÁ×Jk0ÁˆØJk1Áˆ‰ÌkqÇËŸ¿cŸ Ÿ   ¶s¡ ˆ ÀÊ7
ö,ÄcùÓ¾ùÓ¿c¤ ¤ æs¥ Ö°¦ €t°K™„4TáAÒ»»ý!¼Ž"°½ "°¾¯"°¿¼"°ÀÊ"°ÁØ"°Âî"°þØÚÙ'‘Ó³‰Õ¿c‰Õ¿c© © ™t­ ÇtÕ® þÕ¯ ºÕ ë ®0%@º¡àÌÊÏ“í© © ™t­ ÇtÕ® þÕ¯ ºÕ ë ®0%@º¡¤ÖÍà íÌà œÖ¿cç ê «xë ìÕì Áxí ÐxÕî ï ßxÆ,UÛIÁWä¾×“íç ê «xë ìÕì Áxí ÐxÕî ï ßxÆ,UÛIÁWä¡
íÌ
ëׂ؜ֿc

š{˜
Œ&ìfg·®ÕI‡:âÖØÞÙÞÙàÌØŸ
Ÿ
æ{¢
Œ&Œ£
¥jŒ}M„ÜÃÓâÖàÌ¿c±Ú“íŸ
Ÿ
æ{¢
Œ&Œ£
¥jŒ}M„ÜÃÓ¾×Ä×Î
íÌÎ
±Ú&±ÚÊÏ¿cÔ
Ô
Õ
Ö
ˆ˜ SLÛ“e‹
³óÛÄcóÛ¾óÛ¿cÛ
Û
™tÝ
Å¢Þ
Õ¢¥H±ÉoÁíÌ“íÛ
Û
™tÝ
Å¢Þ
Õ¢¥H±ÉoÁ¥Ìþ
íÌþ
ÍÜ‚ØÛ
Û
™tÝ
Å¢Þ
Õ¢¥H±ÉoÁÁØ¿cƒƒò©(µ5ìªöÐk$îØ´Þ´Þ¯Ë¿c¨‚š7˜Œ©(˜Ë+’© ´íÌØ„ß&¨‚š7˜Œ©(˜Ë+’© ´¯Ë­ÎØù‚š7Õ±Õc¸N@2=¯Ë©Ù¿cžà“íœœŃ š7Õ…ƒ)E&¿Ê©,³,ŸÆíÌÆœœŃ š7Õ…ƒ)E&¿Ê©,³,Ÿ¿cÇá‚ØÇáØÍÍ͆ϱÕoÈ!\£L\YÁØ¿c¦â&žàÊÏÍÍ͆ϱÕoÈ!\£L\Y©Ù¯Ë‹/œÎ.ŽçâŽkí©ÈT›/¥Ì¦åãØ·ã¿c·ãÁÁÉ1ÆÎ.¸uµ=ˆBêõRåã¥ÌïãõãåãØœä¿cœäëë–4ðÎ.âPOTÖô*åã¥ÌïãõãåãØûä¿cûä&ššð6žš7Œ6Oˆí̦íÌ¿cÙå¿cÖÖ›‡Øš7¹îIéúâY*¯Ë&ÅŹ9Éš7¹»4²ûÿó«íÌ‹æ‘æíÌ¿cææ&­æ­Î&ýýþä<ˆñ ="àÊ!äQíÌ‹æ‘æíÌØÃçš¥ÌøÐ¿cÃç&²²³Š@·ˆ¦ 2ân<—,%íÌ‹æ‘æíÌØ°èÏ¥ÌøÐ¿c°è“íÜÜÓ‡à¥jÜႈÜâˆÜãˆÜ䨈ÜKüNi¤CÄ×¢íÌÜÜÓ‡à¥jÜႈÜâˆÜãˆÜ䨈ÜKüNi¤CàÌ¢¿c¤ê(E¤ê¿cÓ‡ š7ûSe5ÇëàÌ“íÓ‡ š7ûSe5ÂêÄ×ÄíÌijë(E³ëíFuturesOrderedÁin_progress_queueÁ)¿ queued_outputsÁ)¿ next_incoming_indexÁ)¿ next_outgoing_indexÁ)¿ •ø½zûø¸³ÁØÁØ¿cÊÊÐŽÍš78; tj‡ëàÌ“íÊÊÐŽÍš78; tj‚êÄ×ñíÌñ„î(E„îí)é")é"FuturesUnorderedÁ)ë"ready_to_run_queueÁ)Ž!)ì"head_allÁ)Ž!)í"
is_terminatedÁ)Ž!£Ç´[=IÁØÁØØ÷úûÖ‘üˆýþï‘ÿˆøk®Ö¨æeŠ ­ð¿c­ð&­ðÊÏ“íØ’Ž¼y[îËIZ®íÌ®Ø’Ž¼y[îËIZ÷ðýð“í´·Ö‘¸š7¼¹ï‘ºš7¼çN@BÞô!ÞñäñÔí
VÝÌí¾¯Ë©Ù¿c¥ù&¥ùôNØÀÀ’žÂ±£#Èl9'ƒÁØ¿cŠúÀÀ’žÂ±£#Èl9'ƒ©Ù¯ËØÉÉãžÌš7ÅͱʼnP¶b.Hò¯Ë©Ù¿cû¿cÒÒ³ŸÔ±Å`ÔÇ!=.„ÁØØâû“íèèä ëš7ÅßÐI)KKã©Ù‚âíÌèèä ëš7ÅßÐI)KKãÁصø¿cñü‚Øñü&ûÊÏÒÒ³ŸÔ±Å`ÔÇ!=.„©Ù¯Ëذ£š7ê±ê‚x²Ÿ-„¯Ë©Ù¿c’þ¿cššþ£œ±ê©5Á‹ÈBÆ<ÁØØçþ“í°°­¥³š7êµyç<ö쀩قâÓíÌÓ°°­¥³š7êµyç<öì€Áصø¿cöÿ‚Øöÿ&’þÊÏššþ£œ±ê©5Á‹ÈBÆ<©Ù¯ËØÙÙ÷§Üš7ݱ†ç§Ýþ¯Ë©Ù&ÙÙ÷§Üš7ݱ†ç§ÝþàÌøÐ¿cØââŨä±>V=§açMÍÁØââŨä±>V=§açMͩٯ˿c»‚¿cè耩뺼èÏÝ-ˆçŒ¯Ë­&“íè耩뺼èÏÝ-ˆçŒàÌ­&í̾ƒ“í˜÷«‡¬¼š’¬¼«xœ¥¬¼ž°¬¦PVL®
¢ìà̲„¼í̼˜÷«‡¬¼š’¬¼«xœ¥¬¼ž°¬¦PVL®
¢ì¯Ëñƒ¿c×…‚ؾƒ¿cÂÂÃ©ÄˆÚ o›wß`ãh0Äc䆾䆿cÇÇ™tÉš7ã×uE•@%ÑíÌ“íÇÇ™tÉš7ã×uE•@%Ñ¥ÌæíÌæ³‡‚ØÇÇ™tÉš7ã×uE•@%ÑÁØ¿cë낱íš7ÙóYÿSªÌ{íÌ&öˆ­Î“íŒ[š7¸[:YåzöÑøí̭΂ؿ‰¿c¿‰“í¨ ¨ © È­ ˆ ä•ïìË£28¥ÌÊςب ¨ © È­ ˆ ä•ïìË£2Ó¥ÌÊÏ¿c ŠŠ ññ·±ó±À š)58¯Òë¦íÌØ¹‹¿c¹‹&¹‹ÊÏØùùú±üš7× ý±× Y:²Í°¶|¯Ë©Ù¿c—Œ¿cò±× H @H6äÁØØìŒ“í…´Ÿš7× ·zï²=Þ£á©á¯áÅíÌÅ…´Ÿš7× ·zï²=Þöáüá‚â¿cÿ‚Øÿ&—ŒÊÏò±× H @H6ä©Ù¯Ë
žBoxÁ¡ˆˆ¢ˆl }.xÏøÐçEçEèEGlobalÁ ¿±‡§í#ØÌÌŠ·Î£·
ϱ·
EäšBE ¿cœ³ìÒ
τ
íÌ­ÎØÖÖê·Ø»%ø
§6˜¤Á³ÖÖê·Ø»%ø
§6˜¤ÁIdentityÁ¸['㜋§ -ê*¿c–‘ÖÖê·Ø»%ø
§6˜¤Á¯ËHÓ Ð Þ å bYv   ¢ Ÿ § ¤ Ï»° © ð ç

¨
Ÿ
×
Ô
ß
Û
ƒâëœÓͲÜÁë´šÙÖÞÅ¡ýÖ²èÜ¡ÎÊ÷ìÚðâˆïþøŽª·ÆÀÏÉÕÒßèôš§°­Ù¹âìèÌÅÂÊÇîë¤ “ ¼ ¨ É ñã ùÓÌ´ ÖÖ Ð ^Y  œ  œ

¤
Ÿ
ƒ˜ÐͬÖÁëýʲ÷ÞÚëâôïûø¼·ÃÀÎÉØÒ šÞÙåâöñþùˆÐÌÙÖÙ Ð ÷ôñ4Ð fYzpŸ
Ìû«šÕÅãÖŒýÁ²Æ÷ôÚï³·ØÉý¡ÙþëÌ ñì ùþ å Û © Œ
ç Ê
Ÿ
û
Û
ÁœÜÀíʪд­Žèϰè¸ãǘ “ ® ¨ À å á å æ© ¯Û
ðœÏŽãè«°ÔèïÇŸ “ ¶ ¨ •Mž ¦ ª Í»Ù
Ô
Ìÿ
Ö¬Ÿ ŸÔ
ட ¡Ô
âÂÊ»á ã ©
ç ò
»ƒˆÍ¥ÏÁùëÔ÷žøÀÀåÒš´âû · ÖÏ
Ñ
Ÿ
ÿ
Û
ÇÉœÒÜúܯÊÅǘ)å ´)é"òôʯ±Õ×´²´ŽŒŽèÔְ轿çéÇÆÈ

Ìó
Í É ¿c<Ø! Š å&“íŽ Œ‚Ø
<[˜³Äc#¾Òà 


Î
bþ

Æ
š
Ï(E
Äí
ñ®
Ô
±

Ó

¼
æ
Å

Ñ
ì® œ® 
& ÃË·Ë È /Ñ  üÔ
}œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÃË·Ë&
ì†  ÃË
 ÌÌkÎwakerÁ¸Ï local_wakerÁ¸ÐextÁ¸ÑÀ¸Ò_marker2Á¸f'EwÚ]¾åí
šcxÁo© ¾ÜŸ  
&
ÃË·Ë  /À !ü× iÃË·Ë& ”¢ ·Ë êOõ£(ø  P¨ ¡¥¯Ë(4 ¿cgl
ùc}puýÕ «Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ŸÈŸÈ È éBL- ÔË9  c cˆ¢cµ
 `£cbufÁ `àB¤GS
¡¥¡¥{ç¥  ¯Ë±¨œ½±ËÖ¯¨ç¥Í¦ëP¨¯Ë
Ù¯Ë.6(ÿ Ð ¯ËØ .ÔË:Á§B¯Ë±¨Œ[e§©©„® Ð ¯ËÄ3üÿEÔ˯Ë<¥j /| Ð ¯Ë ½3ÔË}¯Ë{¯Ë_¥j°œ¹ œØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ˆê)?ÈXM´­´¬Ò:üÞtœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã´¬ì‘ ÔË¡¢÷_cxÁ¯Ë¤¹§©+Ķ Ö¿¯Ë…­ü£,”£
æ€Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¯Ë…­xü‘?Œ‘
Ý ¯Ë& ÕÖüØ~;úÌ’®¥Ì‰Ø‰ØŠØÈŒØˆ×€ oíwãžU6ȯFȯp¯Ë±¨¼p_targetÁz´§©ØÁ¯šÀ°#¥Ìþ¥Ì)óˆ‰"ä}
ŒYúÌ!)óˆi)øˆ1)刽±ù*ùî-ù*ùî%
öX ½±1*Ÿï4ù)—‰é í ¯Ë)˜‹õ ù)•‡ƒù)؈í í ¬oð š7+(Gž¾«@¯Ëù)‡ˆ)„¾„¾PinÁ†¾ ˜X$]È=„kt• úÌ!)Ňç³)ŵj„¾„¾´†¾ ˜X$]È=„kt•ç³S[š7‹³Ðá³ø2 å ¯ËÍÝ øÑ|úÌ ö½±(ãš7
2ˆ0‹  ¡¥øý Xÿ
…dý<ðÿ3˜1¥˜ã¥
¶c(²¡¥
0 ¤ ç¥øý<(ž
ð`EØžøýE0º
÷`R@ºÐà ø¨¨
¦Ú úÌ(¯ͧ ã`ã`
DebugTupleÁæ`×µ`ç` µ`è`˵`é`
empty_nameÁµ`ø/wŒ4@<)¡º³£º¼¡¥Ýç¥X äÈäÈ ArgumentsÁæÈtemplateÁ `çÈÀ `üöMõô]Td±¹»î±Gõ·^¸¸#·»ç¥ù¹ÞÁ¹±pÅ 8Ê 
õ ¯Ë Å HÊ  Å çµèÅ  Ú 
„ؽ±3ß @Ú ð ä øÉ§œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã½±ƒØè‘µ Ñ¡¢ñçµÜÔ´(À¢+©ÿ¼?ýüQ YÊÏA  PhantomDataÁFu\»ŸÊÏç Fü¯¸ YY\"]À">hx7cÑ¿ÊÏÔÈ Ñ¿$¿  gü×O pÑ¿ÊÏ#
濬 Güñ» ppÃt"uÀ"´ÔÁ Ÿ¶OýÑ¿ÊÏä Ñ¿Lÿ  lì­$ œ­$ 
& ÉÍÑÍ$Á$ Ç$ /Ð$ WüÏ# œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÉÍÑÍ&
ü$! ÉÍLÝ# ¡¢è# À¢ëèÂ9Ü›% l% 
&
ÉÍÑÍ$©% 4¯% /¼% XüÖ$f ÉÍÑÍ& d„% ÕÄLæ$ ÑÍ4ñ$ êO¯ÅLÌ( ÉÍŒÌ( ,Ö( 
ÙÉÍ1<Ö( ü³(W YÉÍ­Î
ô¾Fu\»Ÿ­Î) aü‘( õÍ$¤( õÍ,š( ÉͰ ÉÍÑDíÆØl½* 
 ¡¥ì®* d°* 
÷c ®* 7ܰ* .4ß* 
¡¥Tç* ÉÍ ç¥ü®*D ,Ù* 
Ù`]MÌÙ* ü®*Z 4€+ 
à`RD€+ Ž+ eüë)£
¦\˜* þÇ,ò) ͧ ù)  Í`Í` DebugStructÁÐ`×µ`Ñ` µ`Ò`
has_fieldsÁµ`ã¹q·Ù›ß¨ýëÊ|íÊ¡¥¥¡¥\ç¥P“ÈY±±´âçÈÔ“È祎ßÉn•Ê?Lç- ÉÍÄç- Tñ- èÂ,ü- tñ- …. nü-x ªÃì¿- ÄÎL›- ¡¢¦- ÕÄÀ¢!QèÂLÖ. ÉÍôÖ. dà. 
EÉÍÑÍÖÍ94í. ¤à. ú. oü™.a ðÅd¿. ¸ÍL¡. ÑÍ4¬. ÕÄŒê M®ÎŸ\«2 
 ¡¥Üœ2 dž2 çÈ œ2 3Ìž2 *4Ë2 
¡¥TÓ2  ÄÏ ç¥üœ2B ,Å2 ßÉŒZJÌÅ2 üœ2X 4ì2 •ÊFDì2 ú2 yüÙ1¡
¦\†2 ppÃt"uÀ"´ÔÁ Ÿ¶OýÄÏÊÏ,à1 ͧ ç1 ëÊÐëÊNíÊW¡¥w¡¥2ç¥& ½Ð2V±YÄçÈ©ØÒç¥gßÉD•ÊLÕ5 ½ÐÄÕ5 Tß5 
& ÄÏ™Ð3ê5 tß5 ó5 üû4x œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÄÏ™Ð&
ì­5 ppÃt"uÀ"´ÔÁ Ÿ¶OýÄÏ“ÐL‰5 ¡¢”5 ½ÐÀ¢!+ÑÓ{LÄ6 ½ÐôÄ6 dÎ6 
EÄϙГÐ74Û6 ¤Î6 è6 ƒü‡6a ÄÏ™Ð& d­6 ½ÕL6 ™Ð4š6 ½Ðê WíÖª(2î
 ¡¥˜2þ  ¡¥­Ö­ÖDurationÁ®ÖsecsÁâ}¯ÖnanosÁâ}Zµ–²ªs祘2à   ¡¥ ÎØ( ç¥X2þ

 
¡¥ '  ç¥02
  ¡¥øÐ(4ç¥RX
ÿc
jp`fèí
¹ ¾
£
Ž »¦È ¦ÐÔͧÝ¡¥æ¡¥Ùç¥â ÎØî¡¥sç¥|‘Ü¡¥Uç¥^ i¡¥:ç¥C  øÐRéÜ[p±~‘Ü祑Üç¥ÊÜç¥ØçÜ祪óÚ¼˜3þ ÎØ
ÙÎØ.6˜3à ÎØýÝ(0X3þ
03 øÐ
ÙøÐ .6(3õ
  øÐ
 7
¦ÐCáÛKÎØ‘Ü$ÎØó‘ÜûÎÊÜÖøÐ¾éÜÆŸýÝqýÝ>
Ù‹ßý(4à  ¡¥˜4¢ ¡¥ÎØ(祘4»  ¡¥ ÎØ( ç¥X4Ô
 
¡¥ '  ç¥04å
  ¡¥øÐ(ç¥x4ñ 
¡¥'3ç¥?E
d W]MS &
ó ø
ÅÊœ ´¦Á ÑÍͧÖ¡¥ß¡¥Òç¥Û‘Üä¡¥´ç¥½‘ÜÆ¡¥ç¥ŸÊܨ¡¥yç¥éÜ¡¥[ç¥d  rÖå{~±Œ‘Ü祑Üç¥`ÊÜç¥1éÜç¥Ôåç¥Ô¾ãÔ˜5¢ÎØýÝ(0˜5»ÎØýÝ(0X5Ô05å øÐ‹ß (0x5ñ 
(5ç  øÐ
ž : ÑF¸äNÎØ2‘Ü;ÎØ‘ÜíÊÜõøÐÝéÜå¸ÖåÀ©³ýÝýÝlØà?‹ß&
ÙþøÐÖÜ
òßÎØÎØ<3,2üù7 Ÿ üˆ'%¡¥üõ< Ö¿¦ÐùÓ#È
ôÏÜÏ
~ ë 15  üÈ%
·ßÎØÎØ
r g -3 ü‡*
Ÿ Ô–¡¥üƒ/ Ö¿¦ÐùÓ
 Ò$ üï- Ÿ ìþ¡¥üë2 Ö¿¦ÐùÓ Y@$
üÜ5 Ÿ üë%#¡¥üØ: Ö¿¦ÐùÓý 
« *
üÒ( Ÿ Äá¡¥üÎ- Ö¿¦ÐùÓ‚!ïü“j  øÐün Ö¿¦ÐùÓ ƒ $ü¸ÌÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¦ÐùÓä¬ÎØÌÎØé4†øÐ‘Ü8‘Ü3ùÓìT‘ܰ‘Ü©ÎØ²ùÓ7óùÓÊùÓ]ùÓç¦Ð˜øÐ®èq¸óq»â ¿­aÂcÊêàèëKªì´ïøÐ¾øÐÅÎØÎØ\›øÐ„¹‹ß+ü¼³  øÐ ãõ¡ü†ïÑ ¦ÐL–ÎØßÎØÔÈøÐ¨éÜÆ2Y‹ßÍ ÎØÎØ¤è
ñßÎØÎØH9+1é<ã8l¹<ã8l
¡G¡¥üŠ 75¡¥
1ÎØôû Üû èë —! .2 üð )ÊêjY!'éBã8l¹Bã8lð÷ü§!" ¡¥
+DÝ!
ÎØ|”"üÿ!%t…"
óÑ,ÿ!?ü…"üÝ!H\ó!
˜~
{Y  üó!2D½"ÎØüÝ!iL³"
²TÎØ ]6 
œ³"DØ"ÎØüÝ!„Ô"
½ÎØ a7 lÔ"ç"¤ü¢ÅÎØ¸ä~‘ܱ‘ܦVÒ‘Ü1‘Ü$ÎØ-½ÎØóÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÎØÎØíÎêÎØwÎØ<Õù ©÷_ð÷%èëáÊê¨ð÷x…ú)Áúô‚ûºÇû} \¡$”¡$°$$ÌÂ$¼Â$
´ÎØ
D%øÐœ%D–%
øÐ2T–%œÍ%Ý%$éHã8l¹Hã8lð÷üò%(&¡¥
+\Ø&
ÜÈ& 
$ý&tý&<'
Œ~'
L'¼ü& 
üü&%  $¼'œ¼'dÁ'
~'tÁ'ä»'ü»'* Dƒ(ÎØ|ƒ(
ïÎØÎØ3$Ž(-\´( dÁ(ü (.œ (
ÿ}:/ %ü (=Ï(ÇûALÓ(
tÏ(í(¥ü×#–üù$îü¶&±üñ&öü¯'¸üó'tÎØt…$ ÑLá#ÎØ$ì#úlý$ øÐÁˆ[\º&=$õ&ö#‘Ü<,³'Áî‘ÜÎØL÷'ÎØÃÎØdŽÈÖ Ë
jitter_factorÁÍ rand_jitterÁÀ ì×» ý×¥ remainingÁ”ÿøÍÿÆð÷pŒãŽ‚p“ƒ$Çû$š*\š*$Ÿ*
¤øÐ,4Ÿ*ŒÁ*4Æ*
¥øÐ$Á*$Í*dÆ*ĺ*
Ç ÎØÎØ$º*X,¤Ý* ð*% (LÄü*”ü*
»d$+!š+©üÚ)Àü*‹ü¯*kÓiÓiSleepÁÔiš7«dÕientryÁ«d²mƒ¬Å¾Oùdø)³„Lê)ÎØ$“*¸äºÎØ$³*ÎØ8<Ö ?ó 7ÉÚ‡û…ˆ×·ˆªˉ(Iƒ. ¡¥`I¥.¡¥!ç¥JO
‡d`eTrIˆ.£ ¦ ùӠͧ¨¡¥°ç¥¢  ¡¥°¦¸×±äî¤ç¥彌(L²
 
¡¥`Lý
 ¡¥'ç¥hLÈ  ¡¥
­e­eInstantÁ®eÀÜcqB-§0øº9Y 
e ç¥ÆË
ûcÜáÐÕ¢§ý
¨  ¦! ÈÔ-ͧ6¡¥?¡¥2ç¥; F¡¥ç¥   çŽ/ê8±ž©Ë祡èç¥sÆÈ (b•
 ¡¥áb“»
¡¥Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÊÏo祈¡¥ ±Ú¥ ç¥
¾¡¥É
ç ê «xë ìÕì Áxí ÐxÕî ï ßxÆ,UÛIÁWäàÌÊÏ& âÖÊÏàÌÊÏ& àÌÊÏ&
ýf 
s  祣
ýcµ»«±·½
à Éè
´ ¦
 œÖͧ"¡¥+¡¥ç¥' …’3¡¥<ç¥E ±ÚQ¡¥Zç¥c  ¶“rÉ–{±©´‹–祬©–ç¥Ç–ç¥Àó”Ý‘nóˆ‰cä}
ŒYœÖ!nóˆinøˆ1n刅’±Ú+¶“ùpùî-ùpùî%
öX ±Ú1pŸï4ùqùî-ùqùî%
öX ¶“1qŸï4ùn—‰é ¾ âÖàÌÊÏn˜‹Î ùn•‡ƒùn؈¾ ¾ ¬oà ÇtÕÄ þÕÅ ºÕW›Øóô˜âÖàÌÊÏùn‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• œÖ!nŇ …’¹Ó˜Â˘› „¾„¾´†¾ ˜X$]È=„kt•Әτ¾„¾´†¾ ˜X$]È=„kt•ЫÇtaþmºyŒÑ—Å͘T‡™!(‚ò
%+3¡¥@E
êcV[c‰‚¹Á Áx¾×
¡¥1 9 ¡¥D
 P 
ç¥ÊϦÜ
á  ó«xÁØ!¡¥½Å"¡¥ÐÜç¥V\¦jp÷
ó ž¤«¦¹ ë×ÅͧÎÖ ÁØ{¡¥ë¡¥ç¥ ø ¢ ¾×®¡¥¡¥Àç¥É «¡Õ¡¥EO±]__self_0Á †¡ èÒ¡ç¥7¦¥Ÿ¡ç¥H¦‘ˆÛ‰‡Ë£
ŒYë×Ûà=ÁˆÕdÁˆ—Ÿ ô Áؾ×#ОÁx¾×ùŠùî-ùŠùî%
öX ¾×Ÿï7\«xÁØù‰ùî-ù‰ùî%
öX ÁØ1‰Ÿï7ùˆ—Ÿ½ ô ÁØ¾× ˆï¡5 ô Áؾ×-ˆ²¢
ùˆ’œ ùˆŸžÑô ø «xù ìÕú Áxû ÐxÕü ý ßx}0M¢øZã˜Áؾ×ùˆ)„¾„¾´†¾ ˜X$]È=„kt• ëל䧎ùˆŸžT•¥„¾„¾´†¾ ˜X$]È=„kt••¥Õ¿¤U„¾„¾´†¾ ˜X$]È=„kt•¿¤o®ì§Ðx³˜£[¹¤­¥^ÄÖ
 ç Œ”š”üŠ
o
© âÖàÌÊÏÿ
åüí
œÖìâ
…’<ˆ
±Ú
Œ”
¶“Çt(þ+ì.f/
D
C


Î âÖàÌÊÏ


ŠœœÛ


úX1
ìÛ


Œ”š”J
-üÕ
#
û?
&Ï›œŸ


úXÓ˜&1%

Áx„¾„¾´†¾ ˜X$]È=„kt• š”„ó


„Øš”



«x„¾„¾´†¾ ˜X$]È=„kt• Œ”


„ØŒ”
å

3 
A
î 
Ù î œØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¥”³” ¢
D
ëA) Ä
î 
È›° Ê
îD  Œ’

¨›;
 ;L†
 
<
<ÛÊÏ
Ï›ŒÄ

÷!Ï›/ ."&âÖ
 üÄ)


þâÖÊÏ¥”³”rÜ
E
.¼Ö
Cü¾/

D
 ϫ
 ϯݡC(<
Ûš”T¿
ŠœÔÎ
 ç Œ”š”ü¿*
Ê

üXPA.üÊ
H 
D
 ύ
 œØ›°Ôà
(D¤±þA
îÙ î œØ›°ÏD)T›
 Šœ
! ç Œ”š”ü›
¦
˜µ G!8¤¦
ìŸ


¿
âÖàÌ%:$
üŸ%
=$ àÌüŸ4


& àÌÊÏ=7Ð
#
4'#A
î'Ù‘ î œØ›°íE)Ä
î(#ÈÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
³”ø¼˜=


ž$¬¹(ù‘
žî",0)"<)üõ%
>¨›üõE
$´

äTÊÏ>1,4´
½Ô
*"[Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
…­³”ø r
¡$œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã›°£»*Í)`üÛ"
- # ¡¥üõ


°TÊÏ,9-;+üÔ*
 ý
C

1Ï›Œ¤
Ù²1)0 , /0âÖ
2+ü¤%


ÿâÖÊÏ¥”³”/k2=.!,œ¶
l”
?¨›?"##@¨›3@.
4Šœ
9Ï›œž

Å­9+8$,
A¨›A. È
,ìž

à·8b7%,
üž%
B7¸É
C
:+üž/


&
àÌÊÏBS:E6&,
üîv
5 ç Œ”š”6üß
ê
˜µ4:5>3',üê{
 ÷
C
Dœ~J)
üÆ Ð
S+*cC*+é *úD*-ëTüš
ü
ü‹˜
üÁâ
ùª
ü¤Ô
üŒ|
ü´
ùª
ù‘ª
^e
lü˜=
 üë
E‹¼”ý
æš
¡¢ä
ˆš ô ø «xù ìÕú Áxû ÐxÕü ý ßx}0M¢øZ㘌”š”T Šœˆ  Šœª ä‹
ö®c ›°
‹¼' áª
î›°\
 ¨›)

ÊÏþ Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙš”Å  âÖ
Ó˜$
 ϛF
 ›°

š”^  ¬ÅW ¶“L ›°Å ›°ýô­ð œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ãî áª
î¬ÅŶ“º•¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜£»šœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã¬¹Ó³
³
¬o·
Œ&Œ¸
¥jŒExú)')âÖàÌb Ï›öƥᑪ
ÈÖ£»ßÊÏï
…’¡¥!…’sáÆ¿Ó˜ÈöÆç ÊϪ¬Å0¶“7Œ”sðÉÔÏ›*öÆIÊϸ¨›8
¨›A
¸I
¨›v¨›¨›ˆ¨›¸7eâ
;À¢@thisÁÓì+ Ë ¿ ’¬¢
Ðx Ðxê¿ Ä
îBP¿Y
(Ž k
*¹ lP’¬¢+ðä«V­¬جðŭн®¿¯žÙ² ¦³Æ
˜µÛ ›°÷˜µË à·§ §¸h ’º
óº*
…¼
½ ٲǮ¾…’VÅ­ôà·®øÀ]˜µÊÏê›°g(Y  $
¡¥H’  %¡¥âÖ)5ç¥^c¦pudi^ 
ž¦ª Þٵͧ½¡¥Å¡¥·ç¥¿  âÖÍÂÑÕô± ÀÑ祦!H“ âÖ
ÙâÖ/7(“` 
âÖe ž
.ÞÙ:•ÑBâÖÂÑ[e¶Òª¬™ 
âÖ´ ñüëI ÞÙ âÖ Œ& / | 
âÖ ­ ñÞÙ}âÖ{âÖ_Œ&° 
 âÖœÝ  ¶Ò+ < 
Üú  
âÖàÌ4… H0 ü™  š ö4üÐK ±Ú •Ñ àÌ âÖ(ÂÑ àÌÚs5¥j8Œ&c«¶Ò:ÂÖüàÌ᱓»âÖ¶Ò+37àÌKP
ÙàÌbkï Ÿ
âÖà̱ô ±ó E§
S±Ú_©–gâÖÞÂÑæàÌî àÌù¶Ò•ÙâÖö  &¡¥á²“»%¡¥âÖ+ç¥<D¡¥O
àÌa 
m 祜Ʃ®œ¡¦«Ê²û «
⠦öͧþ¡¥¡¥øç¥ÂÑ ¡¥ç¥ ²Ú'²Ú0Q±_jÂÑç¥a¦Ýç¥kÆ‘¼óˆ‰³ä}
ŒY±ÚóˆøˆåˆâÖàÌù¼—‰é ³
âÖà̼˜‹¿
ù¼•‡ƒù¼؈ðÉù¼‡ˆ)Ï›ŇáÆª¸²Ó˜ö'Œ&Ð¥jÛx¥Þ)Ìû
Ÿ
âÖàÌš üÁ
Y ±Ú
âÖ
àÌ
Œ&¥jF < ­ Ÿ
âÖàÌ  ¹·±Ú´âÖ²à̰âÖàÌ|Œ&Ô¥j× àÌ ŒüÍ9 ²Úæ ©–  .Œï àÌ üÁE ¸ Ó˜  . àÌ ø âÖù ŽüÀ9 àÌ Û ±Ú  .âÖ^ àÌܱ  §¸,É  Ò ü„Î ¢Éì¶ Ó˜L’ ¡¢ ¸À¢!O§¸4› 
&.8
@JR âÖ ü¤#  ®¾;+
¼°  Æ 
 àÌ 
ÔÞ  øÀK;   ÷ 
4— 

&     
Ù±Ú ,
 4­ 
 üƒ1 
 œƒ 
åâÖàÌÊÏ Ä
 bL ³ 

 ¹ 
º 2 üØâ b r
n ~
Ž
ž® ü—£ üÑi œÖd€ Ó˜ ÊÏ …’"áÆÏ²ËÃŒ” ¸ˆÊÏ|…’'±Úî©–Œ”ÖnahoŒÇtclonedÁºìk®¾XøÀë‡êsæê1…’茔ۅ’âÊÏéK
 '¡¥o
 ç¥IN½Œ[`OmÆP
Ø
¦ óÛͧ£¡¥«ç¥  ªÔð²Ñ±ÞèÒðç¥ß½Œûo

´ÇY
Ú
R
óÛI°ñZæ
 
Ô
 è
ï
žü¹6
óÛ
Z© ¡¥áÑ“»(¡¥íÌ+ç¥<D)¡¥O
“Ša 
m 祜Ʃ®œ¡¦«ÊÑ®á
â ¦î ÍÜùͧ¡¥
¡¥üç¥ íÌ¡¥ç¥"  “Š1¶õ:[±it–õç¥k´õç¥uÆ‘Ûóˆ‰Òä}
ŒYÍÜóˆøˆåˆíÌ“ŠùÜùî-ùÜùî%
öX íÌŸï7ùÝùî-ùÝùî%
öX “ŠŸï7ùÛ—‰é ç
íÌÛ˜‹ñ
ùÛ•‡ƒùÛ؈ç
ç
¬oê
Å¢ë
Õ¢@H[“¬^‰íÌùÛ‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• ÍÜŇª÷ç÷šÙùß„¾„¾´†¾ ˜X$]È=„kt•ª÷°„¾„¾´†¾ ˜X$]È=„kt•ç÷® Å0Õ<d¶öŒ¤÷)á÷óü…" Û
íÌ­®üÆgÍÜíÌ“ŠÅÕF <¿
ñ
ÁØL¿l‚•¨´‚$
„ØÁØ0D1äü?h
Àúœ¼
„Ø“Š
0Ì  ³ÈÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¥Ì‘æ¬Ì
ç[¥Ì‘æž²Ž¡ˆˆ¢ˆl }.xϾ Ììé
è‘æ²ÿ ÌŠ€
œÎüÀ" œØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¥Ì²ÿÑ  ¸  ̶  ”¬ $¸ 
èóÛ²ÿPjóÛ

 œØÊ€ ¼¨  Ö¿¥Ì²ÿ
üœ $ œØÊ€  ¿  É´üÛöü¯¢ü§;œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÊ€”’„¾„¾´†¾ ˜X$]È=„kt• ïÝ¡¢ùç
ç
¬oê
Å¢ë
Õ¢@H[“¬^‰Á؜؞؟ØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã¾þ8•¨U¾þÊ€SÕÇùÀúÊ€ä²ÿDúÀ¢þûËÆÁÑÜü
›ýÕ‡þp¤ÿÚॠ* ¡¥ˆå¾ +¡¥ÎØ)5ç¥_d¦qvdiˆå ¦¬ ´Þ·Í§¿¡¥Ç¡¥¸ç¥À ‘ÜË‘ÜÓó± ވ祦 ˆæ¾ÎØýÝ)1˜ ƒæˆ,´Þ8³ˆ@ÎØ}‘ÜYcýÝ¢ÄË ƒ âéºü•T´ÞÎØÎØf©(7d‚ÎØüì#
ȯË9,¾üµ`Ôß³ˆ¯ËÎØ¥j MˆŒ ,¡¥¼ -¡¥íÌ)祈çÊ +¡¥
ÎØ) 
5 神ƫ°ž£nsÌçä ¦ð „ßûͧ¡¥ ¡¥þ祖õ¡¥Þç¥æÞˆî‘ÜöP±^i–õç¥`Þˆç¥0ƈ¼íÌ
ÙíÌ/7ˆèÊÎØýÝ)2˜ íÌèèœAO„ß[cíÌÜ–õäÎØ±‘ܹŒÒýÝÝíÌÔø í̘Èü¸`„ßíÌÎØš7©(F,<‰© íÌ µÈ³„ß°íÌ®ÎØ¬íÌƒÎØxš7Щ(ÓíÌÉüË7–õä .íÌÊü½Cª÷ „ß 1íÌñËüº7íÌ Õ„ß .
¯ËÌÁ


& ¯Ë­Î5×

3ü»
T ¡ ÈÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¯Ë­Î&
¬³  
ç[—™²ÿ
è—™²ÿ ³  Æ™
ϵ 
 œØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
²ÿkü§ " œØ…š Ù Ú Òüá ùü• 4œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã…šì“
 Ôß¡¢ú œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃƘ ¯Ë®
ƘO…šãŠÀ¢Ž½}æ—ëµ™# 
 ¯ËÄ®  
&
¯Ë­Î5   Å 
 ÎØüÜ ”Ü ˉ+D

ü‡
$œ‡

®¯Ë­Î& H
7 °

±
üà Ñ,<Ó2üŸ üÐ a Û
Û
™tÝ
Å¢Þ
Õ¢¥H±ÉoÁ·Ÿ ƒœ ­Î ·ŸÏèœÄ“Š ÎØy·ŸJõIÇtLÅÕI žˉ½±Ÿ·ŸLó¯Ë§©)1 é©Ù
Ù©Ù/8Ì ¯Ë©ÙéÑéÐESžà_ žàj¯Ë㱨ë©Ù¾ ©ÙÉ §©‹£í¯Ë
.¡¥Ì”d–çÈ 3¼–*
-¡¥
¯Ë 
ç¥ü”BßÉW GÜ»ê 
/¡¥Ôƒă
«&©Ùпƒø¿ð. "¦¿þ 
Æb¡¥R&N ‚È‚ÈArgumentÁ„È´ÀbökÏ®ÝWj´ž0 ½ËÐ
«cý üï/
 
ç¥ü”ßÉÁ  Eüä;ü”¡•ÊK»åüÑꦭ¦ˆ¤ͧ ßëʧëÊYëÊÕíÊÞ¡¥þ¡¥¹ç¥­±¨¡¥j祷»"¹»øêð.¦J¦c¡¥¿§s¿§X’¨ Ê«¦šß±âÀ¾ÀÊ6 çÈɱ¨ç¥ßÉgŦ)œ§Ù¿¨·»ç¥þßÉã•Ê‘úóˆ‰óä}
ŒYÇáóˆøˆåˆ)ù<)ù<ù‚)ý<š7Ík}­®†L<)Œ>)Œ>ErrIntoÁ)>š7…A*~Òû1öáüá(#üá‚âùûùî-ùûùî%
öX î­Ÿï7ùú—‰é ªöáüá‚âú˜‹ùú•‡ƒùú؈ªª¬o¯š7ÕŠ+@L#¹Èöáüá‚âùú‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• Çá҉¯¸ü°ý„¾„¾´†¾ ˜X$]È=„kt•‰¯k\š7²­cƒ¯ œöáüá‚⊠êü“wÇáî­š7 /

1
¡¥ô©

õ· ©
3ä«
*˜Ü
˜ÁÜ
¸¸
¡¥ ,¤Û
 ç¥ü©
G
¹ <ÜÕ
ü©
]
Á¹A
Œ ïüÜ °
¦„Ž
 Çáͧ ê ¡º¡º$£º-¡¥Mç¥Ö·»Þ¹»Q±Tõ·z¸¸H·»ç¥"¹Á¹ä


öáüá‚â

¤à
Ÿ±ìà


„Øî­0ú

ƒõüŒ
wœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃؔÃ
ʰ$”
¡¢ª
Ÿ±Ñƒ° &À¢*¤Ѷ8˜·øÁØ
ÙÁØ/7(‚ë ÍÁØðÒ0¦â< ¦âGÁØŠø `j¯¹¯ò 2 ¡¥ ƒ /¡¥ÁØ)5ç¥_d¦qvdiˆƒ÷Õ ¦¬ˆº´Í§¼¡¥Ä¡¥µç¥½Ÿ¡Åø Íí±úŸ¡ç¥û¦¤Ÿ ¯Ë©Ù¹ùüìMžà$¯Ë©Ù š7±F ©­ ¯Ë©Ù ²¹ù·žà´¯Ë²©Ù°©Ù¯Ë|š7Ô±×”¹ Í©ÙÑúü‰Hùâ©Ù ± /¯ËÌÞ
& ¯ËÊÏ5ôüÞ-
¯ËÊÏ&
á-(#
èÿÀÁyT€™Á
œøƒü„œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Áì¶ žàL’¡¢œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÿÀèœ#½À¢Áˆ¿À9õÀ  üé<  ¯ËÄé
&
¯ËÊÏ5üé#D‚
¯ËÊÏ& Á_T  
4–©Ùt–,‹£+<ç ïûD
)Œ>)Œ>§­)>š7…A*~Òû1óÅÁÁ©ÙîÄ ¤ 
üÖP”Ö
êóÅÁ©Ùž.¬ü—`p 2
œœŃ š7Õ…ƒ)E&¿ÊóÅÁ©Ùd¿ƒÃÊÏ)ù<)ù<ù‚)ý<š7Ík}­®†L<ŠÇÁ©ÙŠÇ)óÅg蜩Ù⫤RÇtŒ·ÅµíÅ‹£,„Çö†ÈŠÇ¡”¥ ÍÁؽüüA¦â$–ÁØ ± / ´| ÍÁØ ¦â}ÁØ{ÁØ_±°©Ù‹£+,üÛE ¯Ë©Ù¦ ¥ü¦Œžà ùâ¯Ë©Ù°«¤Î¯Ëœ-š70o‹£ê¯Ëüƒm ¤åã¥Ìïãõãåãššð6žš7Œ6Oˆ¥Ìïãõã§Ïüúw
'¤åã¥Ìïãõã§Ï°ÏõÏD|D
“8LayerFnÁ±'(-òØ^á•ÐZ^†J†JK‰Jµ 7ŠJphantomÁ7J¤7·0ØQdèåãåã¸Ï Ììéüü4 åã¥Ìïãõã¢üüºüîÈ·ã$§ÏàЕжÑ]†J†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdèàÐé° inner_layerÁ»%¿Ð/ÚÐì­Ó¶Ñö§ÏĬ
§Ïåã5¤Ò
¦¥Ìïãõã§Ïåãâ=ð¤eü¢N¸Ï •Јåã,‰ºÕ¦ §Ïâš7!„Ó¼§Ïº
7ÚñÔ ¨ÕÚ„Ó
&¶Ñ¼Õ
ë!¶ÑS"
G
‚ÒåãžCòüŸS ñ«3¸Ï ·ãåã ‚Òç ¶Ñ,åãÕr:š7=È×+Ø2å㪶Ѽê
Ù¶Ñ2$üÐ< åã¥Ìïãõã±ü®d·ã…ٶѧ٣>¥Úª¶Ñ¶Ñ³
3¡¥ä”çÈ3Ę*ü”%•ÊO¿·üÓl¦…ÙͧáëÊœíʤ¡¥Ã-×0]çÈÖ•Ê£ü²r Îåã¥Ìïãõã§Ï³Ïýýþä<ˆñ ="àÊ!äQ¥ÌïãõãõÏü©|
'Îåã¥Ìïãõã§ÏùÝõÏ´D
“8êϱ'(-òØ^áÞÞTX†J†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdèåãåãÿÝ Ììéü°4 Áåã¥ÌïãõãêÌü£ÇüÍœä§Ï©ßÞÞ
ùßQ†J†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdè©ß餄Ó|»%µÙÞ£ßÖêáùßà§ÏÄÛñÔ+̤
¥ÌïãõãºÕ2¤Î8üÑSÿÝ ÞÞ[åãºÕÕ¨ÖÊš7„Óš§Ïº
4ªñÔñÑãË„Ó
&ùß¼š
ë!ùßS"
G
¿àåãžC·üäS Õ3ÿÝl‚ œäåã ¿àç ùß,åãÕr:š7=âå+©æ2åãªùß¼»
Ùùß2$ü¡< Áåã¥ÌïãõããÛüÿdœä$’ŸçùßÁç£>¿èªùßùß³´‚ 
4¡¥üñ(çÈñ4üõ$,üñ1•ÊQ¨ áü°x¦Ÿçͧ¾ëÊžíʦ¡¥Å-×0]çÈØ•Ê£üÉv øåã¥Ìïãõã§Ï³Ï²²³Š@·ˆ¦ 2ân<—,%¥ÌïãõãõÏüÀ
'øåã¥Ìïãõã§Ï•ìõϵE
“8êϱ'(-òØ^áûìTX†J†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdèåãåã›ì ÌìéüË4 ëåã¥Ìïãõãöü³Òü´Ñûä§ÏÆíûì –îQ†J†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdèÆí餄Ó|»%µöìÀíÖ‡ð–îà§ÏÄòñÔ+,„ì˜Ę
¼¥ÌïãõãºÕ±2¿ø9üèW›ìÙ ûì\åãºÕì¨ÖÊš7„Óš§Ïº
4«ñÔñîñË„Ó
&–î¼½
ë!–îS"
G
ÜîåãžCÚü‡S Ùÿ3›ì ûä,åã,— Üîç –î,åãÕr:š7=ÿó+Æô2å㪖î¼â
Ù–î2$üÈ< ëåã¥Ìïãõ㊠ü¦dûä¼õ–îÞõ£>Üöª–î–î³Ô­!
5¡¥üœ!,d !çÈœ!4ü !(,üœ!54É!•ÊQDÉ!×!üÛ |¦\†!¼õͧé ëÊžíʦ¡¥Å-×0]çÈØ•Ê£üÆ1
ì
¤į́íÌ‹æ‘æ¢ú¢úíÌ& „¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃ØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
‹æ‘æÌìé×ú‹æ‘æ¬úü×üÌ+ü½;
ªÙÙ÷§Üš7ݱ†ç§Ýþ¢ú¬úÀeiž²Ž¡ˆˆ¢ˆl }.xÏ&íÌ& íÌ‹æ&
íÌ‘æ& íÌ×úÌì鼎„Ž
/çý%¤¯ šíÌ‹æ‘æÉ¦ü•´üÖóü‚GÙå¢úçýž²Ž¡ˆˆ¢ˆl }.xχýéÖ‡ýC/
/
/ SyncWrapperÁ/ˆ/ Ÿ?ºeB^‘çý,†š7­š7°š7$úœúºý]€€çýgõþy
­Êú ï&„æ×úö¨ß×úå ¬úùÊú Ø„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xÏÊúéñ±üå‚×úðL‡
¦íÌ‹æ‘æ¢ú¢úÙåœþ
'»„R"©üÖÁêϱ'(-òØ^Ễ´ë»„¸O¦„ÉØ„Õ€¤ñ
/çý1üñ#T†
& çýíÌIt†š²ü¡yœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
‘æœÓ Ùå¡¢º çý9 Õ€\-À¢1÷‘†q¼†NüÜ" Õ€¤Ü‘†,
ƒ
&
çýíÌaBü d ƒ³3×úžˆí̵ˆÞÁˆýíÌÊh3Çt6‘†–Šc×ú×úm×ú×úwíÌ´d‘
6
¡¥ô€d„çÈ3Ô„*ü€'•ÊO­¸ü¿n¦ ÙåͧÍëÊŸíʧ¡¥Æ-×0`çÈٕʦ(„³ 7 ¡¥@„× -¡¥¯Ë)5ç¥_d¦qvdiˆ¸Û ¦¬ ­æ·Í§¿¡¥Ç¡¥¸ç¥À¯¨ȱ¨Ðð±ý¯¨ç¥þ¦¬Ð Ö¢úüÇ
ªÖÖ›‡Øš7¹îIéúâY*¢úhTž²Ž¡ˆˆ¢ˆl }.xÏ&íÌ& íÌ‹æ&
íÌ‘æ& íÌ„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃ØÙûééÔð ÅíÌ‹æ‘æÑü­ãü»Uææ¢úž²Ž¡ˆˆ¢ˆl }.xÏêé,¿ê/»‘Äš7kš7+£äF–”»‘øL¿ 
ÑíÌ‹æ‘æ¢ú¢úææœ¶ 
'Ù•R"Ï Óüœ³êϱ'(-òØ^áÙ•´±Ù•¸OÄ•Éö• »‘̵  
& »‘íÌ5Ë  Ô Üüå
oþ†œ—  ææ
¡¢þ
 »‘ À¢$T¯—£ »‘Äœ  
&
»‘íÌ5  º ÝüÚ `©’¬ü û— íÌ ’˜Çt Mô˜œ©’©’¥©’©’®”Í

8¡¥ü¼
$
çȼ
4üÀ
,ü¼
-
•ÊQ
ï
âüû t¦
 ææ,
ͧ
ëÊ¡íÊ©¡¥È-×0`çÈەʦ¯ËÌÖæ—,ìõéüüyšœì® ­æ¡¢èœƒÀ¢!Qæ—¯ËÄÞ,üº"
­·ŸI%)„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃ØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¯Ë­Î& —™éâêüûgÔžŠ­Î„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xÏ·ŸéÑ·Ÿèœ&¥Çt¨Õž:®žö ÔžÔžÔž)ü½&
ì
¢úíÌíÌ‹æ‘æ¢úÅú×ú‹æ‘æò¢¤Îüà 
ªÙÙ÷§Üš7ݱ†ç§Ýþ¢úò¢,†eiž²Ž¡ˆˆ¢ˆl }.xÏšíÌ& íÌ‹æ&
íÌ‘æ& íÌ×úÌìéüí  ýíÌ‹æ‘æüü±bÃç¢ú,›×£¸¤`ž²Ž¡ˆˆ¢ˆl }.xÏף鬚7kš7n£ä¢Cѣݧ¦¸¤çü Û „Ò×úâQ×úÑ ò¢kÊú Ïå‚v±üå‚×úz
íÌ‹æ‘æ¢ú¢úÃçœÕ
'‰©R"îŠü¥Éêϱ'(-òØ^ቩ´º‰©¸Oô¨ɦ©¸¤¬ì
& ¸¤íÌ5þüœkþ†œÎ Ãç¡¢µ ¸¤ À¢$Tߪ£¸¤¤Ô
&
¸¤íÌ5îü›S×ú««íÌ«Çt M¤¬œ×ú×ú¥×ú×ú®¸¤ UniqueÁ žÀ8Åá™-Ýñ÷¤§ ïíe¼îËè¿*÷¤ ÷¤œ”Ð
œ÷¤íÌÊÄË ýíÌ‹æ‘æéü©@Ãç Ã縤ˆ ÷¤>¸¤å®&/Uˆ¯Á¸¤¸¤Ê
٥̴¬
ª¥ÌI$(ž²Ž¡ˆˆ¢ˆl }.xÏšøÐ& øÐ¥ÌøÐ& &
øÐ¥ÌøÐ&
& øÐ¥ÌøÐ& ÌìéÈ ü𮳱üÀ] ¥Ìž²Ž¡ˆˆ¢ˆl }.xÏ¥ÌéN¥Ì`ˆß°¢±|…³³±³±³±ŒÚ
9¡¥üÉ#çÈÉ4üÍ,üÉ,•ÊQû¥üˆs¦ñ¯,ͧëÊžíʦ¡¥Å-×0]çÈØ•Ê£üë&
ì
¢úí̾íÌ‹æ‘æ¢úÅú×ú‹æ‘æ¹¶¤üüñ 
ªÙÙ÷§Üš7ݱ†ç§Ýþ¢ú¹¶eiž²Ž¡ˆˆ¢ˆl }.xÏÏíÌ& íÌ‹æ&
íÌ‘æ& íÌ×ú Ììéü›$ ²íÌ‹æ‘æÅ¼ü´üßf°è¢úž·ÿ·ež²Ž¡ˆˆ¢ˆl }.xÏž·é±š7kš7n£«¶H˜·âó¹ÿ·ì\€D€ü  „€×ú¾V×úÿ ¹¶pÊú ýå‚v±üå‚×úzL› 
¼íÌ‹æ‘æ¢ú¢ú°èœ’ D’ 
'Õ¼R"« ¿üÛ Ðêϱ'(-òØ^áÕ¼´ð Õ¼¸OÀ¼Éò¼
ÿ·¬­
T´

& ÿ·íÌ5¿
t´
È
ÈüÝ kþ†œ
 °è ¡¢ö  ÿ· À¢$T«¾£4•ÿ·¤•
&
ÿ·íÌ5¯ÉüÜ
S×ú
÷¾
íÌ
Ž¿Çt Mð¿œ×ú×ú¥×ú×ú®4•ÿ· ù¬ žÀ8Åá™-Ýñ¾¸§ ïíe¼îËè¿*¾¸ ¾¸”•
Ѿ¸íÌÅÄ ²íÌ‹æ‘æ®Îüî@°è$ °èÿ·ˆ ¾¸9ÿ·¬Â&/UÏÂÁÿ·ÿ·Êß°´µ±="ž²Ž¡ˆˆ¢ˆl }.xÏÏøÐ& øÐˆ²&
øÐŸ²& øÐ¶² ÌìéÑÕüùØîÄüŸø²,…³ê¥ÌBß°7±…³îÄ!îÄîÄ+¬ç
:¡¥üÖ'çÈÖ4üÚ#,üÖ0•ÊQŒÚü•w¦¸Ãͧ£ëÊžíʦ¡¥Å-×0]çÈØ•Ê£‘šóˆ‰‹ä}
ŒY¤êóˆøˆåˆÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ‡ë^àÌq‘ëÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙàÌ(Fùœùî-ùœùî%
öX¸Ÿï4ùš—‰é î‡ëà̑뚘‹ùš•‡ƒùš؈ îî¬oó¥jÜô‚ˆÜõˆÜöˆÜ÷¨ˆÜ6±ŸUö_Ú‡ëàÌ‘ëùš‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• ¤êŇ ÓÉ\¸e ‘ëq { âÊ‚ÎÌ„¾„¾´†¾ ˜X$]È=„kt•¸ÖŠ¥j₈ïˆüˆ ¨ˆ¦—ÉfÌË<L­
;¡¥ÌžçÈ ž3¼ * 
¡¥ ÓÉ
 ç¥üžFßÉ W
GüÅ 
<¡¥d‚àÌ
ç¥üžqßÉ W
Gìò
=¡¥ç¥üž,ßÉVF¼üž¬•ÊHÐìüÛõ¦ ¤êͧ éëÊëÊ ëÊ}ëÊùíÊ¡¥"¡¥Ýç¥Ñ ÓÉÝ¡¥ç¥²Ú¡¥Aç¥5 ?Ÿ±¢ÓçÈ´Ôç¥IßÉ)²Úç¥ïßÉÏíÔç¥ßÉx•ÊN Û¼‡ë
 Û¼§ËüØ ’ ܇ëàÌ‘ë
ð
öüýó¤ê”» ‡ë<• àÌ‘ëÓÉâÊ£¥j0‚ˆ4ˆ8pü Û¼‡ë ƒ
4

BI Û¼§ËH ܇ëàÌ‘ëE é
^ö] ¤êZ‡ëYàÌX‘ëWÓÉ ‡ëàÌç‘ëÜâÊ¥j¡‚ˆ¦ˆ«ä ÓÉœÓ  
äT‡ë1 ¼î 
>¡¥üÓ 3 
°T‡ë]8üç  Œ üŸ m÷‡ëÅ ¤ê ÓÉГÎî¡¥#T÷Úý¹Û¤ê¤ê <

‡ëàÌ‘ë L‚
üý #“Îüý 7
÷Ú+
¼É

>¡¥üý d
¹ÛQ2üÂ
ç
øü» ¬‡ëï ÐÍ ÓÉÕÌë¡¥“Îû+O“Ý÷Ú×¹Û¢ø­¼+


ԑ€
ï‘ë‡ë§Ë& >:¨­
àW?4¡¥ÍdÓÉœ÷Ú+ä
±T‡ëA\­

 àÌüòGäò
¬‡ëàÌq L/ ¾ÓÉ
 üí
Ò¿-âÊB‘ë
WâÊ k‘ë 
âÊ‘ëª
ºàÌÏÓÉùÓ „îü’¤êD…] ‘ë~(µ‡ë±ÓÉà“ÎÿàÌ¢NWKàÁçà÷Ú&Ðá¢â¾ÓÉâÊ‘ëžâÊ¥‘ë¬âʳ‘ëºàÌÁÓÉÈ&“Ý,¨Îœä
ñ‘ë‹à,3ô4% ßÈÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
‡ë§Ë& ‡ë§Ë&
l
…UÏèÝè  
ž$Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÏèÝè㺾 Ê t l€ê  L‘  %ê
[Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
…­Ýès
¡$œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã¼çËë
Î$î
ÛÏè Ö¿ÏèÝè
 Û¼èÔÉ œØ¼ç ƒ$.¨Î.¬ýà6 Tˆ%
 ۼ茰 œØ¼çÄ©$ œØ¼ç¤ð$/¾Î/¼ð
¦T§Ë<+ÓΤ¸
úX¸1ü¸"
(GàÌF×0
îÙ¯ î œØ¼ç$ ¯Ä
îÈâÊù¯
žî0´Î0$›Û§Ët„  Û¼§Ë1¾Î1#2¾Î32üíŒL3¾Î\3üöìØ4“ÎüØ74‡
ªT‡ë40D‡ü¨.  @,¡¥üØ
°T ‡ëa <ü¡6”ý T
& ‡ë§ËýŒ!t5 "!
î "Ù° î œØ¼çù°  $ °Ä
î #!ÈÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ýèù°
žî $# $ 
6¨Î
7¾Î¤Ì

äT§Ë7/+! ñ %#Ý脈 5´Î 5$” ' Ö¿ÏèÝè% & Û¼è'̱ œØ¼ç& Ø
$ìÌ

±T§Ë+ä*"üÃ'

&
‡ë§ËÃ*Q)#üÇ#ü³8

ð‘ë‹à6q)](ü¾-ü-´Î- 
ÿ
qüÕ§üøŒü¬J½ÄËù¯ª
üò üΨü‘È
ù°ª
 8´ìIJÐÍ¡¢ÕÌ´ìŸ
g
¼ç^
•¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜Ëë€ê ²éü »ËëÄ€ê çÏè¼çÕèýŠÕä´¼çiî âÊâÊü«¿œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃâÊÚÓÎ ÓÎ0ᯪ
îâʧË.ÔôÒÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÔôË¡¥ªœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ãö«á°ª
îö> ÅÝèm ¼çèA‹àŧËùâÊ˨δ΢¨Î«¾Î´´Î½¾ÎƾÎÏ¾ÎØ“Îá´Îê¨Îó¾Îü À¢ûË$½s
Ž q 
¹²  rspÁ±

¿}next_reqÁ  ‡¬ö
¿ #°® %±“Ý~äæLûè<
Ž
®ì
à
íïæ ¼ðž èðz âÊeŒôäÎô©‚õ{¾÷F‡ù³ù`êù0ì ;¡¥áú“»-¡¥ÜÜÓ‡à¥jÜႈÜâˆÜãˆÜ䨈ÜKüNi‡ëàÌÚëñë)¿ Žì)¿ ¨ì)¿ Çì)¿ •ø½zûø¸³‹àíùç¥#)¦7=,2Rúñ¤k¦x ³ëͧ¡¥¡¥ˆç¥  Õ„ Ƈ©Ê±Øãćç¥Ú¦ø‘‚óˆ‰ûä}
ŒY³ë!‚óˆi‚øˆ1‚åˆÕ„ùƒùî-ùƒùî%
öX Õ„Ÿï7ù‚—‰é ¬‡ëà̘‹ù‚•‡ƒù‚؈¬¬¬o°š7ù t¢‡ëàÌù‚‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• ³ë!‚Ň:ˆ‹„¾„¾´†¾ ˜X$]È=„kt•c\š7 ¼ˆå—‰ü¦< 

¬ÌœÌ
‹à ¥±¤¦
ö‡ëàÌÀ…¬væ á
ü‰d ‡ëàÌóQüÈ«m}B ³ë‡ëàÌÕ„·‡ëà̃À…kïõ¥jF‚ˆJ¤ÝàÌ/‡ë6Tè!Õ„¼è!Tó!
÷‡ëàÌÀ…7dó!…"ü¿!F‡ëÚ!³ë$Ñ!Õ„z6íƒtè$<í$
‡ëàÌ$è$Lí$¤è$«‹üè$#dý$
ø‡ëàÌÀ…8tý$%ü­$d‡ëÚ$ÖŠ$Á$«‹{“в>ý‘ÏÁ’Tî'Õ„´î'Lù'
ù‡ëàÌÀ…7\ù'Š(üª'`„îüÄ'³ë$»'Õ„{7ñ“tÿ)<„*ý‘$ÿ)L„*¤ÿ)«‹üÿ)"L”*
(GÕ„/ž*l”*§*ü )‡´ìÄÜ)ÖŠ$­)¡¢Ã)«‹“б%À¢)Wý‘ܼ•©ô+Ä+
ÁØ$¦+&±+šüè*I$þ* Ðì,ô* /ò–uüß+'Ìß+
ÁØ$ù+4ÿ+.Œ,ü·+UÔ+ ÐìL¿+ÁØ4Ê+ìGõ—tò,Dò,
òX½˜$û,&üà,%Œà,
(GÐìG-*‹-œü’,yœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÁ؃ؼ¾,½˜Lš,¡¢¥,„¾„¾´†¾ ˜X$]È=„kt•½˜]PÀ¢T–™Š™e(•ú A¡¥á•“»-¡¥ÜÜÓ‡à¥jÜႈÜâˆÜãˆÜ䨈ÜKüNi‡ëàÌ)é")é"«î)ë"Äî)Ž!)ì"âî)Ž!)í"öî)Ž!£Ç´[=I‹ààì祦*0%EÿÑ^¦k „îwͧ¡¥¡¥{ç¥  âœÆŸœ½±ËÖÄŸç¥Í¦ë󈉖ä}
ŒY„î!óˆiøˆ1åˆâœùžùî-ùžùî%
öX ✟ï7ù—‰é Ù‡ëà̘‹ãù•‡ƒù؈ÙÙ¬oÝš7T~­]{‹¹È‡ëàÌù‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• „î!Ň¡:ˆ£„¾„¾´†¾ ˜X$]È=„kt•¡c\š7 ¼ å—¡ü§
> 



¼Í
¬Í

)ý"‹à ¥±¤§

ö‡ëàÌͬvæ ä

ü
o ʇëàÌö
Qü· ¿m}¬B „îÄÞ ‡ëàÌ✷‡ëà̃Íkïõ¥jF‚ˆJ•¥¤Ý¥àÌ/‡ë6 ✼ô Tÿ 
÷‡ëàÌÍ7dÿ 
­üË F‡ëæ „î âœz6í¨ƒt„<‰
ã‡ëàÌ$„L‰¤„«£ü„#d™
ø‡ëàÌÍ8t™­®üÉd‡ëöÖ¢«£{“¢²>ý©ÏÁªý©¤««£ü«"
(Gâœ/ÊÓ³üÌ´ìĈÖ¢¡¢ï«£“¢±%À¢)Wý©Ü™¬©ü» Ô»
)ÿ"ÁØ'áü–K ¡ï /Эvü$´
)€#ÁØ.,¹·üçR ¡ïÁØ®ì Oâ®
òX¨¯&ü%Œ
(G¡ïG¯*¸¸ü¿yþ™¼ë¨¯¡¢Ò„¾„¾´†¾ ˜X$]È=„kt•¨¯ËOÀ¢S‰°öµ°ÐŸ#¤ï‘ýð$
Ùýð6>¤ðÖ‘÷ð$
Ù÷ð6>­ ÷÷ðýð¤£Ö ÷÷ðýð)¤¤ƒ­ð* ­ð6> ÷ðß÷ðç ýð4ýð=p†¡†¡cÓ²w•³<¬#¦ï‘ýðF NB¡¥0 <
 ç¥x}½ŒŠ 
kœ¦ðÖ‘÷ð½ÅC¡¥0<ç¥ïô½Œm¦±Š.4; ¦I°´Rͧ[cÄ´Ì¡¥tç¥Ý Ä´è×´g¡¥ç¥y ×´¸±Æ†¡5†¡¹ëÛ¸ç¥Ð½Œµ¸ç¥j½Œ$™T“#ï‘ýð´ƒ T‹ 
& ýðÊÏ t Ö‘÷ð´Å
& ÷ðÊÏØª Íü¹ñü¬/üé0œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
÷ðÊÏ&
ìë ­ð¡¢Ò¬¬ ÷ðT ýð³6À¢:¥j¥jä5¦ºÚùºŽ# ï‘ý𬫠 
&
ýðÊÏ <¸   <•
Ö‘÷ð¬ö


&
÷ðÊÏ
 
üÎ
P ´÷ðÊÏ& ýðÊÏ& ü¡
Œ å¿ó¿ ¬ ü‚ Q ´å¿ó¿ üÕ  å¿ó¿ á ó Îü° Ãüˆ
¥ü» §
Ø’Ž¼y[îËIZå¿ó¿ú¼ÊϬˆ
š½´·Ö‘¸š7¼¹ï‘ºš7¼çN@BÞô!å¿ó¿å¿Ë¦½E‘ÂJó¿9 Çt£¥j(¥j0Ú¾}­¿1‘´óˆ‰­ä}
ŒYüñóˆøˆåˆóùµùî-ùµùî%
öX óŸï7ù´—‰é ÷ðý𴘋 ù´•‡ƒù´؈¬oš¼PF‡× áu÷ðýðù´‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• üñŇÞÄ:ÉÆ„¾„¾´†¾ ˜X$]È=„kt•ÞÄc\ ýÃåØÄ‘ÆÛ‰ÅË£
ŒYóÛà=ÁÆÕbОï‘ýðùÈùî-ùÈùî%
öX¦½Ÿï4ZÖ‘÷ðùÇùî-ùÇùî%
öXš½Ÿï4ùÆ—Ÿ½ »÷ðýð Æï¡5 »÷ðýð-Ʋ¢ÇùÆ’œ ùÆŸžÑ»¿Ö‘Àš7¼Á7¼P|cÌD÷ðýðùÆ)ìÆœÞÄùÆŸžTš½Ê„¾„¾´†¾ ˜X$]È=„kt•𽦽„¾„¾´†¾ ˜X$]È=„kt•¦½'®š7`š7lU‚ÈèÉeãÉtÿ<„
 ÷ðýð$ÿL„œÿìÆìÿ<“
Ç÷ðýð3L“-üù#Nï‘çÌt€$†
„Øýð,€D†Ö‘£Ì
„Ø÷ðÒŸÓü¥úü«*üã+ œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã÷ðƒØ”Ü—Æ¡¢Ã˜ËìÆ¬ÔÅäÄ«£ÌçÌhKÀ¢Oš7?š7ôþÍCÁΰϟþÏX#ï‘äñ”æ
äñ¯ËÖ‘Þñ”Ÿ
Þñ¯Ëü’  ÷Þñ¯Ëäñ¯Ë ±üØ! ÷´ÔÃÔ øŠÙü­Ýüû7üÀ9÷úûÖ‘üˆýþï‘ÿˆøk®Ö¨æe´ÔÃÔ €ô¯Ëœû Þñl´ÔX äñÔÃÔÀHš7K»%®»%
ô¨ÓûÓ·Ô
ëÁØàÌ*¹ãü
¸Ýôœ±
ÁØ
ì 0Á×zÍ÷¦õ
Ù¦õ/7Ê ÚÁØàÌÍÏá4Ýô@ ÝôK¦õŽ ¦õgqÙØ¬¥ âÁØàÌü‹: ÚÁØàÌËëüÝnÝôÁئõsì7® âÁØàÌ ¹´ ÚÁØàÌ Ä¹ë·Ýô´Áز¦õ#ÁØìÍð
D
¡¥üßçÈ ß4ìá+< 
¡¥±  ¦õøÅœ   ( É٠Ū  
Èb¦õX&N
¿§^f0’¨u
ƒˆ¿¨š
¢ü› ! 
 ç¥üß^ßÉADüŒ 1üßt•ÊIÙ ïüœ½:A¦¶Ùͧ ªëÊ¥ëÊØíÊá¡¥¡¥»ç¥ó·»û¹»øÎœ ÉÙ¸ÉÙ×ʫʿ§¯’¨Üó«åÉÙ¢À À
öçÈòÝ¿¨?·»ç¥£ßɈ•Ê\æ #Ïœ!ÑàÌ#•Ù/7ÏŒ!ÁØ#¯¹/7Ÿ âÁØàÌÏê È âÁØàÌ)Ïë î¦õÉÙ%-ø ÒÁØÚ²ÚàÌ&Y†¡†¡L~•Ù`¯¹, $±"T«"#ˆ$ÑàÌ„ž$
E¡¥ü$\’$õ· $4 ì’$|÷"
F
¡¥üØ"/\ë"õ· Ø"4äë"+Ôµ#ĵ#
«&ÁØ
Ðǵ# 
øÇ #0  " ¦Ç¯# œ§JF ¿§V^G }
«c½Â
ÊüŸ#1 
 ç¥üØ"y,™#¹s>ü™#8üØ"“4ã#Á¹D Dã#ñ¶$ç¥ü$*,°$¹*1
T°$ü$34»$Á¹B D»$Ô$óüè!ìÐ×üù#J¦\•"ÉÙ,ï!ͧ ö!„Ä"¡º%¡º£º¡¥´ç¥k·»t¹»øÐ #0­«X¦q¡¥Ê«s¿§X°è󫎲Úw¡º;¡ºX£ºa¡¥ç¥t¦Íß±âÀñ Àý‡¬êL õ·Íõ·£ç_œ§Ýè:·»ç¥v¹[Á¹5²Úç¥ ¹þÁ¹Ùü‘'á|·'¦õ¬±'·)ÑàÌ”Æ) TÊ)
& àÌ‘öÆ)Õ)tÊ)ç'ÁØl(D(
òX•¥˜(&dÎ($Ò(›ýÎ(×( DÒ(Î( 
ž$œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
àÌõã ຾
Ê
 lÎ( lœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃàÌ\
 
î

ÉÚ( [Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
…­õãÅs
¡$œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
õã½ó ÙÑ î œØëô Ü( ÑÄ
î ÈàÌœò( âÁØàÌT¤'¦õ 
¦õ"1¦õü·&Áø)ü
üÙ'¾ü…(’ü²(e ¥ùѪ
ü¨)0¦ôìé& ÝôLÅ&¡¢Ð&¦õü±'¶ ¦õÙ”Ù'•¥\•¨‰(•¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜½ó½òIäð½ó ½òáѪ
îàÌÖ¸T åÀ¢é¥¬(¥¬Ð‡¬¶(Ž  ¹  ¿C‡¬Å ٲ%ðq›ýLÞð% ô,¦õK|Ð*
&¦õ9œº*É*ÑàÌ÷*
lî*$ò*
&
àÌ‘öî*FLò*ò+éÔã8l¹Ôã8lð÷ü +AH?¡¥
.üþ)ô ñ+.ý<üà*% àÌ‘ö& dœ*ù÷L†*‘ö‘*œøC¸:‘ö(ÎD’¬H‡¬uαüLð÷‘öÚ¦¯Ë§©)1 Õ´©Ù‹£)2 ï¯Ë©ÙÕÕE÷Sžö_ žöj¯Ëݱ¨å©Ù¸«¤À§©‹£ä¯Ëƒ
I¡¥ÄÆçÈ Æ3´È*
-¡¥
¯Ë 
ç¥üÆAßÉW GÜì 
/¡¥Ô´Ä´ŦÐË´øË¡. "¦Ë¯ œ§JF ¿§V^0’¨m{¿¨šü /
 
ç¥üÆŠ,•ßÉI ! Eü•;üÆ •ÊKìüƒé4;¦Ö€ͧ ëʧëÊáëÊ]íÊf¡¥¡¥Aç¥5±¨>¡¥ò祷»"¹»øÖ¡.­«Ö¦ï¡¥Ê«ñ¿§Ö’¨ó« ¦Ì±ÏÀ9ÀE# çÈ>±¨ç¥üßÉÜŦžœ§T¿¨·»ç¥ëßÉЕʣ ×Áد¹)1Ò øÁØ××ý0óö< óöGÁØø Œ`j¯¹©Ù J ¡¥ Ø /¡¥ÁØ)5ç¥_d¦qvdiˆØÞ ¦¬Æ‰´Í§¼¡¥Ä¡¥µç¥½Ÿ¡Åø Íí±úŸ¡ç¥û¦‘éóˆ‰âä}
ŒY‚øóˆøˆåˆ)½@)½@…™)À@š7YÆd;±Ý¥Áصøùêùî-ùêùî%
öX Ÿï7ùé—‰é Áصøé˜‹£ù镇ƒùé؈¬oš7þŠ¿UŠèÁصøù釈)„¾„¾´†¾ ˜X$]È=„kt• ‚øŇÞmɲ„¾„¾´†¾ ˜X$]È=„kt•Þc\š7È ÊŒØøÙ2 ŽÁصøÙÍøÙÑ|‚ø Ùöãš75ˆð K ¡¥øÙý ÿõ·Ùý<ðÙÿ3˜ñ¥˜å¥¸¸²¡¥ . Ù¤ ç¥øÙý<ž¹±BØÙžøÙýEºÁ¹KºÙЈøÙ¨¨
¦€ÙÚ ‚ø¯ͧÙ¡º¨¡ºG£ºP¡¥rç¥î·»ö¹»0U±Võ·¸¸b·»ç¥:¹Á¹ôÅ Ê 
£Áصø ÙÅ Ê  ÙÅ ìèÙÅ  ÙÚ 
„Ø6Ùß Ú Ùð øÙɧœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃƒØèÙ ÙÑ¡¢ÙñìæÔŽ%*À¢,­ΕQ›– œ³ ï¯Ë©ÙÌü€Lžö¯Ë,‘©Ù š7±F ¼,¿­ ï¯Ë©Ù Ź·žö´¯Ë²©Ù°©Ù¯Ë|š7Ա׌É
 ø©Ùà
üš
Fçø
©Ù §
± /ÌÀ


¯Ë)1=
¿À<Ö


©Ù

‹£+
üÀ
1 

ÿÀ©ÙÝg¼Ú
 ð

÷
üæ ,<2œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ÿì˜
 žö ¡¢ÿ šÃèœû©Ù«¤¼7@À¢D9¿ÀU‹£áÄšÃyüÜ0 ¯ËÄÜ·Å, ó
©Ù,„‹£+<„¤¬¸
óÅŸ©Ù­^¼õ 
üÊCŒÊ
óÅ©Ù$*ü‹ˆ\lš2 ŽŽüšš7þ_vŽþ¦ü{óũٺŸL“ÊÏ)½@)½@…™)À@š7YÆd;±Ý¥óÅ©ÙÿóÅÜèœü©Ù𫤹=|Çt·Å*‹£Ý‰¢dØ¢hóÅŒ„ øÁØüÛ@óöÁØ ì± / | øÁØ óö}ÁØ{ÁØ_±°©Ù‹£+ü·D ï¯Ë©Ù ü‚¢žö çø,‹¯Ë,’©Ù¯«¤Í¯Ë-š70n‹£é¯ËŠ¯Ë§©)1 ò˜©Ù‹£)2à ·¯Ë©ÙòåòäE¿S¥ù_ ¥ùj¯Ëݱ¨å©Ù¸«¤À§©‹£ä¯Ëƒ
L
¡¥ä®çÈ ®3Ô°*
-¡¥
¯Ë 
ç¥ü®EßÉW GÜØ 
/¡¥Ô Ä ŦÐÍ øÍ. "¦Í œ§JF ¿§V^0’¨m{¿¨šüŒ/
 
ç¥ü®Ž,ßÉI ! Eü;ü®¤•ÊKØ­üëí4;¦Š«ͧ ùëʧëÊáëÊ]íÊf¡¥¡¥Aç¥5±¨>¡¥ò祷»"¹»øó.­«Ö¦ï¡¥Ê«ñ¿§Ö’¨ó« ¦Ì±ÏÀ9ÀE# çÈ>±¨ç¥üßÉÜŦžœ§T¿¨·»ç¥ëßÉЕʣ¼ß ·¯Ë©Ùü±ü¬P¥ù¯Ë©Ù Çš7±F ó­ ·¯Ë©Ù õ¹±·¥ù´¯Ë²©Ù°¯Ë©Ù|š7Ա׬… À©Ù ²üÒNÏú”è©Ù ß± /
¯ËÌÏ


& ¯ËþN7å

î
»üø vœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¯Ëâ¶&
Ôª
 ¥ùL†
¡¢
èœ.À¢"òÙ¶C ¯Ë ©ÙŒÉ  +
•"©ÙýùC3;ü¹ " 
&
¯Ëâ¶Še¼Ä á ¼ü‚ _¯Ëâ¶& Ǹ ýù<• èœæâ¶Ä ©Ùäé¹×8Çt;rß¹”ºÇ ôþ Áد¹)1Ë  ÀÁØôÐ Å0Šú< ŠúGÁØø Œ`j¯¹©Ò  M¡¥ õþ  /¡¥ÁØ)5ç¥_d¦qvdiˆõ× È ¦¬Ì¼´Í§¼¡¥Ä¡¥µç¥½Ÿ¡Åø Íí±úŸ¡ç¥û¦¬ü
 ÀÁØ¿üÓ
DŠú
ÁØ ä
± / Ž| ÀÁØ ¿Šú}ÁØ{ÁØ_±°©Ù‹£+ü»H ·¯Ë©Ù ˆü†ƒÄ¥ù Ïú,¯Ë,–©Ù°«¤Î¯Ëœ-š70o‹£ê¯ËÁ¯Ë§©)1 öϩً£)2 ɯ˩ÙööšEÑSû_ ûj¯Ëݱ¨å©Ù¸«¤À§©‹£ä¯Ëƒ
N ¡¥ìæçÈ æ3Üè*<—
-¡¥\ 
¯Ë 
ç¥üæF,‘ßÉW GÜ‘À 
/¡¥ÔÙÄÙŦÐÏÙøÏÆ. "¦ÏÔ œ§JF ¿§V^0’¨m{¿¨šüÅ/
 
ç¥üæßÉI ! Eüº;ü楕ÊKÒü£î4;¦÷Äͧ ±ëʧëÊáëÊ]íÊf¡¥¡¥Aç¥5±¨>¡¥ò祷»"¹»ø÷Æ.­«Ö¦ï¡¥Ê«ñ¿§Ö’¨ó« ¦Ì±ÏÀ9ÀE# çÈ>±¨ç¥üßÉÜŦžœ§T¿¨·»ç¥ëßÉЕʣý O¡¥ ø± /¡¥ÁØ)5ç¥_d¦qvdiˆø× ¦¬ âû·Í§¿¡¥Ç¡¥¸ç¥ÀŸ¡Èø Ðð±ýŸ¡ç¥þ¦ ù±Áد¹)1 ÒÁØùÚ0âû<¢ÎDÁØø ]g¯¹¦‘Šóˆ‰ƒä}
ŒYñüóˆøˆåˆ)€@)€@MapOkÁ)ƒ@š7éxâ)>.ú\Áصøù‹ùî-ù‹ùî%
öX §Ñ1‹Ÿï7ùŠ—‰é óÁصøŠ˜‹ýùŠ•‡ƒùŠ؈óó¬o÷š7ÅpQB-Y%z`ÁصøùЇˆ)„¾„¾´†¾ ˜X$]È=„kt• ñüŇƒÒqîÓ„¾„¾´†¾ ˜X$]È=„kt•ƒÒc\š7Ì ëÐýÑøú2 èÁصøúÍÞøúÑ|ñü úö§Ñãš75ˆ‘ P¡¥øúý ÿõ·úý<ðúÿ3˜’¥˜ç¥¸¸²¡¥ . ú¤ ç¥øúý<ž¹±BØúžøúýEºÁ¹KºúÐâøú¨¨
¦€úÚ ñü¯ͧú¡º¨¡ºG£ºP¡¥rç¥î·»ö¹»0U±Võ·¸¸b·»ç¥:¹Á¹ôÅ Ê 
ýÁصø úÅ Ê  úÅ ‘ÔèúÅ  úÚ 
„اÑ6úß Ú úð çøúɧœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã§ÑƒØèú¼Ó úÑ¡¢úñ‘ÔæùÒ%*À¢,­óÙQÀÚ Äö ɯ˩ÙÖüÃQû¯Ë©Ù Þš7±F ,‡ ­ ɯ˩٠¹Ö·û´¯Ë²©Ù°©Ù¯Ë|š7Ô±×´   Ò©Ù¼ ×üì
PÔýœ‚ ©Ù ù
± /¯Ë̯¿À,ÅÎàüÕ
yšÃì‡ û
¡¢î
蜃À¢!Q¿Àü¸/ ¯Ëĸ·Å, Ï
©Ù‹£+¤¬¸
óÅñ©Ù¯`´Ñ æ
ü¡G´¡
ÞóÅ©Ù&*îüâŒ\lá2 èèä ëš7ÅßÐI)KKãóÅ©ÙÜàÊÏ)€@)€@±Ð)ƒ@š7éxâ)>.ú\óÅ©ÙóÅÞèœþ©Ùœ«¤»=|Çt·Å,‹£ßñâfÂãhóÅ´ï ÒÁØäüÆEâûÁØ ×± / | ÒÁØ äâû}ÁØ{ÁØ_±°©Ù‹£+ü±I ɯ˩٠ÿüüéûl™ Ôý,…¯Ë©Ù°«¤Î¯Ëœ-š70o‹£ê¯Ë@“´ ¯Ë§©)1 ©Ù‹£)2(“ ¯Ë©Ù  ES’þ_ ’þj¯Ëݱ¨å©Ù¸«¤À§©‹£ä¯Ëƒ 
Q ¡¥Ü×  çÈ × 3ÌÙ *<† 
-¡¥\
¯Ë 
ç¥ü×D ,€ ßÉW GÜ€ ¯ 
/¡¥ÔÈ ÄÈ ŦÐÑÈ øÑµ.  "¦Ñà  œ§JF ¿§V^0’¨m{¿¨šü´/
 
ç¥ü×  ßÉI ! Eü©; ü×£  •ÊK  ÷ü”ì 4;¦ õë,› ͧ ¢ ëʧëÊáëÊ]íÊf¡¥¡¥Aç¥5±¨>¡¥ò祷»"¹»ø”µ. ­«Ö¦ï¡¥Ê«ñ¿§Ö’¨ó« ¦Ì±ÏÀ9ÀE# çÈ>±¨ç¥üßÉÜŦžœ§T¿¨·»ç¥ëßÉЕʣ(•ê  R¡¥œ  /¡¥ÁØ)5ç¥_d¦qvdiˆï Ÿ ¦¬ çþ·Í§¿¡¥Ç¡¥¸ç¥ÀŸ¡Èø Ðð±ýŸ¡ç¥þ¦œ Áد¹)1(–ñ šÁØö ¢0çþ< õDÁØø ]g¯¹¦‘§óˆ‰ ä}
ŒYöÿóˆøˆåˆ)Æ6)Æ6MapÁ)É6š7)%#á« ,,Áصøù¨ùî-ù¨ùî%
öX ¥øŸï7ù§—‰é »Áصø§˜‹Åù§•‡ƒù§؈»»¬o¿š7ê¡lßÁصøù§‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• öÿŇþønéú³„¾„¾´†¾ ˜X$]È=„kt•þøc\š7É é÷øøø—2 °ÁصøÍ¦ø—Ñ|öÿö¥ø(—ãš75ˆ® S¡¥ø—ý X—ÿõ·ý<ð—ÿ3˜¯¥˜é¥¸¸(—²¡¥ . —¤ ç¥ø—ý<(—ž¹±BØ—žø—ýE0—ºÁ¹K@—ºÐªø—¨¨
¦€—Ú öÿ(—¯ͧ¡º¨¡ºG£ºP¡¥rç¥î·»ö¹»0U±Võ·¸¸b·»ç¥:¹Á¹ôp—Å 8—Ê 
ÅÁصøÅ H—Ê  —Å Œûè—Å Ú 
„Ø¥ø6ß @—Ú ð ¯ø—ɧœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã¥øƒØè—·úÑ¡¢ñŒûæôù%*À¢,­î€Q» ´Õ ¯Ë©Ùñ ûü¢O ’þ ¯Ë ©Ù ½ š7±F á  ­ ¯Ë©Ù ê ¹û·’þ´¯Ë²©Ù°©Ù¯Ë|š7Աפ÷
š©Ù üüÅ
L Ù€ŒÛ
©Ù Ò
± / ¯ËÌÀ  ¿À,Ö  üÀ-  
ÿÀ
èÿÀχ` Õ‡
œÚ ó üæ
 œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
χì˜ ’þ
¡¢ÿ
šÃTèœt'À¢+ò¿ÀÁ‡düÛ,   ¯ËÄÛ  ·Å,   ò 
 ©Ù ,ÿ ‹£+<ÿ ¤¬¸ô 
óÅÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ûâχ©Ùÿ°œô   
üÆB ¤Æ 
¦óÅ©Ùv*Ž ü‡ \l2 °°­¥³š7êµyç<öì€óũ٠¿‰L ÊÏ )Æ6)Æ6¯÷)É6š7)%#á« ,,óÅ©ÙPóÅ-èœM©Ù뫤
<{Çt~
·Å{‹£.拵góŤ‹ šÁØ¥ ŠüâC çþ ÁØ ó ± / œ | šÁØ ž Šçþ}ÁØ{ÁØ_±° ©Ù  ‹£+  üÇG ¯Ë©Ù   ü’ ’þ Ù€,› ¯Ë ©Ù°«¤Î¯Ëœ-š70o‹£ê¯Ë¤!¯Ë§©)1 °²!©Ù‹£)2û! ٯ˩ٰ!°ÿ!EáS_ j¯Ëݱ¨å©Ù¸«¤À§©‹£ä¯ËƒŒ¼! ٯ˩ÙÓ!œü‰J!!¯Ë!©Ù ¤!š7±F! Ê!® ٯ˩٠Ì!ºœ¸µ¯Ë³©Ù±¯Ëˆ©Ù}š7ձشÙ!œÙ!
³©Ù í!&õ!ü§N!õ‚Œ½!©Ù ´!± /í˜u!¯Ëß!žü¨7!±¨Á!¹•! .!¯ËÝ!ŸüšC!èœ! ! 1!¯Ë Í!©ÙÎ! ü—7!¯Ë ²!! .©Ù^ !àÌÌ¥ ! !
& àÌøÐ5» ! !ü¥ -!<¿ !
àÌøÐ&

똊s !ž
œ¿ !Ø !«üË
!œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
˜ìý
! à
!¡¢ä
!œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Šý¸½À¢ÁˆÊœ3D“ !Ÿ‚ !à̤œ ! !
&
àÌøÐ5¬ ! !ô“ ! u
•"Ÿ‚àÌøÐ& =E· !¬üÞ Y!á- !ˆŸ !øÐñ ! Ÿ‚솢ˆ¢Ð¸ï8’¬<k¼¡ü¡×
!
T ¡¥ÜÇ
!
!çÈ Ç
!3ÌÉ
!*
!
-¡¥\ÿ
!
¯Ë 
ç¥üÇ
D!
!ßÉW GÜð
!Ÿ! 
/¡¥Ô¸!ĸ!ŦÐÓ¸!øÓ¥.! "¦Ó³! œ§JF ¿§V^0’¨m{¿¨šü¤/!
 
ç¥üÇ
!,™!ßÉI ! Eü™;!üÇ
£!!•ÊK!ð!°ü„
ì!4;¦
!¹•,
!ͧ
!ëʧëÊáëÊ]íÊf¡¥¡¥Aç¥5±¨>¡¥ò祷»"¹»ø±¥.!­«Ö¦ï¡¥Ê«ñ¿§Ö’¨ó« ¦Ì±ÏÀ9ÀE# çÈ>±¨ç¥üßÉÜŦžœ§T¿¨·»ç¥ëßÉЕʣ ²!Áد¹)1Ú! âÁزß!ç0»‚< »‚GÁØø Œ`j¯¹©T‡! âÁØ!³üÞ9!»‚!ÁØ ï!± / Ž!} âÁØ !ƒ³»‚~ÁØ|ÁØ`±Ž±!
&!©Ù!!‹£+!ü¹%! !
œ¯Ë©Ù ^C Ý!
ä!ü„`!+;¸1! õ‚,!¯Ë,”!¯Ë0©Ùò«¤5š78‹£+¯¯Ë΄é!
U¡¥üÚ !!çÈ Ú!4ôÜ!+Ž!
/¡¥Ô§!ħ!£ç
ÐÕ§! 
øÕ.!  " ¦Õ¢! œ§JF ¿§V^0’¨m{¿¨
šü“/! 
 ç¥üÚi!!ßÉR Düˆ;!üÚ!!•ÊI!ß!»ü—È!29¦!׫!ͧ ¥!ëÊ¥ëÊéíÊò¡¥¡¥Ìç¥ó·»û¹»ø³.!­«®¦Ç¡¥íʫɿ§®’¨Ûó«ä¦í¦±©À ÀýçȬ£çdœ§¿¨E·»ç¥±ßÉ•Êjÿ" V¡¥á½“»¡¥×…+7ç¥af¦sxfkн"® ¾ƒ¹Í§Á¡¥É¡¥ºç¥  ×…Ðç¸Øø±å¸ç¥¦%‘Å󈉾ä}
ŒY¾ƒóˆøˆåˆ×…ùÆùî-ùÆùî%
öX ×…Ÿï7ùÅ—‰é ÷¯ËñƒÅ˜‹ùÅ•‡ƒùÅ؈÷÷¬oûº¼"ÿ¹èÜßî-¯ËñƒùŇˆ)„¾„¾´†¾ ˜X$]È=„kt• ¾ƒŇ»º:¦¼„¾„¾´†¾ ˜X$]È=„kt•»ºc\º ڹ嵺‘ØÛ‰×Ë£
ŒY×…Ûà=ÁØÕdÁØ—Ÿ Ÿ¯Ëñƒ#О«x¯Ëñƒ& ùÛùî-ùÛùî%
öX ø¾Ÿï7f÷«¯Ë÷«Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙñƒùØ—Ÿ½ Ÿ¯Ëñƒ Øï¡8 Ÿ¯Ëñƒ-ز¢®ùØ’œ ùØŸžÑŸ£÷«¤‡¬¼¥’¬¼¦«x§¥¬¼¨©°¬—¥EÑ3¯ËñƒùØ)ɼœ»ºšùØŸžTèœ ó¿)§¿2„¾„¾´†¾ ˜X$]È=„kt•§¿B‡¬’¬¥¬ŸTß½G¡¿ÜÝ" ¯Ëñƒþ"Êüž`"×…"¯Ë±"ó¿¹"‡¬’¬Hî"ó"° ¯Ëñƒ ÷"¼Êº×…·¯Ëµó¿³¯Ëˆó¿}‡¬Ø’¬Ü ¤¶" ¯ËñƒÐ"Ëü„L"×…"ø¾"¥¬
0Å" ¯Ëñƒ É"ˆË×…ƒø¾ø¾d¥¬·$Š "T„ "%+÷«ó¿5 "
W ¡¥ä· " "õ· · "3 Ô¹ " "
X
¡¥ôß " "õ· ß "3
äá "ùã÷D#Áã÷#çàùã*#Y(¡¥1¿ "÷«¯ËÞ "÷«ó¿ÛñƒŒ”
" 
Z¡¥üõ 1"\ˆ
"õ· õ " 4
ôˆ
"+ 
¾
" ç¥üõ M",¸
"¹ c 0T¸
"Ú
"
ç¥üõ i"
"¹T
0 
"üõ ƒ"
"Á¹B

"d„ "
ϯËñƒ¦ ç¥üß 2" "¹ëO œþ "üß ;"4 "Á¹B
D "fü· %" "Á¹Œ
 "í "ÏüÁ¬"ü Û"¦"ç¸"ͧ Ï"LÙ "ü T"±¨V ñƒG¡ºˆ¡ºÏ¡º%£º.¡¥Nç¥ç¥ÓÝ¡º=¡º£º$¡¥D祦¡º£º¡¥²Ô±×‡¬’¬)
õ·áõ·§çàõ·ü±¨ç¥Î¹ÀËÏ祡¹Á¹o¦ç¥F¹Á¹õÁ¹È\… "
[ ¡¥|ÏѦ¨¡¥J¸" Û¼ñƒüœ "„œ"
ʯËñƒ­"E0üÿ
H" è¯ËñƒÍ"ÓüÊ
ƒ"¾ƒ
"¯ËÛ
"ñƒã
"ׅ󿸇¬'’¬+Y£ÓÈ Ò·½·"  Û¼ñƒ º"%
-+£Ó dQ »"0 è¯Ëñƒ Æ"6/Ó>¾ƒ;¯Ë:ñƒ9ׅ˯˳ó¿úñƒö‡¬r’¬w¦"<´"
¯Ëñƒ"L´""ɼœà""
úX»º1"ìà""
®¯ËñƒJ"-üÚ#"éèã8l¹èã8lð÷¼ü"\¡¥ %,ž"«x”Ã" "
„Øø¾Î"×""¦"÷«èœ«" ÷«ÿ”Ñ""
& ¯ËñƒÑ"à" "5  
î 
Ùä î œØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¯Ëñƒ& ¯Ëñƒ&
 äÄ
î
 ÈÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ðÛØÖÊ" 
ž$£Ü
ùä
žî
 +/
;
"$"
äTñƒ Œ"4"×ä"
[Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
…­ðÛår
¡$œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã”Û‡ÞÍM„ž"
]¡¥üŒ#"4—"
°Tñƒ89Ä—"üƒ-"$‡"
&
¯Ëñƒƒ"Xü‡)""ɼ„Õ""
˯Ëñƒ ã"*üÆ "Ñ"
üX»ºbQ¬Ñ"þ 
î Ùå î œØ”Û åÄ
î ȔۨØÇ"  
ž$”Ûùå
žî+/ ; ¬Ç" lâÛ"
!ɼ\"
" ¯ËñƒÜò"
ý"Ÿá!F"7 „ý"ÙÛ" [‡Þâ
 éÞ,û¹"
$"
# Ö¿âÛðÛ$¤ª"
œØ”Û# Ð" ³" üÌç"Øü "üé"ùäª
ÙàçÜÊ"üû~"üŠÇ"ü½" ùåª
 % , 3 &ïÞ”ƒ"ô»"¡¢ê"±»"ÕÁ?ɼs ɼü "èœÿ•¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜‡ÞmœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã£Ü
áäª
î£Ü@a‡Þjø¾ ÿ"ñƒŒó¿±¡¥µùëæH×…;”ÃýâÛÁ" •¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜‡ÞâÛâïÞPáåª
î”Û B‡ÞK âÛÐ ëæ¿×…´”Û2âÛHý?À¢DûËI‡¬µ’¬© ¿·
Ž Ü¹ú±¥¬R resÁ[
¿  Ž 3 ¹»¢¼×
ØT
¯0
ð÷Þ ÏÙ¶Ú; ˆÝðÕݪéÞþòßœ¤àqïà-Ÿá´âuŸáÞéÞƒâÛBƒ# ^¡¥é#!ç¥KP½Œ]bPoéˆ#Ʀ 䆞ͧ¦¡¥®ç¥ŸÒð§Ôð¯Ï±ÜæÒðç¥ܽŒùƒ$ ¡¥áõ“»-¡¥Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙíÌp|祦«¦¸½«°Ïõˆ$Ìç¦ó ³‡þͧ¡¥¡¥ç¥
  þïèñ"C±Q\æñç¥S¦q‘ýóˆ‰öä}
ŒY³‡óˆøˆåˆþïùþùî-ùþùî%
öX þïŸï7ùý—‰é ÒíÌý˜‹Úùý•‡ƒùý؈ÒÒ¬oÕš7ãw8`euN£íÌùý‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• ³‡Ň¿ó2¢õw„¾„¾´†¾ ˜X$]È=„kt•¿ó[\š7ÞòݹóÄÃ$ ÇíÌá$îü€a$³‡Œ§$þï,’$š7 /
$$
ÚÁØ$$¤é$„¾„¾´†¾ ˜X$]È=„kt• Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÁØüé!$$
¬TÁت$*üã'$K”ð$„ð$
ß $Û•¨$$›ý$³$$ü¨"$$
¥Ì‘æ²ÿŠ€WT¿$Š€
 œ·$Ìð$$
è䆲ÿä†Ò
$ôì$ Ö¿¥Ì²ÿ
üà+$ œØÊ€  Š$ œ$ôü$ü™1$ žƒ”Æ$„¾„¾´†¾ ˜X$]È=„kt• ½ˆ$—$¡¢­$Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ•¨<Þ÷ÓÒÒ¬oÕš7ãw8`euN£ÁØ7\™$•¨ü„Ê€o²ÿ¬ä†aÛÀ¢ßš7hW³÷¦íøô¿ù¨›ýw¦úPëú(„% _¡¥€„% -¡¥þï)5ç¥_d¦qvdiˆ%𠦬 öˆ·Í§¿¡¥Ç¡¥¸ç¥ÀæñÈèñÐð±ýæñç¥þ¦”¡% ëí̹%üüˆ±%öˆ%þï%š7 0%} ëíÌ ²%ƒüöˆ}þï{þï_š7± TŠ %þï„„ % % Ö¿²ÿœž % œØ…š  ° %l¨ %þïÛí̤À %TÆ %
& íÌ­Î,À %Ñ %tÆ %5Ôº %
% œØ…š ó %ÈÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
íÌ­Î&
¬…
%<‡
%
ç[ÿ… ²ÿ
èÿ… ²ÿ
%T
%®† 
œ‡
%üù "% œØ…š Ù
% %üª˜%ü£ ·%üç 4%
´›ìÜ% öˆ%¡¢Ã%œ£ %ª÷ޜ؞؟ØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ã®… 
tç %®… ¨…š<…ššÀ¢š7u½ëù´„ r, %
T“ %þ % %
ªTíÌ2 %œ« %
 í̭Ϊ÷íÌ­Î& ­Îü“ ,%§ %
·Tª÷ÆŠ íÌ­Î¾Š ׊ ´ħ %ÔÉ %œÉ %
îÆŠ  %'é %üÈ ¡% è %4ü‡ b%ÇÇ™tÉš7ã×uE•@%ÑÆŠ %¾‡ %­Î %Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÆŠ Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙª÷)¿óI€‹ 5ÊÇtÍš7£nö‰ zòŠ Á‹ ¾­Î %­Î % %
&
íÌ­Î ¯ %9 %¾ %ÊÆŠ ® %€‹ áª÷ ¬ %­Îƒ´Çt©­Î¥ ŸÇtl& Û¼íÌüøO& íÌ­Îô¾Fu\»Ÿ­ÎÍ&ž üÉ&¿‰&íÌ&þ逸j8
Ê<—&ã Û¼íÌ ž&& ¬‘  íÌ­Î Æ&Þž Ü¿‰ØíÌÖþï|í̵…‘ ¥jù& ¼²&
÷!„¾„¾´†¾ ˜X$]È=„kt• ¿‰ _VZþïü²-&4×&ö‰ D×&Äô&

`¡¥ü²[&&
°Tª÷W
8üí &ü²w&T &´„ H¦ &t &+ A…
î Ù… î œØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
íÌÿ… Ä
î È®… øÜ«& 
ž$®…  ù…
žî-1
=

$Å &TÅ &$ ݪ &[Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
…­ÿ… êr
¡$œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃË– Þ˜ ÍRùþïŒÅ &$Ð &
äTíÌ) 4Ð &ÄÞ &
`¡¥üÅ 2&4× &
°TíÌ]8
ü× &ü 6& Ö¿íÌÿ… ü¶ C& œØË– ÿ & £ üÓ¬&ù…ª
ÍÔÛü«&Æ™ ”Ž&–” &¡¢õ&•¢˜¢™¢lš¢ˆ›¢œ¢[¢ˆe0<#˜Þ˜ Þç‡ Óª÷È R¿óÊÈ” Ó –” ð¡¥Uá…ª
î®… TÁÞ˜ ÊË– sí̬þïö¿ó
È” Ü 0¡¥ðÀ¢¿Ë Ž <¹f  §ö‰ ?½•  ´„ àÜ— û¤À™  Æš ¤ˆ› j &
a ¡¥ôš & &çÈ š &3äœ &* &
-¡¥ & þï ç¥üš G& &ßÉWGÜÆ &üš ]& &•ÊF &ý &§ üÛ
¢&
¦\„ & ¿‰
&ͧ é
&ëÊëÊíÊ¡¥;¡¥öç¥éèññP±SçÈgèñç¥%ßÉ•ÊÜÔÐ&ŒÐ&
ž  ¥ÌÊÏ&-üË & ¨ ¥ÌÊÏñ&µ üšW&¨ ¨ © È­ ˆ ä•ïìË£2¥ÌÊÏ&§£ &Œ[ š7¸[:YåzöÑø§£ ÊÏþ¥jR­¡£ &&
÷!„¾„¾´†¾ ˜X$]È=„kt• ‚¤ _V&Τ ¬Ø&&
òX Τ 6'ôØ&&
„ØΤ Ió&&ü&» ü€|&œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
§£ ¥ÌÊÏ&
”»&Ý¥ Dˆ&¡¢¢&„¾„¾´†¾ ˜X$]È=„kt•Ѧ pѦ ¦ ó Ý¥ nÀ¢r@×¥ ,˦ Â÷¦ œ&
b¡¥´”&\&õ· &3¤–&*&Τ ç¥ü”%&&¹tB&ü”.&&Á¹A&È&¿ üÕs& ¦& ‚¤ &ͧ ã&¡º¡º÷£ºÿ¡¥ç¥Ù Τ äI±L|õ·E¼¬ 祹øÁ¹Ó|… ' ñíÌ 'Ç üÔB'¹‹'íÌ é'± /¦
'íÌÒ)1(‡
' ñíÌ
'ø0¹‹< ¹‹GíÌ–õŒ`jÒ© '
c ¡¥Üœ ' 'çÈ œ '3Ìž '*Ë '
/¡¥Ôä 'Ää '
«&íÌ
Ðßä ' 
øßÑ .'  " ¦ßß ' œ§JF ¿§V^0’¨m{¿¨
šüÐ /' 
 ç¥üœ d' 'ßÉW&DüÅ ;'üœ z' '•ÊI 'œ 'Ë üÙ
Ã'29¦\† 'î®
'ͧ ç
'ëÊ¥ëÊîíÊ÷¡¥¡¥Òç¥ó·»û¹»øˆÑ .'­«®¦Ç¡¥óʫɿ§®’¨Ûó«ä¦í¦±©À Àýçȱ¡° jœ§¿¨E·»ç¥±ßÉ•Êj' Ö¿˜''
è­žèE'Í'Õ üë
b'蜜' ¹‹
'¡¢ '­žCâµ Œ'íÌ' +
•"íÌÊÏC3;¡'Ö üÓN'©Ù'¨¶ 'ÊÏæ'ª÷¥· %’¬)V›· ±@‰´(¯Ë§©)1Â(©Ù‹£)2(‰( ù¯Ë©Ù((ES—Œ_ —Œj¯Ëݱ¨å©Ù¸«¤À§©‹£ä¯Ëƒ(
d¡¥´Ò((çÈ Ò(3¤Ô(*(
-¡¥\…(
¯Ë 
ç¥üÒ?((ßÉW GÜö(¥( 
/¡¥Ô¾(ľ(ŦÐá¾(øá«.( "¦á¹( œ§JF ¿§V^0’¨m{¿¨šüª/(
 
ç¥üÒˆ((ßÉI ! EüŸ;(üÒž((•ÊK(ö(æ üç(4;¦(Šº ,–(ͧ (ëʧëÊáëÊ]íÊf¡¥¡¥Aç¥5±¨>¡¥ò祷»"¹»øŠ«.(­«Ö¦ï¡¥Ê«ñ¿§Ö’¨ó« ¦Ì±ÏÀ9ÀE# çÈ>±¨ç¥üßÉÜŦžœ§T¿¨·»ç¥ëßÉЕʣ(‹Û( e ¡¥ˆ( /¡¥ÁØ)5ç¥_d¦qvdiˆà( ¦¬ 쌷ͧ¿¡¥Ç¡¥¸ç¥ÀŸ¡Èø Ðð±ýŸ¡ç¥þ¦ Œˆ(Áد¹)1â( ÁØŒç(Š0ìŒ<µÃ DÁØø ]g¯¹¦Œ†( ù¯Ë©Ù(ê üÓJ(—Œ(¯Ë(©Ù î(š7±F (,(­ ù¯Ë©Ù (¹ê ·—Œ´¯Ë²©Ù°©Ù¯Ë|š7Ô±×|” ( ©Ù© (ë üçB(æŽ(©Ù ô(± /󈉖ä}
ŒYÿ!óˆiøˆ1åˆ)ò7)ò7ú±)ö7š7)%Ï^vv•Ûœ‰öáüá‚âùžùî-ùžùî%
öX éÉ Ÿï7ù—‰é ©öáüá‚☋µù•‡ƒù؈©©¬o®š7× Ÿrè]täRGöáüá‚âù‡ˆ)„¾„¾´†¾ ˜X$]È=„kt• ÿ!ŇÄÊ x·Ì ½„¾„¾´†¾ ˜X$]È=„kt•ÄÊ k\š7Ó­É #¾Ê ø2 öáüá‚âÍøÑ|ÿ öéÉ (ãš75ˆ¤ f
¡¥øý Xÿõ·ý<ðÿ3˜¥¥˜ë¥¸¸(²¡¥ . ¤ ç¥øý<(ž¹±BØžøýE0ºÁ¹K@ºÐø¨¨
¦Ú ÿ(¯ͧ¡º¨¡ºG£ºP¡¥rç¥î·»ö¹»0U±Võ·¸¸b·»ç¥:¹Á¹ôpÅ 8Ê 
µöáüá‚â Å HÊ  Å ÚÌ èÅ  Ú 
„ØéÉ 6ß @Ú ð šøÉ§œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃéÉ ƒØè…Ì Ñ¡¢ñÚÌ æ¾Ë )*À¢,­ÀÒ U‘Ó  (¯ËÌ¥((¿À,»((ü¥-(<¿(Á‡B(Õ‡
œ¿(Ø(ö üË
(Ÿˆìý
( —Œ
(¡¢ä
(šÃ èœ¿%À¢)Z¿ÀÓÁ‡­ü»-( (¯ËÄ»((·Å,(( Ò(
(©Ù((‹£+(¤¬¸(
óÅÇ¢©Ù­^¤Ô( ç(
ü«>((
óÅÇ¢©Ù(.ï(üìƒ(`p÷ 2 …´Ÿš7× ·zï²=ÞóÅÇ¢©Ùd”(²Ö (ÊÏ<ÿ()ò7)ò7ú±)ö7š7)%Ï^vv•Ûœ‰óÅÇ¢©Ù
óÅç蜩٥«¤ÄHÇt·Å5‹£èÕØ o¤Ù sóÅ( ÁØ÷(ú ü¹>(ìŒ(ÁØ Ê(± / î(| ÁØ ð(ú ìŒ}ÁØ{ÁØ_±°(©Ù((‹£+((üB( ù¯Ë©Ù×( Ö(üÚ}(ÿ —Œ( æŽ(¯Ë(©Ù¯«¤Í¯Ë-š70n‹£é¯ËÔ‡ć
Àü‡!ü‡% «! #CÆ4 Ë- 04.Zœé @  C
#äè 
üâ" âð? | D  
ˆ
Ñ¿$›  ÄÉ  *üÀ !@  3
 
¤ì 

üá¥üöü¶ÐüÖ°ü wü´ Rû­Â¿V
,“ ,¸ fo=
float_sizeÁŸ precisionÁscaleÁ»z »|
3£à š¦ã  L‰ ¼û é«ã8l¹«ã8lð÷ü  .g,¡¥
- L
\­

 
* 


¦ã 
 


 " 
 2 
ό
   *þ
Š
ü£ Ûüâ œüƒ
{ü¡
]üÃ
;Ò ­Â ££¹ƒ£¹„£þ-'ºˆÉ¬g é
Ý 

° Ç
ah„ì 0±rangeÁ¹hþjÀë m ¹d 8ð÷¦ã û ù¬ žÀ8Åá™-ÝñøÐ§ ïíe¼îËè¿*øÐ øÐœÕ
ˆ
øÐ½î
ü­AÇ ¤â„¤¨î $IÌî ŽÙ
ÙÙ/7Ì ÌÙ¬ÑÒ3œ? œJÙ® Ù¹ wùï ç
ٷ٬ÐÓ h ¡¥ i¡¥Ù)ç¥ j¡¥
( 
4 祘ƪ¯¢mrË­ØÕã ¦ïöð ÷ͧÿ¡¥¡¥ù祉ñ 
¡¥Ùç¥á ›ñ ì›ñ ôN±\g‰ñ ç¥^”ô ç¥.Æü¥  ÌÙ ÂË
üõVœ$–Ù£·
0ÙÔÅ
ÇeÙ1ôé
¨eÙÆeE;¼ðä d­
œÓ, ºü‘+ 
£eæö  + ÚÛüŒÏ
ü´§
¦ œæö ‰ñ «Q æö y#? æö çU£·YŸ”ö öàö ±ª÷ nŠø æö ðæö ö„ )T )
µ Ñ¿­Î),)Ó
üÃs)¨ ¨ © È­ ˆ ä•ïìË£2Ñ¿­ÎÄÚ)­Â) fºú ²¼à)Œà)
ž Ñ¿­Î)*ý)Ô
üý)Œ[š7¸[:YåzöÑøÑ¿­ÎÜ—)Ñ¿) mùû ·¼À))
ÓÑ¿­Î)Ó)1Ý)Õ
üÚƒ)è耩뺼èÏÝ-ˆçŒÑ¿­Î´ü)Ñ¿)­Îë)’¬z½ý ËÄÁ))
Ñ¿Ä×))1ß)Ö
ü±®)Ó‡ š7ûSe5ÃÑ¿ÄׄÒ)Ñ¿)Ä×)reqsÁ}•ÿ άÊ()dÊ()
ùÑ¿Ÿ‚$×() Ý()1å()Ø
üÜ'‰)ù‚š7Õ±Õc¸N@2=Ñ¿Ÿ‚„ú')Ñ¿$ë')Ÿ‚ ñ')±ð€
ÖÌÕ9)„Õ9)
ÖÑ¿Ÿ‚$æ9) ì9)1ô9)Ú
ü°8Ä)ÉÉãžÌš7ÅͱʼnP¶b.HòÑ¿Ÿ‚¤Ü8)Ñ¿$Í8)Ÿ‚ Ó8)±Ó‚
Ö¤ÈI)\ÈI)
Ñ¿Ÿ‚$ÔI) ÚI)1âI)Ý
ü¶H¬)ïï…™òš7þó±þl~œBÊÑ¿Ÿ‚|ÚH)Ñ¿$ËH)Ÿ‚ ÑH)±¶„
ּ׈)t׈)
ûÑ¿Ÿ‚$æˆ) ìˆ)5ôˆ)à
üé†)°£š7ê±ê‚x²Ÿ-„Ñ¿Ÿ‚”š‡)Ñ¿$‹‡)Ÿ‚ ‘‡)±›†
ßĶ–)|¶–)
±Ñ¿Ÿ‚$Æ–) Ì–)5Ô–)ä
üŸ•µ)··Ãºš7£»±£
VÝÌí¾Ñ¿Ÿ‚œÌ•)Ñ¿$½•)Ÿ‚ Õ)±‡ˆ
ß”ºá)Lºá)
ê Ñ¿Ÿ‚$Äá) Êá)5Òá)ç
ü¯ß£)ùùú±üš7× ý±× Y:²Í°¶|Ñ¿Ÿ‚lßß)Ñ¿$Ðß)Ÿ‚ Öß)±ó‰
ß¼Üó)tÜó)
œÑ¿Ÿ‚$ëó) ñó)5ùó)ì
üæñ)ÙÙ÷§Üš7ݱ†ç§ÝþÑ¿Ÿ‚”œò)Ñ¿$ò)Ÿ‚ “ò)±ß‹
߬™ÿ)|™ÿ)
¦­ÎÑ¿­Î& Ñ¿­Î&
Ñ¿$©ÿ)I´ÿ)ñ
üòýÂ)ššð6žš7Œ6Oˆ­ÎÕ
ã
ü„þ0)Ñ¿$ûý) iË
ÓÔ´‹)¤´‹)
­ÎÕ
ã
Ñ¿$É‹)5Ô‹)ò
üú‰Ú)ýýþä<ˆñ ="àÊ!äQ­ÎÕ
ã
ü’Š5)Ñ¿$‰Š) m«
Ã,š’)\Œ’),‘’)ÛÅ‘œª’) ÷Å‘ü…’r)|á’)lá’)
'ôÓ’) ÷Å‘Tù’)ü¿‘º)ö
ü ’#)÷úûÖ‘üˆýþï‘ÿˆøk®Ö¨æeÅ‘œë‘)Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÅ‘,Ö‘)Å‘|>»%'»%á‘
jä*Å‘
ÙÅ‘/7¹* ÖÅ‘®¾*Û0–‘< –‘GőРőcmé”
²*
*á‘
%üÇ>* Ö ** ü¢i*Ò‘*w T²!*Å‘ì !*T !*
'"¥ÌÅ‘,«!*:.üü L* ÖStackÁš7'outerÁ'bÆÍõ„Aw¥ÌÅ‘Î!* ü³ ›*ÖÖê·Ø»%ø
§6˜¤Áæ—
ÜÖ *–‘$à *¥Ì,É *æ—
Å‘'»%*²—
6$×'*
&üâ' *Ìâ'*
ö
¥Ì,ü'*'ü×',* ,Ü'*
Å‘÷úûÖ‘üˆýþï‘ÿˆøk®Ö¨æe¥Ìà²üÜ''* (*
‰(*üÉ&À*,< 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Awðš
Å‘ü’':*–‘$é&*Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¥Ì,÷&*–‘$ðš
ú?s»%1@§š
-æš
 –‘y$Î**
&ÌÙ**´Ù**
'©Ù ð**%üÎ*%* ,Ó**
Å‘êϱ'(-òØ^á©Ù¾üÓ* * ò**
ù**üï)Š*,< 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„AwèŸ
Å‘ü‘*2*–‘$‚**©Ù ˆ**–‘½èŸ
ú-±0ú Ÿ
ÄÞŸ
¢–‘2$ÛA*
&üæA%*ìæA*
ñ¾×4„B*(üÛA1* ,àA*
Å‘

š{˜
Œ&ìfg·®ÕI‡:¾×ÁüàA,* B*
’B*ü÷@*,< 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Awü£
Å‘ü›A5*–‘$‡A*¾×4A*–‘Àü£
ú-Œ&0ú³£
Çò£
¢–‘2$žF*
&ü©F**ü©F!*
º<ËF*$üžF6* ,£F*
Å‘´Þaü£F1* ÓF*
ÚF*ü*,< 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Aw´ÞÅ‘üÝE6*–‘$¨E*ÎØ<¶E*–‘Ž´Þdú-©(0úǧ
‚¨
t–‘2$¡`*
&ü¬`$*ü¬`!*
¿©Ù Î`*)ü¡`0* ,¦`*
Å‘Ïúfü¦`+* Ð`*
×`*üç^ð*,<Ž 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„AwÏúÅ‘ü«_9*–‘$Ž_*©Ù œ_*–‘Ïúiú-±0úª«
šé«
t–‘2$ëd*
&üöd%*üöd"*
ä©Ù ™e*)üëd1* ,ðd*
Å‘Ôýfüðd,* e*
¢e*üéc¹*,< 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„AwÔýÅ‘ü¦d:*–‘$‰d*©Ù —d*–‘Ôýiú-±0ú‘¯
šЯ
t–‘2$ôh*
&üÿh *ìÿh*
©Ù i*(üôh,* ,ùh*
Å‘çøeüùh'* Ÿi*
¦i*ü“h“*,< 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„AwçøÅ‘ü´h5*–‘$¥h*©Ù «h*–‘çøhú-±0ú÷²
¶³
t–‘2$²m*
&ü½m#*ü½m *í˜ Þm*#ü²m/* ,·m*
Å‘õ‚Ž`ü·m** àm*
çm*üËlœ*,< 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Awõ‚Å‘üïl8*–‘$àl*©Ù æl*–‘õ‚cú-±0ú혗·
t–‘2$¦u*
&ô±u*ܱu*
ú ©Ù Íu*'ü¦u** ,«u*
Å‘æŽdü«u%* Ïu*
Öu*üÊtŒ*,<˜ 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„AwæŽÅ‘üèt3*–‘$Ùt*©Ù ßt*–‘æŽgú-±0ú½º
˜üº
t–‘2$Ù|*
&üä|!*ôä|*
©Ù ƒ}*(üÙ|-* ,Þ|*
Å‘ùâeüÞ|(* …}*
Œ}*üö{*,<š 2ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„AwùâÅ‘ü˜|6*–‘$‰|*©Ù |*–‘ùâhú-±0ú£¾
â¾
t–‘2* 'ü„‚#*ü„‚ *
Š©Ù ¥‚*,üù/* *
őـšküþ** §‚* ®‚*ü’œ*/?œ 3ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Awـőü¶8*–‘*©Ù ­*–‘ Ù€u0±2ÿÂ
§ÏÂ
~–‘9T’ƒ*Å‘¢ƒ*ž üë‚7*Å‘ †ƒ*–‘$ý‚* 1TÝ…*Å‘ÌÝ…*,è…*
Å‘àÌ8<î…*tè…*ü…*Ÿ üý„*Å‘àÌT¥…*•
,*àÌ<–…*Õ•
ž¥j!\ÈÆ
±$Α*ÔÛ‘*¼Û‘*
Ç ©Ù ó‘*)üΑ(*<Ó‘*
Ÿ Å‘ññ·±ó±À š)58¯Ò릩ÙüÓ‘#* û‘*ü‘*üÚ¢*¡ Å‘ÏÈ
*–‘*©Ù õ*•
!ÏÈ
)±+u•È
DÅÈ
–‘º–‘À$¦™*°™*£ üؘX*–‘$ô˜*–‘$ë˜* 1$²¢*¼¢*¤ ü¾¡~*–‘$å¡*–‘$Ü¡* 1$ª±*´±*¦ ü•°Ÿ*–‘$¿°*–‘$¶°* 2$è½* 'üó½ *ôó½*
©‘öÇ
‘ö& Ç
‘ö&
Ç
Cüè½,* ,í½*
Å‘êϱ'(-òØ^áÇ
ššð6žš7Œ6Oˆ‘öÜÍ
êÍ
ðüí½'* “¾* š¾*ü¶¹ä*/?« 3ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Aw¶Î
Å‘üá¹ì*–‘$Ò¹*–‘¶Î
ðö$çÒÍ
¬Î
Ô–‘!$ÛÍ* 'üæÍ%*üæÍ#*
Š‘öÜÍ
êÍ
Ç
0üÛÍ1* ,àÍ*
Å‘êϱ'(-òØ^áÇ
ýýþä<ˆñ ="àÊ!äQ‘öÜÍ
êÍ
áüàÍ,* ‹Î* ’Î*ü–Éü*/?® 3ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Aw…Ó
Å‘üÇÉñ*–‘$¸É*–‘ …Ó
áö$çµÒ
ûÒ
Ø–‘!,ÐÝ* ŒØÝ*TÝÝ*
ž Å‘$ØÝ*dÝÝ* èÝ* ¬ôÝ*œôÝ*
,»Þ* üÞ1*üÞ**
öàÌ‘öÜÍ
êÍ
Å‘R9üôÝN*,ŠÞ*
ëë–4ðÎ.âPOTÖô*àÌ‘öÜÍ
êÍ
Ò‘æ§üŠÞ8* ÇÞ* ÈÞ*ü·Ù*/?± 3üÌÝ|*ÖÖê·Ø»%ø
§6˜¤Áð–
š7'‰—
'bÆÍõ„Aw¼Ø
üíÙ*–‘$ÞÙ*Å‘IÒ‘õ¼Ø
ºÅ‘å7»%èÖ
¯×
@õ×
²Ø
ËÅ‘Y„Øß* k¡¥üÊß*\Ìß*õ· Êß*8ìÌß*/\ðß*Å‘ç¥üÊß2*,êß*¹|E”êß*üÊß;*4ýß*Á¹FDýß*‹à* ü‡ß* ¦\´ß*•
,Žß*ͧ •ß*¡ºš¡º£º¡¥0ç¥åÕ•
íJ±L}õ·SÕ•
ç¥!¹Á¹ÙT«á*÷’¼«á*,¶á*
÷’¯Ë8,¼á*d¶á*Èá*» üöàR*÷’¯Ël“á* È’,ÿà*¯Ë,†á* ÷’¤"š7$b´ß
·Ì‹. Ÿ   %ùÓ1¡¥9@”\
Ô
Õ
$óÛ07>ü‹
# ýíÌ‹æ‘æ%þ2Ãç>¸¤FMü“' ²íÌ‹æ‘æ%³2°è>ÿ·FM ÷÷ðýð û-­ð9÷ðAH,“ ÷÷ðýð þ-­ð9ýðAH4…! âÁØàÌ æ-¦õ9ÁØAH<”! âÁØàÌ é-¦õ9àÌAH|# ÂÃ%ä†18?üá
& ¨ ¥ÌÊÏ#© 0‚¤ <Τ DKŒ˜Ôø
¼ Ì Ï Àç]Të? Ç Æ ½
™eT÷?Ñ
Ç ê·t¬@ÖÈ œ\ªA<É LayerÁ,ÜAÊ Ñ<ŠB&Ë ü‡DüÌ2/ `async fn(Request) -> Result<Response, Error>`Áÿú # OverviewÁúü–FC Tower is a library of modular and reusable components for buildingÁüÝ*' robust networking clients and servers.ÁˆúüŒJG Tower provides a simple core abstraction, the [`Service`] trait, whichÁü×OL represents an asynchronous function taking a request and returning either aÁü§PM response or an error. This abstraction can be used to model both clients andÁ servers.Áúü‰PM Generic components, like [`timeout`], [rate limiting], and [load balancing],ÁüÚIF can be modeled as [`Service`]s that wrap some inner service and applyÁü¤PM additional behavior before or after the inner service is called. This allowsÁüõTQ implementing these components in a protocol-agnostic, composable way. Typically,ÁüÊ2/ such services are referred to as _middleware_.Áýúü FC An additional abstraction, the [`Layer`] trait, is used to composeÁüÈ JG middleware with [`Service`]s. If a [`Service`] can be thought of as anÁü“
PM asynchronous function from a request type to a response type, a [`Layer`] isÁüä
PM a function taking a [`Service`] of one type and returning a [`Service`] of aÁüµ NK different type. The [`ServiceBuilder`] type is used to add middleware to aÁü„ 52 service by composing it with multiple [`Layer`]s.Áº úÔ¾  ## The Tower EcosystemÁÙ úüÝ -* Tower is made up of the following crates:Á
úä
 * [`tower`] (this crate)Á¼¬
 * [`tower-service`]Á¬Ä
 * [`tower-layer`]Á¤Ú
 * [`tower-test`]Áï
úüó
OL Since the [`Service`] and [`Layer`] traits are important integration pointsÁüÃKH for all libraries using Tower, they are kept as stable as possible, andÁüMJ breaking changes are made rarely. Therefore, they are defined in separateÁüÝFC crates, [`tower-service`] and [`tower-layer`]. This crate containsÁü¤EB re-exports of those core traits, implementations of commonly-usedÁüêMJ middleware, and [utilities] for working with [`Service`]s and [`Layer`]s.Áü¸OL Finally, the [`tower-test`] crate provides tools for testing programs usingÁTˆ Tower.Áú\— # UsageÁ£úü§OL Tower provides an abstraction layer, and generic implementations of variousÁü÷OL middleware. This means that the `tower` crate on its own does *not* provideÁüÇLI a working implementation of a network client or server. Instead, Tower'sÁü”FC [`Service` trait][`Service`] provides an integration point betweenÁüÛIF application code, libraries providing middleware implementations, andÁü¥GD libraries that implement servers and/or clients for various networkÁ protocols.Áüúü€OL Depending on your particular use case, you might use Tower in several ways:ÁÐúüÔKH * **Implementing application logic** for a networked program. You mightÁü MJ use the [`Service`] trait to model your application's behavior, and useÁüîNK the middleware [provided by this crate](#modules) and by other librariesÁü½IF to add functionality to clients and servers provided by one or moreÁü‡ protocol implementations.Áü§OL * **Implementing middleware** to add custom behavior to network clients andÁü÷LI servers in a reusable manner. This might be general-purpose middlewareÁüÄOL (and if it is, please consider releasing your middleware as a library forÁü”KH other Tower users!) or application-specific behavior that needs to beÁüà1. shared between multiple clients or servers.Áü’KH * **Implementing a network protocol**. Libraries that implement networkÁüÞGD protocols (such as HTTP) can depend on `tower-service` to use theÁü¦MJ [`Service`] trait as an integration point between the protocol and userÁüôPM code. For example, a client for some protocol might implement [`Service`],ÁüÅHE allowing users to add arbitrary Tower middleware to those clients.ÁüŽLI Similarly, a server might be created from a user-provided [`Service`].ÁÛúüßJG Additionally, when a network protocol requires functionality alreadyÁüª PM provided by existing Tower middleware, a protocol implementation might useÁüû FC Tower middleware internally, as well as as an integration point.ÁÂ!ú´Æ! ## Library SupportÁÝ!úüá!NK A number of third-party libraries support Tower and the [`Service`] trait.Áü°":7 The following is an incomplete list of such libraries:Áë"úüï"B? * [`hyper`]: A fast and correct low-level HTTP implementation.Áü²#JG * [`tonic`]: A [gRPC-over-HTTP/2][grpc] implementation built on top ofÁüý#PM [`hyper`]. See [here][tonic-examples] for examples of using [`tonic`] withÁdÎ$ Tower.ÁüÛ$<9 * [`warp`]: A lightweight, composable web framework. SeeÁü˜%DA [here][warp-service] for details on using [`warp`] with Tower.ÁüÝ%52 * [`tower-lsp`]: implementations of the [LanguageÁü“&+( Serv
ˆ2úŒ2úô2 ## Supported Rust VersionsÁ¯2úü³2RO Tower will keep a rolling MSRV (minimum supported Rust version) policy of **atÁü†3SP least** 6 months. When increasing the MSRV, the new Rust version must have beenÁüÚ3A> released at least six months ago. The current MSRV is 1.64.0.Áœ4úü 4 [`Service`]: crate::ServiceÁÜÀ4 [`Layer`]: crate::LayerÁüÜ4'$ [rate limiting]: crate::limit::rateÁü„5$! [load balancing]: crate::balanceÁü©5-* [`ServiceBuilder`]: crate::ServiceBuilderÁü×5" [utilities]: crate::ServiceExtÁüú5-* [`tower`]: https://crates.io/crates/towerÁü¨6=: [`tower-service`]: https://crates.io/crates/tower-serviceÁüæ696 [`tower-layer`]: https://crates.io/crates/tower-layerÁü 774 [`tower-test`]: https://crates.io/crates/tower-testÁÜØ7 [`retry`]: crate::retryÁüô7:7 [open a PR]: https://github.com/tower-rs/tower/compareÁü¯8B? [guides]: https://github.com/tower-rs/tower/tree/master/guidesÁŒ˜Ôø
¼ Ì Ï À¾ ç]¿ Ç Æ ½
™e¾ Ñ
Ç ê·½ ÖÈ œ¼ <É £ç
· Ê Ñ&Ë :!=!@!¬€949Ôo»·+„»â¼%»”B»„Zü cünl| Š
  Õ,   +   œ, 8¸ & 8û$˜
ž8 8!, ©8Ð & ®8¼ ´, µ  Ã, ·8paramÁ,¸& ½8¼$ Ä Å Æ È, Ê8actualÁ& Ñ8´Ò% Ô*× Ú ÿ K8ò„ä'ô8 pin_projectÁ  ƒ ,   ˜+   , 8¸ 
8§8, ²8Ð  ·, ¸ ¹ À, º8œ« $ Á  à Š+ × Ø Ü8ÿ
Ù8š7& ó, õ8á« 8 ¢, £ ¤ «, ¥8œ« $ ¬ ­ ®, °8Ð  µ,  · ¾, ¸8œ« $ ¿ À Á à Ö8Ñ Ô Ú88 Ü8æ ß â ñ8š7& è, ê8á« (ó8 û Ì8$  ¾8š78 å, æ ç î, è8œ« $ ï ð ñ8Àó'ö8×ø'û8p8
ƒ, 8Ð  Œ,  Ž , 8œ« ,$   ˜ š Ù
8 ¨8׫ ® Õ ¯8$ ´8± & · ¹8º8À¾'Á8×Ã'Æ8ˆ Ñ:8Ò Ô(×8ÀÚ'Ý8×ß'â8Í ë Ï
8± ý þ8 debug_tupleÁ\ÿ Š œ8ÔL‹   , 8Ð $— 8 £ ¸ ¤8ë ° ± ·7...Á ¹8finishÁ À Á8 è, é ê ñ, ë8œ« $ ò ó ô8Àö'ù8ì'88
Š, Ž8Ð $ ,   œ, 8œ« ,—$  ž Ÿ8$, »8á« & Â8ÀÄ'Ç8ì'Ï8$ × á ù !8!8° û ý, þ8á« 4ÿ88À'Œ8ì'84 œ'8°% ¥+ ³ ´ »8Ý8 É8Š  Ð 8& Õ8À×'Ú8ÿ
Ü'ß8´á ä å8æ8 î$ ï8À¢ñ& ó õ8ö8Àú'ý8taskÁ$ÿ'ƒ 8k<…  Œ :8  ( 8À'˜ 8“¼ 'ž 8·$   ¤ 8'© 8° ±  ³  ï  8 É 8‰p Ñ  Ò  Ó 8š7 Ù 8Š  Þ  á 8À¢ß d<üH+E Trait aliases for Services that produce specific types of Responses.Á»„ú;Äô;$•<Ôt+¸m4Å+Ð Ã+p+Yˆœ\+<œJ+|N+”m4Í 4,‚Øk<DÌ
·$MœØ AsyncReadÁLd
AsyncWriteÁToÃÑ<&¬“œ†L8y{jlLXUW=?´€3ü½3ü™>; The [`MakeConnection`] trait is used to create transports.ÁØúüÜHE The goal of this service is to allow composable methods for creatingÁü¥GD `AsyncRead + AsyncWrite` transports. This could mean creating a TLSÁüíOL based connection or using some other method to authenticate the connection.ÁåÎìÑ¿ü½úÍ Ñ¿µËŒßÍì·Ë§Å >ºÅ .§Å JºÅ :ÍìÑ¿·Ëü¦(™Æ Ã™Æ ‘Æ )­Æ ½Æ ÍìÑ¿·Ë\†àÆ ÍìÑ¿·ËüÑD‚ØŠÇ üÞ6ŠÇ ƒØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
™Æ èÆ üå.‚Ç žÇ v°Ç WZü¦'ü÷*' The transport provided by this serviceÁT«T†üÔ-* Errors produced by the connecting serviceÁ,üÑCü—52 The future that eventually produces the transportÁ4ÖüëPü›KH Returns `Poll::Ready(Ok(()))` when it is able to make more connections.ÁTîÜÝÞ ÜÑ¿ ÝÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åޜ؞؟ØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
èÆ  ù
Ñ¿·ËÀ¢ü÷>üÁ1. Connect and return a transport asynchronouslyÁ|úß ßÑ¿·ËŠÇ  Š
Ñ¿·Ë$ê4•ü¹@¤åÍì¯Ë ¾ÎÅ &¯Ë·Ë¯Ë#%(*üþsåÍìÃË ƒ ÎÅ 4† &ÃË·ËÃË·Ë& ÃöÐ ÃË !! lnqsöÐ T›
, 
€¢

¶¤üÔ
OT×
àáâ àÃË áÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åâœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÃË·Ë â

ÃË·Ë
À¢*‘ü× = ã ãÃË·ËÃË·Ë ê 
!ÃË·Ë êØ‘„_+dc++<Yp”m4k Í "#×| ¤,"$4 ‚Ø"%ô¾ "&ô¾ "&k<È Ì"(· œØ")Ñ &"*¬\ ™Dw Œœ… €Äž qL¼ QSAC´Ü 5¬õ 4„ Ð å è
InfallibleÁTˆê+,k<.Ì+.·$7œØ+/Ñ<Q&+IL"<>-/´B!Œ·¤22ÐÏ ¼ÔË3
 üÿ$üÏ+( Create a new [`Shared`] from a service.ÁŒ¯ËÔË11
3¯Ë¥jÿ”üÈ7¤5¥656ÐÏ ÍÍì¥Ì ÐØ¯ËÔË789:;& &
& & &
:;HJDFl†D44¯ËT44…­4¿44úÌüÞPäåæ äÔË åÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åæœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÔË¥Ì&
4 ì4
:¯Ë¥Ì¹­£–üØ.ç çÔË¥ÌÔË¥Ì& 4 à4
;¯Ë¥Ì¨±7˜üÛA ü# Creates new [`Service`] values.Á± úüµM J Acts as a service factory. This is useful for cases where new [`Service`]ÁüƒL I values must be produced. One case is a TCP server listener. The listenerÁüÐF C accepts new TCP streams, obtains a new [`Service`] value using theÁü—Q N [`MakeService`] trait, and uses that new [`Service`] value to process inboundÁüé$ ! requests on that new TCP stream.ÁŽ úü’H E This is essentially a trait alias for a [`Service`] of [`Service`]s.Á <å=µ>=><§Å üÛÓ Í Ñ¿·ËÊÏ̃ ÎÅ  ÍìÊÏ <§Å KËä 6§Å WËä B?@ABCDEFG?@ABCDEFGÍìÑ¿·ËÊÏ? ·å ÍìÑ¿·ËÊÏ@\… Ýå ÍìÑ¿·ËÊÏAüÌO &‹æ ÊÏüÚ@ ‹æ ÊÏ& ¿å Ìë ‹æ ÊÏ&
åå œ† ƒæ I£æ ;·æ *Íæ ÍìÑ¿·ËÊÏB üæ ÍìÑ¿·ËÊÏCü˜ E ‚تç ü¥ 7 ªç ƒØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
‹æ „ç ü¬ / ¢ç Âç vÔç DFGEöùô÷ ü£"  Responses given by the serviceÁDÏ <<T… üÞ"  Errors produced by the serviceÁ,Š <<üÌN ü–1 . The [`Service`] value created by this factoryÁ<Ñ << ü¡- * Errors produced while building a service.ÁLØ <<ü˜ D üè+ ( The future of the [`Service`] instance.Á4 <<üú T üã M J Returns [`Poll::Ready`] when the factory is able to create more services.Áµ
úü½
R O If the service is at capacity, then [`Poll::Pending`] is returned and the taskÁü” F C is notified when the service becomes ready again. This function isÁüß * ' expected to be called while on a task.ÁŽ úü– + ( [`Poll::Ready`]: std::task::Poll::ReadyÁüÆ / , [`Poll::Pending`]: std::task::Poll::PendingÁTý èéê èÑ¿ éÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åêœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
„ç < ˆ
<
DÑ¿·ËÊÏ$
À¢
ü’; üÔ
9 6 Create and return a new service value asynchronously.Ád• ë ëÑ¿·Ëªç < ¢ <
EÑ¿·ËÊÏ ê ü¯R üÓC @ Consume this [`MakeService`] and convert it into a [`Service`].Á ú
# ExampleÁ Ü üÁ!  use std::convert::Infallible;Á¼ç  use tower::Service;Áüƒ!  use tower::make::MakeService;ÁÔ©  use tower::service_fn;ÁÈ úŒÐ  # fn main() {Á
# async {Á´ø  // A `MakeService`Áü“8 5 let make_service = service_fn(|make_req: ()| async {ÁüÐ< 9 Ok::<_, Infallible>(service_fn(|req: String| async {Áü‘$ ! Ok::<_, Infallible>(req)Á  }))Á  });ÁÖ úüÞ1 . // Convert the `MakeService` into a `Service`Áü”. + let mut svc = make_service.into_service();ÁÇ úÌÏ  // Make a new serviceÁüí2 / let mut new_svc = svc.call(()).await.unwrap();Á¤ ú¼¬  // Call the serviceÁüÈ= : let res = new_svc.call("foo".to_string()).await.unwrap();Á  # };Á<—  # }Á Ü  Ñ¿¸À<<ÍìÑ¿
FÑ¿·ËÊÏþŸüñW üíc ` Convert this [`MakeService`] into a [`Service`] without consuming the original [`MakeService`].ÁÕ ú Âó  Ü üû! æó ¼¡ ô ü½! ±ô Ôã Ûô  úŒŠ Šõ  ¤õ ´² ºõ üÍ< 9 let mut make_service = service_fn(|make_req: ()| async {ÁüŽ< œö üÏ$ âö  ÷ <ˆ £÷  úüœ1 À÷ üÒ, ) let mut svc = make_service.as_service();Áƒ úÌ‹ ¾ø ü©2 áø à ú¼è ¨ù ü„= Éù Æ úüÎ5 2 // The original `MakeService` is still accessibleÁüˆ? < let new_svc = make_service.make_service(()).await.unwrap();Á ú   ú  Ü  ì ìÑ¿ppÃt"uÀ"´ÔÁ Ÿ¶OýìÑ¿ÊÏ< ÿ <æû 
GÑ¿·ËÊÏ$„ ü° € žI¤JåKµLKIJLÉÍÑÍ& àÌd‰! ÍìàÌ ¸ ÍìÑÍÍìÖÍ&ÉÍÑÍìù ÍìÉÍ µ &àÌÖÍ„Ÿ! ÉÍnpjlfhü¶!ƒ žN¤OåPµQQOPÑ d" ⃠¾! óƒ 4Á! „„ <É! •„ ì‚" ¨„ »! ¹„ „¨" ÉÍRSTUVWX?@ABCDEXW9;fhkmprlÀ" DÅ" MMàÌÖÍ& Tá" ,æ" MMàÌÖÍ&
dü" <# MMàÌt# L—# MMÀÄ\±# 4¶# MMðÅüÏ#S TÒ# íîï íÉÍ îÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åïœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÉÍÑÍÖÍBM Ý# M
WÉÍàÌÑÍÖÍ$â# À¢æ¡üÖ$: dÙ$ ð ðÉÍÑÍÉÍÑÍÖÍCM æ$ M
XÉÍàÌÑÍÖÍ$ë$ ê’¢üì&" üÀ%< 9 Service returned by [`MakeService::into_service`][into].Áý% úü&@ = See the documentation on [`into_service`][into] for details.ÁÂ& úüÆ&% " [into]: MakeService::into_serviceÁ\÷& žZµ[[Z¨„ ƒ' Íì­Î<†' õÍ>hx7c\]/1+-<•' $•' "YYÉÍì¢' <¢' "YY­ÇüÄ'F ž_µ``_¨„ É' •Ž <Ì' ØÉÍ,„( õÍaÙa)+.0¼‘( ,”( ñ ñõÍõÍ^ š( ^
aÉÍ­Î$( ü”)P žcµddc¨„ ™) •Ž <œ) ¿cÉÍTÙ) õÍeÀce)+.0üë)8 î) òóô òõÍ ó c cˆ¢cµ
 `£c`àB¤GS
ô¦b ò) b
eÉÍ­Î$ó) ±å¤ü’+Œ žg¤håiµjgijh̃ d÷+ ⃠š+ óƒ 4+ „„ <¥+ •„ ìç+ ¨„ —+ ¹„ , ÄÎklmno& &
& & &
no/1\^acfhl¥, Dª, ffÉÍÑÍ& TÆ, ,Ë, ffÀÄ\á, 4æ, ffðÅü-O T- õö÷ õÄÎ öÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾å÷œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÄÎÑÍ&
f - f
nÉÍàÌÑÍÖÍ$ - À¢I¦ü™.2 $œ. ø øÄÎÑÍÄÎÑÍ& f ¡. f
oÉÍàÌÑÍÖÍ$¦. ê §üž0$ üþ.8 5 Service returned by [`MakeService::as_service`][as].Á·/ úü»/< 9 See the documentation on [`as_service`][as] for details.Áø/ úüü/!  [as]: MakeService::as_serviceÁL©0 ÓqžrµssqrÍìÄÏ ·0 ìä <º0 ÄÏÓ|É0 ppÃt"uÀ"´ÔÁ Ÿ¶OýÓÄÏÊÏ´ÔÁ Ÿ¶Oýtu³0 y{~|$É0 "pp ÓÄÏìÞ0 <Þ0 "ppæ¿ü€1R 8ùžwµxxùw¾› …1 ìä <ˆ1 ¿cÄÏTÇ1 ‹ÏyÀcy)+.0üÙ18 Ü1 úûü ú‹Ï û c cˆ¢cµ
 `£c`àB¤GS
ü¦v à1 v
y8ÄÏÊÏ$á1 ±¨üþ2Ž 8ýž{¤|å}µ~ý}{|~ÄÏ™Ð& Ä×då3 ÍìÄ× †3 Íì™Ð4‰3 Íì“Ð<3 &ÄÏ™ÐìÕ3 ¾› ƒ3 &ÄדЄû3 Öσ& &
& & &
ƒ@BŠŒˆl“4 D˜4 zzÄÏ™Ð& T´4 ,¹4 zz©Õ\Ï4 4Ô4 zz³×üû4O Tþ4 þÿ þÖÏ ÿÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ÖÏ™Ð&
z ‰5 z
8ÄÏÄיГÐ$Ž5 À¢ˆªü‡62 $Š6  ÖÏ™ÐÖÏ™Ð& z 6 z
ƒ8ÄÏÄיГÐ$”6 êU«üz%+W3ü©"+N3”Õ+C3F383;3-303t+„¦+
Future typesÁ4™+Índá+å üÄ)+l=ü. + Middleware for retrying "failed" requests.Á»þŒ‡=Ì=,£=¯Õì÷Ÿ
¬
š{TŽ 
Ÿ&4° ù™ttË © Œ±¬  Œƒk<Ž ÌŒ·$— œØŒÑ &Œ|0 üNK This module contains generic [backoff] utilities to be used with the retryÁTO layer.ÁZúü^MJ The [`Backoff`] trait is a generic way to represent backoffs that can useÁœ¬ any timer type.ÁÀúüÄ?< [`ExponentialBackoffMaker`] implements the maker type for Áü„NK [`ExponentialBackoff`] which implements the [`Backoff`] trait and providesÁüÓA> a batteries included exponential backoff and jitter strategy.Áúü™@= [backoff]: https://en.wikipedia.org/wiki/Exponential_backoffÁ<8 ˜ Ÿ   t<éÄcŽ‚ØÚ×­Ö€t$¯ÃcŠ·ÌÖaØ
Œßƒœöc\¨S„ºCE24¬›üß;8 Trait used to construct [`Backoff`] trait implementors.Á§Å ü›¾§Å §Å ÍìÑ¿´è˜İ ¼° Ô° ¬èü·,) The backoff type produced by this maker.Á<íü«,ü„" Constructs a new backoff type.Ád® Ñ¿İ  »
Ñ¿ŒµüÛHE A backoff trait where a single mutable reference represents a singleÁü¤JG backoff session. Implementors must also implement [`Clone`] which willÁüïEB reset the backoff back to the default state for the next session.Á<¿˜˜§Å üµ˜§Å §Å ššÍìÑ¿ü¯ !‚Ø–µ œ¼ –µ ƒØ޵ -§µ !¸µ šü¯ üÍKH The future associated with each backoff. This usually will be some sortÁl 
of timer.Á4´ ˜˜ü‰
+üÖ .+ Initiate the next backoff in the sequence.ÁdŒ
ƒ ƒÑ¿–µ ˜
˜
šÑ¿
ü…4£œœÍìøÐ Š
øÐµ¦Ðü¸üÀ&# Create a new `ExponentialBackoff`.Áëú # ErrorÁƒúü‹)& Returns a config validation error if:Áœ¹ - `min` > `max`Á„Ñ
- `max` == 0Á´æ - `jitter` < `0.0`ÁÄ - `jitter` > `100.0`Á¬ž - `jitter` is NaNÁ¿ÎØÎØøÐÊñ
øÐèqª¸óq´¸â ½¸­aǸüˆL£ŸŸ–¸ §¸ ÈØøÐ¦Ð ¡¡24žžÑü†+d‰ ¦Ð¦Ðž ž
¡øÐ$›üù"£££–¸ þ§¸ Ѥ¥ü¢  ÑÎØ¢ ª¢Ú‡ü×#<4Ú# ÑÎØÎØ¢ á#¢…ˆ$æ#Ö ÄÁüñ(;£§§–¸ ö(§¸ ¨)Ѩ©š©"$\³)4¸)¦¦“ŠüÚ)*dÝ) ÑѦ ê)¦
©øÐ$ï)üž+(šÒ«´«¤Í+<Ð+šÒªª
«üµ.ùÓ­Åc­üÛ.BÞ.ˆŠ ˆùÓ  c cˆ¢cµ
 `£c`àB¤GS
Ц¬ â.¬
­$ã.± é.üÚ/)ùÓtA üM,J A retry "budget" for allowing only a certain amount of retries over time.ÁN,úüR&,# # Why budgets and not max retries?Áy,úü}F,C The most common way of configuring retries is to specify a maximumÁüÄ[,X number of retry attempts to perform before giving up. This is a familiar idea to anyoneÁü c,` who’s used a web browser: you try to load a webpage, and if it doesn’t load, you try again.Áü„J,G If it still doesn’t load, you try a third time. Finally you give up.ÁÏ,úüÓU,R Unfortunately, there are at least two problems with configuring retries this way:Á©,úü­I,F **Choosing the maximum number of retry attempts is a guessing game.**Áü÷i,f You need to pick a number that’s high enough to make a difference when things are somewhat failing,Áüág,d but not so high that it generates extra load on the system when it’s really failing. In practice,ÁüÉa,^ you usually pick a maximum retry attempts number out of a hat (e.g. 3) and hope for the best.Á«,úü¯C,@ **Systems configured this way are vulnerable to retry storms.**Áüóa,^ A retry storm begins when one service starts to experience a larger than normal failure rate.ÁüÕf,c This causes its clients to retry those failed requests. The extra load from the retries causes theÁü¼ c,` service to slow down further and fail more requests, triggering more retries. If each client isÁü 
d,a configured to retry up to 3 times, this can quadruple the number of requests being sent! To makeÁü… k,h matters even worse, if any of the clients’ clients are configured with retries, the number of retriesÁüñ t,q compounds multiplicatively and can turn a small number of errors into a self-inflicted denial of service attack.Áæ ,úüê k,h It's generally dangerous to implement retries without some limiting factor. [`Budget`]s are that limit.ÁÖ
,ú
, # ExamplesÁé
,ú
, ```rustÁüù
!, use std::{future, sync::Arc};Á,úüŸ<,9 use tower::retry::{budget::{Budget, TpsBudget}, Policy};ÁÜ,ú´à, type Req = String;Á´÷, type Res = String;ÁŽ,úÜ’, #[derive(Clone, Debug)]ÁÄ®, struct RetryPolicy {ÁüÇ, budget: Arc<TpsBudget>,Á,í,úüñ1,. impl<E> Policy<Req, Res, E> for RetryPolicy {Áü£(,% type Future = future::Ready<()>;ÁÌ,úüÐa,^ fn retry(&mut self, req: &mut Req, result: &mut Result<Res, E>) -> Option<Self::Future> {ÁÔ², match result {ÁÔÍ, Ok(_) => {Áüè8,5 // Treat all `Response`s as success,Áü¡;,8 // so deposit budget and don't retry...ÁüÝ*,' self.budget.deposit();ÁĈ, NoneÁŒ¡,ܳ, Err(_) => {ÁüÏ6,3 // Treat all errors as failures...Áü†G,D // Withdraw the budget, don't retry if we overdrew.ÁüÎ:,7 let withdrew = self.budget.withdraw();Áü‰", if !withdrew {Áü¬$,! return None;Á¬Ñ,ç,úüë!, // Try again!Áü+,( Some(future::ready(()))ÁŒ¹,‹Ù ,
,ã,úüç?,< fn clone_request(&mut self, req: &Req) -> Option<Req> {Áì§, Some(req.clone())Á,¥Ý ,ëÔ ,Ü 4I °Òý!L‡,»Ñ”Þ,ü85 Transactions Per Minute (Tps) Budget implementationsÁ,»¤ ×I¤,°² AtomicIsizeÁ\kÝðµ®Dx¼À°¤,‹µ>°·Ú×­Ö°¸ñ­e°¹Œ$4ÖÒ°º> ¢Ä>ü>*ŒŽ{}jlt\¤´KlÏ<¤ûüß?< A Transactions Per Minute config for managing retry tokens.ÁŸúü£QN [`TpsBudget`] uses a token bucket to decide if the request should be retried.Áõúüù`] [`TpsBudget`] works by checking how much retries have been made in a certain period of time.ÁüÚ]Z Minimum allowed number of retries are effectively reset on an interval. Allowed number ofÁü¸A> retries depends on failed request count in recent time frame.ÁúúüþPM For more info about [`Budget`], please see the [module-level documentation].ÁÏúüÓ'$ [module-level documentation]: superÁL†‰ÕþØÚÙ'‘Ó¼½¾¿ÀÁÂì–T–°»»µ>µ>¤·>š7£>¸>poisonÁ£>¹>dataÁ£>Ë»™z™g—ÈÔ°»»Ì©°»»ž²Ž¡ˆˆ¢ˆl }.xÏ
¤]¤]V¦]Á‚]üß3ø¤”&é„ý°»»ÎØœí°»»šé ¬º °»»´Ž

°»» ‰ÕÄÅÆÈÉüçGüŽ IF Create a [`TpsBudget`] that allows for a certain percent of the totalÁÜÜ  requests to be retried.Áü úü„
HE - The `ttl` is the duration of how long a single `deposit` should be矄
30 considered. Must be between 1 and 60 seconds.Áü‰MJ - The `min_per_sec` is the minimum rate of retries allowed to accommodateÁüÛIF clients that have just started issuing requests, or clients that doÁü©)& not issue many requests per window.Áü×JG - The `retry_percent` is the percentage of calls to `deposit` that canÁü¦DA be retried. This is in addition to any retries allowed for viaÁüï0- `min_per_sec`. Must be between 0 and 1000.Á¤úü¬LI As an example, if `0.1` is used, then for every 10 calls to `deposit`,ÁüýEB 1 retry will be allowed. If `2.0` is used, then every `deposit`ÁÜÇ allows for 2 retries.ÁîÎØ‰ÕÃÃ
ÄttlÁò min_per_secÁ\
retry_percentÁl“„¯ ° ‰Õà ¹ Ã
Å´“&&°Œ Œ‰Õà š&Ã
Æ$&4Å'Æ<closure_kind>ÁÇ<closure_signature>ÁÇ<upvars>ÁÇÇÆÇ šé ÌÔ)×)° ‰ÕÃ Û)Ã
È$Ü)amtÁâ)üÈ*%<Ë*°Ž މÕà Ó*Ã
É$Ô*€õ Ú*Ìâ,‰ÕËÌÓÔËÌŒ‚-<…- ‰ÕÊ -Ê
Ë$Ž-ÔÇ-DÊ- ‰ÕÊ Ó-Ê
Ì$Ô-Ô˜.‰ÕδΤ¹.<¼.‰ÕÍÍ
Îì’/‰ÕÐÀcÐü¶/8¹/ ‰Õ  c cˆ¢cµ
 `£c`àB¤GS
¦Ï ½/Ï
Ð$¾/± Ä/¬û,ƒ
,ü“P,úä ä,úüè&,# [module-level documentation]: selfÁ4™,ÒÒ§Å üÅ,Ò§Å §Å  ÓÔÓÔÓÔ”ˆ,ü¦H,E Store a "deposit" in the budget, which will be used to permit futureÁ„ó,
withdrawals.Á<, Ñ¿Ò ,Ò
ÓÑ¿$”,Ü·,ü H,E Check whether there is enough "balance" in the budget to issue a newÁ, retry.Áü,úü„.,+ If there is not enough, false is returned.ÁDº, Ñ¿Ò Ã,Ò
ÔÑ¿,tQ 
˜¦ 4Y © µ ç ô þ Ÿ&4
ùÕ׿{,&
Ÿ
ÕØ±¬ \D
ÕÙ4b
‚ØÕÚ´x
„¾ÕÛÈZ,
¥‚ÕÝk<”
ÌÕÞ·$
œØÕßÑ
&Õà,
ÂÄ®°ì2
 œU
ln
€L
qs_aMO´¨
?üç
¡â¤ãµääâãÍìâÖ ì
⃠ï
ìä 
ùâÖÊÏ¥”³”ü¦&
&àÌÊÏ„Õ
œÖåKMPRUWüí
û
…’±ÚŒ”œÖááæêÇtÓÔþÝÔìçÔüƒ Š
¡ç¤èµéèçé—‚
ˆ
âƒ
ìä
¸‚
üÍ &
Õ‚
„ü
œÖêëƒØ„Øë=?BDGI\”
4™
ææ›°üÆ I
˜„¾„¾´†¾ ˜X$]È=„kt• œÖ ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾å˜œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃœÖƒØæ Ø
æ
ëâÖàÌÊÏ¥áÀ¢¯áLa ,e Œ
æ{, Ÿ
ìí£ç
,# ìîd )” ¬• ¡ðð—‚
š ÞÙñ 
üë# ü±5 2 Creates a new [`RetryLayer`] from a retry policy.Áø âÖÞÙïï
ñâÖŒ&Žéü¸9 ¡ó¤ôôó—‚
½ ⃠À ØâÖ ÞÙõöö2479  òò±Úü™,   ÞÙàÌÞÙàÌò ¢ ò
öâÖàÌ ¥jPëTl 4p Œù4‚Ø÷øœìæ ü@= A "retry policy" to classify if a request should be retried.Á[úl_Âó mú<qÜ ìy use tower::retry::Policy;Á¤— use std::future;Á¬ú´°³Ó ´ÇÒÓ ÞúÜâ struct Attempts(usize);Áþúü‚.+ impl<E> Policy<Req, Res, E> for Attempts {Áü±(ÁÕ ÚúüÞaÿÕ ÔÀéÖ ÔÛŒ× üö8°× ü¯(% // so don't retry...ÁÄØêØ ”ñ },ÁÜ„¥Ù ü 6ÊÙ ü×=: // But we limit the number of attempts...Áü•# if self.0 > 0 {Áü¹%" // Try again!Áüß$! self.0 -= 1;Áü„/, Some(future::ready(()))Áä´ } else {ÁüÑ=: // Used all our attempts, no retry...Áä NoneÁ¬¬øÛ ŒÂ‹Ù Ý ¥Ý ìúüð?ÄÝ ì° ŒÞ ¥Ý ëÔ Ü ù­&ú¸&ûüúüûù§Å üæ ÒÍìñƒ÷ Íì¸&ü Íìõã
ù§Å O§Å þÿýþÿÍìÑ¿ñƒú•
õãýüÅ
!‚ØÇ–
œÒ
Ç–
į
¿–
-ä–
!õ–
þÿ·¹±³­¯üÅ
üŠ
63 The [`Future`] type returned by [`Policy::retry`].Á4Ê
ùùüÀXüì
<9 Check the policy if a certain request should be retried.Á­ úüµ IF This method is passed a reference to the original request, and eitherÁüƒ KH the [`Service::Response`] or [`Service::Error`] from the inner service.ÁÓ úüÛ <9 If the request should **not** be retried, return `None`.Áœ
úü¤
LI If the request *should* be retried, return `Some` future that will delayÁüõ
JG the next retry of the request. This can be used to sleep for a certainÁüÄLI duration, to wait for some external condition to be met before retrying,Áü•HE or resolve right away, if the request should be retried immediately.ÁâúÄê ## Mutating RequestsÁúüLI The policy MAY chose to mutate the `req`: if the request is mutated, theÁüàHE mutated request will be sent to the inner service in the next retry.Áü­HE This can be helpful for use cases like tracking the retry count in aÁ header.ÁŠú¼’ ## Mutating ResultsÁ®úü¶EB The policy MAY chose to mutate the result. This enables the retryÁü€KH policy to convert a failure into a success and vice versa. For example,ÁüÐGD if the policy is used to poll while waiting for a state change, theÁüœJG policy can switch the result to emit a specific error when retries areÁ exhausted.Áþúü†A> The policy can also record metadata on the request to includeÁüÌHE information about the number of retries required or to record that aÁü™0- failure failed after exhausting all retries.ÁÎúüÖ30 [`Service::Response`]: crate::Service::ResponseÁüŽ-* [`Service::Error`]: crate::Service::ErrorÁ,Úœ šÑ¿ ñƒ œÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
ú•
õãÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÇ–
ù Éù
þÑ¿ñƒú•
õã’¬Ô ü€6üžFC Tries to clone a request before being passed to the inner service.ÁéúüñIF If the request cannot be cloned, return [`None`]. Moreover, the retryÁü¿<9 function will not be called if the [`None`] is returned.Álƒž Ñ¿ žñƒó¿ù ù
ÿÑ¿ñƒú•
õã$–’¬œ¼ ”A¤¢ ‰Aä½ ~Aìß oAL bAeARAUA´¢ FA´æ ¡¤ŠŠ—‚
ë âƒ î ±ÚŒŽ!#üÁ
/ üƒ
9 6 Retry the inner service depending on this [`Policy`].ÁÎ
âÖà̱ڈˆÂÖŒ&ð¥jðÜÍ ü ( % Get a reference to the inner serviceÁ<Ô Ÿ Ÿ±Ú Ÿà̈ Ü ˆ
ŒâÖàÌ üÁ# üŒ0 - Get a mutable reference to the inner serviceÁ<È    ±Ú  à̈ Ð ˆ
âÖàÌ äÀ üŒ/ , Consume `self`, returning the inner serviceÁTÇ ±Úà̈ˆ
ŽâÖàÌ$òüý ¡¤µ—‚
 ⃠ ìä  ¸‚
ü¿& ߊ
 Õ‚
„ö ØàÌ,‰ ±Ú& &
& & &
gilnqsl D› ¥”  ³”  œÖü„O T‡ ¡¢£ ¡±Ú ¢ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾å£œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
±ÚÊÏ&
  
âÖàÌÊÏ$— À¢ÅòüØ4  ¤ ¤±ÚÊϱÚÊÏ&  à 
âÖàÌÊÏ Çtö|¤>ü2/ Middleware that applies a timeout to requests.Á3úü7PM If the response does not complete within the specified timeout, the responseÁ¤ˆ will be aborted.Á»©(œŽ>܈><¬>¢µòƒ¿™ttÿÛ
˜Àk<ŸÌ˜Â·œØ˜ÃÚ×­Ö˜ÄÑ&˜Å|
Error typesÁÔ
Õ
¸(,
×"
¤,œ
(*d€
óÛžÔ¹
ü“!
 Construct a new elapsed errorÁÆ
óÛ
žìó
óÛ Åc ü—8
š
¥¦§ ¥óÛ ¦ c cˆ¢cµ
 `£c`àB¤GS
§¦Ÿ ž
Ÿ
 
± ¥
ìþ
óÛ˜¦ Û
â
<$Ô
¢£Õ
¢£±¬ \C¢¤4g‚Ø¢¦´x„¾¢§k<ˆÌ¢©·$‘œØ¢ªÓi¢«¬ªì1Tt_yDshüT1Z\HJ”Ÿ9̦¥­­ÍìíÌ «ÍÜ® 
üÆ4ÔíÌ“ŠÍܬ¬
®íÌÅýÕšýü±t°¥±²°±²Á؃ؾþ¬ðÆÚ ¹Íì‘æ ¼‚ØÁØìéÍìÁØ æ‘æž²Ž¡ˆˆ¢ˆl }.xϾ Ììé¬ïݳ´ƒØ„Ø´ÄÆÀ¯¯Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
¥ÌÿÁ
üÛI¨©ª„¾„¾´†¾ ˜X$]È=„kt• ¨ïÝ ©ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åªœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤Ãï݃د í¯
´Áإ̑æ¦À¢°˜ƒ¨‚< µÚ×D#­Öµ·£ç
,>µ¸t/”1ŒÔ´Þºü•+üì$! Create a timeout from a durationÁ¢ÎØ´Þ¹¹ǧ
©(8üí!¤¼¼ÐÏ ò´Þ½¾¾d•»»Ôßüµ,« «´Þ¯Ë´Þ¯Ë» ¾»
¾¯Ë$¿¥jÝÌÑäñtL“gjWZœ³J´Ì;”ý¥ÇÇò¿
„ßÈÉÊËü¸5ì– Creates a new [`Timeout`]ÁÅíÌÎØ„߯Æ
ÈíÌš7! ©(+ ÜËüž(ö¬
¬ ¬„ß ¬íÌÆ ÚÆ
ÉíÌü½#üˆ0‘®
­ ­„ß ­íÌÆ ÌÆ
ÊíÌäºü†/³¯
„ßíÌÆÆ
ËíÌ üõt¤ÍµÎÍÎÐÏ ú•Ž &¯Ë­Î„³æ—™ÿÁ
¬ÓÔßÏÐÑÒÓ& &
& & &
ÒÓ]_bdÌ̤ T‘ ,– ÌÌÿÁ
ÌÌÉ üá O®¯° ®Ôß ¯ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾å°œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
Ôß­Î&
Ì ï Ì
ү˭ÎÀ¢
üà 4 ± ±Ôß­ÎÔß­Î& Ì è Ì
ӯ˭ΠÇtdÎ>üK)H Various utility types and functions that are generally used with Tower.Á»·+„»>ĵ>$Ö>Õñ¦Û¼Úþ£Åê¼Ù‡ À × €
Ç
É
Ñ
ö
ù‚)š
͆d„)Í
É1¤¨)Á
í–4ľ)ëž
î‹/DØ)Ÿ
ìð6Tâ)š 
ï¹9„î)Å¡
ðä<|˜)ý¢
Š@œ¿)²£
¸‘)÷¤
äItý) ã¦
Ü—l)Ú§
…™)ï©
Й)øª
÷§)Ù¬
Ũ)â­
ÃT€)·¯
’ž)À°
ãž)ɲ
³Ÿ„¾)Ò³
°£)µ
þ£)š
€©<)è·
‚±)ë¸
È,¸)¨ º
Œ[d¿)»
ç]Tß) Ç ½
·±)ñ¾
ú±$)ùÀ
òLˆ)Á
Ó‡)Ã
ºÐŽ„º)ÊÄ
»)‚ØÔÅ
‹‘Dÿ)ÔÆ
à dM)DQ)ÔÍœ¡ TryFutureÁL(!ÕÖì40)ÕØ TryFutureExtÁd8ÕÙ×P¤,ÕÚ4f‚ØÕÛ´|„¾ÕÜk<‘ÌÕÞ·œØÕߣç
ÕàÑ&Õá¼Úd!Ìα³DK¤œY•lr„L…vxdf”¥U´½FüŠ@¤ãäãäÐÏ Íì©Ù ¿c¯ËT¿žàåÀcå4602üÑ8Ô²³´ ²žà ³ c cˆ¢cµ
 `£c`àB¤GS
´¦â Øâ
å¯Ë©Ù±¸üÙ3©,ç³,èŸééçèÍìöáÞÍìüáâÍì‚â ñ(!üáÇáê<>8:46ü“X¡î­Çáææ
êöáüá‚âš7áüŽ G©,ì³,íŸîíîì³à
Äà
Õà
¦ æà
L› ÇáïÀcï+-0257üÜ Bß µ· µÇá  c cˆ¢cµ
 `£c`àB¤GS
·¦ë ã ë
ïöáüá‚â±/ü ˆ©,ñ³,òŸóòñó³à
 Äà
 Õà
¨ æà
L ‚Øî­4‘ ÇáôõƒØ„ØõEGJLOQ  ðð¸üŒ
I$
¸¹º„¾„¾´†¾ ˜X$]È=„kt• ¸Çá ¹ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åºœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÇáƒØð ž
ð
õöáüá‚â³À¢½Ĥ¤÷ø÷øÐÏ ©ïÝ
¬žàùúüì(üÃ$! Creates a new `AndThen` service.Áù¯Ë©Ùžàöö
ù¯Ë©Ùš77±Aü‰%ü¿?< Returns a new [`Layer`] that produces [`AndThen`] services.Áƒúü‹KH This is a convenience function that simply calls [`AndThenLayer::new`].ÁÛúüã! [`Layer`]: tower_layer::LayerÁ,©Ùùâöö
ú¯Ë©Ù±uüÕ¹¤üýµþá-ÿÿýþü
©Ù¯ËÊÏ& ˜"ÁîïÝ
Ýìä ÍìÁé&¯ËÊÏ„žæÿÀÁ„¾–"©Ùñí
Ô×ÐÏ ÚØ©Ù(!ÁL„žàƒ& &
& & &
ƒMO¸»½·¹l•ûûÁ("T²ûûÁûûîÈü„OT‡»¼½ »žà ¼ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾å½œØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
žàÊÏ&
û û
ƒ¯Ë©ÙÊÏÁ$—À¢!ü—4¾ ¾žàÊÏžàÊÏ& û Ÿû
¯Ë©ÙÊÏÁÇt=$¼°ãÁ
µ¦â 
ôüüÎ)& Creates a new [`AndThenLayer`] layer.ÁÁئâ
ÁرR%üÁ;¤ŠŠÐÏ ÆïÝ
Éðî
ù⌌*,/1<ˆˆˆžàü¦*¿ ¿ùâ¯Ëùâ¯Ëˆ ¯ˆ
Œ¯Ë©Ùš7²&L[),_)ÔŽ¸âŒ¹‹/D°-ìÉ1¤Ç-Áí–4Äï-ëîð6T“-šï¹9„§-ÅðL-,-ð6TšŽ 
ï×'¤,ŽK2†JŽíhDJ 'Ž£ç
,TŽÑ<o&޼~!giL,[\<LN<>´`/ü¯
üy# A boxed [`Layer`] trait object.Áúü¡VS [`BoxLayer`] turns a layer into a trait object, allowing both the [`Layer`] itselfÁüøLI and the output [`Service`] to be dynamic, while having consistent types.ÁÅúüÉLI This [`Layer`] produces [`BoxService`] instances erasing the type of theÁü–2/ [`Service`] produced by the wrapped [`Layer`].ÁÉúÂó Ûúüßda `BoxLayer` can, for example, be useful to create layers dynamically that otherwise wouldn't haveÁüÄC@ the same types. In this example, we include a [`Timeout`] layerÁüˆA> only if an environment variable is set. We can use `BoxLayer`ÁüÊDA to return a consistent type regardless of runtime configuration:Áú<“Ü ä› use std::time::Duration;Áü¸C@ use tower::{Service, ServiceBuilder, BoxError, util::BoxLayer};Áüúü€DA fn common_layer<S, T>() -> BoxLayer<S, T, S::Response, BoxError>Á whereÁüÏ'$ S: Service<T> + Send + 'static,Áü÷" S::Future: Send + 'static,Áüš+( S::Error: Into<BoxError> + 'static,ÁüÌ+( let builder = ServiceBuilder::new()Áüø$! .concurrency_limit(100);Á úü¡ 1. if std::env::var("SET_TIMEOUT").is_ok() {ÁüÓ  let layer = builderÁüó 1. .timeout(Duration::from_secs(30))Áô¥
 .into_inner();ÁÄ
úüÈ
 BoxLayer::new(layer)Á„é

} else {Áüú
ƒ„üš $! .map_err(Into::into)Áô¿ æ„Þ úüâ š… ¥Ý , ëÔ <“ Ü  úüŸ !´ë
üÁ '$ [`Service`]: tower_service::ServiceÁüé %" [`BoxService`]: super::BoxServiceÁü
 [`Timeout`]: crate::timeoutÁ
›/˜¥¦š˜šÍìåãÃ
ÆÚ Ç
Íìïã Ê
…–
Í
·ãçâŽkí©ÈTœ?ADF@BEGüÖ
P
ކJ†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdèåãåã¸Ï Ììéü«'›/ž¥Ÿ¦ ¡ž ¡Ÿω°ÆÚ ´è‰ ·…–
º·ã¢#%(*-/24üüãôÙ Create a new [`BoxLayer`].Áƒ§Ï·ã££ Íì§Ï §ÏåãÌì§Ï §Ï§Ï&ºÕ¥Ìüî#ºÕ¥Ì& ïãºÕ¥Ì&
õãL‡ÌìºÕ$”ºÕ<›ÌìºÕ¥Ì& ¦<×
¢åã¥Ìïãõã§Ï„Ó )èꄃ¢¶ó ¤Ïó ¤íó ¤¤¢•Ðüº5›/¦¥§¦¨©¦§©¨ω¿ÆÚ Ãè‰ Æ…–
ɷ㪫«2479<>AC¥¥¸ÏüŸ+À À·ãåã·ãå㥠¨¥
«åã¥Ìïãõãš7,üö1›/­¥®¦¯°­¯°®ωûÆÚ ÿè‰ …–
·ã±Ù±+-0257:<¼®Á Á·ã·ã¬ ·¬
±åã¥Ìïãõãü–6›/³¥´¦µµ´³ωÆÚ Ÿè‰ ¢…–
¥·ã·Àc·+-0257:<üÓ6ÖÂÃÄ Â·ã àc cˆ¢cµ
 `£c`àB¤GS
Ħ² Ú²
·åã¥Ìïãõã×ý-| -\-Áä<|ý¸¹¢
×,¤,¸»K7†J¸¼íhDO '¸¾£ç
,Y¸¿Ñ<t&¸Àäz&giL1[\ALN<>´e/ü­,ü~+( A [`Clone`] + [`Send`] boxed [`Layer`].Áªúü®b_ [`BoxCloneServiceLayer`] turns a layer into a trait object, allowing both the [`Layer`] itselfÁü‘LÕú
ÞúüâQN This [`Layer`] produces [`BoxCloneService`] instances erasing the type of theÁü´2ü
çúüëSP This is similar to [`BoxLayer`](super::BoxLayer) except the layer and resultingÁü¿! service implements [`Clone`].ÁáúÂó óúü÷pm `BoxCloneServiceLayer` can, for example, be useful to create layers dynamically that otherwise wouldn't haveÁüèhe the same types, when the underlying service must be clone (for example, when building a MakeService)ÁüÑfc In this example, we include a [`Timeout`] layer only if an environment variable is set. We can useÁü¸VS `BoxCloneService` to return a consistent type regardless of runtime configuration:Áú<“Ü ä›Úÿ
ü¸30 use tower::{Service, ServiceBuilder, BoxError};Áüì=: use tower::util::{BoxCloneServiceLayer, BoxCloneService};Áª ú¬´  # struct Request;Á´Ê  # struct Response;Á¬á  # impl Response {Áü÷ # # fn new() -> Self { Self }Á<
 ú £
úü§
PM fn common_layer<S, T>() -> BoxCloneServiceLayer<S, T, S::Response, BoxError>Á
¦ü‚ /, S: Service<T> + Clone + Send + 'static,Áü² "êüÕ +–‚, Ê‚ü‡ +Ù‚ü³ $ŽƒØ úüÜ 1ȃüŽ
ƒ„ü®
1¬„ôà
æ„ÿ
úüƒ,) BoxCloneServiceLayer::new(layer)Á„°Ã…üÁƒ„üá$ë…ô†æ„¥úü©,‘¥¥Ý ëÔ æúüê@= // We can clone the layer (this is true of BoxLayer as well)Áü«+( let boxed_clone_layer = common_layer();Á×úüÛ1. let cloned_layer = boxed_clone_layer.clone();Áúü‘IF // Using the `BoxCloneServiceLayer` we can create a `BoxCloneService`ÁüÛnk let service: BoxCloneService<Request, Response, BoxError> = ServiceBuilder::new().layer(boxed_clone_layer)ÁüÊ+( .service_fn(|req: Request| async {Áüö.+ Ok::<_, BoxError>(Response::new())Á });Á±úüµ,) # let service = assert_service(service);Áâúüæ)& // And we can still clone the serviceÁü)& let cloned_service = service.clone();Á­¡üÀ*' # fn assert_service<S, R>(svc: S) -> SÁüë! # where S: Service<R> { svc }Áú<‘Ü úü!´ë
ü¿'üç%²‡üᇤ¸›/¥æÄÅÅÃÄÂωÍÆÚ Ñè‰ Ô…–
לäuµ=ˆBêõRÆ68;=@BEGüàU¸ÁÁ†J†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdèåãåãÿÝ Ììéüº3›/ȥɦÊËÉÊÈËω¿ÆÚ Ãè‰ Æ…–
ÉœäÌ#%(*-/24ü£ëüô*' Create a new [`BoxCloneServiceLayer`].Áª§ÏœäÇÍÍÇ
ñ ®‚ޖާ޷ŽÂŽü•#ÖŽìŽØºÕž$ÿ¹<†
Ìåã¥Ìïãõã§Ï„ÓH0„²Ì¶ó ÎÏó Îíó ÎÎÌÞÞüîA›/ХѦÒÓÐÒÓÑωóÆÚ ÷è‰ ú…–
ýœäÔÕÕ2479<>ACÏÏÿÝüä+Å ÅœäåãœäåãÏ íÏ
Õåã¥Ìïãõãš703ü»=›/ץئÙÚÙ×ÚØωÀÆÚ Äè‰ Ç…–
ÊœäÛÙÛ+-0257:<¼ÿ,Æ ÆœäœäÖ ˆÖ
Ûåã¥Ìïãõã$‰üçB›/Ý¥Þ¦ßàßÝàÞωìÆÚ ðè‰ ó…–
öœäáÀcá+-0257:<ü°6³ÇÈÉ Çœä È c cˆ¢cµ
 `£c`àB¤GS
É¦Ü ·Ü
áåã¥Ìïãõã×5¤-„ -ë×
¤,âäK†JâåíhD- 'âç£ç
,7âèÑ<R&âéŠ@œm²âê£
z|Ln\_aOQ´CBü` 5ü­0üƒ63 A [`Clone`] + [`Send`] + [`Sync`] boxed [`Layer`].Áºúü¾fc [`BoxCloneSyncServiceLayer`] turns a layer into a trait object, allowing both the [`Layer`] itselfÁü¥LÕú
òúüöUR This [`Layer`] produces [`BoxCloneSyncService`] instances erasing the type of theÁüÌ2ü
ÿúüƒkh This is similar to [`BoxCloneServiceLayer`](super::BoxCloneServiceLayer) except the layer and resultingÁüï  service implements [`Sync`].Áúl”Âó ¢úü¦tq `BoxCloneSyncServiceLayer` can, for example, be useful to create layers dynamically that otherwise wouldn't haveÁü›vs the same types, when the underlying service must be clone and sync (for example, when building a Hyper connector).Áü’f¨žüù_\ `BoxCloneSyncServiceLayer` to return a consistent type regardless of runtime configuration:ÁÙúÜ äåÚÿ
ü‚ 3ž ü¶ EB use tower::util::{BoxCloneSyncServiceLayer, BoxCloneSyncService};Áü ú,€
­¡¬†
»¡´œ
Ù¡¬³
ø¡üÉ
#—¢
 ú õ
úüù
TQ fn common_layer<S, T>() -> BoxCloneSyncServiceLayer<S, T, S::Response, BoxError>Á ¦üØ 63 S: Service<T> + Clone + Send + Sync + 'static,Áü "êü² +–‚ Ê‚üä +Ù‚ü
$Žƒµ
úü¹
1ȃüë
ƒ„ü‹1¬„ô½æ„Üúüà0- BoxCloneSyncServiceLayer::new(layer)Á„‘Ã…ü¢ƒ„üÂ$ë…ôçæ„úüŠ0íÈ¥Ý ëÔ ËúüÏ@½¦ü0- let boxed_clone_sync_layer = common_layer();ÁÁúüÅ;8 let cloned_sync_layer = boxed_clone_sync_layer.clone();Áúü…QN // Using the `BoxCloneSyncServiceLayer` we can create a `BoxCloneSyncService`Áü×ro let service: BoxCloneSyncService<Request, Response, BoxError> = ServiceBuilder::new().layer(cloned_sync_layer)ÁüÊ+Ú©üö.ªƪ±úüµ,çªâúüæ)©«ü)Ü«­¡üÀ*œ¬üë!Ьú<‘Ü úü!´ë
ü¿'üç%²‡üá‡ĸ›/ì¥í¦îïìíïîωÑÆÚ Õè‰ Ø…–
ÛûäPOTÖô*ð68;=@BEGüäYâëë†J†JK‰Jµ 7ŠJÔÐ7‹J¤7·0ØQdèåãåã›ì ÌìéüÂ7›/ò¥ó¦ôõóõôòωÇÆÚ Ëè‰ Î…–
Ñûäö#%(*-/24ü³òü€.+ Create a new [`BoxCloneSyncServiceLayer`].Áº§Ïûäñ÷÷ññ ¾‚ޖާŽ$·ŽÂŽü¥#ÖŽìŽ ºÕƒ´ž$¹<
öåã¥Ìïãõã§Ï„Óe7„Éö¶ó øÏó øíó øøöûìü‰E›/ú¥û¦üýüúýûωŽÆÚ è‰ …–
˜ûäþÿÿ2479<>ACùù›ìü‡+Ê Êûäåãûäåãù ù
ÿåã¥Ìïãõã$‘š7M:üÞA›/¥¦ƒƒωãÆÚ çè‰ ê…–
íûäÙ+-0257:<¼¦Ë Ëûäûä ¯
åã¥ÌïãõãüŽ F›/¥ˆ¦ŠˆŠωÆÚ è‰ š …–
ûäÀc+-0257:<üÛ 6Þ ÌÍÎ Ìûä Í c cˆ¢cµ
 `£c`àB¤GS
Φ â 
åã¥Ìïãõã×6<D2-$6-šŸ™eT Ñ
ŒÇ íhD) 'ŒêÏ<3ŒÑ<P&Œàÿ\l/
Œ×ƒ¤,Œ‚ØŒ´°„¾Œk<ÀÌŒ˜·œØŒŒÔ\Áñ³´A¤Ì^•D~Œt—|D«küŒ1]_KMôá
üÔ*' A boxed `Service + Send` trait object.ÁÿúüƒMJ [`BoxService`] turns a service into a trait object, allowing the responseÁüÑJG future type to be dynamic. This type requires both the service and theÁüœ# response future to be [`Send`].ÁÀúüÄLI If you need a boxed [`Service`] that implements [`Clone`] consider usingÁü‘63 [`BoxCloneService`](crate::util::BoxCloneService).ÁÈúüÌOL Dynamically dispatched [`Service`] objects allow for erasing the underlyingÁüœRO [`Service`] type and using the `Service` instances as opaque handles. This canÁüïOL be useful when the service instance cannot be explicitly named for whateverÁ\¿ reason.ÁËúóÑ ÞúÜ Üê use std::future::ready;Áü†! # use tower_service::Service;Áü¨0- # use tower::util::{BoxService, service_fn};ÁüÙKH // Respond to requests using a closure, but closures cannot be named...Á¬¥ # pub fn main() {Áü»0- let svc = service_fn(|mut request: String| {Áüì&# request.push_str(" response");ÁÔ“  ready(Ok(request))Á£÷ úüº GD let service: BoxService<String, String, ()> = BoxService::new(svc);Á¤‚
 # drop(service);Á,—
ëÔ <
Ü ¥
úü©
±¢ ¼É
 [`Rc`]: std::rc::RcÁ
¥¦œœò¿
÷
Íì‹æ ú
ÁÁ
ý
Ùå6Oˆž79358:ü† i,† Œšš/
/
/àÿ/ˆ/ Ÿ?ºeB^‘ž²Ž¡ˆˆ¢ˆl }.xÏ&íÌ& íÌ‹æ&
íÌ‘æ& íÌ„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃ØÙûÌìéÌì餆
L
Œ¥ ¡ ¡ò¿
Íì ˜
„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃ØÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
íÌ–ðÌìéùûóõüÒ
!¥£¦¤¥¥£¤ò¿
×
ªì Ú
ÁÁ
Ý
Ù妩 #%(*ü•œ¢úÙ墤§§¢Íì¢ú  &¢úíÌüÊ#¢úíÌ& ‹æ¢úíÌ&
‘æÌì¢ú¢úÌìÊú$“Êú¦„š7p?¦¶ó ¨Ïó ¨íó ¨¨¦¬úüÖüÏFC Returns a [`Layer`] for wrapping a [`Service`] in a [`BoxService`]Á middleware.Á®úܶÙ¢ Ž…¢¤ªª¢ìó ãýóü—#‘ô§ô½ôÎôÙôêô
©íÌ‹æ‘æ¢úRTü›0¥¬¦­®®¬­ò¿
 ªì £ÁÁ
¦Ù寰±²³& &
& & &
²³>@CEHJ««‹æ««‘æ4‚««¹îü¡EÏÐÑ ÏÙå ÐÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åÑþ†« ¯«
²íÌ‹æ‘æÀ¢¯Cü 1Ò ÒÙåíÌ¹î« ¨«
³íÌ‹æ‘æÇtEüˆ0¥µ¦··µò¿
ªì ÁÁ
Ùå¸Àc¸#%(*-/ü¿6ÂÓÔÕ ÓÙå Ô c cˆ¢cµ
 `£c`àB¤GS
Õ¦´ Æ´
¸íÌ‹æ‘æ×<FT<-4@-ÅÊÖíhD '¹»êÏ<¹¼Ñ<9&¹½×L¤,¹¾4h‚عÀ´y„¾¹Ák<‰Ì¹Ã·$’œØ¹Ä\¥§—´*ˆDGzUt`nDt]üU1OQ=?üÃ$ü%" A boxed [`Service`] trait object.Á„ΥƦÇÈÈÆÇò¿
ߪì âÁÁ
åææ»4²ûÿó«É.0358:üîS¹ÅÅž²Ž¡ˆˆ¢ˆl }.xÏ&íÌ& íÌ‹æ&
íÌ‘æ& íÌ„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃ØÙûééÔß¹¥ËÌÌËò¿
ôŽð ÷„¾„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃آñé˜üä'¥Î¦ÏÐÐÎÏò¿
éªì ìÁÁ
ïææÑÓ #%(*ü­´¢úææÍ¤ÒÒÍìó ¸ýóüâ#‘ô§ôÎôêôÄ•š7I8:üœü–YV Returns a [`Layer`] for wrapping a [`Service`] in an [`UnsyncBoxService`] middleware.ÁôúÜüÙ¢ ¬–ͤÔÔÍìó ©ýóüÝ#‘ô§ôÎôêô
ÓíÌ‹æ‘æ¢úBDüÓ 6¥Ö¦×ØÖØ×ò¿
Ø ªì Û ÁÁ
Þ ææÙÚÛÜÝ& &
& & &
ÝÜ>@CEHJl
D•
ÕÕ‹æ

ÕÕ‘æ

ÕÕäƒüå
E
Öר Öææ ×ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åØþ†Õ ó
Õ
ÜíÌ‹æ‘æ
À¢ŒKüÚ 7 Ù ÙææíÌäƒÕ â Õ
ÝíÌ‹æ‘æ ÇtNLü¾ 6¥ß¦àáàßáò¿
à ªì Æ ÁÁ
É ææâÀcâ#%(*-/üû 6þ ÚÛÜ Úææ Û c cˆ¢cµ
 `£c`àB¤GS
ܦÞ
Þ
âíÌ‹æ‘æ
×MMüó
u¤äµååäÐÏ ø
•Ž
Ï
„µ¯Ë·Ÿ­ææçèéê& &
& & &
éêTVY[ã㤠T,•ãã—™ãㄾ„¾´†¾ ˜X$]È=„kt•ž²Ž¡ˆˆ¢ˆl }.xς؃ØÖŸéüüOTÿÝÞß Ý­æ ÞÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åߜ؞؟ØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÖ¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
­æ­Î&
ã Šã
é¯Ë­Î$À¢Nüû4à à­æ­Î­æ­Î& ã ƒã
ê¯Ë­ÎÇtðO$-|©-Püº!-wPüÝ*-mP„-bPÄŸ-WP|f)\j)Ôýþš™eT Ñ
ñò§7L1( ñó×K¤,ñõk<[Ìñ÷·$dœØñøíhD€ 'ñúêÏñûÑ&ñüŒ¢ü@ˆÄ@z|ik\r[]JL´˜=­ü±-* A [`Clone`] + [`Send`] boxed [`Service`].ÁßúüãIF [`BoxCloneService`] turns a service into a trait object, allowing theÁü­NK response future type to be dynamic, and allowing the service to be cloned.Áüúü€MJ This is similar to [`BoxService`](super::BoxService) except the resultingÁüÎ!ì›ðúÂó ú<†Ü üŽJG use tower::{Service, ServiceBuilder, BoxError, util::BoxCloneService};ÁäÙÚÿ
­¡¬ü»¡´’Ù¡¬©ø¡ü¿#—¢ ú ëúüï;8 // This service has a complex type that is hard to nameÁü«'$ let service = ServiceBuilder::new()ÁäÓ .map_request(|req| {Áüð)& println!("received request");Á reqÁ })Áìµ .map_response(|res| {ÁüÓ*' println!("response produced");Á resÁî ¤™ .load_shed()Áô® .concurrency_limit(64)ÁüÍ)& .timeout(Duration::from_secs(10))Áü÷*' .service_fn(|req: Request| async {Áü¢ .ªƪüÝ ,窊
úüŽ
=: // `BoxCloneService` will erase the type so it's nameableÁüÌ
^[ let service: BoxCloneService<Request, Response, BoxError> = BoxCloneService::new(service);Áü« ,çªØ úüÜ )©«ü† )Ü« ­¡ü¶ *œ¬üá !Ь
Ü |
¥ÿ¦ÿò¿
¦
ªì ©
ÁÁ
¬
Ãç="àÊ!äQþž²Ž¡ˆˆ¢ˆl }.xÏšíÌ& íÌ‹æ&
íÌ‘æ& í̹îÌìéÃçj#ûñç§Ãçýý
þíÌ‹æ‘æ ü´
~ñýýç§ü¸&¥¦ò¿
½ªì ÀÁÁ
ÃÃçŠ #%(*üüå# Create a new `BoxCloneService`.Á¢úÃ烤ˆˆƒ ìó ˜ýóüÂ#‘ô§ôØ¢ú½ôÎôÙô$“êôô¨š7ŽRXZζó Ïó íó ò¢ü¥¡ü™KH Returns a [`Layer`] for wrapping a [`Service`] in a [`BoxCloneService`]Á¼õýúÜ…Ù¢ Ü©ƒ¤ƒ ìó ²ýóüæ#‘ô§ôLÿ›¬½ô$”Îô<›Ùôêô
ŠíÌ‹æ‘æ¢úZ\üò5¥¦ŽŽò¿
÷ªì úÁÁ
ýÃç& &
& & &
>@CEHJŒŒ‹æŒŒ‘挌¹îüœEáâã áÃç âÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åãþ†Œ ªŒ
íÌ‹æ‘æÀ¢<Uü›.ä äÃçíÌÃçíÌ& Œ £Œ
íÌ‹æ‘æÇtþUüò0¥¦˜˜ò¿
÷ªì úÁÁ
ýÃçÙ#%(*-/¼©å åÃçÃç ²
íÌ‹æ‘æüí!ñš£š§Å üíÒ&Ñ¿£T„Íìö¶ š§Å @ì¶/§Å Lì¶œœ68ü•¨ñæ æÑ¿ž²Ž¡ˆˆ¢ˆl }.xÏšö¶& ö¶Ñ¿ö¶& &
ö¶Ñ¿ö¶&
& ö¶Ñ¿ö¶& Ììéš «š
œÑ¿ö¶üÁR£ž¥ŸŸž–¸ ÆÆÚ É&¥ÌøÐÌì¥Ìإ̥Ì<‹¥Ì œ Z\_aüšƒLñç ç¥Ìž²Ž¡ˆˆ¢ˆl }.xÏšøÐ& øÐˆ²&
øÐŸ²& øÐ¶²Ììé °
 øÐ¥ÌüÌ5¥¢¦£¤£¢¤ò¿
Ѫì ÔÁÁ
×Ãç¥Àc¥#%(*-/üˆ6èéê èÃç é c cˆ¢cµ
 `£c`àB¤GS
ꦡ ¡
¥íÌ‹æ‘æ$×EZ¤w)„{)Ô²³Ï™eT Ñ
¦§§7L1( ¦¨×K¤,¦ªk<[̦¬·$dœØ¦­íhD€ '¦¯êϦ°Ñ&¦±Œ¢ü@ˆÄ@z|ik\r[]JL´˜=/ü±85 A [`Clone`] + [`Send`] + [`Sync`] boxed [`Service`].ÁêúüîMJ [`BoxCloneSyncService`] turns a service into a trait object, allowing theÁü¼YV response future type to be dynamic, and allowing the service to be cloned and shared.ÁúüšWT This is similar to [`BoxCloneService`](super::BoxCloneService) except the resultingÁüò €Áœž¥´¦µ´µò¿
²ªì µÁÁ
¸°è2ân<—,%³·ž²Ž¡ˆˆ¢ˆl }.xÏÏíÌ& íÌ‹æ&
íÌ‘æ& í̹î Ììé°è£1¦öİ貲
³íÌ‹æ‘æ
üÀ¦²²öÄü×*¥¹¦º»»¹ºò¿
ܪì ßÁÁ
â°è¼¿ #%(*ü´œüˆ'$ Create a new `BoxCloneSyncService`.Á»¢ú°è¸¤½½¸
ìó ¿ýóüé#‘ô§ôL‚›¬,½ô$— ¢úÎôÙôêôÀ¼š7Z\`bü¼¶ó ¾Ïó ¾íó ¾¾¼¹¶üÛ ¨üËOL Returns a [`Layer`] for wrapping a [`Service`] in a [`BoxCloneSyncService`]Á¼õ³ úÜ» Ù¢ ¨½¸¤ÀÀ¸
ìó è ýóüœ
#‘ô
§ô
›¬
½ô
ÅÉ
Îô
Ùô
êô

¿íÌ‹æ‘æ¢úbdü¯ 9¥Â¦ÃÄÄÃÂò¿
´ ªì · ÁÁ
º °èÅÆÇÈÉ& &
& & &
ÉÈ>@CEHJ  ÁÁ‹æT† ,‹ ÁÁ‘æ  ÁÁ¹îüÝ E ëìí ë°è ìÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åíþ†Á ë Á
ÈíÌ‹æ‘æ À¢_üÜ
.
î î°èḭ́èíÌ& Á ä
Á
ÉíÌ‹æ‘æ
ÇtÊ_ü³4¥Ë¦ÌÍËÍÌò¿
¸ªì »ÁÁ
¾°èÎÙÎ#%(*-/¼îï ï°è°èÊ ÷Ê
ÎíÌ‹æ‘æü²!¦Ï£ÐÏЧŠü²åì¶· ÅϧŠ*ì¶&§Å 6ì¶ÑÑ68üÚ»¦ð ðÑ¿ž²Ž¡ˆˆ¢ˆl }.xÏÏö¶& ö¶Û¸&
ö¶ò¸& ö¶‰¹ ÌìéÏ ðÏ
ÑÑ¿ö¶ü™Y£Ó¥ÔÓÔ–¸ žÆÚ ¡ˆº›º ¥Ì¬º¼º¥ÌÕÑÕKMPRüù±¦ñ ñ¥Ìž²Ž¡ˆˆ¢ˆl }.xÏÏøÐ& øÐˆ²&
øÐŸ²& øÐ¶² ÌìéÒ Ò
ÕøÐ¥Ì$üÕ9¥×¦ØÙ×ÙØò¿
Úªì ÝÁÁ
à°èÚÀcÚ#%(*-/ü•6˜òóô ò°è ó c cˆ¢cµ
 `£c`àB¤GS
ô¦Ö œÖ
ÚíÌ‹æ‘æ$סcd)D)ÔÜÓ‡.ºÐŽ„ƒ.Ê»..ÛíÜåStreamÁ4(EÜݱ¬ \0ÜÞ×L¤,Üà4]‚ØÜá´n„¾ÜâÈZ,~¥‚Üäk<…ÌÜå·œØÜæÑ&Ü礼ì­Až tUDi€üA:qs`bNP´œ@üìh¤Cé¤ê¢ëêéëÍì‡ëñ⃠öÍì‘ë ù¿c‡ë(EàÌ¿cà̤êìÀcì[]`b\^üÛ8Þõö÷ õ¤ê ö c cˆ¢cµ
 `£c`àB¤GS
÷¦è âè
ì‡ëàÌ‘ë±giüÔ!íîíî§Å üÔ³ïÝ
ë‚Ø©Ùí§Å 3§Å ðñïðñðñïMOÜüDÿø øÑ¿í ˆí
ïÑ¿©Ù$‰ôù ùÑ¿©Ùí ¥í
ðÑ¿©ÙìüÁDúûü úÑ¿ ûÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åüœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡z٩كØí Éí
ñÑ¿©ÙÀ¢Ôü‰m¤Có¤ô¢õõóô‰ßŽ⃠¢ß &‡ë§Ë„»Ãßí‘ë‹à”ã¤êö÷øùSUXZ]_üýP ‡ëàÌ‘ë¤êòò
ö‡ëàÌ‘ë¥jûj‚ˆkˆküŸ )T­ ¤ê‡ëòò
÷‡ëàÌ‘ë ü» 7 ý„¾„¾´†¾ ˜X$]È=„kt• ý¤ê‡ëò à ò
ø‡ëàÌ‘ëÞnüí
D
¤ê„îòò
ù‡ëàÌ‘ë$‰üÃx¤Cû¤ü¢ýüýû‰ßÈ⃠Í¢ß Ð“è„€Ãß4™®è”¨¤êþÿ(F(Gÿ@BEGJLúúèüöTþÿ„¾„¾´†¾ ˜X$]È=„kt• þ¤ê ÿÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¤ê(Fú ú
ÿ‡ëàÌ‘ëW}À¢a}..Û¥žÜÚÛ4‡(EÚ냱¬ ‚Ø´„¾k<”Ì·$œØŠÑ&äù³ü“$¥ì½àŠDÿyüà1kmY[´«Kü²L¤C¤ŽŽ‰ß·⃠¼“è„ÞÃß³ë,.13üÈ6ü…&# Create new [`CallAll`] combinator.Á°úü¸XU Each request yielded by `stream` is passed to `svc`, and the resulting responses areÁü•RO yielded in the same order by the implementation of [`Stream`] for [`CallAll`].ÁìúüôOL [`Stream`]: https://docs.rs/futures/latest/futures/stream/trait.Stream.htmlÁχëà̳댌
‡ëàÌ¥jB‡‚ˆL‡ô¿!üù$! Extract the wrapped [`Service`].Á¢ ú # PanicsÁ» úüà 2/ Panics if [`take_service`] was already called.Áú úü‚!85 [`take_service`]: crate::util::CallAll::take_serviceÁTÆ!³ë‡ëŒŒ
‡ëàÌ;ˆü­$0ü‹"$æö´"úü¼"OL This [`CallAll`] can no longer be used after this function has been called.Á#úd˜#Ÿ÷©#úü±#2Á÷è#úüð#8‰ød´$„¾„¾´†¾ ˜X$]È=„kt• ³ë‡ëŒ Ë$Œ
‡ëàÌüª'9ü—%HE Return responses as they are ready, regardless of the initial order.Áä%úüì%=: This function must be called before the stream is polled.Á®&úd¶&Ÿ÷Ç&úüÏ&" Panics if [`poll`] was called.Áö&úüþ&'$ [`poll`]: std::future::Future::pollÁL±'³ë„
‡ëàÌÀ‰üŽ(W¤C¤‰ß“(⃠˜(“è„Å(Ãß4Þ(³ë(F(G0257Lì($ñ(èü )TL
$æö¥ ú Ÿ÷¾ úüÆ 2Á÷ý úü… A> [`take_service`]: crate::util::CallAllUnordered::take_serviceÁTÒ „î‡ë©©
­‡ëàÌ;”üÉ0ü—
" Extract the wrapped `Service`.Á¾
úüÆ
XU This [`CallAllUnordered`] can no longer be used after this function has been called.Á£úŸ÷¼úüÄ2Á÷ûúüƒA©ŒŠ„¾„¾´†¾ ˜X$]È=„kt• Š„î‡ë© ç©
®‡ëàÌü±`¤C°¤±°±‰ß⃠»“è„ñÃ߄(F(G³0257L˜$¯¯èüÌTŒ„¾„¾´†¾ ˜X$]È=„kt• „î ŒÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åœØžØŸØÈ Øˆ¡Ø¢Ø´‰‰Nµý¤ÃÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ„î(F¯ ã¯
³‡ëàÌæ•À¢ð•ü×8µµãÁ
ÜÒÁ
¡ï·¸ïðñ·¸13Ô–D™Ž Ž¡ï´ ¢´
ÁØìç ¡ïÁØ´ ï´
·ÁØì9—ü¿C ¡ï ÌÌkθ¡¸ÏË¡¸Ð䡸ÑÀ¸Òƒ¢¸f'EwÚ]¾åþ™´ Ç´
¸ÁØÀ¢ ˜.„æ.ÝÜø.ÑT›))Ô÷´»Ã±¬ \‡¼½‚ؼ¿´¼„¾¼Àk<Ì̼·œØ¼Ã£ç