rust#rustc 1.54.0 (a178d0322 2021-07-26)stdh-2420485b9e5ef5e1core-5b228734afae15eecompiler_builtinsݘ)-d6c7a399d95d173frustc_std_workspace_core汷딹h-8063eea38dcc5e62allocųǝó-379cc252b6943a79libc޴-544ecdbd6cda3c58unwind-f78aa99d613a55bccfg_ifҺ-53ee54cd7fed2c57 hashbrownڢɍ-491902d6cb3e76dfrustc_std_workspace_alloc۱3-61834e0981b8c367rustc_demangle׿k-b56b9042c12b6535 std_detect˾畮-fb36534c113d2209 addr2line-d05c5c3c56004b7bgimliꏳȐ-42d74d2097528b38objectڏف-6fb405869b015fde miniz_oxideگΦݪ-087191a88bdaa22dadler噍ΛA-9981842c02975178 panic_unwind͕l-785e3cb61c4b1960 proc_macro-48a8f96062ed4274 unicode_xid߽-56baa69851702f2b6pp n6pb[Zstd6p:Uˤ proc_macro6pxsZ0marker6p+ ;6p 5O! 6pAAtu6p > XK6p4/J_`6p%5 :6pVj)86p {6p:u`XTd6p>tݣ0n 6pUF 6pY 6p6nZ 6p$ˢ _Marker6prJR| 6p܆$value6pl謊xO86p肧6pnh\^fw6pηŹProcMacroAutoTraits6pH%6p6c1+06pβ/o|6phWȭ4mD6pysparse6plEs6p7)ss6p8dѧ46pe7w#_D6p:|iڕ6p+zՋ36ptPNg6p)u*-6pIPD.k6p  E  6pAQ 6ph=dӑ 6p|"ڽ 6p8)Z|,+ 6p#@]6pLff6ppC3/(96p(۸|6pƆ56pL\V6p\rB6p.z5D6pINƒv6p̃M_56p$"6p?HpGE6pB6p4j˿e6pb4[ w6p.Ȕg6p qk5I6p;!6pB_D/vt 6p-nk!6pj_"6pv[#6p\mM$6p )\ء%6pģڻ4ο&6p,{OJ0'6p)(6p$˗@/l)6p6K*6pt _+6pÊu0,6p"sT=-6pm>.6pnN6/6pAo6p i N'a6p>ajDskNadvance6p;PH N starts_with6pGsNis_empty6po R+TNlen6pذPNas_bytes6p9hNbytes6pU`%%Nchars6p̈đV"kN char_indices6pr׭soNparse6p uEReject6pY"Y6p`ݨ+PResult6pE33-A['a6pji^}}[O6p!dvj8&sskip_whitespace6p>p9O block_comment6p[(uv is_whitespace6p|h word_break6pٓbc9 token_stream6pv))^ lex_error6p]UYsr leaf_token6pU5ident6p(y\ae6pp%t ident_any6pXYo ident_not_raw6pjliteral6p"U0literal_nocapture6pJÎBliteral_suffix6p{ string6pm cooked_string6pUXm6ppV* byte_string6pYɡ7cooked_byte_string6p%zfPp6pF}ՙ7 raw_string6p"nT4byte6pJB9s6p^ VҾ$s6p[)Sd character6pKbhv6p^!Ev6p|@Oyvnext_ch6p4K %backslash_x_char6pֹ2sezI6p6ЃVbackslash_x_byte6p P6p>-%d6p ۄb L6phz"76p#x6p:ؗ6ptZ6p*݅5y6p<*' 6prrs6pf,h*M 6pTY?!6pr"6pPj#6pC@_AZ$6pf?שQ2%6p&a?w&6ps89'6p,ݍ(6pfVEm)6p]2*6pNZ+6p^Kv,6p$q h^-6p]<.6ptQ{/6p_force6pd Junforce6p=1\]6pG-span6p̵G 8 call_site6pv(b6p"Yynew6pő%is_empty6p F 2B - take_inner6pɣLTL push_token6p y/push_negative_literal6p+.A6p ١Jdrop6pZ( @I get_cursor6p2γ>*n6ptPErr6pafrom_str6pZ/D6p l)fmt6p³1Pv6p ֪}Xfmt6px? =6pשּׁ\fmt6p{6peR7from6p j6p #_"from6po 6pFo+ from6p5ɫ# 6p*f from_iter6pYd~I6pB27~ 6pvN0 from_iter6p־qI6p+Ne 6pS,extend6pt!I6px 6p-u/]e 6pw#qrmextend6p֫I6p!5!AN TokenTreeIter6p=RV6pItem6p< &IntoIter6pDa-BE into_iter6p*Ԛ 6XB6p x:1path6p!@is_real6pۈ' 6p\ .fmt6p,{#Ŵ6pNT call_site6p;%O mixed_site6p+"| resolved_at6pvZx̧ located_at6plH='join6p1 first_byte6pVZ_ZI last_byte6p&19 u!6p [O5l[ fmt6pAs.&hXdebug_span_field_if_nontrivial6p֯ff6pkeNt/new6p5$i delimiter6pԴVstream6p Zaspan6p7ki span_open6p;I1 span_close6pMjH+4set_span6ph+y)6pVfmt6p?Uu6pUB_fmt6p=P=6pd@u=_new6p*hnew6p,y4dT new_raw6pk qHspan6psEN+set_span6pKL(5is_ident_start6pm gis_ident_continue6pvalidate_ident6pm)M6pQb'ident_ok6pg%Q6pirJ'Ueq6pY5 G6pmtT6p6&eq6p.ePBXk6pU^ ifmt6pxZ|\6pwO1fmt6px%[ܔsuffixed_numbers6p{MmV unsuffixed_numbers6pB NQ6p(ը0j_new6p]ef32_unsuffixed6p Ōff64_unsuffixed6p8 wstring6p/tx~ character6pq>Q byte_string6p|}Mm:span6pz`O `1set_span6pΌcMsubspan6pRѲ&R6p=o6pa*0 qLErr6p :%Pfrom_str6p5Ҋ6p|^bfmt6pa3];6pLXNWEfmt6p2x 5-imp6pH56ph=cÊ\6pYr6pϩg#6pmy6pI9G6pǯ5f!6pu`?N]6p4.1MsE6p 3dpL+ 6pǔ$n3 6p]P$z+ 6pVs M_N 6pz  6pg`~\6pT6p zG 6p3} 6pz8jI[6pj)و?6pᱼ6p[iKK6pSƖ6p45wi6pGSn6pv~3XT6pSo_6p̥Otk6piI6pdZ6p}.6p<4Pe\6pGT熟  6pA03!!6pJVB"6pyaU8#6pX{+n:$6pX_%6p)dv&6pR%I80'6p&ȃl(6pHtbLexError6p'lWCompiler6pB6p=?06p;dsr+Fallback6p)Enl6p^y06p+GG6pK: call_site6pߦߠ4mismatch6p[* 6p%4z%new6p>Pxeis_empty6pFxKJ evaluate_now6p!}into_token_stream6pp 6pZenew6pKcis_empty6p"+5runwrap_nightly6p &"WC unwrap_stable6pL6p9KNErr6p[E@from_str6pBuHJUproc_macro_parse6p@;,6p A6pRҤg6p6wNfmt6p#(h6prudfrom6pC)6 O6p}RSfrom6p_CGh26p'`Yfrom6pcPinto_compiler_token6pLQkxb6p tS]Dfrom6pJ 6pcջt from_iter6pTZR I6pra 6pu֢`$ from_iter6p-I6p%T6pf eҖ6p3b 6pFextend6pi5I6p=" 6p(9((extend6pѭW*-(I6pVaY  6p^|qYfmt6pNw<6p5犢span6pG)ղ&6p5U from6p74`6pBOfrom6pm{{6pI)۳оfmt6p_*6p;F'Ӧfmt6pt s} character6pq7. byte_string6p#46drIspan6p&5bset_span6plDIsubspan6p<ORR6pU,xunwrap_nightly6p$6p`~from6ptH%6pHwErr6p5ReHfrom_str6ps2c&6pmfmt6pBgNq'6p\kڌ!fmt6pR[W 6pw ?%Vv6p@"@|mu6po)6pnS6p+*6pS76p,%䫰6p*d 6pzo( 6pՖ 6piuT 6p ff 6p*Taa)6p2g5٘r6ppd6pKA"s 6pmɹ6pv\c6pp{([6pj6pL-6pb`/6p~6p n˟t6pB9vq6p9.6pWx4J6p"C|6pyޞ{$v6p5D6p0x# 6p5f"~!6pE1"6pΗ0fU?#6p7bELexError6p6Rd]inner6pqb9'_marker6ph@+R6pFq8_new6pǪo^ _new_stable6p/S,new6pyA< is_empty6pĨ&ʿ6p땺[default6p9db6p'SoErr6pL%from_str6p~"Ț6ptu0y6p[@2 kfrom6pTպi6pסia9سfrom6p r!m 6pOlLXfrom6p+XCٍ36p+@extend6p?\I6pZ*66p^P~(Vextend6p*۝!iI6pu!6pz6p7[TD from_iter6p± h~I6p'|jԏf 6py< from_iter6p;χ(3zI6p{E㹈I6p>ֲz 6pBq@fmt6p.Ī\=6 6p۔#וc9fmt6pqm{:M0 6p#span6p̠K 6p)fmt6p_>e[6pN$5fmt6p뮁TD6phQ6pd$*-_new6pmK_3 _new_stable6pcmg{S call_site6p="X mixed_site6p[ resolved_at6pf~H located_at6pr5unwrap6plA|unstable6pd<( 8oAjoin6p`=6p<fmt6p6aε6p;Xw!span6pY}UWset_span6p|6p:Q'from6p+[Sf6p]_Afrom6p=:6pB>^from6pE*o6p!JYfrom6pЗy6(6pHO>],fmt6p(`a6pS1fmt6ps6pҘ连_new6p8 _new_stable6pW{LTnew6p{47 delimiter6p)Jstream6p2k(l҃span6pߒڦF span_open6p[= span_close6p(/a set_span6pϛ^6pw 2+fmt6pB^EFS$6px&+d>fmt6p5e6pzݶnew6p#};4)as_char6pQ 18Ispacing6pw$@kGspan6p_(!set_span6pޭ(_&6p 39c~fmt6pnJwZb 6p>_YS`fmt6pDZx6pǶ2^_new6p{B;Tnew6pe-:__new_raw6pkگ\;9span6p6e set_span6pEwx  6p*o$ieq6p,!6pVET6p"7.$vɀeq6pZ["6p#ońg#6p[ Z< partial_cmp6p'+W:$6pu(KeMcmp6p{p0%6p9shash6pvpLH6pTa6n&6p@JWL fmt6p}Gq05'a6p<_clone6pM]I6pzcM8eo'a6pDhԝo6p`r|l'a6p1V:eassert_receiver_is_total_eq6pCqL#6pT! RP'a6pErcX6p<\'a6pGAgA_eq6pL2qne6pezs TokenStream6pCsinner6pRy6pIY{clone6p `>^LexError6pKu-Qspan6p iw 6pPgRfmt6p`YP2 SourceFile6ptak~-path6pNp!6p}2mdclone6p ""6pB H^#6p|&+Ծeq6p~ "Pne6p}?⧄$6p3%6p;5Jassert_receiver_is_total_eq6pG  LineColumn6pS#zline6p)hTcolumn6pwZ(r&6pjclone6pč_Ϸ~'6p;TN ) (6p<Bfmt6pA[loV)6pRj*6pO?eq6pV< Sʾ+ne6pC69j.+6p5w,6puj]2Nassert_receiver_is_total_eq6p V gwSpan6p&/d0X-6pnTc:clone6pO:qSZ.6pryԲ/6pWDb|06pVn?^Kxeq6pq=7l\16psuu26pMӣassert_receiver_is_total_eq6p/Group6pqӥ}X delimiter6p]1vLXstream6p#]l!span6pF:j36pðҕA1clone6pLAIdent6p }o}Ssym6pOl#J4(qspan6pKTتraw6p46p +-BLDclone6p5TLiteral6pC ~}Wtext6p!9 'span6p9]B56pk>!@clone6p.dz u8_suffixed6ps u16_suffixed6p4| u32_suffixed6pV= Vus u64_suffixed6phB\{ u128_suffixed6p663<$usize_suffixed6p%ٚ i8_suffixed6p*fX i16_suffixed6p6W- i32_suffixed6pqMe! i64_suffixed6p:~F芪 i128_suffixed6pR4s:Yisize_suffixed6p CÅ f32_suffixed6pi f64_suffixed6p":O u8_unsuffixed6pؗJKmGu16_unsuffixed6pn].j6iu32_unsuffixed6pH Yu64_unsuffixed6pt3E;u128_unsuffixed6pgxkezusize_unsuffixed6prv i8_unsuffixed6pQ(i16_unsuffixed6p 9lli32_unsuffixed6p =clone6psR?Group6p *hCompiler6pfQ6pXM06pnđ͸Fallback6p:M )6pOz06pYAiY-6pn\d clone6po#`7qIdent6p` Compiler6pEfǦD6pu㈓S(06p&\Fallback6pMW6pt@w06py.6p8{nKclone6pU^sLiteral6plTCompiler6p}JؗK6p 806pY,Fallback6pmˈy+*6pZ+06psz/6p#SiĨeclone6pőe= u8_suffixed6p} u16_suffixed6pN{2o u32_suffixed6pIH׊5 u64_suffixed6p5  f64_suffixed6p.t/l u8_unsuffixed6pH{mwu16_unsuffixed6pc"+Yu32_unsuffixed6pQ G̓u64_unsuffixed6pΖ`Tu128_unsuffixed6pyW@usize_unsuffixed6p; i8_unsuffixed6p-X6f1i16_unsuffixed6p\`Γ*i32_unsuffixed6p5K?Ti64_unsuffixed6pP[i128_unsuffixed6po!n Tisize_unsuffixed6p~ TokenStream6p iinner6pW_marker6p,6p'clone6pp(+Span6p!,3inner6pS@W_marker6pCc+s"N-6p]ݩww.6poM$bclone6p}(V-}լ TokenTree6pg"jGroup6pf>vs76p ^ir\a06p :QIdent6pIuY~O6p.Di>06pw NPunct6pn`sr 6p1RR?06pwLiteral6p?Y6p/)j06p u㡸v/6p?bclone6p@xGroup6pd binner6pC UZ06p#Eclone6p?i6pm"Brace6pz EJ6p᝙Bracket6pK$6p[^None6p >66p'e16pH?I^\&26p10&clone6p7Bmu:36pIlfmt6pZ^0q46pXf56p_Kassert_receiver_is_total_eq6pՅ 66pՇ76pVBTeq6p.h'Punct6peIch6p( bspacing6pU&yspan6p_186plclone6p,cOSpacing6p0=Alone6p RU6pS5Joint6p3p6p?p`96p(0'v :6pBOZclone6pP{8MHk;6pOifmt6pj<6p G"=6phBUassert_receiver_is_total_eq6p# 3>6pnX9C ?6pPG\eq6pwPrNqIdent6p {8inner6p!1B4~_marker6p N5@6p Mclone6poloLiteral6p0!mIinner6pX 68N_marker6p9AA6p8kmQclone6p3D+' u8_suffixed6pTc| u16_suffixed6pa앀1 u32_suffixed6pVkJ u64_suffixed6p %D u128_suffixed6pvJ ΁Qusize_suffixed6p "02[ i8_suffixed6p矛NC i16_suffixed6pr%d=M i32_suffixed6p uqU i64_suffixed6pՐr i128_suffixed6p@Eܲisize_suffixed6pثm u8_unsuffixed6p&ˌ]ɳu16_unsuffixed6p燰*pUu32_unsuffixed6p1yd籵u64_unsuffixed6pJ%au128_unsuffixed6p/,WŇusize_unsuffixed6p `j^ i8_unsuffixed6px_i16_unsuffixed6pv\Utai32_unsuffixed6p. ei64_unsuffixed6pyB3]i128_unsuffixed6pz5C;isize_unsuffixed6p%-6f`IntoIter6p[inner6p[t\_marker6pwr0{66p%aclone6pH_'V3 $HX9$G E*7$7$*$7xE2f2.".....ӇӇ Ӈ00Ň 0  @   @ CompilerFallbackCompilerFallbackÚ,CompilerÚ,Ú,Ú,Ú,Ú,Ú,!Fallback17!!!!!!CompilerFallbackCompilerFallbackCompilerFallbackފCompilerފފފފފފFallback Group      ك Identك ك ك ك ك ك  Punct      LiteralK A wrapper around the procedural macro API of the compiler's [`proc_macro`]N) crate. This library serves two purposes:O,|6 [`proc_macro`]: https://doc.rust-lang.org/proc_macro/9L - **Bring proc-macro-like functionality to other contexts like build.rs andOI main.rs.** Types from `proc_macro` are entirely specific to proceduralLF macros and cannot ever exist in code outside of a procedural macro.IM Meanwhile `proc_macro2` types may exist anywhere including non-macro code.PF By developing foundational libraries like [syn] and [quote] againstII `proc_macro2` rather than `proc_macro`, the procedural macro ecosystemLA becomes easily applicable to many other use cases and we avoidD; reimplementing non-macro equivalents of those libraries.>F - **Make procedural macros unit testable.** As a consequence of beingIG specific to procedural macros, nothing that uses `proc_macro` can beJL executed from a unit test. In order for helper libraries or components ofOF a macro to be testable in isolation, they must be implemented usingI `proc_macro2`.& [syn]: https://github.com/dtolnay/syn)* [quote]: https://github.com/dtolnay/quote -  # Usage  F The skeleton of a typical procedural macro typically looks like this: I  ```  extern crate proc_macro;  $ # const IGNORE: &str = stringify! { ' #[proc_macro_derive(MyDerive)] " # };  # #[cfg(wrap_proc_macro)] N pub fn my_derive(input: proc_macro::TokenStream) -> proc_macro::TokenStream { Q7 let input = proc_macro2::TokenStream::from(input); : - let output: proc_macro2::TokenStream = { 0 /* transform input */ ! # input  };  * proc_macro::TokenStream::from(output) - }  ```  D If parsing with [Syn], you'll use [`parse_macro_input!`] instead to GJ propagate parse errors correctly back to the compiler when parsing fails.MQ [`parse_macro_input!`]: https://docs.rs/syn/1.0/syn/macro.parse_macro_input.htmlT # Unstable featuresE The default feature set of proc-macro2 tracks the most recent stableHJ compiler API. Functionality in `proc_macro` that is not yet stable is notM# exposed by proc-macro2 by default.&E To opt into the additional APIs available in the most recent nightlyHG compiler, the `procmacro2_semver_exempt` config flag must be passed toJH rustc. We will polyfill those nightly-only APIs back to Rust 1.31.0. AsKK these are unstable APIs that track the nightly compiler, minor versions ofN; proc-macro2 may make breaking changes to them at any time.> ```sh 7 RUSTFLAGS='--cfg procmacro2_semver_exempt' cargo build: ```L Note that this must not only be done for your crate, but for any crate thatOK depends on your crate. This infectious nature is intentional, as it servesND as a reminder that you are outside of the normal semver guarantees.GK Semver exempt methods are marked as such in the proc-macro2 documentation.N # Thread-SafetyE Most types in this crate are `!Sync` because the underlying compilerHL types make use of thread-local memory, meaning they cannot be accessed fromO a different thread.doc html_root_url "https://docs.rs/proc-macro2/1.0.29$=allow clippy needless_doctest_main clippy vec_init_then_pushDprelude_import macro_use cfg  use_proc_macro ,  :D2..*- m 2  * 'aOO-NN&NNNNNNNNNNNN)NN8NNYY6'a\O]\]O  + 0 " 6 N ( 2 р0܁"effffe ɂ4݂ 0 8Չ = Ǝ*ߎ ܏2 Α9Κmnnnnm 7 Bpqqqqp 6ѯ 0ڶ stttts suuuus 5»׼ vwwwwv vxxxxv ZI{{I99  XI}}9  UI  1 8% / 6 ) - 8 ? ˃=cfg! wrap_proc_macro" 0  )    <doc" hidden!+͚ ؚ %Л֛֛ݛ   L Force use of proc-macro2's fallback implementation of the API for now, evenO/ if the compiler's implementation is available.2 J Resume using the compiler's implementation of the proc macro API if it isM available.!͢ȣ*ϥ*ݥ Hcold$ӯ³ ƺ"cfg%ú notº span_locationsٺ Ļ7ջ4̾4Ӿ4cfg' use_proc_macro6cfg' use_proc_macro6'BI77 EI 7 BI EI  9  '. Get the path to this source file as a string.14cfg* not span_locationscfg* hygiene/-0cfg* not span_locationscfg* not span_locationsʃcfg*à notƒ span_locationsʅ4х Vه>$#Ȍҍ َ&4•ݕ65-Ϛ1&ќ - Ȟ0 Š& !#TTŧ קݧЩ4ש׫4cfg0Ы notϫ span_locationsޫ߳+ٻ((ɾ!ھ$+&GRR  246path5 wrapper.rs cfg5 wrap_proc_macro(<  % b /92/ 7 K*4664 A(AI EI 7 ؄BI ؊EI  4ǎ̐!ߐ’,ɓ*4”4 Û ޛ#  ў'-˦4޲ شƴcfgƴAɴѴ hygieneʴĴ.-'/+3w&4 V>$# &,s#<< -1&,#‚ȄT ̈́4͈4А((!ț$+֢&FR .~Ω( ت24Ų4%          !%F- Error returned from `TokenStream::from_str`.$0%%%&/';(: Returns an empty `TokenStream` containing no token trees.(=*' Checks if this `TokenStream` is empty.)**+\2 `TokenStream::default()` returns an empty stream,*53 i.e. this is equivalent with `TokenStream::new()`.+6+/M Attempts to break the string into tokens and parse those tokens into a token,P stream., ,F May fail for a number of reasons, for example, if the string contains,IB unbalanced delimiters or characters not existing in the language.-E.G NOTE: Some errors may cause panics instead of returning `LexError`. We.JA reserve the right to change these errors into `LexError`s later..D //7/0K11cfg1R11 use_proc_macro112632cfg2R22 use_proc_macro223644!55CI6555 566EI777 77 7787 Collects a number of token trees into a single stream.8:9CI999 9::EI:: : :; =F Prints the token stream as a string that is supposed to be losslessly;IG convertible back into the same token stream (modulo spans), except for4>?1 Prints token in a form convenient for debugging.>4?4?@^@@AA4ABB4BCV)V!W-[< The span of the invocation of the current procedural macro.X?YD Identifiers created with this span will be resolved as if they wereYGD written directly at the macro call location (call-site hygiene) andYGI other code at the macro call site will be able to refer to them as well.ZL^E The span located at the invocation of the procedural macro, but with[HF local variables, labels, and `$crate` resolved at the definition site\IB of the macro. This is the same hygiene behavior as `macro_rules`.]E]+ This function requires Rust 1.45 or later.].^cfg^U^^ hygiene^^b.G Creates a new span with the same line/column information as `self` butaJ4 that resolves symbols as though it were at `other`.a7bd-H Creates a new span with the same name resolution behavior as `self` butcK- with the line/column information of `other`.c0dh'3 Convert `proc_macro2::Span` to `proc_macro::Span`.e6eH This method is available when building with a nightly compiler, or wheneK< building with rustc 1.29+ *without* semver exempt features.f?f # Panicsg g< Panics if called from outside of a procedural macro. Unlikeg?G `proc_macro2::Span`, the `proc_macro::Span` type can only exist withingJ. the context of a procedural macro invocation.h1hcfghUhh wrap_proc_macrohhj)jcfgjUjj wrap_proc_macrojjjdocjUjj hiddenjj}/3 Create a new span encompassing `self` and `other`.y6z? Returns `None` if `self` and `other` are from different files.zBz= Warning: the underlying [`proc_macro::Span::join`] method isz@E nightly-only. When called from within a procedural macro not using a{H9 nightly compiler, this method will always return `None`.{<|^ [`proc_macro::Span::join`]: https://doc.rust-lang.org/proc_macro/struct.Span.html#method.join|a}{2 Prints a span in a form convenient for debugging.ʀ54B Returns the span of this tree, delegating to the `span` method ofE+ the contained token or a delimited stream..&+ Configures the span for *only this token*..I Note that if this token is a `Group` then this method will not configureLF the span of each of the internal tokens, this will simply delegate toI' the `set_span` method of each variant.*Ɗ݌iȍii؎oŏ D Prints the token tree as a string that is supposed to be losslesslyGE convertible back into the same token tree (modulo spans), except forאHL possibly `TokenTree::Group`s with `Delimiter::None` delimiters and negativeO numeric literals.46 Prints token tree in a form convenient for debugging.94ĕ".>A Creates a new `Group` with the given delimiter and token stream.D5 This constructor will set the span for this group to8C `Span::call_site()`. To change the span you can use the `set_span`ţF method below.$& Returns the delimiter of this `Group`ɥ)#H Returns the `TokenStream` of tokens that are delimited in this `Group`.ȦKC Note that the returned token stream does not include the delimiterF returned above.G Returns the span for the delimiters of this token stream, spanning theJ entire `Group`.ʩ ```textҩ  pub fn span(&self) -> Span {  ^^^^^^^ ```B Returns the span pointing to the opening delimiter of this group.Eƫ ```textΫ " pub fn span_open(&self) -> Span {ޫ% ^ ``` B Returns the span pointing to the closing delimiter of this group.EЭ ```textح # pub fn span_close(&self) -> Span {& ^ ```Ү̱&H Configures the span for this `Group`'s delimiters, but not its internalK tokens. I This method will **not** set the span of all the internal tokens spannedLE by this group, but rather it will only set the span of the delimiterӰH$ tokens at the level of the `Group`.'ܱH Prints the group as a string that should be losslessly convertible backKL into the same group (modulo spans), except for possibly `TokenTree::Group`sO# with `Delimiter::None` delimiters.³&<< /< Creates a new `Punct` from the given character and spacing.?I The `ch` argument must be a valid punctuation character permitted by theL- language, otherwise the function will panic.0ýG The returned `Punct` will have the default span of `Span::call_site()`˽JB which can be further configured with the `set_span` method below.E; Returns the value of this punctuation character as `char`.> F Returns the spacing of this punctuation character, indicating whetherIE it's immediately followed by another `Punct` in the token stream, soH@ they can potentially be combined into a multicharacter operatorCH (`Joint`), or it's followed by some other token or whitespace (`Alone`)K% so the operator has certainly ended.(1 Returns the span for this punctuation character.4&3 Configure the span for this punctuation character.6}G Prints the punctuation character as a string that should be losslesslyJ* convertible back into the same character.-46#-G Creates a new `Ident` with the given `string` as well as the specifiedJ `span`. B The `string` argument must be a valid identifier permitted by theE- language, otherwise the function will panic.0I Note that `span`, currently in rustc, configures the hygiene informationL for this identifier.F As of this time `Span::call_site()` explicitly opts-in to "call-site"II hygiene meaning that identifiers created with this span will be resolvedLH as if they were written directly at the location of the macro call, andKI other code at the macro call site will be able to refer to them as well.L< Later spans like `Span::def_site()` will allow to opt-in to?E "definition-site" hygiene meaning that identifiers created with thisHH span will be resolved at the location of the macro definition and otherK? code at the macro call site will not be able to refer to them.BH Due to the current importance of hygiene this constructor, unlike otherK; tokens, requires a `Span` to be specified at construction.> # Panics E Panics if the input string is neither a keyword nor a legal variableHH name. If you are not sure whether the string contains an identifier andK" need to handle an error case, use%> syn::parse_str::<Ident>4 rather than `Ident::new`.." Returns the span of this `Ident`.%&C Configures the span of this `Ident`, possibly changing its hygieneF context. n#T 8|(s)HHG M Prints the identifier as a string that should be losslessly convertible backP into the same identifier.4|4ډ,'3(1 Creates a new unsuffixed floating-point literal.4I This constructor is similar to those like `Literal::i8_unsuffixed` whereLF the float's value is emitted directly into the token but no suffix isœIA used, so it may be inferred to be a `f64` later in the compiler.DI Literals created from negative numbers may not survive rountrips throughܔLD `TokenStream` or strings and may be broken into two tokens (`-` andG positive literal). # Panics G This function requires that the specified float is finite, for exampleJ3 if it is infinity or NaN this function will panic.6&/ Creates a new suffixed floating-point literal.̘2E This constructor will create a literal like `1.0f64` where the valueHH specified is the preceding part of the token and `f64` is the suffix ofؙKD the token. This token will always be inferred to be an `f64` in theGA compiler. Literals created from negative numbers may not surviveDF rountrips through `TokenStream` or strings and may be broken into twoI# tokens (`-` and positive literal).& # Panics ϜG This function requires that the specified float is finite, for exampleלJ3 if it is infinity or NaN this function will panic.6(1 Creates a new unsuffixed floating-point literal.4I This constructor is similar to those like `Literal::i8_unsuffixed` whereLF the float's value is emitted directly into the token but no suffix isIA used, so it may be inferred to be a `f64` later in the compiler.ʠDI Literals created from negative numbers may not survive rountrips throughLD `TokenStream` or strings and may be broken into two tokens (`-` andG positive literal).ˢ # PanicsӢ G This function requires that the specified float is finite, for exampleJ3 if it is infinity or NaN this function will panic.6&/ Creates a new suffixed floating-point literal.2E This constructor will create a literal like `1.0f32` where the value¥HH specified is the preceding part of the token and `f32` is the suffix ofKD the token. This token will always be inferred to be an `f32` in theߦGA compiler. Literals created from negative numbers may not surviveDF rountrips through `TokenStream` or strings and may be broken into twoI# tokens (`-` and positive literal).¨& # Panics G This function requires that the specified float is finite, for exampleJ3 if it is infinity or NaN this function will panic.ݩ6& String literal.ϫ% Character literal.' Byte string literal.խܮ, Returns the span encompassing this literal./&1 Configures the span associated for this literal.4FC Returns a `Span` that is a subset of `self.span()` containing onlyFB the source bytes in range `range`. Returns `None` if the would-beE. trimmed span is outside the bounds of `self`.ձ1C Warning: the underlying [`proc_macro::Literal::subspan`] method isFE nightly-only. When called from within a procedural macro not using a޲H9 nightly compiler, this method will always return `None`.<j [`proc_macro::Literal::subspan`]: https://doc.rust-lang.org/proc_macro/struct.Literal.html#method.subspanmR  1L޷~4޸4M Public implementation details for the `TokenStream` type, such as iterators.PκҺ  վ'ݾԿ4ۿ  d'aautomatically_derivedballowb unused_qualificationsK'aKautomatically_derivedballowb unused_qualificationsL'aLinlinebLM'aMautomatically_derivedballowb unused_qualificationsM'aMinlinebdocb hidden no_coveragebM N'aN  automatically_derived c  allow c   unused_qualifications  N'aN  inline c N  inline c NG  #۠#۠automatically_derived#۠e#۠#۠allow#۠e#۠#۠ unused_qualifications#۠#۠R#۠#۠inline#۠e#۠R#۠9 ޡ $$automatically_derived$e$$allow$e$$ unused_qualifications$$S$S$3  ''automatically_derived'f''allow'f'' unused_qualifications''U''inline'f'U'( V( ( automatically_derived( g( ( allow( g( (  unused_qualifications( ( V( ( inline( g( V(( ( inline( g( V()W))automatically_derived)g))allow)g)) unused_qualifications))W))inline)g))doc)g)) hidden))) no_coverage)g)W)L**automatically_derived*h**allow*h** unused_qualifications**X**inline*h*X*++automatically_derived+h++allow+h++ unused_qualifications++Y,,automatically_derived,h,,allow,h,, unused_qualifications,,Z,Z,- [- - automatically_derived- i- - allow- i- -  unused_qualifications- - [- - inline- i- [-- - inline- i- [-.\..automatically_derived.j..allow.j.. unused_qualifications..\..inline.j..doc.j.. hidden... no_coverage.j.\.//automatically_derived/j//allow/j// unused_qualifications//]//inline/j/]/00automatically_derived0j00allow0j00 unused_qualifications00^1 _1 1 automatically_derived1 j1 1 allow1 j1 1  unused_qualifications1 1 _1 1 inline1 j1 _12`22automatically_derived2k22allow2k22 unused_qualifications22`22inline2k22doc2k22 hidden222 no_coverage2k2`2ʉ^ 6‰6‰automatically_derived6‰k6‰6‰allow6‰k6‰6‰ unused_qualifications6‰6‰b6‰6‰inline6‰k6‰b6‰K Ș ؘ 77automatically_derived7l77allow7l77 unused_qualifications77c77inline7l7c7?  CCautomatically_derivedCmCCallowCmCC unused_qualificationsCChCCinlineCmChCD!D!D!D!D!D!D!D!D!D!D!D!D!D!}!}!}!}!}!}!}!}!}!}!}!}!gautomatically_derivedvallowv unused_qualificationsinlinevu!automatically_derivedwalloww unused_qualificationsinlinewz Ú, Ú, ̚" ! !  automatically_derivedwalloww unused_qualificationsinlinewV!!!!!!ʲ!automatically_derivedxallowx unused_qualificationsautomatically_derivedxallowx unused_qualificationsinlinexY#######automatically_derivedxallowx unused_qualificationsinlinexY$$$$$$$automatically_derivedyallowy unused_qualificationsinliney_&ފ&ފ&&&&&automatically_derivedzallowz unused_qualificationsinlinez!'!'!'!'!'!'!'!'!'!'!'!'!'!'ώ!(ώ!(ώ!(ώ!(ώ!(ώ!(ώ!(ώ!(ώ!(ώ!(ώ!(ώ!($LL An abstract stream of tokens, or more concretely a sequence of token trees.!O"E This type provides interfaces for iterating over token trees and for"H( collecting token trees into one stream."+#> Token stream is both the input and output of `#[proc_macro]`,#AB `#[proc_macro_attribute]` and `#[proc_macro_derive]` definitions.#E)$)$)$$automatically_derived$$$allow$$$ unused_qualifications$$$$inline$$$V>A A region of source code, along with macro expansion information.UD*V*V*UUautomatically_derivedUւUUallowUׂUU unused_qualificationsUUVVautomatically_derivedV߂VVallowVVV unused_qualificationsVVVVinlineVVVނL A single token or a delimited sequence of token trees (e.g. `[1, (), ..]`).O+ 1 A token stream surrounded by bracket delimiters.4+ 1 A token stream surrounded by bracket delimiters.4++ك  An identifier.ƒ+ك  An identifier.ƒ+߃+ 6 A single punctuation character (`+`, `,`, `$`, etc.).9+ 6 A single punctuation character (`+`, `,`, `$`, etc.).9++F A literal character (`'a'`), string (`"hello"`), number (`2.3`), etc.I+F A literal character (`'a'`), string (`"hello"`), number (`2.3`), etc.I++ււautomatically_derivedւււallowւււ unused_qualificationsււււinlineւււ+ A delimited token stream.E A `Group` internally contains a `TokenStream` which is surrounded byH `Delimiter`s.͛--automatically_derivedallow unused_qualificationsinline6 Describes how a sequence of token trees is delimited.9.  `( ... )` .  `( ... )` .ҝ `{ ... }` .ҝ `{ ... }` . `[ ... ]`ݝ . `[ ... ]`ݝ .ޠ `Ø ... Ø`C An implicit delimiter, that may, for example, appear around tokensFC coming from a "macro variable" `$var`. It is important to preserveFF operator priorities in cases like `$var * 3` where `$var` is `1 + 2`.IH Implicit delimiters may not survive roundtrip of a token stream throughK a string.̠ .ޠ `Ø ... Ø`C An implicit delimiter, that may, for example, appear around tokensFC coming from a "macro variable" `$var`. It is important to preserveFF operator priorities in cases like `$var * 3` where `$var` is `1 + 2`.IH Implicit delimiters may not survive roundtrip of a token stream throughK a string.̠ .automatically_derivedބallow߄ unused_qualificationsautomatically_derivedallow unused_qualificationsinlineautomatically_derivedallow unused_qualificationsautomatically_derivedallow unused_qualificationsinlinedoc hidden no_coverage   automatically_derived   allow    unused_qualifications    inline  HB A `Punct` is a single punctuation character like `+`, `-` or `#`.E϶G Multicharacter operators like `+=` are represented as two instances ofӶJ4 `Punct` with different forms of `Spacing` returned.7/// /߷߷automatically_derived߷߷߷allow߷߷߷ unused_qualifications߷߷߷߷inline߷߷߷ϹL Whether a `Punct` is followed immediately by another `Punct` or followed byO another token or whitespace. 01 E.g. `+` is `Alone` in `+ =`, `+ident` or `+()`.401 E.g. `+` is `Alone` in `+ =`, `+ident` or `+()`.40ֻ7 E.g. `+` is `Joint` in `+=` or `'` is `Joint` in `'#`.:A Additionally, single quote `'` can join with identifiers to formD lifetimes `'ident`.0ֻ7 E.g. `+` is `Joint` in `+=` or `'` is `Joint` in `'#`.:A Additionally, single quote `'` can join with identifiers to formD lifetimes `'ident`.0automatically_derivedʇallowˇ unused_qualificationsautomatically_derivedӇallowԇ unused_qualificationsinline݇automatically_derivedallow unused_qualificationsautomatically_derivedɈallowʈ unused_qualificationsinlineӈdocԈ hidden no_coverageՈù ù ù automatically_derivedù ù ù allowù ù ù  unused_qualificationsù ù ù ù inlineù ù ù@D A word of Rust code, which may be a keyword or legal variable name.GH An identifier consists of at least one Unicode code point, the first ofKM which has the XID_Start property and the rest of which have the XID_ContinueP property. > - The empty string is not an identifier. Use `Option`.A@ - A lifetime is not an identifier. Use `syn::Lifetime` instead.CF An identifier constructed with `Ident::new` is permitted to be a RustII keyword, though parsing one through its [`Parse`] implementation rejectsLL Rust keywords. Use `input.call(Ident::parse_any)` when parsing to match theO behaviour of `Ident::new`.> [`Parse`]: https://docs.rs/syn/1.0/syn/parse/trait.Parse.htmlA # ExamplesJ A new ident can be created from a string using the `Ident::new` function.ME A span must be provided explicitly which governs the name resolutionH& behavior of the resulting identifier.) ``` use proc_macro2::{Ident, Span};# fn main() {C let call_ident = Ident::new("calligraphy", Span::call_site());F println!("{}", call_ident);# } ```K An ident can be interpolated into a token stream using the `quote!` macro.N ``` use proc_macro2::{Ident, Span};# use quote::quote; fn main() {7 let ident = Ident::new("demo", Span::call_site());:; // Create a variable binding whose name is this ident.>0 let expanded = quote! { let #ident = 10; };3A // Create a variable binding with a slightly different name.DO let temp_ident = Ident::new(&format!("new_{}", ident), Span::call_site());R5 let expanded = quote! { let #temp_ident = 10; };8 } ```L A string representation of the ident is available through the `to_string()`O method.  ```" # use proc_macro2::{Ident, Span};% #C # let ident = Ident::new("another_identifier", Span::call_site());F #" // Examine the ident as a string.%& let ident_string = ident.to_string();) if ident_string.len() > 60 { 7 println!("Very long identifier: {}", ident_string): } ```111automatically_derivedallow unused_qualificationsinlineDK A literal string (`"hello"`), byte string (`b"hello"`), character (`'a'`),NM byte character (`b'a'`), an integer or floating point number with or withoutP( a suffix (`1`, `1u8`, `2.3`, `2.3f32`).+F Boolean literals like `true` and `false` do not belong here, they areI `Ident`s. 222automatically_derivedallow unused_qualificationsinline!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!A Creates a new suffixed integer literal with the specified value.DC This function will create an integer like `1u32` where the integerFC value specified is the first part of the token and the integral isFE also suffixed at the end. Literals created from negative numbers mayHC not survive roundtrips through `TokenStream` or strings and may beF3 broken into two tokens (`-` and positive literal).6B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below. 3!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4!C Creates a new unsuffixed integer literal with the specified value.F@ This function will create an integer like `1` where the integerC= value specified is the first part of the token. No suffix is@7 specified on this token, meaning that invocations like҄:. `Literal::i8_unsuffixed(1)` are equivalent to1E `Literal::u32_unsuffixed(1)`. Literals created from negative numbersυHD may not survive roundtrips through `TokenStream` or strings and mayG6 be broken into two tokens (`-` and positive literal).9B Literals created through this method have the `Span::call_site()`ED span by default, which can be configured with the `set_span` methodG below.܈ 4W/ An iterator over `TokenStream`'s `TokenTree`s.ѻ2C The iteration is "shallow", e.g. the iterator doesn't recurse intoF; delimited groups, and returns whole groups as token trees.ۼ>9ѽ99automatically_derivedallow unused_qualificationsinlineN proc_macro MarkerMarkerOrderingErrorfmt Debug E Debug E Display E Hash G Hash G Hasher G  FromIterator 7  RangeBounds  FromStr!X! PhantomData  PhantomData  RefUnwindSafe 2  UnwindSafe 2 Rc" Marker  Marker"Marker"6 22is_ident_continue is_ident_start GroupLexErrorLiteralSpan TokenStream   Delimiter  PunctSpacing TokenTree  char  Bytes CharIndices  Chars"%(+.1458;>ADEHKNY[^_`abcdeghijklmoprsvz|~PQRSTUVWXO'aselfbytes PO'a selfs QO'aө self  RO'aөself  SO'aөself  TO'aө O'a self  UO'aөO'aself  VO'aөO'aself  WO'aөO'aselftag XO'aөYZʭZʭ  \'aʭinput  ^ input  _ ʭ ch ` input  aʭ input  b cursor  c input  dʭf  Ԁinputڀ  eʭ̂ inputւ  g input  hƉinputΉ  iʭinput  jӯɎinput؎  kߏinput  lӯnё inputߑ  mӯ input  oӯqinput  pӯ inputʯ  rӯtuinput  sӯwx input  vӯ chars  z  chars  |ڷ  chars  ~ڷinput  ӯ  input  ӯinput  ӯinput  ӯinput  ʭ input  ʭ input  4ʭinput  ʭ΃input   panic1 PanicInfo θ Once@ AtomicBool{ A AtomicPtr{ AOrdering{ԹATOMIC_BOOL_INIT{ AAtomicI8€ATOMIC_I8_INIT€ AtomicU8ȀATOMIC_U8_INITȀ  AtomicI16΀ ATOMIC_I16_INIT΀  AtomicU16Հ ٺATOMIC_U16_INITՀ ۺ AtomicI32ۀ ATOMIC_I32_INITۀ  AtomicU32 ATOMIC_U32_INIT  AtomicI64 ŻATOMIC_I64_INIT ǻ AtomicU64 ATOMIC_U64_INIT  AtomicIsize ATOMIC_ISIZE_INITĂ  AtomicUsize ATOMIC_USIZE_INIT fence Bcompiler_fence Bspin_loop_hint B    θ   parseCursor Delimiter͚ ͚ Spacingؚؚ TokenTree  fmtʛЛDebug֛E֛Debug֛E֛DisplayݛEݛ FromIterator 7mem  RangeBounds PathBuf4FromStrXvec.vec UnicodeXID Ȟ  self   Т ϣ self   self   selftokenҥ stream˯literal selfdz  ɺ srcԺ  Xsrcл ǻ Eselff  EEselfԾfھϾ Eselff inner  inner  tree  7tokens  7streams  7selftokens 7selfstreams  7self  self   4self  Eselff   self_other  selfother self_other self΁ Á self׃ ̓ Eself҅f؅ͅ debug҇span  C delimiterƊ stream܊Š self   selfɌ  self  selfӍ ȍ self  selfspan  Eselff Eselffmt stringrawspan stringǚspan՚Ú stringspan self   self֜spanܜȜ  c ֞c string  string  selfother   selfާotherڧ  Eselfةfީө Eself߫fګ text  8nD nD nDҵ nD nD nD nD̶ nD nD nD nD nDݷ nD nD n}ڸ n} n} n} n}Թ n} n} n} n}Ժ n} n} n} f f t׾о t bytes   self   selfspan  self_range Xrepr  XEselff Eselffmt inside_proc_macro #fallback Delimiter  PunctSpacing TokenTree  fmtDebugEDebugEDisplayE FromIterator 7 RangeBounds panic1 panic  FromStrX       stream  self   self   self   self   self  self  Xsrc  src  Eselff inner  inner  inner  token  token  7trees  7streams  7selfstreamŇ  7selfstreamsۊ ʅEselfȎfΎÎ self ڐ  eʒŒ eѓ̓ EselfÔfɔ Eselff 7țself  9֞self   self̦   Eselff ‹ ߴ selfother  selfother self  selfother self   proc_span  inner  Eselff debugspan  delimiter stream self   self  self  self  self  selfspan  self  g Eself formatter  Eself formatter  stringspan stringspan self   selfspan  self  selfÂotherɂ   selfother Eselff Eselff n n n nԑ n n n n̒ n n n n“ n n n܎ n܎ݔ n܎ n܎ n܎ n܎ە n܎ n܎ n܎ n܎ٖ n܎ n܎ f՗Ɨ fљ™ tś t bytes  self   selfspanݢ  selfrange ٥؎self  s֩ѩ Xêrepr ۪ XEselfƲf̲ ٥Eselff ٥%%%inner& & inner' ' ) self* *  + X/src// inner2 2 inner3 3 token4 4 7self6streams65  7self7streams76 7streams9 9 7streams: : Eself>f>> Eself?f?? self@ @  EselfAfAA EselfBfBB innerV V innerW W [ ^ selfbotherbb  selfdotherdd selfi i selfj j self}other}} Eselff self   selfˊspanъ  g g gێ g͏ȏ Eselff Eselfŕf˕ inner  innerϡ á  delimiter streamǤ self   self  self  self  selfӮ Ǯ selfspanӱ  Eself formatter  Eself formatter  chspacing self   self  self  selfspan  Eselff Eselffmt inner  stringspan stringspan self   selfspan  selfother   selfother selfother selfother Gselfhasher  Eselff Eselff inner  inner  n nŌ n n n n n܍ n n n nΎ n n nя n n n nϐ n n n n͑ n n f՗Ɨ f f f stringǫ  chͬì sҭƭ self   selfspan  selfrange ӶXrepr  Eselff Eselff  MarkerҺMarkerҺimp TokenTree  fmtDebugEDebugE TokenStream 9self ؾ  Eselfܿf׿  7self  'a 'a'a'aself  'a 'a'aself  'a 'a'aself other  'a  self other  'a self۠ #۠ ϡEselff$$  self ' self other( (  self other( ( self )  self *  Eselff,, self other- -  self other- - self . self / self other1 1  self 2 ܉ self‰ 6‰ Șؘself 7 self C      self  4self   ̚"Ú    self  ‹ ʲ    self       self       self  Њ ފ    self  ٥$ $$self$ $ VVVselfV V  ߃  ك      selfւ ւ self    ҝޠself   Eselff self  self other   self߷ ߷ ع ֻself   Eselff ԅself  ԅselfù otherù ù ԅ self  self  ѽself    ՊՊ  Պ Պ v%KiȆԆ$0<H\tˇׇ+7CO[gsӈ0Onˉ߉5>Ga{Ê݊mՋ #)Cq͎/8ۏzȐ0}ӑ$9N &3@MZgt“ϓܓ(HcyЕ-Ca-Cawɗ&>ɘMVlęڙ&/&>Vnڛ,B5S֝V֞ $:Rpʟ:Pnà1E`¡ݡJSr?Uoգ/ؤ "@åХݥ+8ER_lyΦ(4Jez̧6To֨S˩-E[s̪1OeЬ%;Yoӭ5SiǮ߮1Oe}կ)GbxӰ !9Wuϱ5KiѲ +F\zѳ9OgӴQZuе"8ValwĶ϶ڶMXcwOٸȺE1H\zν,nv׾d!5Ng.z0(xJ{+Om):i`< |feP#7Lj~ 3v=u;,Db ) 8Vl lu6W` NG?]q~VkC0o$9RgR*? ,  k     = ~     P     V      '?Wo/G_w5O[u=T #/,F`lN7Kem"<H1E_yg+D]v %>Wp8p  $  V!!"U""""##v###@$$$U%%D&P&&;''''(>(j((*+I,,4---..k//$0l0c1o1{11*2r23U33t4@5566q777K8999:CCCDDDFPF\FFGGIL*OQlT WYO\^a2dfimp7sPviy|ͅ+?Б:~YՕ]l|u"Ezڗ`Ƙ,VǙ5_šs ֚K4h؛"Mxb&<SaҤ֥*P?mէCk,Qoש Bs̪7Uqū/I|0YwR߮ 7n>u[7gIJFn޷(Qy,Te۹/ɼ?ӼWcݽ@^pǾ:п`=b0Us>4_b` %MnEo0d\?] 0hKDn1`!NG~!KGa8Vg/]lu /C]nb4Xu(No+Tk0Ck6c8R8Yw0ZGs,\ 8iHr/^#S|CpEGk>OkEXt/RhCs!T_o'2Bb 0Cc 2\o <ap3Ff'5U{AfմDiص"Gl۶%Jo +De}7^CM:[t))Jc&?`x<Tt=c!Gm+Qw5[(;Z{.Oh#E\nz/XM\dn~!Aj%V =Ag%Kq /U{9_dq{$Hņц݆ !-9EQe}ȇԇ(4@LXdp|܈9XwԉPj̊vċދ2֎AѐzǑܑ-B"/<IVcp}˓ؓ 1Qmٕ7Lϖ7Lk/Ҙ`uΙ/G_xś6 >DĞ.C[yӟ%DYx̠&:Nˡ\|*I^xƣޣ8ä+̥٥ '4AN[huצ1>Snէ'?]xߨԩ!6Od|ժ%:YnĬ٬/Dcxǭܭ )>]rЮ%:YnƯޯ2Plǰܰ*B`~ر&?Tsڲ4Pe۳$CXpܴc~ٵ ,A^it̶׶DU`l;θк&9QdǼýֽ!4Yl*=Vf!m5fDX+sTK' g[oV;  ,AUs"g.`&!5M )A`uTl ?8z;s3Hfz A_.o$c-=[F~3   V t    1 i     D |    J      0H`x 8Ph$>Xd~1nH,!5OiuB!@Tna+E:Nh[5Ng/Haz)e  !  K!!!F""""##g###1$$$J%%;&M&&%''''(/([((*+>,,---..U/v/0V0Z1l1x112\22F33e4155{66f7|77@88999CCCDD;FMFYFF1GIzLOQ]TVY@\^a#dfilp(sAvZys|׈݌֍v&LjɆՆ%1=I]u̇؇ ,8DP\htԈ1Pỏ6?Hb|Ċފn֋ $*DrΎ09܏{ɐ1~ԑ%:O '4AN[huÓГݓ)Idzѕ.Db.Dbxʗ'?ʘNWmřۙ'0'?Woۛ-C6TםWמ %;Sq˟;QoĠ2FaáޡKTs@Vp֣0٤ #Aĥѥޥ,9FS`mzϦ)5Kf{ͧ 7UpרT̩.F\tͪ2PfѬ&<Zpԭ 6TjȮ2Pf~֯*Hcy԰ ":Xvб 6LjҲ,G]{ҳ:PhԴR[vѵ#9WbmxŶж۶NYdxPڸɺF2I]{Ͻ-owؾe"6Oh/{1)yK|,Pn*;ja=!}gfQ$8Mk 4w>v<-Ec * !9Wm mv7Xa OH@^rWlD1p%:ShS+@ -  l     >      Q     W      (@Xp0H`x6P\v>U $0-GamO8Lfn #=I2F`zh,E^w &?Xq 9q  %  W!!"V""""##w###A$$$V%%E&Q&&<''''(?(k((*+J,,5---..l//%0m0d1p1|11+2s23V33u4A5566r777L8999:CCCDDEFQF]FGHGIL+OQmTWYP\^a3dfimp8sQvjy|΅j9Iʑݑ<[וQvΖ/dėJژ@jۙI 5i› 7bʜL 3Jإ,R¦ݦAYϧ=m&Si٩"<uΪ9Os1K~2[qíT 9p¯8w]ܱ1iƲ@p*S{.Ngݹ1Sʼ"ԼQex߽BXrɾ!<7dz*Wm6\'GpGi2^^AW*j!MFh3b#H#EI:Pi1Smv~ )EWp.Zo"Pi-Nm *=m8e2T2[q2TIu&^:k Bt1`Uv=r?Im8Qm5?Zv 1GizEm#I`i3<d} *=e}4Vi>Vj -@h(/WpCh״!Fkڵ$Inݶ'LqHw1bDN > x*-g CrNv?e#Io-Sy7]"5\u2l%?^|)Z}B]eoxCd X}?Ci'Ms 1W};aYr|vP(NoÆφۆ +7COc{Ƈ҇އ&2>JVbnzڈ7Vu҉<ENhʊt‹܋*0JxԎ6?ϐ6őڑ+@U -:GTan{ɓ֓/Okו5Jh5Ji~ї-FИT^s™̙-6-E]v4IƜ<Zݝ]ޞ,AYwџ#BWvʠ$8LgɡQZzâG\vģܣ6)Fʥץ %2?LYfsզ/<Qlӧ%=[vݨZҩ4MbzӪ#8Wl¬׬#-Bavŭڭ'<[pή#8Wlܯ0NjŰڰ(@^|ֱ$=Rqز2Ncٳ "AVnڴXa|׵ *?\gr}ʶն S^j} U߸κL $7ObżԽ2t|޾j(;Tm4 6 /Q3Vu0ApgC'mlW  $$ *?Sq : } D|B 3Ki1'?^s$s|=^g UNFdx]r J7v +@YnY1F 3  r     D      W     ]      .F^v6Nf~"<Vb|E\*73MgsV>Rlu)CP8Lfo3Le~-F_x'>w  +  ]!! "\""""#%#}###G$$$]%%K&X&&C''''(E(q((%*+Q,,<--...s//,0s0j1v11122z2 3\33{4H5566y777S8 9#99 :@CCDDDKFWFdFGOG I L 2O Q tT W Y W\ ^ a :d f i m &p ?s Xv qy |   Յ  e- ґ< c ԤZ!קE.qDWǫy@9H#VM¼ Y`?2udOqf_2pPM#X c1_6w*qV2E ::y \ .J%~EG$@!GXuZq-D2E ^q gr5H 7 F<`<v+eAzV *=0jJ^|1S#l'j@ґB”%aݕ%cr}$G|ܗbȘ.Xə7aĚt"ךMڛ$Ozd(>Ub¥ޥ"2XȦ#Go٧GsŨ0Ysߩ(F{Ԫ#?[yɫ'7QƬ8a{,Z?vȯJ}%c ;o̲$Jv 0Y4Zm 7Ƽм(Aڼ[kHhxϾ'BҿaAj4]w?<f-Qv!Mw8h"dGaBp'SLr9h)R)#O@\o 7gr{3Jcuc8_y ,Us 2Xr2Wr=j>Z"<a{ 8nO{ 0d@q&Lz7f'[~$Gx#%OsDWsK`|7ZoKu)\fs/9Fj2Gk:^u  Dgt5Jn$.9]$Inݴ'Lq*Ot-Rw-Ng@hJTD]&~0 3Lm(Ib|%>X}Ek)Ou 3Y=c *?b8Qr,Rdp3a$Ycku%Jn)_ !F#Io-Sy7]AgnxNΔ1m1(Kf:̘2\͙;eȚ&Uߛ)T"i-CZs 7]ͦ Lt xʨ^1 ݪD~<Vˬ=f_D{ͯ!*hѱ%tղ){5^=< -FpM}ԾG׿r ob0TE2{R='iLu,XQ>m..(TE<Ot#d^7wwBo_'f=!TiEv+<kd)(*Tx'x<Y7op?Isb)Ns,Qv /Työ 2W|Ʒ2Sl#mIb8Qr-Ng *C$Jp.Tz8^Bhg=Vw1f)OdK(Nt 2X~<b FlՑ&ܧJ3vI̫~>M] D7z iT$zkduU_6f;|/v 5?~3O*JGP *vI5Jax#w8M<[-B 6(q,$   Th߈<[z׉SmϊyNj5َD Ԑ"1 4UݕMӖM0Әv`ƛ !?HȞD\zԟ&Z͠ )=Rϡ]+ayǣߣ9Ĥ,ڦWr٧(@a|¨թ 7e֪;oڬE{ݭ ?;oǯ߯3Tݰ+Caٱ'U۲8f%YqݴgڵBE<Ѻ:eȼ׽5m@Y g"6gY,tUL( hpW< V %h/a'NBv!9{tIiB/p> W w j  }       1Iay !9Qi'Ago$8Rx"CWq.=Qk6Oh0Ib{* !!G"""#h##2$$%<&&''''(0(\((*+--V/W0[1]22G33f4256}789CD_J"7 $  W w 5 j  H }  N      1Iay !9Qi'Ag5oL$8RxF"CWqe.=Qk_6Oh0Ib{*h  N!!!G"""#h##2$$M%%<&&&''''(0(\((*+A,,---..V/y/0W0[1"2]22G33f4255~66i7}77C88999CDD.m7 MeP(= *  f } ; y  N   T       ":Rj*BZr0Jp;R*A[L2I`zk7,CZte &?Xq 9Rk3n  T!!"P"""#q##;$$S%%B&&6'''' (9(e((*+G,,/--- ..f//"0g0a1(2m23P33o4;5566o777I8999:CDDBFFBGIL%OQgTWYJ\^a-dfimp2sKvdy}|ȅ"FgÆφۆ +7COc{Ƈ҇އ&2>JVbnzڈ7Vu҉<ENhʊt‹܋*0JxԎ6?ϐxőڑ+@U -:GTan{ɓ֓/Okו5J͖5Ji~-ИT^s™̙-6-E]vÛ4<Bžޞ,AYwџ#BWvʠ$8LgɡQZz(G\vģܣ6)ʥץ %2?LYfsզ/<Qlӧ%=[vݨZҩ4MbzӪ#8Wl¬׬#-Bavŭڭ'<[pή#8Wlįܯ0NjŰڰ(@^|ֱ$=Rqز2Ncٳ "AVnڴXa|׵ *?\gr}ʶնBS^j}9̸߸κ $7ObżԽ2t|Wj(;Tdk3dBV)qRI% eYmT9  *?Sq e,^$}3Ki'?^sRsj=^ 6x9q1Fdx?],m"a +;YD|1   T r    / g     B z    H       .F^v6Nf~"<Vb|.kE*3Mgs?>Rl^)C8LfX3Le~-F_x'b    H!!!D""""##e###/$$$G%%9&K&&"''''(-(Y(( *+;,,---..R/s/0S0X1j1v112Y22D33c4/55x66c7y77=88 999CCCDD9FKFWFF.GIxLOQ[TVY>\^a!dfil p&s?vXyq|ՈیӍSmm/nnooosppmqq[rrIss7tt%uu v~vm.nnooorpplqqZrrHss6tt$uu v}vvVi} 3G[o0DX(<Pdx,@Th|0DXl 4 H \ p  0 H e    6 L p  1 K _ }   A U u .BVr8Yn#Qo,AVq;Pm*?Ti~&;Pez "7Lav 3H]x/Oo5Jcx2La*?Tp+Ebw%?_~-Ic1Kd(=[p ( N v !(!I!c!!!!!!""/"D"]"u"""""""##2#G#\#q#######$$.$C$X$m$$$$$$$%%*%?%T%i%~%%%%%%&#&:&X&m&&&&&&'"'D'k''''''(,(J(p((((((( )&);)U)~)))))) *,*C*X*m*******+++@+Z+o+++++++,),C,a,,,,,,,-+-J-j-----..4.I.c.x....././H/g////// 0&0;0T0i0000001(1=1T1l1111112,2P2t222223%3<3`3u333333 4474K4_4s444444445'5;5O5c5w555555566+6?6S6g6{66666667+7H7\7v7777778,8J8_8s8888888909D9`9w999999 : :5:I:b:v:::::::;+;?;Y;z;;;;;<4<N<b<{<<<<<< =#=7=Q=e=======>(>A>`>|>>>>>? ?4?M?a?z?????@@-@F@Z@t@@@@@@A#A:ARAfAzAAAAAA B!B:BNBgBBBBB C0CRCvCCCCCD,DID`DtDDDDDDEE;EPEeEzEEEEEEE F"F7FLFaFvFFFFFFFG(G=GVGkGGGGGGH#H;HOHgHHHHHH II7IKIcI{IIIIIIJ7JLJeJJJJJJJK)K>KSKKKKKK LL4LMLbLwLLLLLMM1MLMaMvMMMMMMN8NTNnNNNNNNOO5OROlOOOOOOP=P`PPPPP Q.QRQtQQQQR%RJRpRRRRR$SJSkSSSSSSST/TXTtTTTTTUU,UJU_UvUUUUUU V(V=VTViV~VVVVVVW1WHW]WxWWWWWWX'X f { !9!S!q!!!!!!""4"M"e"z""""""" #"#7#L#a#v####### $$3$H$]$r$$$$$$$%%/%D%Y%n%%%%%%%&*&H&]&t&&&&&&'4'['p'''''((:(`(u((((((()+)E)n)))))))*3*H*]*r******++0+J+_+y++++++,,3,Q,p,,,,,,--:-Z-{----- .$.9.S.h.....//8/W/w//////0+0D0Y0r0000011-1D1\1q1111122@2d2222223,3P3e33333334'4;4O4c4w444444455+5?5S5g5{555555566/6C6W6k66666667787L7f77777788:8O8c8}888888 9 949P9g9|999999:%:9:R:f:::::::;;/;I;j;;;;;<$<><R<k<<<<<<<='=A=U=o=======>1>P>l>>>>>>?$?=?Q?j?????? @@6@J@d@}@@@@@@A*ABAVAjAAAAAAAB*B>BWBBBBBB CBCfCCCCCCD9DPDdD}DDDDDD E+E@EUEjEEEEEEEEF'Fh[hphhcrate}cratec77core_11core\..coreY++coreV((corecorecorecorecorecoreMcore(cratecorecore4cratecoreDcratecratecorecore`22core]//coreZ,,coreW))corecoreR##corecorecorecoreNcoreKcorecorecorecorecorecorecoreb66core^00core[--coreX**coreU''coreS$$corecorecorecorecoreLcore'cratecorecore3cratecorehCCcoreClone1;;core_intrinsicsderive_clone_copyClone/߷;;core_intrinsicsderive_clone_copyClone-;;core_intrinsicsderive_clone_copyderiveD*1derive͂D*+Clone;;core_intrinsicsderive_clone_copyhClone ;;core_intrinsicsderive_clone_copyClone‰;;core_intrinsicsderive_clone_copybEq<8core_intrinsics derive_eqstructural_match no_coverage\suffixed_numbersа PartialEq  ;?core_intrinsicsstructural_matchVderiveD*deriveD* prelude_importClone2;;core_intrinsicsderive_clone_copyCopy0ϱB:core_intrinsicsderive_clone_copyCopy.ϱB:core_intrinsicsderive_clone_copyderiveD*2Clone&;;core_intrinsicsderive_clone_copyCopy!ϱB:core_intrinsicsderive_clone_copyClone;;core_intrinsicsderive_clone_copycderiveD* Clone;;core_intrinsicsderive_clone_copy]unsuffixed_numbersEq <8core_intrinsics derive_eqstructural_match no_coverageWderiveD*&derive,D*CopyϱB:core_intrinsicsderive_clone_copyKderive%D*Clone9;;core_intrinsicsderive_clone_copyClone0;;core_intrinsicsderive_clone_copyderiveD*9Clone.;;core_intrinsicsderive_clone_copysuffixed_int_literals3Clone)$;;core_intrinsicsderive_clone_copyderiveߛD*-suffixed_numbers'Clone!;;core_intrinsicsderive_clone_copyderiveD*!CopyϱB:core_intrinsicsderive_clone_copy^Clone;;core_intrinsicsderive_clone_copyXClone ۠;;core_intrinsicsderive_clone_copyRderive%D*Clone;;core_intrinsicsderive_clone_copyLDebug0ϼCcore_intrinsicsEDebug.ϼCcore_intrinsicsEunsuffixed_int_literals4Copy*UϱB:core_intrinsicsderive_clone_copyderiveל,D*.unsuffixed_integers(Clone;;core_intrinsicsderive_clone_copy PartialEq ;?core_intrinsicsstructural_match_CopyϱB:core_intrinsicsderive_clone_copyYDebug ϼCcore_intrinsicsESEq<8core_intrinsics derive_eqstructural_match no_coverageMderiveҠD* Eq0<8core_intrinsics derive_eqstructural_match no_coverageEq.<8core_intrinsics derive_eqstructural_match no_coverageClone*V;;core_intrinsicsderive_clone_copyderiveַD*/Clone#;;core_intrinsicsderive_clone_copyderive$D*)Clone;;core_intrinsicsderive_clone_copyEq<8core_intrinsics derive_eqstructural_match no_coverage`deriveD*DebugϼCcore_intrinsicsEZderiveD*# PartialEq ;?core_intrinsicsstructural_matchNderiveD*  PartialEq0ù ;?core_intrinsicsstructural_match PartialEq. ;?core_intrinsicsstructural_matchClone+ւ;;core_intrinsicsderive_clone_copyderive,D*0deriveUD**Clone$;;core_intrinsicsderive_clone_copyderiveD*$deriveD* PartialEq ;?core_intrinsicsstructural_match[deriveD*Clone ;;core_intrinsicsderive_clone_copyUderiveD*nolpEqooap,pqpoppoppoopnopnqonopqopkqowpPqzop]qopaoSp)qSoEpqEo7p q7op7q)opyqooqt7x{~twg{ zttwʀGvoz$#wy|ry|ruWy@|xw{"~H {}ك0tPwz}ksvz\}q`slvr})s%v'zۂuyw|SLArruy |~q+ux{~qt[xY/home/fraco/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.29/src/lib.rs Jj|,;} O-:PMJQJME?JKPJ*. J(# R;1" .HNUIN'IKLO? ;POHOIPD>MQ(E P0 &!PI,BF16 B! B"3/%67Q JFKE>3 !5=(5='(9)J#+LD;/J91LJJKP;%5;#!&;#;%';!9 !. *ONE ( 4! DLLQ!+MNJ3",;A%= *O<58P547;PDDO6.10>A%=.3GKOMKHC?(C$EKOMKHC?&A$;GEMAf654A%=-$6;#P9>NJ3!---/ 3QN/-5557 !%!%!%#'HIP;7779 :;O>5%9C'8  9* % -J51)& 3$/2<8Z"  3:38#*4=72e  003((#" .'!9 .%?? )'*//(F  # 4), + ;.1!)!@&(   ,' "'-'"1"%"*" % 2#, + 9," (" (" /#(4#4#)(  ,)19 ,%+ )0<6#% /$5 ;A/ (70% ! C<:;="N9!B"&;)00)&$ ; N01 @&9H= -DZ˒׮䗔_/home/fraco/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.29/src/detection.rs fvMz2ȷ&C#1!,) !&#LKL3<?2G2=H+KEHMIKK7AN8, J72$/Mš^/home/fraco/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.29/src/fallback.rs yC˴?ۑ",&!P3(N* &(% "*%121B70(C-$5620(C-$3:Y) S$DD8Q +3&8$&=#: %6&B, %>:&$;=;7"!==*<(? ;&65=:5=:'.-!/I-1L $+ !)IE+L::$#.& 6$$8;%)/-EM'-.) %@( 52&!%6 0;A'3 &8 N/  ! !> ;=$Y* $ E% +*!&'-7  ;32-.) (Q =33-? < $ 4)8(!-0"73"":"GFA((+$ ( 5*7&$> ; #) ;00! ;17? -,H "-,) 2% !!!#!#/# /# (;K/ +&G+ 2-4222223?A !-N 9'?2$ #;$=5!?(4 ?NR:;]@ 5=?5=GP 3;% DB"/>>K> BD'/!_0 /H!G<-873<-( )I,?&@> +L,$S,Q ;[> (8? /3-1;77 ;%9*4&79  2'$#*,MT ".!;A `23BB?J^d 4== ;1 &$5!6$11 $44 ;99 8  !!:8 "!;9  !97 5XP!=X 4WP!=W .$d .GH <($#I,)D#G, <&$#G,)D#E, 6($RR -?? 2$- .:5%-;33 Y% Q! E,2RJFD\/I +8NFB@1 *_E !<< &$A)< +!A? 2!GE !BB -LL M$N)-N 5'0 +/9!%4,1*63O/A?+>+ ;88 ;66 Ç0 proc_macro2x86_64-unknown-linux-gnu-fe09e677fd6d161dƓጽ\xnū</$/ۜp??=?*