rust Šþ#rustc 1.98.1 (48a229cea 2026-09-01)ÁûÊÆÍRLñ.åSÛAúwjL-df1bddb45adbe94bÁ«ª1Úë• ¢›ºXÝÓrŽ*-1ad4f876c768bda9Á±ò‰<å%Z‰>¸64‡ËV`-2d2ab9fb0fe1def5Á‰m6GÞ­n6ÇèÆ2-64f5f36fb0927694Á»ÄóG Øg{ë(3íi«F×-06449a08aaab5e30Árustc_std_workspace_coreÁ€û{ù`ä"Ei¥€ÞÏ%G-cb0d4d77988d81b5Áó"Æ)ΉÉðÛÕpEÍ—E-3ec41d3a5a80a4a4Á miniz_oxideÁÐ8°ø‚ðbž Lƨ°J-e44eaef1807e5fc0Áadler2Á9lí©yA6P/D$UBŸ-dca52f01a59c33e7Á hashbrownÁ™¸ÈXó®÷ …ùý{e-143c77bb957d9940Árustc_std_workspace_allocÁð…¨À �¶÷Üúò·_z%í-145a318e0772276cÁ std_detectÁK(ƒ0ì*ãÛ8²D?-f99feda5ce9e492aÁrustc_demangleÁµ%jŽeårVŠÕÓ•-cfd0ab54bb33760eÁcfg_ifÁÍ}λ—©ŒÕž§C•×o-360da4ba13154744Á addr2lineÁ‹c²ŽúY\ÈGÞö÷ö--09755979c57b7e64ÁgimliÁ¢±QÄÍ`ª§DÞåù¬y-9a1fede77fbbf2f0ÁobjectÁö‚F λâËvú.zËí-7ff85ea729a864ffÁmemchrÁž˜]²1<õ¶=U�ý�Où-0e3477fb2664a277Á  ÿŽ—jl‹®¾To–K™G-549498e8b2e4d924Á†ƒ4ÊÓportable-atomicÁÜ•û«‰futureÁ BoxFutureÁ 'aÁ �LocalBoxFutureÁ¾� FusedFutureÁ is_terminatedÁ‚ƒ Œƒ private_try_futureÁSealedÁ‚�� TryFutureÁ!¯!ErrorÁ!try_pollÁ%‚%�%�%¯%• %¡ if_allocÁ,,,/‚/ƒ ,2‚2ƒ streamÁ999999 BoxStreamÁ?¾?�9LocalBoxStreamÁB¾B�9StreamÁEŸE poll_nextÁE size_hintÁ9I�IŸIŸ I¯ 9NŒNŸNŸ N¯ 9 FusedStreamÁSƒ 9U‚Uƒ 9XŒXƒ 9private_try_streamÁ[[Ø [^�^�^�9 TryStreamÁb¯b• b try_poll_nextÁ9f�f�f�f¯f• f—9Þ mmmp�pŸpŸ p¯ mu�uŸuŸ x u¯ m{�{ƒ taskÁ‚À ƒreadyÁ‚ __internalÁ… atomic_wakerÁ†††††††††† AtomicWakerÁ�ƒ�wakerÁ†WAITINGÁ† REGISTERINGÁ†WAKINGÁ†–˜ — AssertSyncÁ—–registerÁš –wakeÁ–takeÁ†ž>† ñ††…‚‚‚‚‚‚8888$8$8$8+8+8+81848G8G8G8H8I8L8L8L8M8Q8Q8Q8R8T8U8W8Z8e8e8e8l8l8l8s8s8s8t8x8x8x8z8}8š8š8œ8�8¡8¡8¡8!ES]b˜ 8‚îšîšPinÁðš¿ ð[$²òVá=µ•4Œ‚!ÄŸŸ BoxÁ£ó‹¤ô‹ljô²ßk#ÄÅFÅFÆFGlobalÁ Ä› +ÉÑÖZÖZ×ZAssertUnwindSafeÁÙZó *µfKLª×BÄE 8�E„SòS„]�bÄEŸŸ ç£ó‹¤ô‹ljô²ßk#Ä�EÖZÖZ×ZÝÙZó *µfKLª×BÄSÙ˜´…´…WakerÁµ…݉…­3‹e]éö��‘ƒ†’݆¡ãN”6ÐðŸg£ýÆ£ÿ £ îš/Ÿ2ÖZ%I NîšpŸuÖZU Xîš{Ÿ^f™´…ž� �¢�£�k!ES]b˜öŸgýÆÿ <ùü×* ÷; †‡ü­Z$È  ÷,¾ ÷Š˜Bщ4Àe»¤¼ ¸mº¤¼¼ Þ"¸9# ÌÍ Ƥ¼ü•2 Ý"¸<¿+üëbýÁŽO¼ñ\¸Àýƒ£Í¼Ï\¸�øŽ¼ýß�[¼Î\ Úý¦¤"¼ý è@¼Þ\Úý뎼$† „,üÊ9 ¸<³ÕóŽ@ló Á´Ä$óýDø†+ü›kÙ´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷ÀœÜÄœ¯ÅœóƜǜ€Èœó‘¥_¿´Òw��”Öîšîš�ðš¿ ð[$²òVá=µ•4 Ä$§ �…�…lŸ…݉… … local_wakerÁ‰…¡…extÁ‰…¢…_markerÁ‰…£…_marker2Á‰…8íœ}©½œcxÁ�Ú ë<üÀÀUniqueÁ¿ µÃÎ"µ´]8"»OÿÄ®®«°¿ ”3¯f*²Û�Ä‹  Ä›üÚ*© ÄÃ! �Ž1ü¬b$Ç Ù,½ ÄÚ%�%$Gü%�4Ö=ì[ŠÄü³*cü%<Õ æç4ü…býÌ[-ŠüZÄv$  Ï,–Í&“Jü%�L«& řǙș­É™Ê™àË™óG*¤�R{9 ß(º&Hüó%Gß(ê(´Š& ,€& 5 ¬�(,�(­�¦¼%�¦¼ý�¦6¼ ó\ó\ PinHelperÁõ\¿ ò\]v¸^E�±a  œ Ħ¼%õY½ü*\Š(}¥ž¼ îšþ*üô''� Gœå˜(( š(  (¡(Lü‘'�ýÿ£×¼ÿ\ü*0ýï U¼ü\ü*ýÏ¥�¼ýÉY6½í"þ*�©¡¼ý´á˼Ê\þ*‹ÞÎ\þ*ÝÜâ¼Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 FœÄÑ'îšîš�ðš¿ ð[$²òVá=µ•4ü*Dž'ÿ"¸'îšîš�ðš¿ ð[$²òVá=µ•4þ*ºü*ºþ*ÂÄ*§ Ë.Ìo #sââ+;Dß(¤ß(ù  Hœ<\è( ò(ù(Mü§(RÏ)´¾( þ*,´( œ‹þ*@Ì0мà*$à* „m¥³¼e¦³¼ ¸*Ó  ê"¸6I „+‹+ ±³¼¨ îš Ú ²³¼üà*%A  GÚË‚+lø*Qü�*ŠýÞñd¼ã\„Lå*ýܼ߱Ò\¸Dï*? Î\í2ý�³&¼Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 FÚĽ*îšîš�ðš¿ ð[$²òVá=µ•4ê1$Ž*ÿ"¤*îšîš�ðš¿ ð[$²òVá=µ•4í2Pí2; ¸;ê1ch #l¤”3ä¦2DÉ+£ ª ¸  X ŽÐ »  â+ã+™ ¤É+–  HÚx\Ò+Rü‘+RŒ ñ\¸¤‡ Ï\¸� } Î\Êu p Þ\Úk Ï)´¨+ƒ ,ž+Êú— œ ‡é7¾Ž  <Ò1ü°1*Í  T÷=! ß1à1Wü†1Z$¡1–,—1¥ƒ˜9Ý9‚4™3aa¸Í Ža ¥3¦3yüî22Í  TÚ<˜3#ZüÄ2bmñ\¸¥hÏ\¸b^Î\ÊVQÞ\ÚL$ß2ƒ ,Õ2Êú— a†Ê;¾Ž”“<Í  GÄ$“<¢<l˜<«<lü†;¥Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 á!üÝ;+îšîš�ðš¿ ð[$²òVá=µ•4 Ä$ ;ÿ"¾; #š=N ¬Ì>\Õ>,Û>ç ã ß  ó\ó\Ï)õ\¿ ò\]v¸^E�±a ÙÎ Ê Í@~ ÀÀã#¿ µÃÎ"µ´]8"»OÿÄ®®«°¿ ”3¯f*²Û�Äû Ä T  îš ? à>üÌ>#Í š=Yì>lâ> î> ø>ù>süå=”V ÿ\Í@™P ü\Í@K E í"ÙA = Ê\ ?ã9Î\ ?7  Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 FÄÄ¥>îšîš�ðš¿ ð[$²òVá=µ•4Í@Dò=ÿ"Œ>ï>Ý ?ÝÍ@ÝõAåž@±  þDÖ ¸AÿN #Ržš=õD¿?ú@¸A õA+¤¿?Í  HÄR\È? Ò?Ý?tüƒ?ZÏ)´š? Ù,�? Ä¡õA¸A#GôF‘üÈA/$ÑA £]ê�¼DìAÄ‘ îš ? ü ôAüÈA=Í š=…‚BløA „B�Bxüè@§ý¨ÿœ¼å\£ÄyÄ £ ÄUÿüÖAý§��¼ýæ�Þ¼ýÁ÷U¼ä\£å¾�¼9Î\ ?ý�ƒ¼dèAyÄãIæI‚Jmø�¼äC¬¤Aîšîš�ðš¿ ð[$²òVá=µ•4 H$õ@ÿ"‹Aï>Ë ?¯ HÒ, #0Gš=•ÛI°éÄôAyä ?ëAÛIø H éA® 4ÕBÄ”ÕBÍ ôF.\ÜB æBñBzü™BXÏ)´°B £,¦BÈGz6ôF{<”Dú@¸A õA+üòC*Í  TÄS! ¥D¦D}üÄCb$ßC¼G,ÕCÈG™õA¸A @êN‰ß(0Áß(0b01Áß(0b10ÁÌÉ@a„Ú Í ß(ÿ`ÿ`V�a¬â`½68ŸœRtß(ü»@G �Í “2“2 UnsafeCellÁ•2�ñ.ç–\*=°"�řǙș­É™Ê™àË™óG*¤�R{9 å �AˆA—ü‹?ýùרÉ• -ýð”PÏš2áQ¬ë@£$¡?ÚPXN<Ú@“ß({‚ Š„É@ • ;“ß(F²t$û@ Å™å— ž|ë@ š2áQ=À ÿ@¹ �2981—A£ÚPg©Q+áQ¹l“ß(ü¾}#i¨áA­á%�¯ÏÚP“2“2³P•2�ñ.ç–\*=°"�ø`ø`ù`Align8Áû`óë` x:B’‚£+}ß(M‡Œ ß(ŸýΖ 7Í  ©ß(ß(Ô«Õ«Ö«Ï׫ث٫ÐÚ«Û«Ü«Gݫޫ߫Fà«á«â«Üã« šÃíc1Œ¤ü– Í ß(�— Î$²„Í áQ Ä å�¯Ï ž ©Qý�¯2Ï  áQ À¯Ï ý�–&• è–• Í áQL¯iˆÄ A�Ä   ÚPÿU° øV/  ý�Ê 7Í  –ß(¢W¢X¾Ê Í ß(ÃÊ P Ó„Ô„ Ááü¸}) ¡Ä  µ€ �ü¸{œ üÃ~óü«‹üÀ�ùôßÞ© ÄÉ}ùöå `³ Qýè¬ßÏ 2­V)¼æ ýØ>Œç­Vß(1Âæ ý‡“ âÅbß(ß(ùžá$[ 2áQ,å~ýâ�´n«Xå4ì~ýï�•• ôáQÅø‘n ýƒ–•  ùÖÂÜ¡ ´ÆÛ ³   Õ 2­VÎÉç­Vß(Äý�Ç Ù Þaß(ùüÃ& áQlÎ{ £,Ä{ß(œ©Y„Ú~ß(‘øV¬ ÿU  ©Q øV­ „_'PÝ,Ç~ old_stateÁêƒ,À4Ò}•ß(<Ë“ß(4‰€•ß(\σ”ß(\烔ß(4õƒ•ß(4ˆ„•ß( ¸[ɇT]Ï`ɇT]áQ¢ ©ß(ß(¢W¢Xýž— 8•W  ©ß(ß(¢W¢Xýþ• 8 ©ß(ß(¢W¢Xý­• 8 ©ß(ß(¢W¢XýÝ” 7 –ß(¢W¢Xý­Ë 6 –ß(¢W¢XýßÊ 6ÀZ –ß(¢W¢XýÀÉ 7 –ß(¢W¢XýðÈ 7P O  Í ß(ÚP  �Í ©QŸ«…Ÿüû„0¨—\š…°• × «š2áQ¦£$‹…ÚPÿ V§“ß(  9‚û«,Љ¶ñ\õ6FutureÁ4‚¿´7 þ LŠ!8ÿ \ÐS‹ 4ÝE€ù Låb�â,«„üŒü>; Core traits and types for asynchronous operations in Rust.ÁüK´ü6ü¿6|\9‚û,«-‰,ñ+6µd$¿´7 þ #!8ÿ "S‹ !E€ù  b�â„ÌÏÒ”ýÉ„©¾t¼d Futures.Á4Ä !,DerefMutÁDé"�6îšl; A future which tracks whether or not the underlying futureÁüÐ  should no longer be polled.Áð �üô NK `is_terminated` will return `true` if a future should no longer be polled.Áüà DA Usually, this state occurs after `poll` (or `try_poll`) returnedÁüˆ NK `Poll::Ready`. However, `is_terminated` may also return `true` if a futureÁü× MJ has become inactive and can no longer make progress and should be ignoredÁü¥ 0- or dropped rather than being `poll`ed again.Á\à ÿÆÞ)üÖ ’¿´Þ)4í Ðx*âxÐx4âx'üÆ üú GD Returns `true` if the underlying future should no longer be polled.ÁlÉ « «Þ)Bÿ ×  Þ)$Ø üê <8¬‚¬ÿÆ÷4€÷\ò ÈÇ÷,‰ò ï ü­l°­ ­òBÿ ¾ 8÷$¿ü‹YŒþƸ �é"¸D·ÈǸ,ÂÚ\Ø„<>üëlî® ®„Bÿ ü ¸$ý´Ñ”Õµd4ù¿´ lò„†4�Ðxœ†ÐxÐxüŸJ‚��  À´Äá!¬ÓÃn §þƶ" ª¿´ÄìÌÿÆÄ4ÃÄ ¤FHCEüì8üðGD A convenience for futures that return `Result` values that includesÁü¸30 a variety of adapters tailored to such futures.ÁLö!!Ðxüì âx4�Þ)ÔŠ!Ðx/âx+¥�#Ðx?âx;¥�3"#$"#$þÆ"Þ)Dèë�þÆ#Þ)\ª‰‚$<èü«85 The type of successful values yielded by this futureÁí!!Tªüö/, The type of failures yielded by this futureÁ,¯!!ü«_ü»30 Poll this `TryFuture` as if it were a `Future`.Áó�üûLI This method is a stopgap for a compiler limitation that prevents us fromÁüÌJG directly inheriting from the `Future` trait; in the future it won't beÁ\› needed.ÁD®¯°±îšîš�ðš¿ ð[$²òVá=µ•4 ¯Þ) °�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©±Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷ÀœÜÄœ¯ÅœóƜǜ€Èœó‘¥_¿´Òwó�‘‚Bÿ! Á! $Þ)$· #ÍüŽR‚&�'�(('&ñ~¬ÉÃn –‹ ™›ì«4¹Ä)*+"#$+ “=?CE<çì%%°"Tø,ý%%¶"ü›MDž²³´îšîš�ðš¿ ð[$²òVá=µ•4 ²Ä ³�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©´Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷À´ÄBÿ% ±% +İ"¶"ù #Šd¤Ó«Œ�ÌŠD¨çÛŸ,.üg[é",-�^îš,-la�…,- »dÙ´,- µdg¿´,- ®0 ,-Î,-ñ9 ,-» ¬,-þ !,-Þ Ý,,-,»ŒÍéüå<‚00«4ûÄ\íÈÇÄ,„Ù11 êü¬l¯µ µÙBÿ/ ½/ 1Ä$¾ü¶DÓ‰| ¼š‚33þÆÄ »Ý�\¾Ï44ü…lˆ¶ ¶ÏBÿ2 –2 4Ä$—dæŒÌLÒ–#!µ¢ECÁ¯geÎt—Ì Asynchronous streams.Á4Ÿ?BES[bmügD*é"9:�Cîš9;lœJt8=TL02!#̶üjJG An owned dynamically typed [`Stream`] for use in cases where you can'tÁüµ@úiö�üúhe This type is often created by the [`boxed`] method on [`StreamExt`]. See its documentation for more.Áã�üç^[ [`boxed`]: https://docs.rs/futures/latest/futures/stream/trait.StreamExt.html#method.boxedÁüÆUR [`StreamExt`]: https://docs.rs/futures/latest/futures/stream/trait.StreamExt.htmlÁÓ«Œ¢ÌœL¿¾@�AA@Ãn Íîšîš�ðš¿ ð[$²òVá=µ•4ŸŸ ç£ó‹¤ô‹ljô²ßk#EF°"ýƾ�É–˜ô”ü�41 `BoxStream`, but without the `Send` requirement.ÁÂ�üÆnk This type is often created by the [`boxed_local`] method on [`StreamExt`]. See its documentation for more.Áµ�ü¹jg [`boxed_local`]: https://docs.rs/futures/latest/futures/stream/trait.StreamExt.html#method.boxed_localÁü¤U––Ó«Œ€Ìút�¾C�DDCÃn °îšîš�ðš¿ ð[$²òVá=µ•4ŸŸ ç£ó‹¤ô‹ljô²ßk#EF°"¾�¬�’„€ üé/, A stream of values produced asynchronously.Á™ �ü� PM If `Future` is an asynchronous version of `T`, then `Stream` is an asynchronous version of `Iterator`. A streamÁüµ PM represents a sequence of value-producing events that occur asynchronously toÁ|†  the caller.Á– �üš LI The trait is modeled after `Future`, but allows `poll_next` to be calledÁüç MJ even after a value has been produced, yielding `None` once the stream hasÁ̵  been fully exhausted.Á/üÏ 0 streams do nothing unless polledÁ4Š EEÐxü€ ¼EÐxÐxFGHFGHþÆFÞ)T½ ¦£HGL½ ü— ! Values yielded by the stream.Á$ EEü�UüÍ FC Attempt to pull out the next value of this stream, registering theÁü˜LI current task for wakeup if the value is not yet available, and returningÁüé&# `None` if the stream is exhausted.Á”�”œ # Return valueÁ³�ü»HE There are several possible return values, each indicating a distinctÁŒˆ stream state:Áž�ü¦FC - `Poll::Pending` means that this stream's next value is not readyÁüñMJ yet. Implementations will ensure that the current task will be notifiedÁüÃ'$ when the next value may be ready.Áï�ü÷EB - `Poll::Ready(Some(val))` means that the stream has successfullyÁüÁKH produced a value, `val`, and may produce further values on subsequentÁÄ‘ `poll_next` calls.Á®�ü¶C@ - `Poll::Ready(None)` means that the stream has terminated, andÁüþ.+ `poll_next` should not be invoked again.Á±�d¹ # PanicsÁÊ�üÒUR Once a stream has finished (returned `Ready(None)` from `poll_next`), calling itsÁü¬NK `poll_next` method again may panic, block forever, or cause other kinds ofÁüÿIF problems; the `Stream` trait places no requirements on the effects ofÁüÍKH such a call. However, as the `poll_next` method is not marked `unsafe`,Áü�GD Rust's usual rules apply: calls must never cause undefined behaviorÁüéJG (memory corruption, incorrect use of `unsafe` functions, or the like),Áü¸%" regardless of the stream's state.Áâ�üêOL If this is difficult to guard against then the [`fuse`] adapter can be usedÁü¾IF to ensure that `poll_next` always returns `Ready(None)` in subsequentÁTŒ calls.Á›�ü£YV [`fuse`]: https://docs.rs/futures/0.3/futures/stream/trait.StreamExt.html#method.fuseÁL„·¸¹îšîš�ðš¿ ð[$²òVá=µ•4 ·Þ) ¸�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©¹Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 ®£BÿE ˜E GÞ)$Ž #¤üó%-üÜ=: Returns the bounds on the remaining length of the stream.Áž�ü¦GD Specifically, `size_hint()` returns a tuple where the first elementÁüòB? is the lower bound, and the second element is the upper bound.Á¹�üÁRO The second half of the tuple that is returned is an [`Option`]`<`[`usize`]`>`.Áü˜KH A [`None`] here means that either there is no known upper bound, or theÁüè)& upper bound is larger than [`usize`].Á–�Ôž # Implementation notesÁ½�üÅGD It is not enforced that a stream implementation yields the declaredÁü‘ JG number of elements. A buggy stream may yield less than the lower boundÁüà -* or more than the upper bound of elements.Á’!�üš!LI `size_hint()` is primarily intended to be used for optimizations such asÁüë!C@ reserving space for the elements of the stream, but must not beÁü³"DA trusted to e.g., omit bounds checks in unsafe code. An incorrectÁüü"DA implementation of `size_hint()` should not lead to memory safetyÁ|Å# violations.ÁÙ#�üá#FC That said, the implementation should provide a correct estimation,Áü¬$FC because otherwise it would be a violation of the trait's protocol.Á÷$�üÿ$QN The default implementation returns `(0, `[`None`]`)` which is correct for anyÁ\Õ% stream.ÁLö%º ºÞ)Ï)BÿE €&E HÞ)$�&ü¾&28»�J»JÿÆœ4Æ&Eœ4Ï&ÈÇœ,Ø&—KLMFGHML Ã&L÷&$ü&II».ü‘'XL”'¼½¾îšîš�ðš¿ ð[$²òVá=µ•4 ¼— ½�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©¾Ù´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 F—BÿI ¬'I L8œ$¢' #ü§(-Lª(¿ ¿—Ï)BÿI ´(I M8œ$µ(üý(OŒOO§| ‚)·|D¤)Æ|,¯)EÚ4Å)„PQRFGHQR8:LÓ)$Ø)NN�5ü�*TL„*ÀÁÂîšîš�ðš¿ ð[$²òVá=µ•4 À„ Á�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©ÂÙ´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 F„BÿN ˜*N Q¸a #jü‘+-L”+à ÄÏ)BÿN ž+N R¸$Ÿ+ìº/üç+>; A stream which tracks whether or not the underlying streamÁü¦,ûsÆ,�üÊ,N°tü™-NK Usually, this state occurs after `poll_next` (or `try_poll_next`) returnedÁüè-MJ `Poll::Ready(None)`. However, `is_terminated` may also return `true` if aÁü¶.LI stream has become inactive and can no longer make progress and should beÁüƒ/63 ignored or dropped rather than being polled again.Á\Ä/SSÐxüº/‡EÞ)4Ñ/SÐx(´ÏÐx3´Ï)TTTüŸ0 üÞ/<9 Returns `true` if the stream should no longer be polled.Ál¢0Ä ÄÞ)BÿS °0S TÞ)$±0üÃ0<8Å‚VÅVêz4Ë0S÷\Ô0ˆ{,â0òWTW È0ü†1l‰1Æ ÆòBÿU —1U W8÷$˜1üä1YŒYY§| é1·|D�2Æ|,›2SÚ\±2„ZTZ+-üÄ2lÇ2Ç Ç„BÿX Õ2X Z¸$Ö2´ª3”®39]‹ 4Ò3E[\lË3„ß34é3]]Ðxœß3]ÐxÐxüø3H�_�`�a`a_FÄá!œ¬4Ãn €4‹ ƒ4EÄÜ¥4ÿÆÄ4œ4Ä ý3;=ACüÃ58üÇ4GD A convenience for streams that return `Result` values that includesÁü�53ÇLÍ5bbÐxüÃ5Ä´Ï4Ø5]Þ)Ôá5bÐx0´Ï,ÿÖ$ÐxA´Ï=ÿÖ5cdecdeþÆcÞ)D¿6Ç×þÆdÞ)\�7å×e<¿6ü‚68¹�Ä6bbT�7üÍ6/�‚,†7bbü‚9ƒü’730 Poll this `TryStream` as if it were a `Stream`.ÁÊ7�üÒ7L¨ƒü£8JG directly inheriting from the `Stream` trait; in the future it won't beÁ\ò8Ñ„l…9ÈÉÊîšîš�ðš¿ ð[$²òVá=µ•4 ÈÞ) É�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©ÊÙ´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 ÀœÜÄœ¯ÅœóƜǜ€Èœó‘¥_¿´ÒwÏ×í×Bÿb ¦9b eÞ)$œ9 #º9ü‰:P�g�h�ighi‡ÕœÄ:Ãn ‘:‹ ”:¦Õܽ:´Õ4´:Äjklcdel Ž:?AEG<à:å:ff°"Tñ:,ö:ff¶"ü†;‚l‰;ËÌÍîšîš�ðš¿ ð[$²òVá=µ•4 ËÄ Ì�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©ÍÙ´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 ÀœÜÄœ¯ÅœóƜǜ€Èœó‘¥_¿´ÒwcÄdÄBÿf ª;f lİ"¶"& #/dÉ<Ó«Œµ<̯<DÍ<9ç€=Ÿmoüg(é"mn:�(îšmn;l"(�…mn=»%(Ù´mn>Ê N&?mnè -$Bmn‹  !Emnÿ í Smn¼  [mnù LbmnÞ Ømmn,à<Œò<äüŠ=2�qq´Õ4’=¦Õ4›=ÈÇÄ,¤=ÙrstFGHst �=LÇ=$Ì=ppîDüå=XLè=ÎÏÐîšîš�ðš¿ ð[$²òVá=µ•4 ÎÙ Ï�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©ÐÙ´Û´Ü´ËÝ´óÞ´ß´¸±Ýæó}rÑ÷řǙș­É™Ê™àË™óG*¤�R{9 FÙBÿp €>p sÄ$ö= #;"üƒ?-L†?Ñ ÑÙÏ)Bÿp �?p tÄ$‘?ü…@:Ó‰|ï?¼é?�vvþÆÄ Š@¦Õ4�@£wxzFGHzx$&LÊ@$Ï@uuîDüè@QLë@ÒÓÔîšîš�ðš¿ ð[$²òVá=µ•4 Ò£ Ó�…�…lŸ…݉… …¤"‰…¡…½"‰…¢…Î"‰…£…ã"‰…8íœ}©ÔäCBÿu ÿ@u xÄ<% #E%èAx�y�y�yyxÛIü™B-LœBÕ Õ£Ï)Bÿu ¦Bu zÄ$§BüýB<�||´Õ4…CSÄ\ŽCõå,œCÙ}T} ‚CüÄClÇCÖ ÖÙBÿ{ ÕC{ }Ä$ÖCdÁŒ§L­b2#!b2r2ECr2ƒ2geƒ2dÿ´ Task notification.Á$‡ƒ…l<{�…¦»$„Ù´§RawWakerÁDŠú´¨RawWakerVTableÁt”‚µ©ñ,¤´…ªD%$)‚”žü.+ Extracts the successful type of `Poll`.Á/�ü3LI This macro bakes in propagation of `Pending` signals by returning early.Á€�ü„HE **Note:** Since Rust 1.64, this macro is soft-deprecated in favor ofÁüÍ@= [`ready!`](core::task::ready) macro in the standard library.Á)|Ž”2 ± î · Å, ¸8› ¹& º8²$», À Á Ã$ Â- Ä*Ç Ê ë8,Ô, Ú8› Û Ý å, ë8,ì'ñ8Î$ó'÷8»$ù'ý8Ë,ÿ „ †8ª …*ˆ8ª ‹$ Œ, š8,›' 8Î$¢'¦8»$¨'¬8¸<®*¶84¹, À8,Á'Æ8Î$È'Ì8»$Î'Ò8¸<Ô$ Û% ì”?t046TG†Â\ü�¤„bdf…�“”•³PT“2†‡ñ&ûc†ˆñ,;´…†‰ AtomicUsizeÁ\O� †ŠF4sš�†ŒF›�†ŒG<{˜�†�G™�†�Ð<„–�†ŽÐ—�†Žƒ4Œâ`†�´ðL áŒ/ÒœG·„`¨ªƒ…]_”€ÓÒÜÝìÜüÓ(R´¹ü•0- A synchronization primitive for task wakeup.ÁÆ�üÊIF Sometimes the task interested in a given event will change over time.Áü”NK An `AtomicWaker` can coordinate concurrent notifications with the consumerÁüãLI potentially "updating" the underlying task to wake up. This is useful inÁü°JG scenarios where a computation completes in another thread and wants toÁüûPM notify the consumer, but the consumer is in the process of being migrated toÁ¼Ì a new logical task.Áä�üèPM Consumers should call `register` before checking the result of a computationÁü¹JG and producers should call `wake` after producing the computation (thisÁü„LI differs from the usual `thread::park` pattern). It is also permitted forÁüÑGD `wake` to be called **before** `register`. This results in a no-op.Á™�ü�QN A single `AtomicWaker` may be reused for any number of calls to `register` orÁ\ï `wake`.Áû�¬ÿ # Memory orderingÁ• �ü™ JG Calling `register` "acquires" all memory "released" by calls to `wake`Áüä GD before the call to `register`. Later calls to `wake` will wake theÁü¬ PM registered waker (on contention this wake might be triggered in `register`).Áý �ü� OL For concurrent calls to `register` (should be avoided) the ordering is onlyÁüÑ $! guaranteed for the winning call.Áö �tú # ExamplesÁ‰ �ü� NK Here is a simple example providing a `Flag` that can be signalled manuallyÁ¬Ü  when it is ready.Áò �<ö  ```Áüþ  use futures::future::Future;ÁüŸ 41 use futures::task::{Context, Poll, AtomicWaker};Á¼Ô  use std::sync::Arc;Áüì &# use std::sync::atomic::AtomicBool;Áü“-* use std::sync::atomic::Ordering::Relaxed;Á´Á use std::pin::Pin;ÁØ�”Ü struct Inner {ÁÜï waker: AtomicWaker,ÁÄ‹ set: AtomicBool,Á,¤ }Áª�¤® #[derive(Clone)]Áäà struct Flag(Arc);Áà�|ä impl Flag {Áôô pub fn new() -> Self {Áü“! Self(Arc::new(Inner {Áüµ*' waker: AtomicWaker::new(),Áüà,) set: AtomicBool::new(false),Á|� }))ÁL� }Á§�ô« pub fn signal(&self) {ÁüÊ,) self.0.set.store(true, Relaxed);Áü÷  self.0.waker.wake();ÁL˜¦�,¢ÒЍ�Ô¬ impl Future for Flag {ÁÌÇ type Output = ();Áá�üåIF fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<()> {Áü¯A> // quick check to avoid registration if already done.Áüñ)& if self.0.set.load(Relaxed) {Áü›'$ return Poll::Ready(());Álà }ÁÑ�üÕ.+ self.0.waker.register(cx.waker());Á„�üˆKH // Need to check condition **after** `register` to avoid a raceÁüÔA> // condition that would result in lost notifications.Áü–)á�üÀ Poll::Ready(())Á¤à } else {Áìõ Poll::PendingÁl“Ä‘L¡¦�,«ÒŠ<±ȇ\Ä£¡ãN”6Ðð‘’”Ö,Ö†��ÚPüî ,î†��©Q¤ã<<é<†ß(ÄÅ=\Ë=†ß(œ¶>4¼>†ß(„Ó>£—šœ�Ô‹?äê> Create an `AtomicWaker`.Á˜?£Bÿ–– —´ó?Tù?†˜˜ÐxÌó?ÿ Þ)$…@˜Ðx(²˜Ðx3²˜*Ì•@åüýP%üŽA:7 Registers the waker to be notified on calls to `wake`.ÁÍA�üÕAKH The new task will take place of any previous tasks that were registeredÁü¥BJG by previous calls to `register`. Any calls to `wake` that happen afterÁüôBHE a call to `register` (as defined by the memory ordering rules), willÁüÁCLI notify the `register` caller's task and deregister the waker from futureÁü’DIF notifications. Because of this, callers should ensure `register` getsÁüàDC@ invoked with a new `Waker` **each** time they require a wakeup.Á¨E�ü°EJG It is safe to call `register` with multiple other threads concurrentlyÁüÿEGD calling `wake`. This will result in the `register` caller's currentÁìËF task being notified once.ÁíF�üõFKH This function is safe to call concurrently, but this is generally a badÁüÅGKH idea. Concurrent calls to `register` will attempt to register differentÁü•HLI tasks to be notified. One of the callers will win and have its task set,ÁüæH>; but there is no guarantee as to which caller will succeed.Á©I�t±I£†ÄI�üÌI<9 Here is how `register` is used when implementing a flag.Á�J�<•Jȇü¡J Ù‡üÆJ4ƒˆüÿJ&áˆüªK-‘‰´ÜKlj÷K�ŒÿK struct Flag {ÁÜ•L�ŠĵL±Š,ÒLÒŠÜL�ÔäLñŽ̃M”�¡M�ü©MIÃ�ü÷MKH // Register **before** checking `set` to avoid a race conditionÁüÇN74 // that would result in lost notifications.ÁüƒO,) self.waker.register(cx.waker());Á´O�ü¼O'$ if self.set.load(Relaxed) {ÁüèOÙ“¤ŒP�”ì¥Pž”lÇPÄ‘LÙP¦�,çPÒŠ<ñPȇD„Qר ×£ Øå‚JBÿ– �Q– š$ŽQÝ,”Q­Rš�›�›�››š›ãIß(ß(Uÿ‚J”Äwü¶v:7 Calls `wake` on the last `Waker` passed to `register`.Áõv�üývB? If `register` has not been called yet, then this does nothing.Á$ËwÙ Ù£‚JBÿ– Ðw– œ$Ñwü¸{#ü³xPM Returns the last `Waker` passed to `register`, so that the user can wake it.Áˆy��y�ü˜y[X Sometimes, just waking the AtomicWaker is not fine grained enough. This allows the userÁüøy[X to take the waker and then wake it separately, rather than performing both steps in oneÁ”Øz atomic action.Áïz�ü÷z<9 If a waker has not been registered, this returns `None`.Á$¿{Ú Ú£áQBÿ– Ä{– �$Å{䨄£Ÿ÷Ÿ¤û„<þ„£Bÿžž Ÿü¯…£¡ g¡üÕ…8Ø…ÛÜÝ Û£ Ü€g€gŠ‚gê ûcƒgbufÁûcØ«q¢1È¡ÝÀœÜÄœ¯ÅœóƜǜ€Èœó‘¥_¿´Òw‚JĤĤŤ•  Ñâó:½ÖàMBÿ  Ü…  ¡$Ý…œ ã…üº† £üÞ† £üè°TnŒTLZˆ ! § ˜ CB· Ÿ ed¾   ‡†¿ ¯ ©¨Î «<Í  Í o=Í 8>Í ãCÍ ÑÍ ÞÍ  FÍ ÁÍ ÎÍ ÑGÍ ƒHÍ f?Í ¨Í µÍ �9Í ê&Í z7Í ¼'Í É'Í -7Í 5Í ¨*Í µ*Í Ò4Í (2Í ù0Í ƒ1Í Ú0Í Ü+Í ¾9Í Ë9Í ))Í Â;Í Ï;Í &Í �>Í �>Í Í%Í F$Í �AÍ œAÍ ¹#Í #Í %Í ›QÍ ÚÍ äÍ QÍ æ…Í ú…Í –µdBhttps://docs.rs/futures/latest/futures/future/trait.FutureExt.htmlÁ FutureExtÁ boxed_localÁ͵µdboxedÁ”¶¢¶µd¿´½¶͵”¶¢¶½¶€‹ E¢¶fuseÁ­Bhttps://docs.rs/futures/latest/futures/stream/trait.StreamExt.htmlÁ StreamExtÁ?https://docs.rs/futures/0.3/futures/stream/trait.StreamExt.htmlÁ°½¶€¢¶‹ ”·­¢·é·°÷·½¶€¢¶‹ ”·­Ç™¢·°Å™é·÷·½¶ core::taskÁûcore::task::readyÁö…ùûready!Á×¹ùÍ„ƒº×¹ûƒºù ÿ …Ìí¦£¬©ö€#…#ˆ#‹#Î!Ñ!Ö!ÔPŽQ—PŽPÄQýÆþÆÈÇ÷±¯²ƒÿƒÿÿÿÿÿÿÿƒÿŒ»›»ª»"¶DA)Òdåzt_Æ»è\6x2é°ÕÉ'=º¿2ZМvZ{¾¬u(Ëíç Fëd5TªÚý¿f™&Á]bȾŽš‰Îõ°À¼¾xæsÈÙ¥VÝJMD <Ú÷v^âòJ”¼üŒ¼ß_Ý1ˆŠSAç-ñ¹®°ìØ�YdÄ–{2 L{oAÙ�$Z)?è\xçè@¦««< ¥5Å‚ú眻'à~Ç Ê¶Àzw¤_ʂ̭t*ÇñhiÝ{%§‚¼h>ªžè ÖǬÚè}o% $º·)ŸÜ›w„ÊþÊÕÛG<èˆG"âœzMn‡êrÙcQëÿ‚×dG.ùáfï•ZåyÏ>GYšœ8‰žZ`‘O»áU"áéíÿ€¨@aå½.†­ìvíTpS·¤:Iú«ýõ5Wm­¯É í8¯ªp¥Bx 1�¯‰Ö‚JR[ˆ,gÌ~R4htƒí1üºiЬÒ@� 1M”„ä§_’p¶h�XhRªêìô,<٢˚ŸÞ äuô}­Ï†…7cúŽÌFˆ:È5=€Gä5Q˜^,Ûý×´3r¨.kZLüäöYôª,é.ùýÓÀžÍþ%VüJÙ9.¾¾³¹»v>Q�Ã�œ.³žóÿ Âö¢7À¢ûʽÓc�è–Ä…ºˆ›V¹À¤�¯HLdè—ö¯÷Öƒ@³H’Bþ$20�\—^=H–q¨p„ ÆLO Q!µÃ„Nž¬3†g#^V »ÀFVþTHås£‘ö&+ÕCr´ %¢bK ۦ“�7þïn%ÆrŸé¸(&N[ïh(àþ"åu9Iû„Ý£G’ÿÂhjZV°Äùoö^a�¸Œ/Á•ù–XP[ÏÇ`k†\À(×93 GGÄv#F³—M#�¨}àŽŸìõtGDïàb£CâÂú‡[C¹¿ýVT:µ qKñ>A€¬�2î1pZÁ–oξÁÛBhj¿—�‹X�¶¢—LеbëŸæ÷Î'î9_«AÔ· ÷P0v.¢øõÙwü$ø!ƒ?�kr‚F ÄÔl1ºRÔ2½Üm¸ïDÒî…ƒ= L¨Oi ^Gý“¾{;ZøçÜBêI_‰ûį©…t±ë½Ûk3rêF:.í©ÃÑ-gkÇÖêh‹ß&irAÛëTÐŽ¿Ÿ²_ýk;ˆ=¦Ïû~’äºà}+zJ‡¢F*¶w…!{åíáYû 5uh˜wg!È�W™!fÓj5×öý”œö C–✥¦’É€Q�€SâܳËu¼Ç¾üvë² úq%39 .™N±2|�”L�ÎÊh’Hë°þï Ê_jšÈÙ¥87%'uT±"ÆìÜw oYx\Ä¢¦†ìœø+(¢Ú å%Á¢ Ò d †W2­~ÄX@ ] Èçä+O7«HúÎÕîÍfçØ‰¢Mß�ÆÌ“¥Ÿ¹Ý±8otkÅì ?ჃƒÙÁëLœêZ]Œëo¡r¤á*QºjËc¸´°¹è(¾ÜáÜ�kbs~nË4üÙHŒ•q>Ã}@CM£ÉRš�ï]�crù„¬? ¹qµuR¤«iÉ-PÊjûú¢XÑ_žàéµE‚–»ÁK¨¥b›”Ùƒ¼°¡¿»,+šƒ¿tÂ×{Í�;E¶6'ÄÙ n;¤ÙÊÂØe Õ#7�Û�¦¡*¹è&Ý1 ìÓ^ñ•LTþ¾ ÁV©Ê•JXÅ…½6¬©V÷x(n:Y¤¶¸æ!Oß�s ’?�qÏÅ5Éë«kߊÀïÕ¥º:µÁ röV`?Ïãá•7Ã÷ªÁôŽ‚)ùå'Vd0Íß|qB&ƒJö‡¹¢.ŠþÌ%’§Í(>˜ëÌ`ØÕ‘�¹öö�-em•Óµó\üc5€ÚÞ‹dé|òÜ£z‰RèÎE2º‹P3ù×U©®[£[R?4n5iná¤ã¼@Š3€gñxœœBtü®{Ðw|j@ˆ@%QFkdk�@Ÿ@<Q]k{k<¯>C@QRgÅikÒ‹ <´>S@Q]gÊi.k݋Ě 3û3[>K FVIvi_ qDx÷{ |¦2È3Ú3b4g4l4n4r4w4›4y7¨9"<Æ<6=�=>R>v>|>¿>k?®@ATADœD³DËD0F3G7G>G™GìGKH�HÀHâHI'I£I¨I­I¯I³I¹ILLx NOQ�#Q‚ZW`Ó`ë`“bíbPchc e\etg hkhÄhimiŒi’iÕitjŠk­kÒkzno*oCoDqBrFrMr¯rÇrit½t(u@uOv—vëv?w‘w´wÖwøwxºxÆxÒ{ |}}} }%}'}+}/}5}TR}›Š·ŠÒŠçŠüŠ‹.‹‹‹í‹ÿ2‹‘“ó“â”Þ–û–4—R—ƒ˜–˜¨˜°˜Ñ˜ó˜™7™Y™3õ3<Z>¹>c@KFOIQhguiÏi?k_q@xÂxõ{|è‹<=å=¹><?f@\D|G0H!Qª`)cigNhiÏiEjBkÓn†ru"w“Š‹è‹ù‹ê–@—�˜¢˜                      +3ô3¡6ß8º;‹<N=>X>‚>ÿ?ô@BAsB D·DãDIF±GcHNI�K³MåP~QýX`×`a«bTc€c!egÒgƒh3isi˜iØjœk¿k¢lo.o[o]q³rßr�t,uXu¯vWw?x¿xzô{|tŠŸŠ»ŠÖŠëŠ‹k‹‘‹>“§”£–—k—¡2¿3Å3È3Ï3Ö3_4d4i4l4p4t4—4b7h7u7‘9—9¤9<Á<"=1=Š=î=û=N>r>x>º>=?L?Y?f?ª@AOADoD~D‹D˜D¯DÆD,F/G3G9G…G”GçG9HFH™H½HßHI#I I¥IªI­I±IµI5L;LHLaNgNtNKQ‹Q}ZR`À`Ï`æ`Žbèb?cLccceXeoghWhfh¿h iiiiˆiŽiÐiFjUjbjoj†k©kÌkunænõnoo&o=o@q>rBrHrœr«rÂrdt¸tu$u;uKv’væv+w:w�w±wÓwõwx·xÂxÏ{ |}}}}"}%})}-}1}P}—вŠÎŠãŠøŠ ‹*‹‡‹é‹ú‹�“ï“ݔٖö–.—L—}˜�˜£˜­˜Î˜ð˜™4™V™x™~™…™‹™‘™—™ž™¥™«™²™¹™¿™Å™Ë™Ò™Ù™ß™æ™ì™ó™ú™šš ššš š'š-š3š9š@šGšMšTš[šašhšošuš{š‚š‰š�š•š›š¢š¨š®š´š¼šÂ3Ì3Ó3ð3b4g4n4r4•4�6f7j7Û8•9™9¶;s<&=6=ð=>T>v>~>A?N?[?û?ð@>A[BsD€D�DœD³DËDEF7G‰G™G;HKHÜHþH IJI£I¨I¯I³I}K9L=L¯MeNiNáPzQåX`Ä`Ó`ë`“bAcPchc egºg[hkh iioiŒi”iJjWjdjÔj˜k»kŠlên÷noo*oCoYqFr r¯rÇritu(u@u—v/w?wÐwòwx;x¼x zñ{|}}} }'}+}/}N}pЛзŠÒŠçŠüŠS‹�‹&“�”‹–û–R—ª˜í˜™1™S™u™{™‚™ˆ™Ž™”™›™¢™¨™¯™¶™¼™Â™È™Ï™Ö™Ü™ã™é™ð™÷™ý™š šššš$š*š0š6š=šDšJšQšXš^šešlšršxšš†šŒš’š˜šŸš¥š«š±š¹šÁšÀ6r7þ8¡9Í;¯<ç<.=s=¤=ø=<>•>î>I?V?c?@ý@KAçC5D{DˆD•D©DÀDFSG‘GÕGHCH‡H KELÒMqNøP‡QcZ@`x`Ì`à`pbÑbcIc]cìdFe(gög.hch¨hÙhiWi«ijRj_jljëj¥kÈk[n©nònÿn o o7o"qbr¨r¼rKt¦tåt!u5u3vŒvÔvw7w{w{Š«ŠÇŠßŠôŠ ‹‹{‹¨‹õ‹t“ӓ̔Ȗæ–$—<—b˜‹˜ž˜¢6l7à8›9»;£<È<(=g=‘=ò=0>ƒ>Á>C?P?]?@õ@CAÛCDuD‚D�D¡D¸DF@G‹GÉGH=H{H‚K?L´MkNæPQWZ4`Y`Æ`Ø`dbÅbïbCcUcàd:egêgh]hœhÆh iKi™i×iLjYjfjÙj�kÀkOn|nìnùnoo/oqOr¢r´r?tštÒtu-u'vcvÈvív1wowuТоŠÙŠîŠ‹‹r‹”‹ï‹g“¥“¿”»–à–—6—T˜…˜˜˜Ò69³<=w=ã=@>:?ëCZD­DÄDFzGÙG.H‹H©KÛMgZD`¨`ä`tbÕb'cacðdJeúgLh¬hþh[iCj_nÑn$o;o&q„rÀrOtªtÿt9u7v�vØv ww}аŠÌŠáŠöŠ ‹‹‚‹÷‹y“ؓє͖è–)—>—g˜�˜ ˜Œ<O=>tBäD²GdHþX`a¬b�c"eÓg„h4i£l\oàr‚tYu°vXwuŠl‹?“¨”¤–—l—�<Q=>uBçD³GeHÿX`a®b‚c#eÔg†h5i¤l_oárƒtZu±vYwl‹?“¨”¤–—l—w<:=>_BÏD�GOHéX`ï`—blc e¾gohiŽlGoËrmtDuOv›vCwW‹*“‘““”�–—W—n € À Ì Õ K “ ¥ ® · À Ì Õ  W ` ž ß é ô t7£9ñ;0=ú=ž>K?X?e?2@}DŠD—D“GEHGLsNQÎ`KcAgehi´iTjajnj kônooªr#u9wÀ‹Ÿ WÉÂÁ†™Rú)Ú e«"�#™%ÿ% &°'H*1+)n'‚'™'UÇÀ¿„—Pø'Øc©"#—%ý%ž&l'*)þ0Ð1VÈÁÀ…˜Qù(Ùdª"€#˜%þ%Ÿ&m'G*ÿ0Ñ1€‹{'�'¦''“'ª'º<ƒ=G>òCFàG’HnZK`€báb÷dQeh¸hbifn3qVt±t>vßv†w‡‹~“Ö”Ò–.—l˜ò;Ÿ>3@QBgµi kÁ‹3î3´;Æ<�=R>|>¿>ù?DCF>GÿGHIßPW`íbg hÄhmi’iÕiÒjznWqMrÐtëv9xºxï{|nŠ‹‹‹í‹Þ–4—ƒ˜–˜ŒŠŠéìó÷þ"&*:CJ_fm“—ž¥©°·ÐÔáåìóú ,07>ELSZimqu|ƒ‡Ž•™�¡¥²¶º¾ÂÆÖÝäù+;?FMT[_fmt{�”˜Ÿ¦ª±¸ÑÕÜàçîõ '+29@GNU\`dhov}„ˆ�–�¡¨¬³º¾ÂÆÊÕÝêü$).38=PXet‡•𢴹ÉÎÚæëò÷ÿ     " ' , 2 8 > D J P V \ b h n t z € † Œ ’ ˜ ž ¤ ª ° ¶ ¼ Â È Î Ô Ú à æ ì ò ø þ     " ( . 4 ; B I P W ^ ŽŠ<=æ=i@‡@¥@_DcDgD}G1H$QBQCQ­`±`µ`,c0c4cjgOhiEkck�kÖnÚnÞn‰r�r‘ruu u#w%‹&‹'‹(‹ì–B—zÒ1Ò1Ò1Ò1Ò1Ò1Ô1Ô1Ö1Ø1Ú1Ú1Ú1Ú1Ú1Ü1Þ1à1à1á1ä1æ1è1é1Æš{›Áœ6�<=ê=¹>Q�Ã:ýk;ˆ=¦Ïûo­~ÄX@ ] …"¶DA)Ò@³H’Bþ$2Aß&irAÛëTmVÝJMD <Ú ìõtGDïàVíç FëdÄv#F³—TÖ%m%@ÀA–>Ã}@CM£¬¡X[�J�˜~›�s ’?�qÏÁÓ^ñ•LTþ¼ŠÀïեʂ)ùå'VdÎÈçä+O7«†iÉ-PÊjû°O Q!µÃDr¤á*Qºj˧qµuR¤«¯‰RèÎE2º‹ØŠþÌ%’§ÑP3ù×U©®[ÙŠ3€gñxœœÜ¿—�‹X�¶¢]ê…»ÓXh8�Äùoö^a�¸Pós_' >È—LеbëŸ^ʽÓc�=£[R?4n5Úö�-em•Ô_’p¶h�Xh.è¡­ðiæ5¤ÿÂhjZV°OZ]ŒëoG ʶÀzw¤ñhiÝ{%§‚oYx\Ä¢�ǬÚè}o%M#�¨}àŽŸU2ZМvZ{áéíÿ€¨@#®°ìØ�YdÄ>A€¬�2îZ äuô}­Ï†1–q¨p„ ÆLC±8otkÅŠaå½.†­ìv$œzMn‡êrÛG<èˆG"âYšœ8‰žZ`!Ò d †W2„˜},Ær‡Œy�9žÑ=ÈP“V¹À¤�¯HL?…7cúŽÌFˆ2{/{Èod—bs~n˪4üÙHŒ•q«`ØÕ‘�¹öÓۦ“�7þJ� 1M”„ä§-Btü®{Ðw|Ý1pZÁ–oÎ[$o] —þh}  5uh˜wg!séµE‚–»ÁK²<٢˚ŸÞ0¨¥b›”Ùƒ³Í(>˜ëÌÒ¼h>ªžè ÖÐŽ¿Ÿ²_nø¨ÎÅžÕ £&Ý1 ì»´ %¢bK Iû„Ý£G’N0Íß|qB&ÏÆÌ“¥Ÿ¹Ý‰wWçï¦øT¢ÜÝ-K¦>¡¦ƒ= L¨Oi f‰ûį©…i¾ ÁV©Ê•J½\ÎP’©á Ãrù„¬? ¹®_ʂ̭t*Çiná¤ã¼@Ûdè—ö¯÷Öƒ@�œ.³žóÿ; $º·)ŸÜíTpS·¤:I%c¸´°¹è(¨è–Ä…ºˆ›>‘O»áU""#^V »ÀFVFƒJö‡¹¢.Ð^Gý“¾{;Zgòë vÃ4óÂÇÈ…‹LÄÛ?œ&Á]bȾަ’É€Q�w”L�ÎÊh’H|n;¤ÙÊÂØ¸[ˆ,gÌ~R4*Â×{Í�;¶ú¢XÑ_žà±m¸ïDÒî…e1ºRÔ2½Üd‘ö&+ÕCrH-gkÇÖêh‹ljšÈÙ¥8~t±ë½Ûk3rj€SâܳËuxdé|òÜ£z×5€ÚÞ‹Ö¼üŒ¼ß_Ý1 眻'à~Ç G.ùáfï~’äºà}+zpö C–✥v`?Ïãá•7ÌþTHås£Gàþ"åu9IMˆŠSAç-ñ¹è\xçè@¦«‹¨ÃåÌ-K’ƒƒÙÁëLœêŒRªêìô,/êF:.í©ÃÑk¯É í8¯ª'htƒí1ü+(&N[ïh(Læ÷Î'î9_«_÷v^âòJ” ë°þï Ê_}HúÎÕîÍf‡š‰Îõ°À¼ ZLüäöYôª6»JlŠîfŽv.¢øõÙwaŒ/Á•ù–XPQ¦†ìœø+(‚Í!Özø)T`™%&pöêY�ž5TªÚý¿f™ÓÀžÍþ%V8[C¹¿ýVTXj2N55z1.@t6TK+Rt?3e/)]Fo $C7H}5:_9B~s~ ,@# >%oAÿk/ In*B%\c Aÿÿÿÿÿÿn$M+-ÿÿÿÿaÿÿÿ^F$ ÿÿÿpBÿnEÿÿÿ9:=w=RQ$\U%ÿuhUUJ/3^U;(0FL+j2N55z1.@t6TK+Rr/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/__internal/atomic_waker.rsÁN/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34Ár/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/__internal/atomic_waker.rsÁ 4}ò1; T<ÁA9ùZ‘\‚‡‚‡§2$)1JOMKQQKMHR KHQP%O!5'."+- -! JB*(/LB*  &NO:ICMKNQPL8QP*MQP4OQMON7PNOJQJG# MNQMP-PLMCKQPL+$8LMQOOQ9O5NO9G!O!!'"%P?POMQNHOL"PPQCA %9+2  NP<1,$" ,F# >[/MFNO1QQPOS#b #ONCM?)OHI)LT*MVRTT>NNN7RS*FLBBB+@C!%DLPQBP'V ?G+ U``A*OK846C$C4G$KQ] "?!$u@ôXd•\´ÚÂ?r˜\/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/future.rsÁN/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34Á\/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/future.rsÁ ²K²„á ÊoŽâ‘Ôð��?  @?b88 DI�aŽTk ï—PY_/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/poll.rsÁN/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34Á_/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/poll.rsÁ ÖwÃGAÎaÆ(ÔåÇ�ðð/MIA/O û_;JŠkµÃøûÚ^/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/mod.rsÁN/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34Á^/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/mod.rsÁ å`{¶ýÈ*·ÉlßÊb÷$¬¬  Ý÷FíÇp=0s<” ôôùi/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/__internal/mod.rsÁN/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34Ái/root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.34/src/task/__internal/mod.rsÁ ²ÁÞóa K˜ Î�`¦æá‰‰b E þÎŒ�µ�edyQ6bV6ÚñúôµöõøTú³û ýx86_64-unknown-linux-gnuÁì–´C-ÞU,qÑ}ýèÒ futures_coreÁ-a08f9eceddc04eb7Á"¶DA)ÒÕüŽ¢ „Р ……†Þ†eð e¯¯™™ËË‘³‡•  ¢“¢f“«f™�¤ËÞì¢ÞÞÄÞ¼¼¤¤È¤È¢È¢æ¢Ä¤ÄÈ™ ²˜À–° ¬À À˜°––¬¬¢æ™¤²È‘‘¢Þ¢¼‘¢¢…Ģп„„ˆŒ¤È¶:Î3rust-end-file