Files
volcengine-server-manager/target/release/deps/libunicode_ident-8f80157298477d55.rmeta

26 lines
32 KiB
Plaintext
Raw Normal View History

rust
<EFBFBD>#rustc 1.94.1 (e408947bf 2026-03-25)<29><02><05><><EFBFBD>m <0B>:-Z1Ϥ-b7ca4e58e9c2b38f<38><02>d<><1E>{' <09><18>z<EFBFBD><7A><EFBFBD><EFBFBD>-afa8b616ced7613d<33><01><02>ZERO<52> is_xid_start<72>is_xid_continue<75>tables<65>Align8<6E>
<02><02>Align64<36>
<02><02>UNICODE_VERSION<4F> ASCII_START<52>ASCII_CONTINUE<55>CHUNK<4E>
TRIE_START<EFBFBD>  TRIE_CONTINUE<55> LEAF<41> T<> <14> <0C><00> <0C><00><01><>5<03><04><04>d<>*_<><00><><EFBFBD><07><><EFBFBD>!0x7fffffe07fffffe0000000000000000<30><00><03><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07>!0x7fffffe87fffffe03ff000000000000<30>@64<36><08><00>411<31><00>1793<39><08><00>7808<30><01><> <02>)<01><02> <6F>PF<50><01>b<00>ip~ <01><0F><0F><01><0F><00><0F><0F><01><> <01>&<01><02> 1<><31><EFBFBD>?<1C>j<01>_<00>fm{ <01><0F><0F><01><0F><00><0F><0F> <02><01>|<7C>\ <01>t<>] <01>\<5C>] <01>,<2C>] <01>$<24>]<01>l<>] <01>T<>]
<EFBFBD><00>d<00><00><00> [![github]](https://github.com/dtolnay/unicode-ident)&ensp;[![crates-io]](https://crates.io/crates/unicode-ident)&ensp;[![docs-rs]](https://docs.rs/unicode-ident)<29><1C><02><00><>jg [github]: https://img.shields.io/badge/github-8da0cb?style=for-the-badge&labelColor=555555&logo=github<75><00><>nk [crates-io]: https://img.shields.io/badge/crates.io-fc8d62?style=for-the-badge&labelColor=555555&logo=rust<73><00><>mj [docs-rs]: https://img.shields.io/badge/docs.rs-66c2a5?style=for-the-badge&labelColor=555555&logo=docs.rs<72><1C><02>D<> <br><3E><1C><02><00><>NK Implementation of [Unicode Standard Annex #31][tr31] for determining which<63><00><>@= `char` values are valid in programming language identifiers.<2E><1C><02><00><>1. [tr31]: https://www.unicode.org/reports/tr31/<2F><1C><02><00><>NK This crate is a better optimized implementation of the older `unicode-xid`<60><00><>LI crate. This crate uses less static storage, and is able to classify both<74><00><>PM ASCII and non-ASCII codepoints with better performance, 6&times; faster than<61><00><> `unicode-xid`.<2E><1C><02>D<><01><1C><02><00><>  ## Comparison of performance<63><1C><02><00><>JG The following table shows a comparison between five Unicode identifier<65><00><> implementations.<2E><1C><02><00><>$! - `unicode-ident` is this crate;<3B><00><> IF - [`unicode-xid`] is a widely used crate run by the "unicode-rs" org;<3B><00><> C@ - `ucd-trie` and `fst` are two data structures supported by the<68><00><>
 [`ucd-generate`] tool;<3B><00><>
=: - [`roaring`] is a Rust implementation of Roaring bitmap.<2E><1C>
<02><00><>
PM The *static storage* column shows the total size of `static` tables that the<68><00><> =: crate bakes into your binary, measured in 1000s of bytes.<2E><1C> <02><00><> JG The remaining columns show the **cost per call** to evaluate whether a<><00><> GD single `char` has the XID\_Start or XID\_Continue Unicode property,<2C><00><> MJ comparing across different ratios of ASCII to non-ASCII codepoints in the<68>|<7C>  input data.<2E><1C> <02><00><>>; [`unicode-xid`]: https://github.com/unicode-rs/unicode-xid<69><00><>@= [`ucd-generate`]: https://github.com/BurntSushi/ucd-generate<74><00><><9 [`roaring`]: https://github.com/RoaringBitmap/roaring-rs<72><1C><02><00><>A> | | static storage | 0% nonascii | 1% | 10% | 100% nonascii |<7C><00><> |---|---|---|---|---|---|<7C><00><>LI | **`unicode-ident`** | 10.3 K | 0.41 ns | 0.44 ns | 0.44 ns | 0.93 ns |<7C><00><>JG | **`unicode-xid`** | 12.0 K | 2.43 ns | 2.50 ns | 2.85 ns | 8.65 ns |<7C><00><>GD | **`ucd-trie`** | 10.4 K | 1.28 ns | 1.25 ns | 1.20 ns | 1.97 ns |<7C><00><>A> | **`fst`** | 144 K | 50.9 ns | 51.0 ns | 48.5 ns | 26.7 ns |<7C><00><>FC | **`roaring`** | 66.1 K | 4.28 ns | 4.22 ns | 4.25 ns | 4.61 ns |<7C><1C><02><00><>NK Source code for the benchmark is provided in the *bench* directory of this<69><00><>:7 repo and may be repeated by running `cargo criterion`.<2E><1C><02>D<><01><1C><02><00><>$! ## Comparison of data structures<65><1C><02><00><> #### unicode-xid<69><1C><02><00><>OL They use a sorted array of character ranges, and do a binary search to look<6F><00><>B? up whether a given character lands inside one of those ranges.<2E><1C><02>\<5C> ```rust<73><00><>" # const _: &str = stringify! {<7B><00><>63 static XID_Continue_table: [(char, char); 763] = [<5B><00><>%" ('\u{30}', '\u{39}'), // 0-9<><00><>%" ('\u{41}', '\u{5a}'), // A-Z<><<3C> # "<22>\<5C><><<3C><01>&<00><># ('\u{e0100}', '\u{e01ef}'),<2C>4<> ];<3B>D<> # };<3B><<3C> ```<60><1C><02><00><>LI The static storage used by this data structure scales with the number of<6F><00><>LI contiguous ranges of identifier codepoints in Unicode. Every table entry<72><00><>LI consumes 8 bytes, because it consists of a pair of 32-bit `char` values.<2E><1C><02><00><>IF In some ranges of the Unicode codepoint space, this is quite a sparse<73><00><>KH representation &ndash; there are some ranges where tens of thousands of<6F><00><>MJ adjacent codepoints are all valid identifier characters. In other places,<2C><00><>LI the representation is quite inefficient. A characater like `µ` (U+00B5)<29><00><>LI which is surrounded by non-identifier codepoints consumes 64 bits in the<68><00><>:7 table, while it would be just 1 bit in a dense bitmap.<2E><1C><02><00><>NK On a system with 64-byte cache lines, binary searching the table touches 7<><00><>FC cache lines on average. Each cache line fits only 8 table entries.<2E><00><>NK Additionally, the branching performed during the binary search is probably<6C><00><>1. mostly unpredictable to the branch predictor.<2E><1C><02><00><>MJ Overall, the crate ends up being about 6&times; slower on non-ASCII input<75><00><> " compared to the fastest crate.<2E><1C> <02><00><> NK A potential improvement would be to pack the table entries more compactly.<2E><00><>!OL Rust's `char` type is a 21-bit integer padded to 32 bits, which means every<72><00><>!LI table entry is holding 22 bits of wasted space, adding up to 3.9 K. They<65><00><>"MJ could instead fit every table entry into 6 bytes, leaving out some of the<68><00><>#PM padding, for a 25% improvement in space used. With some cleverness it may be<62><00><>#KH possible to fit in 5 bytes or even 4 bytes by storing a low char and an<61><00><>$NK extent, instead of low char and high char. I don't expect that performance<63><00><>$PM would improve much but this could be the most efficient for space across all<6C><00><>%30 the libraries, needing only about 7 K to store.<2E><1C>%<02><00><>% ####
<13><13><13><04><>\<13><04><>\T<13><13><13><13><13><13><13><13>|<7C>]$<24>]<00><04><01><>^%<00><>]>; Whether the character has the Unicode property XID\_Start.<2E>d<EFBFBD>^ ch<63><14>^<01><>a(<00><>aA> Whether the character has the Unicode property XID\_Continue.<2E>|<7C>a <01>x<14>aT<>\<02><02>l<>\<00><>\4<>\4<><02><01><><01> <0C><00><6F>PF<50><02><07>S<02><07> <01>acd<><00><13><<3C><02><00>{ <0C><00>1<><31><EFBFBD>?<1C>j<02><07><13>J<02><07> <01>acd<><00><07><>'|<7C><00><05><>"\<5C><00><05><>%t<><00><05><>,<2C><00><06><>/T<><01><02> <6F>PF<50><08><05><08><03> !%+/26:><3E>CGK<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ORVZ<56><5A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<00>^bdhlp<6C>tvz~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><00><00><>˲<EFBFBD><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00>&<26><00><00><><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><><00><><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><04><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><><EFBFBD><EFBFBD><EFBFBD><1C><00><01><>3l<><01><02> <6F>PF<50><08><05><03> #(-/48<@<40>EIM<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OTX\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<00>`bfjnr<6E>tx|<7C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><00><00><>´<EFBFBD><C2B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00>&<26><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><><00><><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><04><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><1D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>$<24><00><01><>q+$<24>q<01><02> 1<><31><EFBFBD>?<1C>j<08><05><08><06>=<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <04><><EFBFBD><7F><EFBFBD><EFBFBD><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><04><04><><EFBFBD><7F><EFBFBD><EFBFBD><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P߸@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߸<EFBFBD><DFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><7F><EFBFBD><EFBFBD><01><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><03><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9<EFBFBD><39><EFBFBD><00>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>?<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01><03><><00><><EFBFBD><EFBFBD><EFBFBD><0F><00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><EFBFBD>o<EFBFBD><6F><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01><><EFBFBD><EFBFBD><EFBFBD><01><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>#<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><00><03><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><><7F><EFBFBD><EFBFBD><EFBFBD>@<00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><7F><00><03><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01><03><><EFBFBD><EFBFBD><EFBFBD><0F><00><><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>~<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>??<3F><><EFBFBD><EFBFBD>??<3F><><EFBFBD><EFBFBD><EFBFBD>?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><1F><0F><1F><1F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><>?<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><00>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01><><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD>?<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01><><EFBFBD><EFBFBD><03><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><03><><EFBFBD>?<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><03><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><> |<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><1F><01><00><><07><><<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><07><1F><01>c<00><><EFBFBD><EFBFBD><EFBFBD>?<3F><><00><><EFBFBD><EFBFBD><EFBFBD><1F><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>d<EFBFBD><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{_<><5F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><7F><EFBFBD><EFBFBD><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><7F><EFBFBD><EFBFBD><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <00><><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<00><><EFBFBD><EFBFBD><EFBFBD><1F>?@<><7F><EFBFBD><EFBFBD><07><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<00><00><><EFBFBD><EFBFBD><EFBFBD><1F>?<3F>C<00><><EFBFBD>?<00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD>?<00><><EFBFBD><00><><EFBFBD>?<00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD>?<1F>o<7F><00><><EFBFBD><EFBFBD><7F>?<3F>o<7F><EFBFBD><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><0F><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>^<5E><><EFBFBD><0F><><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><>?<00><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><00><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01>=$<24>q<00>K)https://github.com/unicode-rs/unicode-xid<69> ucd-generate<74>*https://github.com/BurntSushi/ucd-generate<74>]https://img.shields.io/badge/crates.io-fc8d62?style=for-the-badge&labelColor=555555&logo=rust<73> crates-io<69>&https://crates.io/crates/unicode-ident<6E>^https://img.shields.io/badge/docs.rs-66c2a5?style=for-the-badge&labelColor=555555&logo=docs.rs<72>docs-rs<72>\https://img.shields.io/badge/github-8da0cb?style=for-the-badge&labelColor=555555&logo=github<75>,https://github.com/rust-lang/rust/pull/33098<39>finite state transducer<65>!https://github.com/BurntSushi/fst<73> unicode-xid<69><01><><01><>!https://crates.io/crates/croaring<6E><01><>(https://github.com/dtolnay/unicode-ident<6E><01><><01><><01><>rust-lang/rust#33098<39><01><><01><>%https://www.unicode.org/reports/tr31/<2F><01><><01><>croaring<6E><01><>github<75><01><><01><><01><>+https://github.com/RoaringBitmap/roaring-rs<72><01><><01><>Unicode Standard Annex #31<33><01><><01><> https://roaringbitmap.org/about/<2F><01><><01><><01><><01><>roaring<6E><01><><01><>https://docs.rs/unicode-ident<6E><01><><01><>Roaring Bitmap<61><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><01><><1A>~1g<0F><01>$><0F><>tt<74>Qc<51>t<EFBFBD><74><EFBFBD>s 4-*t<><74>Mf& C<>a"V<>1<EFBFBD>W<EFBFBD>^<5E>7<EFBFBD>:<3A><07>$j<><6A><EFBFBD><EFBFBD>_L<5F><4C><1A><> <0B> <09><>Pж-<2D>/<2F>2MD<17>R<EFBFBD><52>?<3F>t<EFBFBD>E<EFBFBD>9a9Ʌ<39><C985><EFBFBD><EFBFBD>1e<31>z<EFBFBD>.<2E>Z<EFBFBD>b<EFBFBD><62> T<>!
<1B>!<21><><EFBFBD>-O<><4F><EFBFBD>9<17><>l2<><32>t_ z:<3A>F<><46>u
<EFBFBD><EFBFBD>e!,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>9dB$<24>v/<2F><>W<EFBFBD><57><EFBFBD><EFBFBD> b<>
<EFBFBD><EFBFBD>|<03><><EFBFBD><EFBFBD><EFBFBD>B<><16>ir<><52>G<EFBFBD> v<><03>i#A<><41><EFBFBD>Z<EFBFBD>
<15>?<3F><><EFBFBD>K<EFBFBD><4B><EFBFBD>7<05>^<5E><><EFBFBD>,<2C>Q!|<7C><>l2<6C><32><EFBFBD>M8"T<>b<>V<EFBFBD>:,<2C><00>;<3B>;l<<3C><=<00>=<3D>=Z>q><3E>><3E>><3E>><3E>>A<00>I<>: =^=> % %  <14>:<00>;I<<3C><==<3D>=<00>=<3D>=(>\>u><3E>><3E>><3E>><3E>>-A<00>I';<3B>;<3B>;<3B>;<3B>;<3B>;<3B>;<3B>;<3B>;<3B>;<3B>;<3B>;g<<3C><=h=<3D>=<3D>=<3D>=>I>V>l><3E>><3E>><3E>><3E>>AAmI|Ihh<00>;<00>;<00>;<3B>;<3B>;<3B>;<3B>;<3B>;<3B>;2<<3C><==k=<3D>=<3D>=<3D>=>K>Z>q><3E>><3E>><3E>><3E>>A<00>I<00>;W<<3C><2=<3D>=<3D>=<3D>=<3D>=<>S>f>|><3E>><3E>><3E>><3E>> A5AwI<77>Irh<00>;Q<<3C><=<3D>=<3D>=<3D>=<3D>=4>M>^>v><3E>><3E>><3E>><3E>>A/AqI<71>Ilh<00>;Y<<3C><D=<3D>=<00>=<3D>=B>j>~><3E>><3E>><3E>><3E>>A7AyI<79>IthJ<<3C><=<3D>=<00>=*>J<<3C><_=<3D>=>+><00>;6<<3C><m=><00>>A<00>I<00>=U><00><00>}C<00>.j<02><00><00><00>|B<00><00>-<00>=@>&C<02><00><00><00>*G<02><02><00><00><00>]<<3C><<00>;"?uA<00>I<EFBFBD>:==<00>=T=<00>=F=<00>=<3D><00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>$(/6L^s<01><01><01><01><01>W=<00>=whA{Ivh  <01>r<01><01><01>r<01><01><01>R <06><01>i<01><01>i<01>"%<02> <1A>~1g<0F><01>X<EFBFBD><58><EFBFBD>W<EFBFBD><57> rustfmt::skip<69><17>8[<1A>~1g<0F> T<>'<27>a<EFBFBD><61><02>uvuzu<7A>u<EFBFBD>u<EFBFBD>u<EFBFBD>u<EFBFBD>u<EFBFBD>ODHT !@<02><> b<>
<EFBFBD><EFBFBD>|<00>9dB$<24>v<17><>l2<><32><00><>l2<6C><32><EFBFBD>M<00>b<EFBFBD><62> T<><00><>u
<EFBFBD><EFBFBD>ea9Ʌ<39><C985><EFBFBD><EFBFBD> <00>$><0F><>t<00>2MD<17>R<EFBFBD>
8"T<>b<>V t<>Qc<51>t<EFBFBD><74><00><>G<EFBFBD> v<><00><><1A><> <0B> !
<1B>!<21><><00><>Mf& C<><1A>~1g<0F>!,<2C><><EFBFBD><EFBFBD><EFBFBD><00>i#A<><41><EFBFBD>Z<00><><EFBFBD><EFBFBD><EFBFBD>B<>a"V<>1<EFBFBD>W<EFBFBD><16>ir<>R<EFBFBD><00>s 4-*t$j<><6A><EFBFBD><EFBFBD>_L<00><>Pж-<2D>/ <00>-O<><4F><EFBFBD>9K<><4B><EFBFBD>7<05>^1e<31>z<EFBFBD>.<2E>Z ^<5E>7<EFBFBD>:<3A><07>t_ z:<3A>F/<2F><>W<EFBFBD><57><EFBFBD><EFBFBD><00><><EFBFBD>,<2C>Q!|<00>?<3F>t<EFBFBD>E<EFBFBD>9 <00>
<15>?<3F><><EFBFBD><01>;<3B>j&<26><><EFBFBD> 2<>L<EFBFBD><4C>:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+<2B><><EFBFBD>t<EFBFBD><74><EFBFBD><01><><EFBFBD>`^M<>-<2D><><EFBFBD><EFBFBD><EFBFBD>{Sl<53>:&/-Z#Z>f<01>;<3B>j&<26><><EFBFBD> 2<>L<EFBFBD><4C>:fC:\Users\xiaji\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\tables.rs<72>XC:\Users\xiaji\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24<EFBFBD>fC:\Users\xiaji\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\tables.rs<72> 1[<5B><><EFBFBD>?-<2D>_<EFBFBD>f <00><><03><><03>Q@3+,6HK$;dddddddddddddddddddddddddF?dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
8ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddoS-L %L<>KRm<52><6D><EFBFBD><EFBFBD>cC:\Users\xiaji\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\lib.rs<72>XC:\Users\xiaji\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24<EFBFBD>cC:\Users\xiaji\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\lib.rs<72> J<><4A>^<5E><>B<EFBFBD>L<EFBFBD> <0C>M<EFBFBD><4D>t<00>d<EFBFBD>d<EFBFBD><01>kon OA2OMQ !K%JD>Q>KHN?A=BMKHBGO; %PC #7&& $ MMMJLNMM;OGO2N#OPMNQLOQ4LAI **&*%&QLONPJQ3OPGON,PQ'QMQONP MKN#-?NNLO'IE7QQJJJPQNQ#4PP(QFFPP9 5 <09><>
QNEOOQPMLJ;NHOON<PJ @
  (Z?(5MGQB+8 &GQ<02><03><02><><EFBFBD>¼<EFBFBD>r<EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD>Lxyp}x86_64-pc-windows-gnu<6E>)IU<49>4<EFBFBD><34><EFBFBD>P_d(<28> <0B> unicode_ident<6E>-8f80157298477d55<35><1A>~1g<0F><02><>R<00><>!<00> `-!< !!@ B@!!B!BB? *@,*!0B*0*!!BB* @((!(B(!B<02><02>rust-end-file