diff --git a/Cargo.toml b/Cargo.toml index 62eb617..cc2b5ea 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,11 +1,12 @@ [package] name = "gba" -version = "0.0.1" +version = "0.1.0" authors = ["Lokathor ", "Ketsuban"] edition = "2018" -license = "Apache2" +license = "Apache-2.0" [dependencies] +gba-proc-macro = "0.1.1" [profile.release] lto = true diff --git a/README.md b/README.md index 2cecd2d..ff88225 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ do this stuff. dots as well as other support files: * crt0.s * linker.ld - * thumbv4-none-eabi.json + * thumbv4-none-agb.json * build.rs 5) Run `arm-none-eabi-as crt0.s -o crt0.o` to build the `crt0.s` into a `crt0.o` @@ -38,7 +38,7 @@ do this stuff. `build.bat` file it's set to simply run every single time because it's a cheap enough operation. -6) Build with `cargo xbuild --target thumbv4-none-eabi.json` +6) Build with `cargo xbuild --target thumbv4-none-agb.json` * The file extension is significant, and `cargo xbuild` takes it as a flag to compile dependencies with the same sysroot, so you can include crates normally. Well, crates that can run inside a GBA at least (Which means they @@ -47,7 +47,7 @@ do this stuff. helpful because it has debug symbols). 7) Also you can patch up the output to be a "real" ROM file: - * `arm-none-eabi-objcopy -O binary target/thumbv4-none-eabi/debug/gbatest target/output.gba` + * `arm-none-eabi-objcopy -O binary target/thumbv4-none-agb/debug/gbatest target/output.gba` * `gbafix target/output.gba` 8) Alternately, you can use the provided `build.bat` file (or write a similar diff --git a/book/src/SUMMARY.md b/book/src/SUMMARY.md index e03a4d0..6ac3978 100644 --- a/book/src/SUMMARY.md +++ b/book/src/SUMMARY.md @@ -1,4 +1,11 @@ # Rust GBA Tutorials -* [ch01](ch01.md) +* [Introduction](introduction.md) +* [Ch 0: Development Setup](ch0/index.md) +* [Ch 1: Hello GBA](ch1/index.md) + * [hello1](ch1/hello1.md) + * [IO Registers](ch1/io_registers.md) + * [The Display Control Register](ch1/the_display_control_register.md) + * [Video Memory Intro](ch1/video_memory_intro.md) + * [hello2](ch1/hello2.md) diff --git a/book/src/ch0/index.md b/book/src/ch0/index.md new file mode 100644 index 0000000..a8d1797 --- /dev/null +++ b/book/src/ch0/index.md @@ -0,0 +1,126 @@ +# Chapter 0: Development Setup + +Before you can build a GBA game you'll have to follow some special steps to +setup the development environment. Perhaps unfortunately, there's enough detail +here to warrant a mini-chapter all on its own. + +## Per System Setup + +Obviously you need your computer to have a working rust installation. However, +you'll also need to ensure that you're using a nightly toolchain. You can run +`rustup default nightly` to set nightly as the system wide default toolchain, or +you can use a [toolchain +file](https://github.com/rust-lang-nursery/rustup.rs#the-toolchain-file) to use +nightly just on a specific project, but either way we'll be assuming nightly +from now on. + +Next you need [devkitpro](https://devkitpro.org/wiki/Getting_Started). They've +got a graphical installer for Windows, and `pacman` support on Linux. We'll be +using a few of their binutils for the `arm-none-eabi` target, and we'll also be +using some of their tools that are specific to GBA development, so _even if_ you +already have the right binutils for whatever reason, you'll still want devkitpro +for the `gbafix` utility. + +* On Windows you'll want something like `C:\devkitpro\devkitARM\bin` and + `C:\devkitpro\tools\bin` to be [added to your + PATH](https://stackoverflow.com/q/44272416/455232), depending on where you + installed it to and such. +* On Linux you'll also want it to be added to your path, but if you're using + Linux I'll just assume you know how to do all that. + +Finally, you'll need `cargo-xbuild`. Just run `cargo install cargo-xbuild` and +cargo will figure it all out for you. + +## Per Project Setup + +Now you'll need some particular files each time you want to start a new project. +You can find them in the root of the [rust-console/gba +repo](https://github.com/rust-console/gba). + +* `thumbv4-none-agb.json` describes the overall GBA to cargo-xbuild so it knows + what to do. This is actually a somewhat made up target name since there's no + official target name. The GBA is essentially the same as a normal + `thumbv4-none-eabi` device, but we give it the "agb" signifier so that later + on we'll be able to use rust's `cfg` ability to allow our code to know if it's + specifically targeting a GBA or some other similar device (like an NDS). +* `crt0.s` describes some ASM startup stuff. If you have more ASM to place here + later on this is where you can put it. You also need to build it into a + `crt0.o` file before it can actually be used, but we'll cover that below. +* `linker.ld` tells the linker more critical info about the layout expectations + that the GBA has about our program. + +## Compiling + +Once you've got something to build, you perform the following steps: + +* `arm-none-eabi-as crt0.s -o crt0.o` + * This builds your text format `crt0.s` file into object format `crt0.o`. You + don't need to perform it every time, only when `crt0.s` changes, but you + might as well do it every time so that you never forget to because it's a + practically instant operation. + +* `cargo xbuild --target thumbv4-none-agb.json` + * This builds your Rust source. It accepts _most of_ the normal options, such + as `--release`, and options, such as `--bin foo` or `--examples`, that you'd + expect `cargo` to accept. + * You **can not** build and run tests this way, because they require `std`, + which the GBA doesn't have. You can still run some of your project's tests + with `cargo test`, but that builds for your local machine, so anything + specific to the GBA (such as reading and writing registers) won't be + testable that way. If you want to isolate and try out some piece code + running on the GBA you'll unfortunately have to make a demo for it in your + `examples/` directory and then run the demo in an emulator and see if it + does what you expect. + * The file extension is important. `cargo xbuild` takes it as a flag to + compile dependencies with the same sysroot, so you can include crates + normally. Well, creates that work in the GBA's limited environment, but you + get the idea. + +At this point you have an ELF binary that some emulators can execute directly. +This is helpful because it'll have debug symbols and all that, assuming a debug +build. Specifically, [mgba 0.7 beta +1](https://mgba.io/2018/09/24/mgba-0.7-beta1/) can do it, and perhaps other +emulators can also do it. + +However, if you want a "real" ROM that works in all emulators and that you could +transfer to a flash cart there's a little more to do. + +* `arm-none-eabi-objcopy -O binary target/thumbv4-none-agb/MODE/BIN_NAME target/ROM_NAME.gba` + * This will perform an [objcopy](https://linux.die.net/man/1/objcopy) on our + program. Here I've named the program `arm-none-eabi-objcopy`, which is what + devkitpro calls their version of `objcopy` that's specific to the GBA in the + Windows install. If the program isn't found under that name, have a look in + your installation directory to see if it's under a slightly different name + or something. + * As you can see from reading the man page, the `-O binary` option takes our + lovely ELF file with symbols and all that and strips it down to basically a + bare memory dump of the program. + * The next argument is the input file. You might not be familiar with how + `cargo` arranges stuff in the `target/` directory, and between RLS and + `cargo doc` and stuff it gets kinda crowded, so it goes like this: + * Since our program was built for a non-local target, first we've got a + directory named for that target, `thumbv4-none-agb/` + * Next, the "MODE" is either `debug/` or `release/`, depending on if we had + the `--release` flag included. You'll probably only be packing release + mode programs all the way into GBA roms, but it works with either mode. + * Finally, the name of the program. If your program is something out of the + project's `src/bin/` then it'll be that file's name, or whatever name you + configured for the bin in the `Cargo.toml` file. If your program is + something out of the project's `examples/` directory there will be a + similar `examples/` sub-directory first, and then the example's name. + * The final argument is the output of the `objcopy`, which I suggest putting + at just the top level of the `target/` directory. Really it could go + anywhere, but if you're using git then it's likely that your `.gitignore` + file is already setup to exclude everything in `target/`, so this makes sure + that your intermediate game builds don't get checked into your git. + +* `gbafix target/ROM_NAME.gba` + * The `gbafix` tool also comes from devkitpro. The GBA is very picky about a + ROM's format, and `gbafix` patches the ROM's header and such so that it'll + work right. Unlike `objcopy`, this tool is custom built for GBA development, + so it works just perfectly without any arguments beyond the file name. The + ROM is patched in place, so we don't even need to specify a new destination. + +And you're finally done! + +Of course, you probably want to make a script for all that, but it's up to you. diff --git a/book/src/ch01.md b/book/src/ch01.md deleted file mode 100644 index 730a444..0000000 --- a/book/src/ch01.md +++ /dev/null @@ -1 +0,0 @@ -# ch01 diff --git a/book/src/ch1/hello1.md b/book/src/ch1/hello1.md new file mode 100644 index 0000000..869041e --- /dev/null +++ b/book/src/ch1/hello1.md @@ -0,0 +1,190 @@ +# hello1 + +Ready? Here goes: + +`hello1.rs` + +```rust +#![feature(start)] +#![no_std] + +#[cfg(not(test))] +#[panic_handler] +fn panic(_info: &core::panic::PanicInfo) -> ! { + loop {} +} + +#[start] +fn main(_argc: isize, _argv: *const *const u8) -> isize { + unsafe { + (0x04000000 as *mut u16).write_volatile(0x0403); + (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); + (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); + (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); + loop {} + } +} +``` + +Throw that into your project, build the program (as described back in Chapter +0), and give it a run. You should see a red, green, and blue dot close-ish to +the middle of the screen. If you don't, something already went wrong. Double +check things, phone a friend, write your senators, try asking Ketsuban on the +[Rust Community Discord](https://discordapp.com/invite/aVESxV8), until you're +able to get your three dots going. + +## Explaining hello1 + +So, what just happened? Even if you're used to Rust that might look pretty +strange. We'll go over each part extra carefully. + +```rust +#![feature(start)] +``` + +This enables the [start +feature](https://doc.rust-lang.org/beta/unstable-book/language-features/start.html), +which you would normally be able to read about in the unstable book, except that +the book tells you nothing at all except to look at the [tracking +issue](https://github.com/rust-lang/rust/issues/29633). + +Basically, a GBA game is even more low-level than the _normal_ amount of +low-level that you get from Rust, so we have to tell the compiler to account for +that by specifying a `#[start]`, and we need this feature on to do that. + +```rust +#![no_std] +``` + +There's no standard library available on the GBA, so we'll have to live a core +only life. + +```rust +#[cfg(not(test))] +#[panic_handler] +fn panic(_info: &core::panic::PanicInfo) -> ! { + loop {} +} +``` + +This sets our [panic +handler](https://doc.rust-lang.org/nightly/nomicon/panic-handler.html). +Basically, if we somehow trigger a panic, this is where the program goes. +However, right now we don't know how to get any sort of message out to the user +so... we do nothing at all. We _can't even return_ from here, so we just sit in +an infinite loop. The player will have to reset the universe from the outside. + +The `#[cfg(not(test))]` part makes this item only exist in the program when +we're _not_ in a test build. This is so that `cargo test` and such work right as +much as possible. + +```rust +#[start] +fn main(_argc: isize, _argv: *const *const u8) -> isize { +``` + +This is our `#[start]`. We call it `main`, but it's not like a `main` that you'd +see in a Rust program. It's _more like_ the sort of `main` that you'd see in a C +program, but it's still **not** that either. If you compile a `#[start]` program +for a target with an OS such as `arm-none-eabi-nm` you can open up the debug +info and see that your result will have the symbol for the C `main` along side +the symbol for the start `main` that we write here. Our start `main` is just its +own unique thing, and the inputs and outputs have to be like that because that's +how `#[start]` is specified to work in Rust. + +If you think about it for a moment you'll probably realize that, those inputs +and outputs are totally useless to us on a GBA. There's no OS on the GBA to call +our program, and there's no place for our program to "return to" when it's done. + +```rust + unsafe { +``` + +I hope you're all set for some `unsafe`, because there's a lot of it to be had. + +```rust + (0x04000000 as *mut u16).write_volatile(0x0403); +``` + +Sure! + +```rust + (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); + (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); + (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); +``` + +Ah, of course. + +```rust + loop {} + } +} +``` + +And, as mentioned above, there's no place for a GBA program to "return to", so +we can't ever let `main` try to return there. Instead, we go into an infinite +`loop` that does nothing. The fact that this doesn't ever return an `isize` +value doesn't seem to bother Rust, because I guess we're at least not returning +any other type of thing instead. + +Fun fact: unlike in C++, an infinite loop with no side effects isn't Undefined +Behavior for us rustaceans... _semantically_. In truth LLVM has a [known +bug](https://github.com/rust-lang/rust/issues/28728) in this area, so we won't +actually be relying on empty loops in any future programs. + +## All Those Magic Numbers + +Alright, I cheated quite a bit in the middle there. The program works, but I +didn't really tell you why because I didn't really tell you what any of those +magic numbers mean or do. + +* `0x04000000` is the address of an IO Register called the Display Control. +* `0x06000000` is the start of Video RAM. + +So we write some magic to the display control register once, then we write some +other magic to three locations of magic to the Video RAM. We get three dots, +each in their own location... so that second part makes sense at least. + +We'll get into the magic number details in the other sections of this chapter. + +## Sidebar: Volatile + +We'll get into what all that is in a moment, but first let's ask ourselves: Why +are we doing _volatile_ writes? You've probably never used it before at all. +What is volatile anyway? + +Well, the optimizer is pretty aggressive some of the time, and so it'll skip +reads and writes when it thinks can. Like if you write to a pointer once, and +then again a moment later, and it didn't see any other reads in between, it'll +think that it can just skip doing that first write since it'll get overwritten +anyway. Sometimes that's right, but sometimes it's wrong. + +Marking a read or write as _volatile_ tells the compiler that it really must do +that action, and in the exact order that we wrote it out. It says that there +might even be special hardware side effects going on that the compiler isn't +aware of. In this case, the Display Control write sets a video mode, and the +Video RAM writes set pixels that will show up on the screen. + +Similar to "atomic" operations you might have heard about, all volatile +operations are enforced to happen in the exact order that you specify them, but +only relative to other volatile operations. So something like + +```rust +c.volatile_write(5); +a += b; +d.volatile_write(7); +``` + +might end up changing `a` either before or after the change to `c`, but the +write to `d` will _always_ happen after the write to `c`. + +If you ever use volatile stuff on other platforms it's important to note that +volatile doesn't make things thread-safe, you still need atomic for that. +However, the GBA doesn't have threads, so we don't have to worry about thread +safety concerns. + +Accordingly, our first bit of code for our library will be a _newtype_ over a +normal `*mut T` so that it has volatile reads and writes as the default. We'll +cover the details later on when we try writing a `hello2` program, once we know +more of what's going on. diff --git a/book/src/ch1/hello2.md b/book/src/ch1/hello2.md new file mode 100644 index 0000000..1273a69 --- /dev/null +++ b/book/src/ch1/hello2.md @@ -0,0 +1,114 @@ +# hello2 + +Okay so let's have a look again: + +`hello1` + +```rust +#![feature(start)] +#![no_std] + +#[cfg(not(test))] +#[panic_handler] +fn panic(_info: &core::panic::PanicInfo) -> ! { + loop {} +} + +#[start] +fn main(_argc: isize, _argv: *const *const u8) -> isize { + unsafe { + (0x04000000 as *mut u16).write_volatile(0x0403); + (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); + (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); + (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); + loop {} + } +} +``` + +Now let's clean this up so that it's clearer what's going on. + +First we'll label that display control stuff: + +```rust +pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16; +pub const MODE3: u16 = 3; +pub const BG2: u16 = 0b100_0000_0000; +``` + +Next we make some const values for the actual pixel drawing + +```rust +pub const VRAM: usize = 0x06000000; +pub const SCREEN_WIDTH: isize = 240; +``` + +And then we want a small helper function for putting together a color value. + +Happily, this one can even be declared as a const function. At the time of +writing, we've got the "minimal const fn" support in nightly. It really is quite +limited, but I'm happy to let rustc and LLVM pre-compute as much as they can +when it comes to the GBA's tiny CPU. + +```rust +pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { + blue << 10 | green << 5 | red +} +``` + +Finally, we'll make a function for drawing a pixel in Mode 3. Even though it's +just a one-liner, having the "important parts" be labeled as function arguments +usually helps you think about it a lot better. + +```rust +pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) { + (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color); +} +``` + +So now we've got this: + +`hello2` + +```rust +#![feature(start)] +#![no_std] + +#[cfg(not(test))] +#[panic_handler] +fn panic(_info: &core::panic::PanicInfo) -> ! { + loop {} +} + +#[start] +fn main(_argc: isize, _argv: *const *const u8) -> isize { + unsafe { + DISPCNT.write_volatile(MODE3 | BG2); + mode3_pixel(120, 80, rgb16(31, 0, 0)); + mode3_pixel(136, 80, rgb16(0, 31, 0)); + mode3_pixel(120, 96, rgb16(0, 0, 31)); + loop {} + } +} + +pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16; +pub const MODE3: u16 = 3; +pub const BG2: u16 = 0b100_0000_0000; + +pub const VRAM: usize = 0x06000000; +pub const SCREEN_WIDTH: isize = 240; + +pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { + blue << 10 | green << 5 | red +} + +pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) { + (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color); +} +``` + +Exact same program that we started with, but much easier to read. + +Of course, in the full `gba` crate that this book is a part of we have these and +other elements all labeled and sorted out for you. Still, for educational +purposes it's often best to do it yourself at least once. diff --git a/book/src/ch1/index.md b/book/src/ch1/index.md new file mode 100644 index 0000000..7c21c79 --- /dev/null +++ b/book/src/ch1/index.md @@ -0,0 +1,10 @@ +# Ch 1: Hello GBA + +Traditionally a person writes a "hello, world" program so that they can test +that their development environment is setup properly and to just get a feel for +using the tools involved. To get an idea of what a small part of a source file +will look like. All that stuff. + +Normally, you write a program that prints "hello, world" to the terminal. The +GBA has no terminal, but it does have a screen, so instead we're going to draw +three dots to the screen. diff --git a/book/src/ch1/io_registers.md b/book/src/ch1/io_registers.md new file mode 100644 index 0000000..890e7a7 --- /dev/null +++ b/book/src/ch1/io_registers.md @@ -0,0 +1,33 @@ +# IO Registers + +The GBA has a large number of **IO Registers** (not to be confused with CPU +registers). These are special memory locations from `0x04000000` to +`0x040003FE`. GBATEK has a [full +list](http://problemkaputt.de/gbatek.htm#gbaiomap), but we only need to learn +about a few of them at a time as we go, so don't be worried. + +The important facts to know about IO Registers are these: + +* Each has their own specific size. Most are `u16`, but some are `u32`. +* All of them must be accessed in a `volatile` style. +* Each register is specifically readable or writable or both. Actually, with + some registers there are even individual bits that are read-only or + write-only. + * If you write to a read-only position, those writes are simply ignored. This + mostly matters if a writable register contains a read-only bit (such as the + Display Control, next section). + * If you read from a write-only position, you get back values that are + [basically + nonsense](http://problemkaputt.de/gbatek.htm#gbaunpredictablethings). There + aren't really any registers that mix writable bits with read only bits, so + you're basically safe here. The only (mild) concern is that when you write a + value into a write-only register you need to keep track of what you wrote + somewhere else if you want to know what you wrote (such to adjust an offset + value by +1, or whatever). + * You can always check GBATEK to be sure, but if I don't mention it then a bit + is probably both read and write. +* Some registers have invalid bit patterns. For example, the lowest three bits + of the Display Control register can't legally be set to the values 6 or 7. + +When talking about bit positions, the numbers are _zero indexed_ just like an +array index is. diff --git a/book/src/ch1/the_display_control_register.md b/book/src/ch1/the_display_control_register.md new file mode 100644 index 0000000..4edc90b --- /dev/null +++ b/book/src/ch1/the_display_control_register.md @@ -0,0 +1,112 @@ +# The Display Control Register + +The display control register is our first actual IO Register. GBATEK gives it the +shorthand [DISPCNT](http://problemkaputt.de/gbatek.htm#lcdiodisplaycontrol), so +you might see it under that name if you read other guides. + +Among IO Registers, it's one of the simpler ones, but it's got enough complexity +that we can get a hint of what's to come. + +Also it's the one that you basically always need to set at least once in every +GBA game, so it's a good starting one to go over for that reason too. + +The display control register holds a `u16` value, and is located at `0x0400_0000`. + +Many of the bits here won't mean much to you right now. **That is fine.** You do +NOT need to memorize them all or what they all do right away. We'll just skim +over all the parts of this register to start, and then we'll go into more detail +in later chapters when we need to come back and use more of the bits. + +## Video Modes + +The lowest three bits (0-2) let you select from among the GBA's six video modes. +You'll notice that 3 bits allows for eight modes, but the values 6 and 7 are +prohibited. + +Modes 0, 1, and 2 are "tiled" modes. These are actually the modes that you +should eventually learn to use as much as possible. It lets the GBA's limited +video hardware do as much of the work as possible, leaving more of your CPU time +for gameplay computations. However, they're also complex enough to deserve their +own demos and chapters later on, so that's all we'll say about them for now. + +Modes 3, 4, and 5 are "bitmap" modes. These let you write individual pixels to +locations on the screen. + +* **Mode 3** is full resolution (240w x 160h) RGB15 color. You might not be used + to RGB15, since modern computers have 24 or 32 bit colors. In RGB15, there's 5 + bits for each color channel stored within a `u16` value, and the highest bit is + simply ignored. +* **Mode 4** is full resolution paletted color. Instead of being a `u16` color, each + pixel value is a `u8` palette index entry, and then the display uses the + palette memory (which we'll talk about later) to store the actual color data. + Since each pixel is half sized, we can fit twice as many. This lets us have + two "pages". At any given moment only one page is active, and you can draw to + the other page without the user noticing. You set which page to show with + another bit we'll get to in a moment. +* **Mode 5** is full color, but also with pages. This means that we must have a + reduced resolution to compensate (video memory is only so big!). The screen is + effectively only 160w x 128h in this mode. + +## CGB Mode + +Bit 3 is effectively read only. Technically it can be flipped using a BIOS call, +but when you write to the display control register normally it won't write to +this bit, so we'll call it effectively read only. + +This bit is on if the CPU is in CGB mode. + +## Page Flipping + +Bit 4 lets you pick which page to use. This is only relevent in video modes 4 or +5, and is just ignored otherwise. It's very easy to remember: when the bit is 0 +the 0th page is used, and when the bit is 1 the 1st page is used. + +The second page always starts at `0x0600_A000`. + +## OAM, VRAM, and Blanking + +Bit 5 lets you access OAM during HBlank if enabled. This is cool, but it reduces +the maximum sprites per scanline, so it's not default. + +Bit 6 lets you adjust if the GBA should treat Object Character VRAM as being 2d +(off) or 1d (on). This particular control can be kinda tricky to wrap your head +around, so we'll be sure to have some extra diagrams in the chapter that deals +with it. + +Bit 7 forces the screen to stay in vblank as long as it's set. This allows the +fastest use of the VRAM, Palette, and Object Attribute Memory. Obviously if you +leave this on for too long the player will notice a blank screen, but it might +be okay to use for a moment or two every once in a while. + +## Screen Layers + +Bits 8 through 11 control if Background layers 0 through 3 should be active. + +Bit 12 affects the Object layer. + +Note that not all background layers are available in all video modes: + +* Mode 0: all +* Mode 1: 0/1/2 +* Mode 2: 2/3 +* Mode 3/4/5: 2 + +Bit 13 and 14 enable the display of Windows 0 and 1, and Bit 15 enables the +object display window. We'll get into how windows work later on, they let you do +some nifty graphical effects. + +## In Conclusion... + +So what did we do to the display control register in `hello1`? + +```rust + (0x04000000 as *mut u16).write_volatile(0x0403); +``` + +First let's [convert that to +binary](https://www.wolframalpha.com/input/?i=0x0403), and we get +`0b100_0000_0011`. So, that's setting Mode 3 with background 2 enabled and +nothing else special. + +However, I think we can do better than that. This is a prime target for more +newtyping as we attempt a `hello2` program. diff --git a/book/src/ch1/video_memory_intro.md b/book/src/ch1/video_memory_intro.md new file mode 100644 index 0000000..07832ac --- /dev/null +++ b/book/src/ch1/video_memory_intro.md @@ -0,0 +1,113 @@ +# Video Memory Intro + +The GBA's Video RAM is 96k stretching from `0x0600_0000` to `0x0601_7FFF`. + +The Video RAM can only be accessed totally freely during a Vertical Blank +(aka "vblank"). At other times, if the CPU tries to touch the same part of video +memory as the display controller is accessing then the CPU gets bumped by a +cycle to avoid a clash. + +Annoyingly, VRAM can only be properly written to in 16 and 32 bit segments (same +with PALRAM and OAM). If you try to write just an 8 bit segment, then both parts +of the 16 bit segment get the same value written to them. In other words, if you +write the byte `5` to `0x0600_0000`, then both `0x0600_0000` and ALSO +`0x0600_0001` will have the byte `5` in them. We have to be extra careful when +trying to set an individual byte, and we also have to be careful if we use +`memcopy` or `memset` as well, because they're byte oriented by default and +don't know to follow the special rules. + +## RGB15 + +As I said before, RGB15 stores a color within a `u16` value using 5 bits for +each color channel. + +```rust +pub const RED: u16 = 0b0_00000_00000_11111; +pub const GREEN: u16 = 0b0_00000_11111_00000; +pub const BLUE: u16 = 0b0_11111_00000_00000; +``` + +In Mode 3 and Mode 5 we write direct color values into VRAM, and in Mode 4 we +write palette index values, and then the color values go into the PALRAM. + +## Mode 3 + +Mode 3 is pretty easy. We have a full resolution grid of rgb15 pixels. There's +160 rows of 240 pixels each, with the base address being the top left corner. A +particular pixel uses normal "2d indexing" math: + +```rust +let row_five_col_seven = 5 + (7 * SCREEN_WIDTH); +``` + +To draw a pixel, we just write a value at the address for the row and col that +we want to draw to. + +## Mode 4 + +Mode 4 introduces page flipping. Instead of one giant page at `0x0600_0000`, +there's Page 0 at `0x0600_0000` and then Page 1 at `0x0600_A000`. The resolution +for each page is the same as above, but instead of writing `u16` values, the +memory is treated as `u8` indexes into PALRAM. The PALRAM starts at +`0x0500_0000`, and there's enough space for 256 palette entries (each a `u16`). + +To set the color of a palette entry we just do a normal `u16` write_volatile. + +```rust +(0x0500_0000 as *mut u16).offset(target_index).write_volatile(new_color) +``` + +To draw a pixel we set the palette entry that we want the pixel to use. However, +we must remember the "minimum size" write limitation that applies to VRAM. So, +if we want to change just a single pixel at a time we must + +1) Read the full `u16` it's a part of. +2) Clear the half of the `u16` we're going to replace +3) Write the half of the `u16` we're going to replace with the new value +4) Write that result back to the address. + +So, the math for finding a byte offset is the same as Mode 3 (since they're both +a 2d grid). If the byte offset is EVEN it'll be the high bits of the `u16` at +half the byte offset rounded down. If the offset is ODD it'll be the low bits of +the `u16` at half the byte. + +Does that make sense? + +* If we want to write pixel (0,0) the byte offset is 0, so we change the high + bits of `u16` offset 0. Then we want to write to (1,0), so the byte offset is + 1, so we change the low bits of `u16` offset 0. The pixels are next to each + other, and the target bytes are next to each other, good so far. +* If we want to write to (5,6) that'd be byte `5 + 6 * 240 = 1445`, so we'd + target the low bits of `u16` offset `floor(1445/2) = 722`. + +As you can see, trying to write individual pixels in Mode 4 is mostly a bad +time. Fret not! We don't _have_ to write individual bytes. If our data is +arranged correctly ahead of time we can just write `u16` or `u32` values +directly. The video hardware doesn't care, it'll get along just fine. + +## Mode 5 + +Mode 5 is also a two page mode, but instead of compressing the size of a pixel's +data to fit in two pages, we compress the resolution. + +Mode 5 is full `u16` color, but only 160w x 128h per page. + +## In Conclusion... + +So what got written into VRAM in `hello1`? + +```rust + (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); + (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); + (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); +``` + +So at pixels `(120,80)`, `(136,80)`, and `(120,96)` we write three values. Once +again we probably need to [convert them](https://www.wolframalpha.com/) into +binary to make sense of it. + +* 0x001F: 0b11111 +* 0x03E0: 0b11111_00000 +* 0x7C00: 0b11111_00000_00000 + +Ah, of course, a red pixel, a green pixel, and a blue pixel. diff --git a/book/src/introduction.md b/book/src/introduction.md new file mode 100644 index 0000000..91a59b9 --- /dev/null +++ b/book/src/introduction.md @@ -0,0 +1,15 @@ +# Introduction + +Here's a book that'll help you program in Rust on the GBA. + +It's very "work in progress". At the moment there's only one demo program. + +## Other Works + +If you want to read more about developing on the GBA there are some other good resources as well: + +* [Tonc](https://www.coranac.com/tonc/text/toc.htm), a tutorial series written + for C, but it's what I based the ordering of this book's sections on. +* [GBATEK](http://problemkaputt.de/gbatek.htm), a homebrew tech manual for + GBA/NDS/DSi. We will regularly link to parts of it when talking about various + bits of the GBA. diff --git a/build.bat b/build.bat index 554a6e1..739d3f8 100644 --- a/build.bat +++ b/build.bat @@ -1,32 +1,14 @@ -@echo off -REM It could work to only rebuild the `crt0.o` file when `crt0.s` actually -REM changes, but it's actually a super cheap operation so we'll just do it -REM every single time to avoid any mix ups. -@echo on +@rem Build the crt0 file before we begin arm-none-eabi-as crt0.s -o crt0.o -@echo off -REM This builds our program for the GBA. Note that the extension here is -REM important, because it causes all crates that we might import to also -REM use the correct target. -@echo on +@rem Build all examples, both debug and release +cargo xbuild --examples --target thumbv4-none-agb.json +cargo xbuild --examples --target thumbv4-none-agb.json --release -cargo xbuild --target thumbv4-none-eabi.json - -@echo off -REM Some emulators can use cargo's output directly (which is cool, because then -REM you can keep debug symbols and stuff), but to make a "real" ROM we have to -REM also use the devkitpro tools to patch up the file a bit. -@echo on - -arm-none-eabi-objcopy -O binary target/thumbv4-none-eabi/debug/main target/output.gba -gbafix target/output.gba - -@echo off -REM Now all the same for release mode too! -@echo on - -cargo xbuild --target thumbv4-none-eabi.json --release -arm-none-eabi-objcopy -O binary target/thumbv4-none-eabi/release/main target/output-release.gba -gbafix target/output-release.gba +@echo Packing examples into ROM files... +@for %%I in (.\examples\*.*) do @( + echo %%~nI + arm-none-eabi-objcopy -O binary target/thumbv4-none-agb/release/examples/%%~nI target/example-%%~nI.gba >nul + gbafix target/example-%%~nI.gba >nul +) diff --git a/docs/ch0/index.html b/docs/ch0/index.html new file mode 100644 index 0000000..d49f1dc --- /dev/null +++ b/docs/ch0/index.html @@ -0,0 +1,333 @@ + + + + + + Ch 0: Development Setup - Rust GBA Tutorials + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

Chapter 0: Development Setup

+

Before you can build a GBA game you'll have to follow some special steps to +setup the development environment. Perhaps unfortunately, there's enough detail +here to warrant a mini-chapter all on its own.

+

Per System Setup

+

Obviously you need your computer to have a working rust installation. However, +you'll also need to ensure that you're using a nightly toolchain. You can run +rustup default nightly to set nightly as the system wide default toolchain, or +you can use a toolchain +file to use +nightly just on a specific project, but either way we'll be assuming nightly +from now on.

+

Next you need devkitpro. They've +got a graphical installer for Windows, and pacman support on Linux. We'll be +using a few of their binutils for the arm-none-eabi target, and we'll also be +using some of their tools that are specific to GBA development, so even if you +already have the right binutils for whatever reason, you'll still want devkitpro +for the gbafix utility.

+
    +
  • On Windows you'll want something like C:\devkitpro\devkitARM\bin and +C:\devkitpro\tools\bin to be added to your +PATH, depending on where you +installed it to and such.
  • +
  • On Linux you'll also want it to be added to your path, but if you're using +Linux I'll just assume you know how to do all that.
  • +
+

Finally, you'll need cargo-xbuild. Just run cargo install cargo-xbuild and +cargo will figure it all out for you.

+

Per Project Setup

+

Now you'll need some particular files each time you want to start a new project. +You can find them in the root of the rust-console/gba +repo.

+
    +
  • thumbv4-none-agb.json describes the overall GBA to cargo-xbuild so it knows +what to do. This is actually a somewhat made up target name since there's no +official target name. The GBA is essentially the same as a normal +thumbv4-none-eabi device, but we give it the "agb" signifier so that later +on we'll be able to use rust's cfg ability to allow our code to know if it's +specifically targeting a GBA or some other similar device (like an NDS).
  • +
  • crt0.s describes some ASM startup stuff. If you have more ASM to place here +later on this is where you can put it. You also need to build it into a +crt0.o file before it can actually be used, but we'll cover that below.
  • +
  • linker.ld tells the linker more critical info about the layout expectations +that the GBA has about our program.
  • +
+

Compiling

+

Once you've got something to build, you perform the following steps:

+
    +
  • +

    arm-none-eabi-as crt0.s -o crt0.o

    +
      +
    • This builds your text format crt0.s file into object format crt0.o. You +don't need to perform it every time, only when crt0.s changes, but you +might as well do it every time so that you never forget to because it's a +practically instant operation.
    • +
    +
  • +
  • +

    cargo xbuild --target thumbv4-none-agb.json

    +
      +
    • This builds your Rust source. It accepts most of the normal options, such +as --release, and options, such as --bin foo or --examples, that you'd +expect cargo to accept.
    • +
    • You can not build and run tests this way, because they require std, +which the GBA doesn't have. You can still run some of your project's tests +with cargo test, but that builds for your local machine, so anything +specific to the GBA (such as reading and writing registers) won't be +testable that way. If you want to isolate and try out some piece code +running on the GBA you'll unfortunately have to make a demo for it in your +examples/ directory and then run the demo in an emulator and see if it +does what you expect.
    • +
    • The file extension is important. cargo xbuild takes it as a flag to +compile dependencies with the same sysroot, so you can include crates +normally. Well, creates that work in the GBA's limited environment, but you +get the idea.
    • +
    +
  • +
+

At this point you have an ELF binary that some emulators can execute directly. +This is helpful because it'll have debug symbols and all that, assuming a debug +build. Specifically, mgba 0.7 beta +1 can do it, and perhaps other +emulators can also do it.

+

However, if you want a "real" ROM that works in all emulators and that you could +transfer to a flash cart there's a little more to do.

+
    +
  • +

    arm-none-eabi-objcopy -O binary target/thumbv4-none-agb/MODE/BIN_NAME target/ROM_NAME.gba

    +
      +
    • This will perform an objcopy on our +program. Here I've named the program arm-none-eabi-objcopy, which is what +devkitpro calls their version of objcopy that's specific to the GBA in the +Windows install. If the program isn't found under that name, have a look in +your installation directory to see if it's under a slightly different name +or something.
    • +
    • As you can see from reading the man page, the -O binary option takes our +lovely ELF file with symbols and all that and strips it down to basically a +bare memory dump of the program.
    • +
    • The next argument is the input file. You might not be familiar with how +cargo arranges stuff in the target/ directory, and between RLS and +cargo doc and stuff it gets kinda crowded, so it goes like this: +
        +
      • Since our program was built for a non-local target, first we've got a +directory named for that target, thumbv4-none-agb/
      • +
      • Next, the "MODE" is either debug/ or release/, depending on if we had +the --release flag included. You'll probably only be packing release +mode programs all the way into GBA roms, but it works with either mode.
      • +
      • Finally, the name of the program. If your program is something out of the +project's src/bin/ then it'll be that file's name, or whatever name you +configured for the bin in the Cargo.toml file. If your program is +something out of the project's examples/ directory there will be a +similar examples/ sub-directory first, and then the example's name.
      • +
      +
    • +
    • The final argument is the output of the objcopy, which I suggest putting +at just the top level of the target/ directory. Really it could go +anywhere, but if you're using git then it's likely that your .gitignore +file is already setup to exclude everything in target/, so this makes sure +that your intermediate game builds don't get checked into your git.
    • +
    +
  • +
  • +

    gbafix target/ROM_NAME.gba

    +
      +
    • The gbafix tool also comes from devkitpro. The GBA is very picky about a +ROM's format, and gbafix patches the ROM's header and such so that it'll +work right. Unlike objcopy, this tool is custom built for GBA development, +so it works just perfectly without any arguments beyond the file name. The +ROM is patched in place, so we don't even need to specify a new destination.
    • +
    +
  • +
+

And you're finally done!

+

Of course, you probably want to make a script for all that, but it's up to you.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/ch1/hello1.html b/docs/ch1/hello1.html new file mode 100644 index 0000000..d438603 --- /dev/null +++ b/docs/ch1/hello1.html @@ -0,0 +1,365 @@ + + + + + + hello1 - Rust GBA Tutorials + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

hello1

+

Ready? Here goes:

+

hello1.rs

+
#![feature(start)]
+#![no_std]
+
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+
+#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+  unsafe {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+    loop {}
+  }
+}
+
+

Throw that into your project, build the program (as described back in Chapter +0), and give it a run. You should see a red, green, and blue dot close-ish to +the middle of the screen. If you don't, something already went wrong. Double +check things, phone a friend, write your senators, try asking Ketsuban on the +Rust Community Discord, until you're +able to get your three dots going.

+

Explaining hello1

+

So, what just happened? Even if you're used to Rust that might look pretty +strange. We'll go over each part extra carefully.

+

+# #![allow(unused_variables)]
+#![feature(start)]
+#fn main() {
+#}
+

This enables the start +feature, +which you would normally be able to read about in the unstable book, except that +the book tells you nothing at all except to look at the tracking +issue.

+

Basically, a GBA game is even more low-level than the normal amount of +low-level that you get from Rust, so we have to tell the compiler to account for +that by specifying a #[start], and we need this feature on to do that.

+

+# #![allow(unused_variables)]
+#![no_std]
+#fn main() {
+#}
+

There's no standard library available on the GBA, so we'll have to live a core +only life.

+

+# #![allow(unused_variables)]
+#fn main() {
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+#}
+

This sets our panic +handler. +Basically, if we somehow trigger a panic, this is where the program goes. +However, right now we don't know how to get any sort of message out to the user +so... we do nothing at all. We can't even return from here, so we just sit in +an infinite loop. The player will have to reset the universe from the outside.

+

The #[cfg(not(test))] part makes this item only exist in the program when +we're not in a test build. This is so that cargo test and such work right as +much as possible.

+
#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+
+

This is our #[start]. We call it main, but it's not like a main that you'd +see in a Rust program. It's more like the sort of main that you'd see in a C +program, but it's still not that either. If you compile a #[start] program +for a target with an OS such as arm-none-eabi-nm you can open up the debug +info and see that your result will have the symbol for the C main along side +the symbol for the start main that we write here. Our start main is just its +own unique thing, and the inputs and outputs have to be like that because that's +how #[start] is specified to work in Rust.

+

If you think about it for a moment you'll probably realize that, those inputs +and outputs are totally useless to us on a GBA. There's no OS on the GBA to call +our program, and there's no place for our program to "return to" when it's done.

+

+# #![allow(unused_variables)]
+#fn main() {
+  unsafe {
+#}
+

I hope you're all set for some unsafe, because there's a lot of it to be had.

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+#}
+

Sure!

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+#}
+

Ah, of course.

+

+# #![allow(unused_variables)]
+#fn main() {
+    loop {}
+  }
+}
+#}
+

And, as mentioned above, there's no place for a GBA program to "return to", so +we can't ever let main try to return there. Instead, we go into an infinite +loop that does nothing. The fact that this doesn't ever return an isize +value doesn't seem to bother Rust, because I guess we're at least not returning +any other type of thing instead.

+

Fun fact: unlike in C++, an infinite loop with no side effects isn't Undefined +Behavior for us rustaceans... semantically. In truth LLVM has a known +bug in this area, so we won't +actually be relying on empty loops in any future programs.

+

All Those Magic Numbers

+

Alright, I cheated quite a bit in the middle there. The program works, but I +didn't really tell you why because I didn't really tell you what any of those +magic numbers mean or do.

+
    +
  • 0x04000000 is the address of an IO Register called the Display Control.
  • +
  • 0x06000000 is the start of Video RAM.
  • +
+

So we write some magic to the display control register once, then we write some +other magic to three locations of magic to the Video RAM. We get three dots, +each in their own location... so that second part makes sense at least.

+

We'll get into the magic number details in the other sections of this chapter.

+

Sidebar: Volatile

+

We'll get into what all that is in a moment, but first let's ask ourselves: Why +are we doing volatile writes? You've probably never used it before at all. +What is volatile anyway?

+

Well, the optimizer is pretty aggressive some of the time, and so it'll skip +reads and writes when it thinks can. Like if you write to a pointer once, and +then again a moment later, and it didn't see any other reads in between, it'll +think that it can just skip doing that first write since it'll get overwritten +anyway. Sometimes that's right, but sometimes it's wrong.

+

Marking a read or write as volatile tells the compiler that it really must do +that action, and in the exact order that we wrote it out. It says that there +might even be special hardware side effects going on that the compiler isn't +aware of. In this case, the Display Control write sets a video mode, and the +Video RAM writes set pixels that will show up on the screen.

+

Similar to "atomic" operations you might have heard about, all volatile +operations are enforced to happen in the exact order that you specify them, but +only relative to other volatile operations. So something like

+

+# #![allow(unused_variables)]
+#fn main() {
+c.volatile_write(5);
+a += b;
+d.volatile_write(7);
+#}
+

might end up changing a either before or after the change to c, but the +write to d will always happen after the write to c.

+

If you ever use volatile stuff on other platforms it's important to note that +volatile doesn't make things thread-safe, you still need atomic for that. +However, the GBA doesn't have threads, so we don't have to worry about thread +safety concerns.

+

Accordingly, our first bit of code for our library will be a newtype over a +normal *mut T so that it has volatile reads and writes as the default. We'll +cover the details later on when we try writing a hello2 program, once we know +more of what's going on.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/ch1/hello2.html b/docs/ch1/hello2.html new file mode 100644 index 0000000..aca6149 --- /dev/null +++ b/docs/ch1/hello2.html @@ -0,0 +1,293 @@ + + + + + + hello2 - Rust GBA Tutorials + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

hello2

+

Okay so let's have a look again:

+

hello1

+
#![feature(start)]
+#![no_std]
+
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+
+#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+  unsafe {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+    loop {}
+  }
+}
+
+

Now let's clean this up so that it's clearer what's going on.

+

First we'll label that display control stuff:

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;
+pub const MODE3: u16 = 3;
+pub const BG2: u16 = 0b100_0000_0000;
+#}
+

Next we make some const values for the actual pixel drawing

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const VRAM: usize = 0x06000000;
+pub const SCREEN_WIDTH: isize = 240;
+#}
+

And then we want a small helper function for putting together a color value.

+

Happily, this one can even be declared as a const function. At the time of +writing, we've got the "minimal const fn" support in nightly. It really is quite +limited, but I'm happy to let rustc and LLVM pre-compute as much as they can +when it comes to the GBA's tiny CPU.

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 {
+  blue << 10 | green << 5 | red
+}
+#}
+

Finally, we'll make a function for drawing a pixel in Mode 3. Even though it's +just a one-liner, having the "important parts" be labeled as function arguments +usually helps you think about it a lot better.

+

+# #![allow(unused_variables)]
+#fn main() {
+pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) {
+  (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);
+}
+#}
+

So now we've got this:

+

hello2

+
#![feature(start)]
+#![no_std]
+
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+
+#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+  unsafe {
+    DISPCNT.write_volatile(MODE3 | BG2);
+    mode3_pixel(120, 80, rgb16(31, 0, 0));
+    mode3_pixel(136, 80, rgb16(0, 31, 0));
+    mode3_pixel(120, 96, rgb16(0, 0, 31));
+    loop {}
+  }
+}
+
+pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;
+pub const MODE3: u16 = 3;
+pub const BG2: u16 = 0b100_0000_0000;
+
+pub const VRAM: usize = 0x06000000;
+pub const SCREEN_WIDTH: isize = 240;
+
+pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 {
+  blue << 10 | green << 5 | red
+}
+
+pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) {
+  (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);
+}
+
+

Exact same program that we started with, but much easier to read.

+

Of course, in the full gba crate that this book is a part of we have these and +other elements all labeled and sorted out for you. Still, for educational +purposes it's often best to do it yourself at least once.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/ch1/index.html b/docs/ch1/index.html new file mode 100644 index 0000000..d245c24 --- /dev/null +++ b/docs/ch1/index.html @@ -0,0 +1,207 @@ + + + + + + Ch 1: Hello GBA - Rust GBA Tutorials + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

Ch 1: Hello GBA

+

Traditionally a person writes a "hello, world" program so that they can test +that their development environment is setup properly and to just get a feel for +using the tools involved. To get an idea of what a small part of a source file +will look like. All that stuff.

+

Normally, you write a program that prints "hello, world" to the terminal. The +GBA has no terminal, but it does have a screen, so instead we're going to draw +three dots to the screen.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/ch1/io_registers.html b/docs/ch1/io_registers.html new file mode 100644 index 0000000..fbc1fcb --- /dev/null +++ b/docs/ch1/io_registers.html @@ -0,0 +1,233 @@ + + + + + + IO Registers - Rust GBA Tutorials + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

IO Registers

+

The GBA has a large number of IO Registers (not to be confused with CPU +registers). These are special memory locations from 0x04000000 to +0x040003FE. GBATEK has a full +list, but we only need to learn +about a few of them at a time as we go, so don't be worried.

+

The important facts to know about IO Registers are these:

+
    +
  • Each has their own specific size. Most are u16, but some are u32.
  • +
  • All of them must be accessed in a volatile style.
  • +
  • Each register is specifically readable or writable or both. Actually, with +some registers there are even individual bits that are read-only or +write-only. +
      +
    • If you write to a read-only position, those writes are simply ignored. This +mostly matters if a writable register contains a read-only bit (such as the +Display Control, next section).
    • +
    • If you read from a write-only position, you get back values that are +basically +nonsense. There +aren't really any registers that mix writable bits with read only bits, so +you're basically safe here. The only (mild) concern is that when you write a +value into a write-only register you need to keep track of what you wrote +somewhere else if you want to know what you wrote (such to adjust an offset +value by +1, or whatever).
    • +
    • You can always check GBATEK to be sure, but if I don't mention it then a bit +is probably both read and write.
    • +
    +
  • +
  • Some registers have invalid bit patterns. For example, the lowest three bits +of the Display Control register can't legally be set to the values 6 or 7.
  • +
+

When talking about bit positions, the numbers are zero indexed just like an +array index is.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/ch1/the_display_control_register.html b/docs/ch1/the_display_control_register.html new file mode 100644 index 0000000..5a3c3f6 --- /dev/null +++ b/docs/ch1/the_display_control_register.html @@ -0,0 +1,286 @@ + + + + + + The Display Control Register - Rust GBA Tutorials + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

The Display Control Register

+

The display control register is our first actual IO Register. GBATEK gives it the +shorthand DISPCNT, so +you might see it under that name if you read other guides.

+

Among IO Registers, it's one of the simpler ones, but it's got enough complexity +that we can get a hint of what's to come.

+

Also it's the one that you basically always need to set at least once in every +GBA game, so it's a good starting one to go over for that reason too.

+

The display control register holds a u16 value, and is located at 0x0400_0000.

+

Many of the bits here won't mean much to you right now. That is fine. You do +NOT need to memorize them all or what they all do right away. We'll just skim +over all the parts of this register to start, and then we'll go into more detail +in later chapters when we need to come back and use more of the bits.

+

Video Modes

+

The lowest three bits (0-2) let you select from among the GBA's six video modes. +You'll notice that 3 bits allows for eight modes, but the values 6 and 7 are +prohibited.

+

Modes 0, 1, and 2 are "tiled" modes. These are actually the modes that you +should eventually learn to use as much as possible. It lets the GBA's limited +video hardware do as much of the work as possible, leaving more of your CPU time +for gameplay computations. However, they're also complex enough to deserve their +own demos and chapters later on, so that's all we'll say about them for now.

+

Modes 3, 4, and 5 are "bitmap" modes. These let you write individual pixels to +locations on the screen.

+
    +
  • Mode 3 is full resolution (240w x 160h) RGB15 color. You might not be used +to RGB15, since modern computers have 24 or 32 bit colors. In RGB15, there's 5 +bits for each color channel stored within a u16 value, and the highest bit is +simply ignored.
  • +
  • Mode 4 is full resolution paletted color. Instead of being a u16 color, each +pixel value is a u8 palette index entry, and then the display uses the +palette memory (which we'll talk about later) to store the actual color data. +Since each pixel is half sized, we can fit twice as many. This lets us have +two "pages". At any given moment only one page is active, and you can draw to +the other page without the user noticing. You set which page to show with +another bit we'll get to in a moment.
  • +
  • Mode 5 is full color, but also with pages. This means that we must have a +reduced resolution to compensate (video memory is only so big!). The screen is +effectively only 160w x 128h in this mode.
  • +
+

CGB Mode

+

Bit 3 is effectively read only. Technically it can be flipped using a BIOS call, +but when you write to the display control register normally it won't write to +this bit, so we'll call it effectively read only.

+

This bit is on if the CPU is in CGB mode.

+

Page Flipping

+

Bit 4 lets you pick which page to use. This is only relevent in video modes 4 or +5, and is just ignored otherwise. It's very easy to remember: when the bit is 0 +the 0th page is used, and when the bit is 1 the 1st page is used.

+

The second page always starts at 0x0600_A000.

+

OAM, VRAM, and Blanking

+

Bit 5 lets you access OAM during HBlank if enabled. This is cool, but it reduces +the maximum sprites per scanline, so it's not default.

+

Bit 6 lets you adjust if the GBA should treat Object Character VRAM as being 2d +(off) or 1d (on). This particular control can be kinda tricky to wrap your head +around, so we'll be sure to have some extra diagrams in the chapter that deals +with it.

+

Bit 7 forces the screen to stay in vblank as long as it's set. This allows the +fastest use of the VRAM, Palette, and Object Attribute Memory. Obviously if you +leave this on for too long the player will notice a blank screen, but it might +be okay to use for a moment or two every once in a while.

+

Screen Layers

+

Bits 8 through 11 control if Background layers 0 through 3 should be active.

+

Bit 12 affects the Object layer.

+

Note that not all background layers are available in all video modes:

+
    +
  • Mode 0: all
  • +
  • Mode 1: 0/1/2
  • +
  • Mode 2: 2/3
  • +
  • Mode 3/4/5: 2
  • +
+

Bit 13 and 14 enable the display of Windows 0 and 1, and Bit 15 enables the +object display window. We'll get into how windows work later on, they let you do +some nifty graphical effects.

+

In Conclusion...

+

So what did we do to the display control register in hello1?

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+#}
+

First let's convert that to +binary, and we get +0b100_0000_0011. So, that's setting Mode 3 with background 2 enabled and +nothing else special.

+

However, I think we can do better than that. This is a prime target for more +newtyping as we attempt a hello2 program.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/ch1/video_memory_intro.html b/docs/ch1/video_memory_intro.html new file mode 100644 index 0000000..60ffdb5 --- /dev/null +++ b/docs/ch1/video_memory_intro.html @@ -0,0 +1,296 @@ + + + + + + Video Memory Intro - Rust GBA Tutorials + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

Video Memory Intro

+

The GBA's Video RAM is 96k stretching from 0x0600_0000 to 0x0601_7FFF.

+

The Video RAM can only be accessed totally freely during a Vertical Blank +(aka "vblank"). At other times, if the CPU tries to touch the same part of video +memory as the display controller is accessing then the CPU gets bumped by a +cycle to avoid a clash.

+

Annoyingly, VRAM can only be properly written to in 16 and 32 bit segments (same +with PALRAM and OAM). If you try to write just an 8 bit segment, then both parts +of the 16 bit segment get the same value written to them. In other words, if you +write the byte 5 to 0x0600_0000, then both 0x0600_0000 and ALSO +0x0600_0001 will have the byte 5 in them. We have to be extra careful when +trying to set an individual byte, and we also have to be careful if we use +memcopy or memset as well, because they're byte oriented by default and +don't know to follow the special rules.

+

RGB15

+

As I said before, RGB15 stores a color within a u16 value using 5 bits for +each color channel.

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const RED:   u16 = 0b0_00000_00000_11111;
+pub const GREEN: u16 = 0b0_00000_11111_00000;
+pub const BLUE:  u16 = 0b0_11111_00000_00000;
+#}
+

In Mode 3 and Mode 5 we write direct color values into VRAM, and in Mode 4 we +write palette index values, and then the color values go into the PALRAM.

+

Mode 3

+

Mode 3 is pretty easy. We have a full resolution grid of rgb15 pixels. There's +160 rows of 240 pixels each, with the base address being the top left corner. A +particular pixel uses normal "2d indexing" math:

+

+# #![allow(unused_variables)]
+#fn main() {
+let row_five_col_seven = 5 + (7 * SCREEN_WIDTH);
+#}
+

To draw a pixel, we just write a value at the address for the row and col that +we want to draw to.

+

Mode 4

+

Mode 4 introduces page flipping. Instead of one giant page at 0x0600_0000, +there's Page 0 at 0x0600_0000 and then Page 1 at 0x0600_A000. The resolution +for each page is the same as above, but instead of writing u16 values, the +memory is treated as u8 indexes into PALRAM. The PALRAM starts at +0x0500_0000, and there's enough space for 256 palette entries (each a u16).

+

To set the color of a palette entry we just do a normal u16 write_volatile.

+

+# #![allow(unused_variables)]
+#fn main() {
+(0x0500_0000 as *mut u16).offset(target_index).write_volatile(new_color)
+#}
+

To draw a pixel we set the palette entry that we want the pixel to use. However, +we must remember the "minimum size" write limitation that applies to VRAM. So, +if we want to change just a single pixel at a time we must

+
    +
  1. Read the full u16 it's a part of.
  2. +
  3. Clear the half of the u16 we're going to replace
  4. +
  5. Write the half of the u16 we're going to replace with the new value
  6. +
  7. Write that result back to the address.
  8. +
+

So, the math for finding a byte offset is the same as Mode 3 (since they're both +a 2d grid). If the byte offset is EVEN it'll be the high bits of the u16 at +half the byte offset rounded down. If the offset is ODD it'll be the low bits of +the u16 at half the byte.

+

Does that make sense?

+
    +
  • If we want to write pixel (0,0) the byte offset is 0, so we change the high +bits of u16 offset 0. Then we want to write to (1,0), so the byte offset is +1, so we change the low bits of u16 offset 0. The pixels are next to each +other, and the target bytes are next to each other, good so far.
  • +
  • If we want to write to (5,6) that'd be byte 5 + 6 * 240 = 1445, so we'd +target the low bits of u16 offset floor(1445/2) = 722.
  • +
+

As you can see, trying to write individual pixels in Mode 4 is mostly a bad +time. Fret not! We don't have to write individual bytes. If our data is +arranged correctly ahead of time we can just write u16 or u32 values +directly. The video hardware doesn't care, it'll get along just fine.

+

Mode 5

+

Mode 5 is also a two page mode, but instead of compressing the size of a pixel's +data to fit in two pages, we compress the resolution.

+

Mode 5 is full u16 color, but only 160w x 128h per page.

+

In Conclusion...

+

So what got written into VRAM in hello1?

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+#}
+

So at pixels (120,80), (136,80), and (120,96) we write three values. Once +again we probably need to convert them into +binary to make sense of it.

+
    +
  • 0x001F: 0b11111
  • +
  • 0x03E0: 0b11111_00000
  • +
  • 0x7C00: 0b11111_00000_00000
  • +
+

Ah, of course, a red pixel, a green pixel, and a blue pixel.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/index.html b/docs/index.html index adf7623..b4bdb03 100644 --- a/docs/index.html +++ b/docs/index.html @@ -3,7 +3,7 @@ - ch01 - Rust GBA Tutorials + Introduction - Rust GBA Tutorials @@ -72,7 +72,7 @@
@@ -136,7 +136,18 @@
-

ch01

+

Introduction

+

Here's a book that'll help you program in Rust on the GBA.

+

It's very "work in progress". At the moment there's only one demo program.

+

Other Works

+

If you want to read more about developing on the GBA there are some other good resources as well:

+
    +
  • Tonc, a tutorial series written +for C, but it's what I based the ordering of this book's sections on.
  • +
  • GBATEK, a homebrew tech manual for +GBA/NDS/DSi. We will regularly link to parts of it when talking about various +bits of the GBA.
  • +
diff --git a/docs/ch01.html b/docs/introduction.html similarity index 78% rename from docs/ch01.html rename to docs/introduction.html index f94bc03..af6cb29 100644 --- a/docs/ch01.html +++ b/docs/introduction.html @@ -3,7 +3,7 @@ - ch01 - Rust GBA Tutorials + Introduction - Rust GBA Tutorials @@ -72,7 +72,7 @@
@@ -136,7 +136,18 @@
-

ch01

+

Introduction

+

Here's a book that'll help you program in Rust on the GBA.

+

It's very "work in progress". At the moment there's only one demo program.

+

Other Works

+

If you want to read more about developing on the GBA there are some other good resources as well:

+
    +
  • Tonc, a tutorial series written +for C, but it's what I based the ordering of this book's sections on.
  • +
  • GBATEK, a homebrew tech manual for +GBA/NDS/DSi. We will regularly link to parts of it when talking about various +bits of the GBA.
  • +
@@ -145,6 +156,10 @@ + +
@@ -155,6 +170,10 @@ + +
diff --git a/docs/print.html b/docs/print.html index e4b60cd..ae52321 100644 --- a/docs/print.html +++ b/docs/print.html @@ -72,7 +72,7 @@
@@ -136,7 +136,646 @@
-

ch01

+

Introduction

+

Here's a book that'll help you program in Rust on the GBA.

+

It's very "work in progress". At the moment there's only one demo program.

+

Other Works

+

If you want to read more about developing on the GBA there are some other good resources as well:

+
    +
  • Tonc, a tutorial series written +for C, but it's what I based the ordering of this book's sections on.
  • +
  • GBATEK, a homebrew tech manual for +GBA/NDS/DSi. We will regularly link to parts of it when talking about various +bits of the GBA.
  • +
+

Chapter 0: Development Setup

+

Before you can build a GBA game you'll have to follow some special steps to +setup the development environment. Perhaps unfortunately, there's enough detail +here to warrant a mini-chapter all on its own.

+

Per System Setup

+

Obviously you need your computer to have a working rust installation. However, +you'll also need to ensure that you're using a nightly toolchain. You can run +rustup default nightly to set nightly as the system wide default toolchain, or +you can use a toolchain +file to use +nightly just on a specific project, but either way we'll be assuming nightly +from now on.

+

Next you need devkitpro. They've +got a graphical installer for Windows, and pacman support on Linux. We'll be +using a few of their binutils for the arm-none-eabi target, and we'll also be +using some of their tools that are specific to GBA development, so even if you +already have the right binutils for whatever reason, you'll still want devkitpro +for the gbafix utility.

+
    +
  • On Windows you'll want something like C:\devkitpro\devkitARM\bin and +C:\devkitpro\tools\bin to be added to your +PATH, depending on where you +installed it to and such.
  • +
  • On Linux you'll also want it to be added to your path, but if you're using +Linux I'll just assume you know how to do all that.
  • +
+

Finally, you'll need cargo-xbuild. Just run cargo install cargo-xbuild and +cargo will figure it all out for you.

+

Per Project Setup

+

Now you'll need some particular files each time you want to start a new project. +You can find them in the root of the rust-console/gba +repo.

+
    +
  • thumbv4-none-agb.json describes the overall GBA to cargo-xbuild so it knows +what to do. This is actually a somewhat made up target name since there's no +official target name. The GBA is essentially the same as a normal +thumbv4-none-eabi device, but we give it the "agb" signifier so that later +on we'll be able to use rust's cfg ability to allow our code to know if it's +specifically targeting a GBA or some other similar device (like an NDS).
  • +
  • crt0.s describes some ASM startup stuff. If you have more ASM to place here +later on this is where you can put it. You also need to build it into a +crt0.o file before it can actually be used, but we'll cover that below.
  • +
  • linker.ld tells the linker more critical info about the layout expectations +that the GBA has about our program.
  • +
+

Compiling

+

Once you've got something to build, you perform the following steps:

+
    +
  • +

    arm-none-eabi-as crt0.s -o crt0.o

    +
      +
    • This builds your text format crt0.s file into object format crt0.o. You +don't need to perform it every time, only when crt0.s changes, but you +might as well do it every time so that you never forget to because it's a +practically instant operation.
    • +
    +
  • +
  • +

    cargo xbuild --target thumbv4-none-agb.json

    +
      +
    • This builds your Rust source. It accepts most of the normal options, such +as --release, and options, such as --bin foo or --examples, that you'd +expect cargo to accept.
    • +
    • You can not build and run tests this way, because they require std, +which the GBA doesn't have. You can still run some of your project's tests +with cargo test, but that builds for your local machine, so anything +specific to the GBA (such as reading and writing registers) won't be +testable that way. If you want to isolate and try out some piece code +running on the GBA you'll unfortunately have to make a demo for it in your +examples/ directory and then run the demo in an emulator and see if it +does what you expect.
    • +
    • The file extension is important. cargo xbuild takes it as a flag to +compile dependencies with the same sysroot, so you can include crates +normally. Well, creates that work in the GBA's limited environment, but you +get the idea.
    • +
    +
  • +
+

At this point you have an ELF binary that some emulators can execute directly. +This is helpful because it'll have debug symbols and all that, assuming a debug +build. Specifically, mgba 0.7 beta +1 can do it, and perhaps other +emulators can also do it.

+

However, if you want a "real" ROM that works in all emulators and that you could +transfer to a flash cart there's a little more to do.

+
    +
  • +

    arm-none-eabi-objcopy -O binary target/thumbv4-none-agb/MODE/BIN_NAME target/ROM_NAME.gba

    +
      +
    • This will perform an objcopy on our +program. Here I've named the program arm-none-eabi-objcopy, which is what +devkitpro calls their version of objcopy that's specific to the GBA in the +Windows install. If the program isn't found under that name, have a look in +your installation directory to see if it's under a slightly different name +or something.
    • +
    • As you can see from reading the man page, the -O binary option takes our +lovely ELF file with symbols and all that and strips it down to basically a +bare memory dump of the program.
    • +
    • The next argument is the input file. You might not be familiar with how +cargo arranges stuff in the target/ directory, and between RLS and +cargo doc and stuff it gets kinda crowded, so it goes like this: +
        +
      • Since our program was built for a non-local target, first we've got a +directory named for that target, thumbv4-none-agb/
      • +
      • Next, the "MODE" is either debug/ or release/, depending on if we had +the --release flag included. You'll probably only be packing release +mode programs all the way into GBA roms, but it works with either mode.
      • +
      • Finally, the name of the program. If your program is something out of the +project's src/bin/ then it'll be that file's name, or whatever name you +configured for the bin in the Cargo.toml file. If your program is +something out of the project's examples/ directory there will be a +similar examples/ sub-directory first, and then the example's name.
      • +
      +
    • +
    • The final argument is the output of the objcopy, which I suggest putting +at just the top level of the target/ directory. Really it could go +anywhere, but if you're using git then it's likely that your .gitignore +file is already setup to exclude everything in target/, so this makes sure +that your intermediate game builds don't get checked into your git.
    • +
    +
  • +
  • +

    gbafix target/ROM_NAME.gba

    +
      +
    • The gbafix tool also comes from devkitpro. The GBA is very picky about a +ROM's format, and gbafix patches the ROM's header and such so that it'll +work right. Unlike objcopy, this tool is custom built for GBA development, +so it works just perfectly without any arguments beyond the file name. The +ROM is patched in place, so we don't even need to specify a new destination.
    • +
    +
  • +
+

And you're finally done!

+

Of course, you probably want to make a script for all that, but it's up to you.

+

Ch 1: Hello GBA

+

Traditionally a person writes a "hello, world" program so that they can test +that their development environment is setup properly and to just get a feel for +using the tools involved. To get an idea of what a small part of a source file +will look like. All that stuff.

+

Normally, you write a program that prints "hello, world" to the terminal. The +GBA has no terminal, but it does have a screen, so instead we're going to draw +three dots to the screen.

+

hello1

+

Ready? Here goes:

+

hello1.rs

+
#![feature(start)]
+#![no_std]
+
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+
+#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+  unsafe {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+    loop {}
+  }
+}
+
+

Throw that into your project, build the program (as described back in Chapter +0), and give it a run. You should see a red, green, and blue dot close-ish to +the middle of the screen. If you don't, something already went wrong. Double +check things, phone a friend, write your senators, try asking Ketsuban on the +Rust Community Discord, until you're +able to get your three dots going.

+

Explaining hello1

+

So, what just happened? Even if you're used to Rust that might look pretty +strange. We'll go over each part extra carefully.

+

+# #![allow(unused_variables)]
+#![feature(start)]
+#fn main() {
+#}
+

This enables the start +feature, +which you would normally be able to read about in the unstable book, except that +the book tells you nothing at all except to look at the tracking +issue.

+

Basically, a GBA game is even more low-level than the normal amount of +low-level that you get from Rust, so we have to tell the compiler to account for +that by specifying a #[start], and we need this feature on to do that.

+

+# #![allow(unused_variables)]
+#![no_std]
+#fn main() {
+#}
+

There's no standard library available on the GBA, so we'll have to live a core +only life.

+

+# #![allow(unused_variables)]
+#fn main() {
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+#}
+

This sets our panic +handler. +Basically, if we somehow trigger a panic, this is where the program goes. +However, right now we don't know how to get any sort of message out to the user +so... we do nothing at all. We can't even return from here, so we just sit in +an infinite loop. The player will have to reset the universe from the outside.

+

The #[cfg(not(test))] part makes this item only exist in the program when +we're not in a test build. This is so that cargo test and such work right as +much as possible.

+
#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+
+

This is our #[start]. We call it main, but it's not like a main that you'd +see in a Rust program. It's more like the sort of main that you'd see in a C +program, but it's still not that either. If you compile a #[start] program +for a target with an OS such as arm-none-eabi-nm you can open up the debug +info and see that your result will have the symbol for the C main along side +the symbol for the start main that we write here. Our start main is just its +own unique thing, and the inputs and outputs have to be like that because that's +how #[start] is specified to work in Rust.

+

If you think about it for a moment you'll probably realize that, those inputs +and outputs are totally useless to us on a GBA. There's no OS on the GBA to call +our program, and there's no place for our program to "return to" when it's done.

+

+# #![allow(unused_variables)]
+#fn main() {
+  unsafe {
+#}
+

I hope you're all set for some unsafe, because there's a lot of it to be had.

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+#}
+

Sure!

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+#}
+

Ah, of course.

+

+# #![allow(unused_variables)]
+#fn main() {
+    loop {}
+  }
+}
+#}
+

And, as mentioned above, there's no place for a GBA program to "return to", so +we can't ever let main try to return there. Instead, we go into an infinite +loop that does nothing. The fact that this doesn't ever return an isize +value doesn't seem to bother Rust, because I guess we're at least not returning +any other type of thing instead.

+

Fun fact: unlike in C++, an infinite loop with no side effects isn't Undefined +Behavior for us rustaceans... semantically. In truth LLVM has a known +bug in this area, so we won't +actually be relying on empty loops in any future programs.

+

All Those Magic Numbers

+

Alright, I cheated quite a bit in the middle there. The program works, but I +didn't really tell you why because I didn't really tell you what any of those +magic numbers mean or do.

+
    +
  • 0x04000000 is the address of an IO Register called the Display Control.
  • +
  • 0x06000000 is the start of Video RAM.
  • +
+

So we write some magic to the display control register once, then we write some +other magic to three locations of magic to the Video RAM. We get three dots, +each in their own location... so that second part makes sense at least.

+

We'll get into the magic number details in the other sections of this chapter.

+

Sidebar: Volatile

+

We'll get into what all that is in a moment, but first let's ask ourselves: Why +are we doing volatile writes? You've probably never used it before at all. +What is volatile anyway?

+

Well, the optimizer is pretty aggressive some of the time, and so it'll skip +reads and writes when it thinks can. Like if you write to a pointer once, and +then again a moment later, and it didn't see any other reads in between, it'll +think that it can just skip doing that first write since it'll get overwritten +anyway. Sometimes that's right, but sometimes it's wrong.

+

Marking a read or write as volatile tells the compiler that it really must do +that action, and in the exact order that we wrote it out. It says that there +might even be special hardware side effects going on that the compiler isn't +aware of. In this case, the Display Control write sets a video mode, and the +Video RAM writes set pixels that will show up on the screen.

+

Similar to "atomic" operations you might have heard about, all volatile +operations are enforced to happen in the exact order that you specify them, but +only relative to other volatile operations. So something like

+

+# #![allow(unused_variables)]
+#fn main() {
+c.volatile_write(5);
+a += b;
+d.volatile_write(7);
+#}
+

might end up changing a either before or after the change to c, but the +write to d will always happen after the write to c.

+

If you ever use volatile stuff on other platforms it's important to note that +volatile doesn't make things thread-safe, you still need atomic for that. +However, the GBA doesn't have threads, so we don't have to worry about thread +safety concerns.

+

Accordingly, our first bit of code for our library will be a newtype over a +normal *mut T so that it has volatile reads and writes as the default. We'll +cover the details later on when we try writing a hello2 program, once we know +more of what's going on.

+

IO Registers

+

The GBA has a large number of IO Registers (not to be confused with CPU +registers). These are special memory locations from 0x04000000 to +0x040003FE. GBATEK has a full +list, but we only need to learn +about a few of them at a time as we go, so don't be worried.

+

The important facts to know about IO Registers are these:

+
    +
  • Each has their own specific size. Most are u16, but some are u32.
  • +
  • All of them must be accessed in a volatile style.
  • +
  • Each register is specifically readable or writable or both. Actually, with +some registers there are even individual bits that are read-only or +write-only. +
      +
    • If you write to a read-only position, those writes are simply ignored. This +mostly matters if a writable register contains a read-only bit (such as the +Display Control, next section).
    • +
    • If you read from a write-only position, you get back values that are +basically +nonsense. There +aren't really any registers that mix writable bits with read only bits, so +you're basically safe here. The only (mild) concern is that when you write a +value into a write-only register you need to keep track of what you wrote +somewhere else if you want to know what you wrote (such to adjust an offset +value by +1, or whatever).
    • +
    • You can always check GBATEK to be sure, but if I don't mention it then a bit +is probably both read and write.
    • +
    +
  • +
  • Some registers have invalid bit patterns. For example, the lowest three bits +of the Display Control register can't legally be set to the values 6 or 7.
  • +
+

When talking about bit positions, the numbers are zero indexed just like an +array index is.

+

The Display Control Register

+

The display control register is our first actual IO Register. GBATEK gives it the +shorthand DISPCNT, so +you might see it under that name if you read other guides.

+

Among IO Registers, it's one of the simpler ones, but it's got enough complexity +that we can get a hint of what's to come.

+

Also it's the one that you basically always need to set at least once in every +GBA game, so it's a good starting one to go over for that reason too.

+

The display control register holds a u16 value, and is located at 0x0400_0000.

+

Many of the bits here won't mean much to you right now. That is fine. You do +NOT need to memorize them all or what they all do right away. We'll just skim +over all the parts of this register to start, and then we'll go into more detail +in later chapters when we need to come back and use more of the bits.

+

Video Modes

+

The lowest three bits (0-2) let you select from among the GBA's six video modes. +You'll notice that 3 bits allows for eight modes, but the values 6 and 7 are +prohibited.

+

Modes 0, 1, and 2 are "tiled" modes. These are actually the modes that you +should eventually learn to use as much as possible. It lets the GBA's limited +video hardware do as much of the work as possible, leaving more of your CPU time +for gameplay computations. However, they're also complex enough to deserve their +own demos and chapters later on, so that's all we'll say about them for now.

+

Modes 3, 4, and 5 are "bitmap" modes. These let you write individual pixels to +locations on the screen.

+
    +
  • Mode 3 is full resolution (240w x 160h) RGB15 color. You might not be used +to RGB15, since modern computers have 24 or 32 bit colors. In RGB15, there's 5 +bits for each color channel stored within a u16 value, and the highest bit is +simply ignored.
  • +
  • Mode 4 is full resolution paletted color. Instead of being a u16 color, each +pixel value is a u8 palette index entry, and then the display uses the +palette memory (which we'll talk about later) to store the actual color data. +Since each pixel is half sized, we can fit twice as many. This lets us have +two "pages". At any given moment only one page is active, and you can draw to +the other page without the user noticing. You set which page to show with +another bit we'll get to in a moment.
  • +
  • Mode 5 is full color, but also with pages. This means that we must have a +reduced resolution to compensate (video memory is only so big!). The screen is +effectively only 160w x 128h in this mode.
  • +
+

CGB Mode

+

Bit 3 is effectively read only. Technically it can be flipped using a BIOS call, +but when you write to the display control register normally it won't write to +this bit, so we'll call it effectively read only.

+

This bit is on if the CPU is in CGB mode.

+

Page Flipping

+

Bit 4 lets you pick which page to use. This is only relevent in video modes 4 or +5, and is just ignored otherwise. It's very easy to remember: when the bit is 0 +the 0th page is used, and when the bit is 1 the 1st page is used.

+

The second page always starts at 0x0600_A000.

+

OAM, VRAM, and Blanking

+

Bit 5 lets you access OAM during HBlank if enabled. This is cool, but it reduces +the maximum sprites per scanline, so it's not default.

+

Bit 6 lets you adjust if the GBA should treat Object Character VRAM as being 2d +(off) or 1d (on). This particular control can be kinda tricky to wrap your head +around, so we'll be sure to have some extra diagrams in the chapter that deals +with it.

+

Bit 7 forces the screen to stay in vblank as long as it's set. This allows the +fastest use of the VRAM, Palette, and Object Attribute Memory. Obviously if you +leave this on for too long the player will notice a blank screen, but it might +be okay to use for a moment or two every once in a while.

+

Screen Layers

+

Bits 8 through 11 control if Background layers 0 through 3 should be active.

+

Bit 12 affects the Object layer.

+

Note that not all background layers are available in all video modes:

+
    +
  • Mode 0: all
  • +
  • Mode 1: 0/1/2
  • +
  • Mode 2: 2/3
  • +
  • Mode 3/4/5: 2
  • +
+

Bit 13 and 14 enable the display of Windows 0 and 1, and Bit 15 enables the +object display window. We'll get into how windows work later on, they let you do +some nifty graphical effects.

+

In Conclusion...

+

So what did we do to the display control register in hello1?

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+#}
+

First let's convert that to +binary, and we get +0b100_0000_0011. So, that's setting Mode 3 with background 2 enabled and +nothing else special.

+

However, I think we can do better than that. This is a prime target for more +newtyping as we attempt a hello2 program.

+

Video Memory Intro

+

The GBA's Video RAM is 96k stretching from 0x0600_0000 to 0x0601_7FFF.

+

The Video RAM can only be accessed totally freely during a Vertical Blank +(aka "vblank"). At other times, if the CPU tries to touch the same part of video +memory as the display controller is accessing then the CPU gets bumped by a +cycle to avoid a clash.

+

Annoyingly, VRAM can only be properly written to in 16 and 32 bit segments (same +with PALRAM and OAM). If you try to write just an 8 bit segment, then both parts +of the 16 bit segment get the same value written to them. In other words, if you +write the byte 5 to 0x0600_0000, then both 0x0600_0000 and ALSO +0x0600_0001 will have the byte 5 in them. We have to be extra careful when +trying to set an individual byte, and we also have to be careful if we use +memcopy or memset as well, because they're byte oriented by default and +don't know to follow the special rules.

+

RGB15

+

As I said before, RGB15 stores a color within a u16 value using 5 bits for +each color channel.

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const RED:   u16 = 0b0_00000_00000_11111;
+pub const GREEN: u16 = 0b0_00000_11111_00000;
+pub const BLUE:  u16 = 0b0_11111_00000_00000;
+#}
+

In Mode 3 and Mode 5 we write direct color values into VRAM, and in Mode 4 we +write palette index values, and then the color values go into the PALRAM.

+

Mode 3

+

Mode 3 is pretty easy. We have a full resolution grid of rgb15 pixels. There's +160 rows of 240 pixels each, with the base address being the top left corner. A +particular pixel uses normal "2d indexing" math:

+

+# #![allow(unused_variables)]
+#fn main() {
+let row_five_col_seven = 5 + (7 * SCREEN_WIDTH);
+#}
+

To draw a pixel, we just write a value at the address for the row and col that +we want to draw to.

+

Mode 4

+

Mode 4 introduces page flipping. Instead of one giant page at 0x0600_0000, +there's Page 0 at 0x0600_0000 and then Page 1 at 0x0600_A000. The resolution +for each page is the same as above, but instead of writing u16 values, the +memory is treated as u8 indexes into PALRAM. The PALRAM starts at +0x0500_0000, and there's enough space for 256 palette entries (each a u16).

+

To set the color of a palette entry we just do a normal u16 write_volatile.

+

+# #![allow(unused_variables)]
+#fn main() {
+(0x0500_0000 as *mut u16).offset(target_index).write_volatile(new_color)
+#}
+

To draw a pixel we set the palette entry that we want the pixel to use. However, +we must remember the "minimum size" write limitation that applies to VRAM. So, +if we want to change just a single pixel at a time we must

+
    +
  1. Read the full u16 it's a part of.
  2. +
  3. Clear the half of the u16 we're going to replace
  4. +
  5. Write the half of the u16 we're going to replace with the new value
  6. +
  7. Write that result back to the address.
  8. +
+

So, the math for finding a byte offset is the same as Mode 3 (since they're both +a 2d grid). If the byte offset is EVEN it'll be the high bits of the u16 at +half the byte offset rounded down. If the offset is ODD it'll be the low bits of +the u16 at half the byte.

+

Does that make sense?

+
    +
  • If we want to write pixel (0,0) the byte offset is 0, so we change the high +bits of u16 offset 0. Then we want to write to (1,0), so the byte offset is +1, so we change the low bits of u16 offset 0. The pixels are next to each +other, and the target bytes are next to each other, good so far.
  • +
  • If we want to write to (5,6) that'd be byte 5 + 6 * 240 = 1445, so we'd +target the low bits of u16 offset floor(1445/2) = 722.
  • +
+

As you can see, trying to write individual pixels in Mode 4 is mostly a bad +time. Fret not! We don't have to write individual bytes. If our data is +arranged correctly ahead of time we can just write u16 or u32 values +directly. The video hardware doesn't care, it'll get along just fine.

+

Mode 5

+

Mode 5 is also a two page mode, but instead of compressing the size of a pixel's +data to fit in two pages, we compress the resolution.

+

Mode 5 is full u16 color, but only 160w x 128h per page.

+

In Conclusion...

+

So what got written into VRAM in hello1?

+

+# #![allow(unused_variables)]
+#fn main() {
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+#}
+

So at pixels (120,80), (136,80), and (120,96) we write three values. Once +again we probably need to convert them into +binary to make sense of it.

+
    +
  • 0x001F: 0b11111
  • +
  • 0x03E0: 0b11111_00000
  • +
  • 0x7C00: 0b11111_00000_00000
  • +
+

Ah, of course, a red pixel, a green pixel, and a blue pixel.

+

hello2

+

Okay so let's have a look again:

+

hello1

+
#![feature(start)]
+#![no_std]
+
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+
+#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+  unsafe {
+    (0x04000000 as *mut u16).write_volatile(0x0403);
+    (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F);
+    (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0);
+    (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00);
+    loop {}
+  }
+}
+
+

Now let's clean this up so that it's clearer what's going on.

+

First we'll label that display control stuff:

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;
+pub const MODE3: u16 = 3;
+pub const BG2: u16 = 0b100_0000_0000;
+#}
+

Next we make some const values for the actual pixel drawing

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const VRAM: usize = 0x06000000;
+pub const SCREEN_WIDTH: isize = 240;
+#}
+

And then we want a small helper function for putting together a color value.

+

Happily, this one can even be declared as a const function. At the time of +writing, we've got the "minimal const fn" support in nightly. It really is quite +limited, but I'm happy to let rustc and LLVM pre-compute as much as they can +when it comes to the GBA's tiny CPU.

+

+# #![allow(unused_variables)]
+#fn main() {
+pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 {
+  blue << 10 | green << 5 | red
+}
+#}
+

Finally, we'll make a function for drawing a pixel in Mode 3. Even though it's +just a one-liner, having the "important parts" be labeled as function arguments +usually helps you think about it a lot better.

+

+# #![allow(unused_variables)]
+#fn main() {
+pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) {
+  (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);
+}
+#}
+

So now we've got this:

+

hello2

+
#![feature(start)]
+#![no_std]
+
+#[cfg(not(test))]
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+  loop {}
+}
+
+#[start]
+fn main(_argc: isize, _argv: *const *const u8) -> isize {
+  unsafe {
+    DISPCNT.write_volatile(MODE3 | BG2);
+    mode3_pixel(120, 80, rgb16(31, 0, 0));
+    mode3_pixel(136, 80, rgb16(0, 31, 0));
+    mode3_pixel(120, 96, rgb16(0, 0, 31));
+    loop {}
+  }
+}
+
+pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;
+pub const MODE3: u16 = 3;
+pub const BG2: u16 = 0b100_0000_0000;
+
+pub const VRAM: usize = 0x06000000;
+pub const SCREEN_WIDTH: isize = 240;
+
+pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 {
+  blue << 10 | green << 5 | red
+}
+
+pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) {
+  (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);
+}
+
+

Exact same program that we started with, but much easier to read.

+

Of course, in the full gba crate that this book is a part of we have these and +other elements all labeled and sorted out for you. Still, for educational +purposes it's often best to do it yourself at least once.

diff --git a/docs/searchindex.js b/docs/searchindex.js index 088b9de..6883266 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -window.search = {"doc_urls":["ch01.html#ch01"],"index":{"documentStore":{"docInfo":{"0":{"body":0,"breadcrumbs":1,"title":1}},"docs":{"0":{"body":"","breadcrumbs":"ch01","id":"0","title":"ch01"}},"length":1,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"c":{"df":0,"docs":{},"h":{"0":{"1":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"breadcrumbs":{"root":{"c":{"df":0,"docs":{},"h":{"0":{"1":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"title":{"root":{"c":{"df":0,"docs":{},"h":{"0":{"1":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5"},"results_options":{"limit_results":30,"teaser_word_count":30},"search_options":{"bool":"OR","expand":true,"fields":{"body":{"boost":1},"breadcrumbs":{"boost":1},"title":{"boost":2}}}}; \ No newline at end of file +window.search = {"doc_urls":["introduction.html#introduction","introduction.html#other-works","ch0/index.html#chapter-0-development-setup","ch0/index.html#per-system-setup","ch0/index.html#per-project-setup","ch0/index.html#compiling","ch1/index.html#ch-1-hello-gba","ch1/hello1.html#hello1","ch1/hello1.html#explaining-hello1","ch1/hello1.html#all-those-magic-numbers","ch1/hello1.html#sidebar-volatile","ch1/io_registers.html#io-registers","ch1/the_display_control_register.html#the-display-control-register","ch1/the_display_control_register.html#video-modes","ch1/the_display_control_register.html#cgb-mode","ch1/the_display_control_register.html#page-flipping","ch1/the_display_control_register.html#oam-vram-and-blanking","ch1/the_display_control_register.html#screen-layers","ch1/the_display_control_register.html#in-conclusion","ch1/video_memory_intro.html#video-memory-intro","ch1/video_memory_intro.html#rgb15","ch1/video_memory_intro.html#mode-3","ch1/video_memory_intro.html#mode-4","ch1/video_memory_intro.html#mode-5","ch1/video_memory_intro.html#in-conclusion","ch1/hello2.html#hello2"],"index":{"documentStore":{"docInfo":{"0":{"body":16,"breadcrumbs":1,"title":1},"1":{"body":30,"breadcrumbs":1,"title":1},"10":{"body":168,"breadcrumbs":6,"title":2},"11":{"body":143,"breadcrumbs":6,"title":2},"12":{"body":83,"breadcrumbs":7,"title":3},"13":{"body":174,"breadcrumbs":6,"title":2},"14":{"body":25,"breadcrumbs":6,"title":2},"15":{"body":32,"breadcrumbs":6,"title":2},"16":{"body":70,"breadcrumbs":7,"title":3},"17":{"body":54,"breadcrumbs":6,"title":2},"18":{"body":30,"breadcrumbs":5,"title":1},"19":{"body":88,"breadcrumbs":7,"title":3},"2":{"body":20,"breadcrumbs":4,"title":4},"20":{"body":47,"breadcrumbs":5,"title":1},"21":{"body":41,"breadcrumbs":6,"title":2},"22":{"body":211,"breadcrumbs":6,"title":2},"23":{"body":25,"breadcrumbs":6,"title":2},"24":{"body":47,"breadcrumbs":5,"title":1},"25":{"body":300,"breadcrumbs":5,"title":1},"3":{"body":106,"breadcrumbs":3,"title":3},"4":{"body":93,"breadcrumbs":3,"title":3},"5":{"body":385,"breadcrumbs":1,"title":1},"6":{"body":39,"breadcrumbs":4,"title":4},"7":{"body":83,"breadcrumbs":5,"title":1},"8":{"body":283,"breadcrumbs":6,"title":2},"9":{"body":55,"breadcrumbs":7,"title":3}},"docs":{"0":{"body":"Here's a book that'll help you program in Rust on the GBA. It's very \"work in progress\". At the moment there's only one demo program.","breadcrumbs":"Introduction","id":"0","title":"Introduction"},"1":{"body":"If you want to read more about developing on the GBA there are some other good resources as well: Tonc , a tutorial series written for C, but it's what I based the ordering of this book's sections on. GBATEK , a homebrew tech manual for GBA/NDS/DSi. We will regularly link to parts of it when talking about various bits of the GBA.","breadcrumbs":"Other Works","id":"1","title":"Other Works"},"10":{"body":"We'll get into what all that is in a moment, but first let's ask ourselves: Why are we doing volatile writes? You've probably never used it before at all. What is volatile anyway? Well, the optimizer is pretty aggressive some of the time, and so it'll skip reads and writes when it thinks can. Like if you write to a pointer once, and then again a moment later, and it didn't see any other reads in between, it'll think that it can just skip doing that first write since it'll get overwritten anyway. Sometimes that's right, but sometimes it's wrong. Marking a read or write as volatile tells the compiler that it really must do that action, and in the exact order that we wrote it out. It says that there might even be special hardware side effects going on that the compiler isn't aware of. In this case, the Display Control write sets a video mode, and the Video RAM writes set pixels that will show up on the screen. Similar to \"atomic\" operations you might have heard about, all volatile operations are enforced to happen in the exact order that you specify them, but only relative to other volatile operations. So something like c.volatile_write(5);\na += b;\nd.volatile_write(7); might end up changing a either before or after the change to c , but the write to d will always happen after the write to c . If you ever use volatile stuff on other platforms it's important to note that volatile doesn't make things thread-safe, you still need atomic for that. However, the GBA doesn't have threads, so we don't have to worry about thread safety concerns. Accordingly, our first bit of code for our library will be a newtype over a normal *mut T so that it has volatile reads and writes as the default. We'll cover the details later on when we try writing a hello2 program, once we know more of what's going on.","breadcrumbs":"Ch 1: Hello GBA » Sidebar: Volatile","id":"10","title":"Sidebar: Volatile"},"11":{"body":"The GBA has a large number of IO Registers (not to be confused with CPU registers). These are special memory locations from 0x04000000 to 0x040003FE . GBATEK has a full list , but we only need to learn about a few of them at a time as we go, so don't be worried. The important facts to know about IO Registers are these: Each has their own specific size. Most are u16 , but some are u32 . All of them must be accessed in a volatile style. Each register is specifically readable or writable or both. Actually, with some registers there are even individual bits that are read-only or write-only. If you write to a read-only position, those writes are simply ignored. This mostly matters if a writable register contains a read-only bit (such as the Display Control, next section). If you read from a write-only position, you get back values that are basically nonsense . There aren't really any registers that mix writable bits with read only bits, so you're basically safe here. The only (mild) concern is that when you write a value into a write-only register you need to keep track of what you wrote somewhere else if you want to know what you wrote (such to adjust an offset value by +1, or whatever). You can always check GBATEK to be sure, but if I don't mention it then a bit is probably both read and write. Some registers have invalid bit patterns. For example, the lowest three bits of the Display Control register can't legally be set to the values 6 or 7. When talking about bit positions, the numbers are zero indexed just like an array index is.","breadcrumbs":"Ch 1: Hello GBA » IO Registers","id":"11","title":"IO Registers"},"12":{"body":"The display control register is our first actual IO Register. GBATEK gives it the shorthand DISPCNT , so you might see it under that name if you read other guides. Among IO Registers, it's one of the simpler ones, but it's got enough complexity that we can get a hint of what's to come. Also it's the one that you basically always need to set at least once in every GBA game, so it's a good starting one to go over for that reason too. The display control register holds a u16 value, and is located at 0x0400_0000 . Many of the bits here won't mean much to you right now. That is fine. You do NOT need to memorize them all or what they all do right away. We'll just skim over all the parts of this register to start, and then we'll go into more detail in later chapters when we need to come back and use more of the bits.","breadcrumbs":"Ch 1: Hello GBA » The Display Control Register","id":"12","title":"The Display Control Register"},"13":{"body":"The lowest three bits (0-2) let you select from among the GBA's six video modes. You'll notice that 3 bits allows for eight modes, but the values 6 and 7 are prohibited. Modes 0, 1, and 2 are \"tiled\" modes. These are actually the modes that you should eventually learn to use as much as possible. It lets the GBA's limited video hardware do as much of the work as possible, leaving more of your CPU time for gameplay computations. However, they're also complex enough to deserve their own demos and chapters later on, so that's all we'll say about them for now. Modes 3, 4, and 5 are \"bitmap\" modes. These let you write individual pixels to locations on the screen. Mode 3 is full resolution (240w x 160h) RGB15 color. You might not be used to RGB15, since modern computers have 24 or 32 bit colors. In RGB15, there's 5 bits for each color channel stored within a u16 value, and the highest bit is simply ignored. Mode 4 is full resolution paletted color. Instead of being a u16 color, each pixel value is a u8 palette index entry, and then the display uses the palette memory (which we'll talk about later) to store the actual color data. Since each pixel is half sized, we can fit twice as many. This lets us have two \"pages\". At any given moment only one page is active, and you can draw to the other page without the user noticing. You set which page to show with another bit we'll get to in a moment. Mode 5 is full color, but also with pages. This means that we must have a reduced resolution to compensate (video memory is only so big!). The screen is effectively only 160w x 128h in this mode.","breadcrumbs":"Ch 1: Hello GBA » Video Modes","id":"13","title":"Video Modes"},"14":{"body":"Bit 3 is effectively read only. Technically it can be flipped using a BIOS call, but when you write to the display control register normally it won't write to this bit, so we'll call it effectively read only. This bit is on if the CPU is in CGB mode.","breadcrumbs":"Ch 1: Hello GBA » CGB Mode","id":"14","title":"CGB Mode"},"15":{"body":"Bit 4 lets you pick which page to use. This is only relevent in video modes 4 or 5, and is just ignored otherwise. It's very easy to remember: when the bit is 0 the 0th page is used, and when the bit is 1 the 1st page is used. The second page always starts at 0x0600_A000 .","breadcrumbs":"Ch 1: Hello GBA » Page Flipping","id":"15","title":"Page Flipping"},"16":{"body":"Bit 5 lets you access OAM during HBlank if enabled. This is cool, but it reduces the maximum sprites per scanline, so it's not default. Bit 6 lets you adjust if the GBA should treat Object Character VRAM as being 2d (off) or 1d (on). This particular control can be kinda tricky to wrap your head around, so we'll be sure to have some extra diagrams in the chapter that deals with it. Bit 7 forces the screen to stay in vblank as long as it's set. This allows the fastest use of the VRAM, Palette, and Object Attribute Memory. Obviously if you leave this on for too long the player will notice a blank screen, but it might be okay to use for a moment or two every once in a while.","breadcrumbs":"Ch 1: Hello GBA » OAM, VRAM, and Blanking","id":"16","title":"OAM, VRAM, and Blanking"},"17":{"body":"Bits 8 through 11 control if Background layers 0 through 3 should be active. Bit 12 affects the Object layer. Note that not all background layers are available in all video modes: Mode 0: all Mode 1: 0/1/2 Mode 2: 2/3 Mode 3/4/5: 2 Bit 13 and 14 enable the display of Windows 0 and 1, and Bit 15 enables the object display window. We'll get into how windows work later on, they let you do some nifty graphical effects.","breadcrumbs":"Ch 1: Hello GBA » Screen Layers","id":"17","title":"Screen Layers"},"18":{"body":"So what did we do to the display control register in hello1 ? (0x04000000 as *mut u16).write_volatile(0x0403); First let's convert that to binary , and we get 0b100_0000_0011 . So, that's setting Mode 3 with background 2 enabled and nothing else special. However, I think we can do better than that. This is a prime target for more newtyping as we attempt a hello2 program.","breadcrumbs":"Ch 1: Hello GBA » In Conclusion...","id":"18","title":"In Conclusion..."},"19":{"body":"The GBA's Video RAM is 96k stretching from 0x0600_0000 to 0x0601_7FFF . The Video RAM can only be accessed totally freely during a Vertical Blank (aka \"vblank\"). At other times, if the CPU tries to touch the same part of video memory as the display controller is accessing then the CPU gets bumped by a cycle to avoid a clash. Annoyingly, VRAM can only be properly written to in 16 and 32 bit segments (same with PALRAM and OAM). If you try to write just an 8 bit segment, then both parts of the 16 bit segment get the same value written to them. In other words, if you write the byte 5 to 0x0600_0000 , then both 0x0600_0000 and ALSO 0x0600_0001 will have the byte 5 in them. We have to be extra careful when trying to set an individual byte, and we also have to be careful if we use memcopy or memset as well, because they're byte oriented by default and don't know to follow the special rules.","breadcrumbs":"Ch 1: Hello GBA » Video Memory Intro","id":"19","title":"Video Memory Intro"},"2":{"body":"Before you can build a GBA game you'll have to follow some special steps to setup the development environment. Perhaps unfortunately, there's enough detail here to warrant a mini-chapter all on its own.","breadcrumbs":"Chapter 0: Development Setup","id":"2","title":"Chapter 0: Development Setup"},"20":{"body":"As I said before, RGB15 stores a color within a u16 value using 5 bits for each color channel. pub const RED: u16 = 0b0_00000_00000_11111;\npub const GREEN: u16 = 0b0_00000_11111_00000;\npub const BLUE: u16 = 0b0_11111_00000_00000; In Mode 3 and Mode 5 we write direct color values into VRAM, and in Mode 4 we write palette index values, and then the color values go into the PALRAM.","breadcrumbs":"Ch 1: Hello GBA » RGB15","id":"20","title":"RGB15"},"21":{"body":"Mode 3 is pretty easy. We have a full resolution grid of rgb15 pixels. There's 160 rows of 240 pixels each, with the base address being the top left corner. A particular pixel uses normal \"2d indexing\" math: let row_five_col_seven = 5 + (7 * SCREEN_WIDTH); To draw a pixel, we just write a value at the address for the row and col that we want to draw to.","breadcrumbs":"Ch 1: Hello GBA » Mode 3","id":"21","title":"Mode 3"},"22":{"body":"Mode 4 introduces page flipping. Instead of one giant page at 0x0600_0000 , there's Page 0 at 0x0600_0000 and then Page 1 at 0x0600_A000 . The resolution for each page is the same as above, but instead of writing u16 values, the memory is treated as u8 indexes into PALRAM. The PALRAM starts at 0x0500_0000 , and there's enough space for 256 palette entries (each a u16 ). To set the color of a palette entry we just do a normal u16 write_volatile. (0x0500_0000 as *mut u16).offset(target_index).write_volatile(new_color) To draw a pixel we set the palette entry that we want the pixel to use. However, we must remember the \"minimum size\" write limitation that applies to VRAM. So, if we want to change just a single pixel at a time we must Read the full u16 it's a part of. Clear the half of the u16 we're going to replace Write the half of the u16 we're going to replace with the new value Write that result back to the address. So, the math for finding a byte offset is the same as Mode 3 (since they're both a 2d grid). If the byte offset is EVEN it'll be the high bits of the u16 at half the byte offset rounded down. If the offset is ODD it'll be the low bits of the u16 at half the byte. Does that make sense? If we want to write pixel (0,0) the byte offset is 0, so we change the high bits of u16 offset 0. Then we want to write to (1,0), so the byte offset is 1, so we change the low bits of u16 offset 0. The pixels are next to each other, and the target bytes are next to each other, good so far. If we want to write to (5,6) that'd be byte 5 + 6 * 240 = 1445 , so we'd target the low bits of u16 offset floor(1445/2) = 722 . As you can see, trying to write individual pixels in Mode 4 is mostly a bad time. Fret not! We don't have to write individual bytes. If our data is arranged correctly ahead of time we can just write u16 or u32 values directly. The video hardware doesn't care, it'll get along just fine.","breadcrumbs":"Ch 1: Hello GBA » Mode 4","id":"22","title":"Mode 4"},"23":{"body":"Mode 5 is also a two page mode, but instead of compressing the size of a pixel's data to fit in two pages, we compress the resolution. Mode 5 is full u16 color, but only 160w x 128h per page.","breadcrumbs":"Ch 1: Hello GBA » Mode 5","id":"23","title":"Mode 5"},"24":{"body":"So what got written into VRAM in hello1 ? (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); So at pixels (120,80) , (136,80) , and (120,96) we write three values. Once again we probably need to convert them into binary to make sense of it. 0x001F: 0b11111 0x03E0: 0b11111_00000 0x7C00: 0b11111_00000_00000 Ah, of course, a red pixel, a green pixel, and a blue pixel.","breadcrumbs":"Ch 1: Hello GBA » In Conclusion...","id":"24","title":"In Conclusion..."},"25":{"body":"Okay so let's have a look again: hello1 #![feature(start)]\n#![no_std] #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { unsafe { (0x04000000 as *mut u16).write_volatile(0x0403); (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); loop {} }\n} Now let's clean this up so that it's clearer what's going on. First we'll label that display control stuff: pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;\npub const MODE3: u16 = 3;\npub const BG2: u16 = 0b100_0000_0000; Next we make some const values for the actual pixel drawing pub const VRAM: usize = 0x06000000;\npub const SCREEN_WIDTH: isize = 240; And then we want a small helper function for putting together a color value. Happily, this one can even be declared as a const function. At the time of writing, we've got the \"minimal const fn\" support in nightly. It really is quite limited, but I'm happy to let rustc and LLVM pre-compute as much as they can when it comes to the GBA's tiny CPU. pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { blue << 10 | green << 5 | red\n} Finally, we'll make a function for drawing a pixel in Mode 3. Even though it's just a one-liner, having the \"important parts\" be labeled as function arguments usually helps you think about it a lot better. pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) { (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);\n} So now we've got this: hello2 #![feature(start)]\n#![no_std] #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { unsafe { DISPCNT.write_volatile(MODE3 | BG2); mode3_pixel(120, 80, rgb16(31, 0, 0)); mode3_pixel(136, 80, rgb16(0, 31, 0)); mode3_pixel(120, 96, rgb16(0, 0, 31)); loop {} }\n} pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;\npub const MODE3: u16 = 3;\npub const BG2: u16 = 0b100_0000_0000; pub const VRAM: usize = 0x06000000;\npub const SCREEN_WIDTH: isize = 240; pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { blue << 10 | green << 5 | red\n} pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) { (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);\n} Exact same program that we started with, but much easier to read. Of course, in the full gba crate that this book is a part of we have these and other elements all labeled and sorted out for you. Still, for educational purposes it's often best to do it yourself at least once.","breadcrumbs":"Ch 1: Hello GBA » hello2","id":"25","title":"hello2"},"3":{"body":"Obviously you need your computer to have a working rust installation. However, you'll also need to ensure that you're using a nightly toolchain. You can run rustup default nightly to set nightly as the system wide default toolchain, or you can use a toolchain file to use nightly just on a specific project, but either way we'll be assuming nightly from now on. Next you need devkitpro . They've got a graphical installer for Windows, and pacman support on Linux. We'll be using a few of their binutils for the arm-none-eabi target, and we'll also be using some of their tools that are specific to GBA development, so even if you already have the right binutils for whatever reason, you'll still want devkitpro for the gbafix utility. On Windows you'll want something like C:\\devkitpro\\devkitARM\\bin and C:\\devkitpro\\tools\\bin to be added to your PATH , depending on where you installed it to and such. On Linux you'll also want it to be added to your path, but if you're using Linux I'll just assume you know how to do all that. Finally, you'll need cargo-xbuild . Just run cargo install cargo-xbuild and cargo will figure it all out for you.","breadcrumbs":"Per System Setup","id":"3","title":"Per System Setup"},"4":{"body":"Now you'll need some particular files each time you want to start a new project. You can find them in the root of the rust-console/gba repo . thumbv4-none-agb.json describes the overall GBA to cargo-xbuild so it knows what to do. This is actually a somewhat made up target name since there's no official target name. The GBA is essentially the same as a normal thumbv4-none-eabi device, but we give it the \"agb\" signifier so that later on we'll be able to use rust's cfg ability to allow our code to know if it's specifically targeting a GBA or some other similar device (like an NDS). crt0.s describes some ASM startup stuff. If you have more ASM to place here later on this is where you can put it. You also need to build it into a crt0.o file before it can actually be used, but we'll cover that below. linker.ld tells the linker more critical info about the layout expectations that the GBA has about our program.","breadcrumbs":"Per Project Setup","id":"4","title":"Per Project Setup"},"5":{"body":"Once you've got something to build, you perform the following steps: arm-none-eabi-as crt0.s -o crt0.o This builds your text format crt0.s file into object format crt0.o . You don't need to perform it every time, only when crt0.s changes, but you might as well do it every time so that you never forget to because it's a practically instant operation. cargo xbuild --target thumbv4-none-agb.json This builds your Rust source. It accepts most of the normal options, such as --release , and options, such as --bin foo or --examples , that you'd expect cargo to accept. You can not build and run tests this way, because they require std , which the GBA doesn't have. You can still run some of your project's tests with cargo test , but that builds for your local machine, so anything specific to the GBA (such as reading and writing registers) won't be testable that way. If you want to isolate and try out some piece code running on the GBA you'll unfortunately have to make a demo for it in your examples/ directory and then run the demo in an emulator and see if it does what you expect. The file extension is important. cargo xbuild takes it as a flag to compile dependencies with the same sysroot, so you can include crates normally. Well, creates that work in the GBA's limited environment, but you get the idea. At this point you have an ELF binary that some emulators can execute directly. This is helpful because it'll have debug symbols and all that, assuming a debug build. Specifically, mgba 0.7 beta 1 can do it, and perhaps other emulators can also do it. However, if you want a \"real\" ROM that works in all emulators and that you could transfer to a flash cart there's a little more to do. arm-none-eabi-objcopy -O binary target/thumbv4-none-agb/MODE/BIN_NAME target/ROM_NAME.gba This will perform an objcopy on our program. Here I've named the program arm-none-eabi-objcopy , which is what devkitpro calls their version of objcopy that's specific to the GBA in the Windows install. If the program isn't found under that name, have a look in your installation directory to see if it's under a slightly different name or something. As you can see from reading the man page, the -O binary option takes our lovely ELF file with symbols and all that and strips it down to basically a bare memory dump of the program. The next argument is the input file. You might not be familiar with how cargo arranges stuff in the target/ directory, and between RLS and cargo doc and stuff it gets kinda crowded, so it goes like this: Since our program was built for a non-local target, first we've got a directory named for that target, thumbv4-none-agb/ Next, the \"MODE\" is either debug/ or release/ , depending on if we had the --release flag included. You'll probably only be packing release mode programs all the way into GBA roms, but it works with either mode. Finally, the name of the program. If your program is something out of the project's src/bin/ then it'll be that file's name, or whatever name you configured for the bin in the Cargo.toml file. If your program is something out of the project's examples/ directory there will be a similar examples/ sub-directory first, and then the example's name. The final argument is the output of the objcopy , which I suggest putting at just the top level of the target/ directory. Really it could go anywhere, but if you're using git then it's likely that your .gitignore file is already setup to exclude everything in target/ , so this makes sure that your intermediate game builds don't get checked into your git. gbafix target/ROM_NAME.gba The gbafix tool also comes from devkitpro. The GBA is very picky about a ROM's format, and gbafix patches the ROM's header and such so that it'll work right. Unlike objcopy , this tool is custom built for GBA development, so it works just perfectly without any arguments beyond the file name. The ROM is patched in place, so we don't even need to specify a new destination. And you're finally done! Of course, you probably want to make a script for all that, but it's up to you.","breadcrumbs":"Compiling","id":"5","title":"Compiling"},"6":{"body":"Traditionally a person writes a \"hello, world\" program so that they can test that their development environment is setup properly and to just get a feel for using the tools involved. To get an idea of what a small part of a source file will look like. All that stuff. Normally, you write a program that prints \"hello, world\" to the terminal. The GBA has no terminal, but it does have a screen, so instead we're going to draw three dots to the screen.","breadcrumbs":"Ch 1: Hello GBA","id":"6","title":"Ch 1: Hello GBA"},"7":{"body":"Ready? Here goes: hello1.rs #![feature(start)]\n#![no_std] #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { unsafe { (0x04000000 as *mut u16).write_volatile(0x0403); (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); loop {} }\n} Throw that into your project, build the program (as described back in Chapter 0), and give it a run. You should see a red, green, and blue dot close-ish to the middle of the screen. If you don't, something already went wrong. Double check things, phone a friend, write your senators, try asking Ketsuban on the Rust Community Discord , until you're able to get your three dots going.","breadcrumbs":"Ch 1: Hello GBA » hello1","id":"7","title":"hello1"},"8":{"body":"So, what just happened? Even if you're used to Rust that might look pretty strange. We'll go over each part extra carefully. #![feature(start)] This enables the start feature , which you would normally be able to read about in the unstable book, except that the book tells you nothing at all except to look at the tracking issue . Basically, a GBA game is even more low-level than the normal amount of low-level that you get from Rust, so we have to tell the compiler to account for that by specifying a #[start] , and we need this feature on to do that. #![no_std] There's no standard library available on the GBA, so we'll have to live a core only life. #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} This sets our panic handler . Basically, if we somehow trigger a panic, this is where the program goes. However, right now we don't know how to get any sort of message out to the user so... we do nothing at all. We can't even return from here, so we just sit in an infinite loop. The player will have to reset the universe from the outside. The #[cfg(not(test))] part makes this item only exist in the program when we're not in a test build. This is so that cargo test and such work right as much as possible. #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { This is our #[start] . We call it main , but it's not like a main that you'd see in a Rust program. It's more like the sort of main that you'd see in a C program, but it's still not that either. If you compile a #[start] program for a target with an OS such as arm-none-eabi-nm you can open up the debug info and see that your result will have the symbol for the C main along side the symbol for the start main that we write here. Our start main is just its own unique thing, and the inputs and outputs have to be like that because that's how #[start] is specified to work in Rust. If you think about it for a moment you'll probably realize that, those inputs and outputs are totally useless to us on a GBA. There's no OS on the GBA to call our program, and there's no place for our program to \"return to\" when it's done. unsafe { I hope you're all set for some unsafe , because there's a lot of it to be had. (0x04000000 as *mut u16).write_volatile(0x0403); Sure! (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); Ah, of course. loop {} }\n} And, as mentioned above, there's no place for a GBA program to \"return to\", so we can't ever let main try to return there. Instead, we go into an infinite loop that does nothing. The fact that this doesn't ever return an isize value doesn't seem to bother Rust, because I guess we're at least not returning any other type of thing instead. Fun fact: unlike in C++, an infinite loop with no side effects isn't Undefined Behavior for us rustaceans... semantically . In truth LLVM has a known bug in this area, so we won't actually be relying on empty loops in any future programs.","breadcrumbs":"Ch 1: Hello GBA » Explaining hello1","id":"8","title":"Explaining hello1"},"9":{"body":"Alright, I cheated quite a bit in the middle there. The program works, but I didn't really tell you why because I didn't really tell you what any of those magic numbers mean or do. 0x04000000 is the address of an IO Register called the Display Control. 0x06000000 is the start of Video RAM. So we write some magic to the display control register once, then we write some other magic to three locations of magic to the Video RAM. We get three dots, each in their own location... so that second part makes sense at least. We'll get into the magic number details in the other sections of this chapter.","breadcrumbs":"Ch 1: Hello GBA » All Those Magic Numbers","id":"9","title":"All Those Magic Numbers"}},"length":26,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"0":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},".":{"7":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"/":{"1":{"/":{"2":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"1":{"1":{"1":{"1":{"1":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"1":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":1.7320508075688772},"2":{"tf":1.0},"22":{"tf":2.0},"25":{"tf":2.0},"7":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"15":{"tf":1.0}}}},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}}},"4":{"0":{"0":{"0":{"0":{"0":{"0":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"0":{"0":{"0":{"0":{"0":{"0":{"df":5,"docs":{"24":{"tf":1.7320508075688772},"25":{"tf":2.23606797749979},"7":{"tf":1.7320508075688772},"8":{"tf":1.7320508075688772},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":2,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"0":{"0":{"0":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"_":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"17":{"tf":1.0}}},"2":{"0":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"9":{"6":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"df":0,"docs":{},"h":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"17":{"tf":1.0}}},"3":{"6":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"4":{"4":{"5":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"5":{"df":1,"docs":{"17":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"21":{"tf":1.0}},"h":{"df":1,"docs":{"13":{"tf":1.0}}},"w":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"19":{"tf":1.4142135623730951}}},"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":1.4142135623730951},"22":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}},"2":{"/":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"21":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}},"w":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":1,"docs":{"13":{"tf":1.0}}},"5":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"3":{"/":{"4":{"/":{"5":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"13":{"tf":1.0},"19":{"tf":1.0}}},"df":8,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.7320508075688772}}},"4":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":1.7320508075688772}}},"5":{",":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":9,"docs":{"13":{"tf":1.7320508075688772},"15":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.7320508075688772},"25":{"tf":1.4142135623730951}}},"6":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"22":{"tf":1.0}}},"7":{"2":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}}},"8":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":2,"docs":{"17":{"tf":1.0},"19":{"tf":1.0}}},"9":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}},"k":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"17":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":1,"docs":{"3":{"tf":1.4142135623730951}},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"10":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0}}}}},"b":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}}}}}},"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"h":{"df":2,"docs":{"24":{"tf":1.0},"8":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"a":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"15":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"13":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}}}}},"m":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"y":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}},"m":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"17":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"7":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"1":{"tf":1.0},"21":{"tf":1.0}}},"i":{"c":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"4":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"4":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}},"t":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"18":{"tf":1.0},"25":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}},"g":{"2":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"13":{"tf":1.0}}},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"df":1,"docs":{"5":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}}}}}},"o":{"df":1,"docs":{"14":{"tf":1.0}}},"t":{"df":13,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.8284271247461903},"12":{"tf":1.4142135623730951},"13":{"tf":2.449489742783178},"14":{"tf":1.7320508075688772},"15":{"tf":1.7320508075688772},"16":{"tf":1.7320508075688772},"17":{"tf":2.0},"19":{"tf":1.7320508075688772},"20":{"tf":1.0},"22":{"tf":2.23606797749979},"9":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"19":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"1":{"tf":1.0}}},"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":2.6457513110645907},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"19":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":2.0},"22":{"tf":3.0}}}}}},"c":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"5":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},":":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"14":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"g":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":4,"docs":{"3":{"tf":2.0},"4":{"tf":1.0},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"10":{"tf":1.0}}}}},"df":3,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"4":{"tf":1.0}}}},"g":{"b":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.7320508075688772},"5":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"2":{"tf":1.4142135623730951},"7":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"6":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}},"r":{"df":1,"docs":{"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":5,"docs":{"13":{"tf":2.6457513110645907},"20":{"tf":2.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.7320508075688772}}}}},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0}}},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"13":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":4,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":4.358898943540674},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"4":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"19":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"0":{".":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"o":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":2,"docs":{"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.0},"3":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"df":3,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"13":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":5,"docs":{"1":{"tf":1.0},"2":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"i":{"c":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.6457513110645907}}}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"3":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":2,"docs":{"12":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"o":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":1,"docs":{"10":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}},"t":{"df":3,"docs":{"6":{"tf":1.0},"7":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"w":{"df":5,"docs":{"13":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"b":{"df":0,"docs":{},"i":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}},"c":{"df":0,"docs":{},"h":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.0},"4":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"15":{"tf":1.0},"21":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"17":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"f":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":2.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":4,"docs":{"16":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"22":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"2":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.7320508075688772}},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"x":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"5":{"tf":2.0}},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}},"r":{"a":{"df":3,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":1,"docs":{"22":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"6":{"tf":1.0}}}},"w":{"df":2,"docs":{"11":{"tf":1.0},"3":{"tf":1.0}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.6457513110645907},"6":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"22":{"tf":1.0},"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":2,"docs":{"12":{"tf":1.0},"22":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.7320508075688772},"12":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"t":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":3,"docs":{"14":{"tf":1.0},"15":{"tf":1.0},"22":{"tf":1.0}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"1":{"4":{"4":{"5":{"/":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":3,"docs":{"25":{"tf":3.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0}}}}}},"o":{"df":1,"docs":{"5":{"tf":1.0}}},"r":{"c":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.0}}}},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":2.0}}}}}}},"df":1,"docs":{"8":{"tf":1.0}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"g":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":4,"docs":{"12":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"b":{"a":{"'":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"19":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}},"/":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":13,"docs":{"0":{"tf":1.0},"1":{"tf":1.4142135623730951},"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"2":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":2.0},"5":{"tf":2.6457513110645907},"6":{"tf":1.4142135623730951},"8":{"tf":2.23606797749979}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"19":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"7":{"tf":1.0}},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"o":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}},"e":{"df":3,"docs":{"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"o":{"d":{"df":3,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"17":{"tf":1.0},"3":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"i":{"d":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":2.0}}}},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"i":{"df":1,"docs":{"25":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"r":{"d":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"1":{".":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":5,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"2":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"df":1,"docs":{"6":{"tf":1.7320508075688772}}}},"p":{"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"0":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"22":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"i":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}},"m":{"df":1,"docs":{"25":{"tf":1.0}}},"v":{"df":1,"docs":{"5":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"a":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"15":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.7320508075688772}}}}}},"o":{"df":2,"docs":{"4":{"tf":1.0},"8":{"tf":1.0}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"3":{"tf":2.0},"5":{"tf":1.4142135623730951}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.4142135623730951},"23":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"22":{"tf":1.0}},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"o":{"df":3,"docs":{"11":{"tf":1.7320508075688772},"12":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"25":{"tf":3.1622776601683795},"7":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"'":{"df":11,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"12":{"tf":2.0},"15":{"tf":1.0},"16":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":2.0}},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.7320508075688772},"22":{"tf":1.7320508075688772},"5":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"d":{"a":{"df":2,"docs":{"16":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":6,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"17":{"tf":1.0},"4":{"tf":1.4142135623730951}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":2.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}},"g":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.4142135623730951}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"i":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"k":{"df":1,"docs":{"1":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"4":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"x":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"p":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":2.449489742783178}}}},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"df":2,"docs":{"22":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"9":{"tf":2.449489742783178}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"(":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"c":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":2.6457513110645907}}}},"k":{"df":0,"docs":{},"e":{"df":7,"docs":{"10":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772},"8":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"1":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"10":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}},"i":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"22":{"tf":1.0},"5":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"d":{"d":{"df":0,"docs":{},"l":{"df":2,"docs":{"7":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}},"m":{"df":1,"docs":{"25":{"tf":1.0}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"x":{"df":1,"docs":{"11":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"e":{"3":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"1":{"2":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":12,"docs":{"10":{"tf":1.0},"13":{"tf":3.4641016151377544},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":2.23606797749979},"18":{"tf":1.0},"20":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"22":{"tf":2.0},"23":{"tf":2.0},"25":{"tf":1.0},"5":{"tf":1.7320508075688772}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"10":{"tf":1.4142135623730951},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":8,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":3.1622776601683795},"7":{"tf":2.0},"8":{"tf":2.0}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":3.0}}}}},"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"24":{"tf":1.0},"3":{"tf":2.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}},"w":{"df":3,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"10":{"tf":1.0},"18":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"t":{"df":5,"docs":{"11":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"17":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":2.23606797749979}}}}}}}},"m":{"df":1,"docs":{"8":{"tf":1.0}}},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":8,"docs":{"10":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"17":{"tf":1.0}}},"h":{"df":2,"docs":{"18":{"tf":1.0},"8":{"tf":1.7320508075688772}}},"i":{"c":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"9":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}},"o":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"19":{"tf":1.0}}}},"b":{"df":0,"docs":{},"j":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.449489742783178}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"16":{"tf":1.0},"3":{"tf":1.0}}}}}}}},"d":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"5":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":3.0}}}}}}},"k":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"16":{"tf":1.0},"25":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"c":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"16":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.0}}},"df":5,"docs":{"0":{"tf":1.0},"12":{"tf":2.0},"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}},"r":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"r":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"t":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"8":{"tf":1.0}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"5":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":5,"docs":{"13":{"tf":2.23606797749979},"15":{"tf":2.23606797749979},"22":{"tf":2.23606797749979},"23":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}},"t":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"19":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"16":{"tf":1.0},"23":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}},"h":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"15":{"tf":1.0}},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":2.0},"22":{"tf":2.449489742783178},"24":{"tf":2.0},"25":{"tf":1.4142135623730951}}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":3,"docs":{"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":3,"docs":{"10":{"tf":1.0},"21":{"tf":1.0},"8":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"18":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":10,"docs":{"0":{"tf":1.4142135623730951},"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":3.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":3.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"df":3,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"u":{"b":{"df":2,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":3.7416573867739413}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"t":{"df":3,"docs":{"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"10":{"tf":1.0},"19":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"e":{"a":{"d":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":9,"docs":{"1":{"tf":1.0},"10":{"tf":2.0},"11":{"tf":2.449489742783178},"12":{"tf":1.0},"14":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}},"i":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"12":{"tf":1.0},"3":{"tf":1.0}}}}}},"d":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0}},"u":{"c":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":6,"docs":{"11":{"tf":3.3166247903554},"12":{"tf":2.449489742783178},"14":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"l":{"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":2.0}}}},"df":0,"docs":{},"v":{"df":1,"docs":{"15":{"tf":1.0}}}},"i":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"4":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":2.449489742783178}}}}}}},"g":{"b":{"1":{"5":{"df":3,"docs":{"13":{"tf":1.7320508075688772},"20":{"tf":1.4142135623730951},"21":{"tf":1.0}}},"6":{"(":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"3":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"l":{"df":1,"docs":{"5":{"tf":1.0}}},"o":{"df":0,"docs":{},"m":{"'":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"21":{"tf":1.4142135623730951},"25":{"tf":2.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"19":{"tf":1.0}}}},"n":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":2.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":6,"docs":{"0":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"3":{"tf":1.0}}}}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":5,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"21":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"15":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.7320508075688772}},"m":{"df":1,"docs":{"8":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":3,"docs":{"22":{"tf":1.0},"24":{"tf":1.0},"9":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}},"t":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"8":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"2":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"w":{"df":2,"docs":{"10":{"tf":1.0},"13":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}}}},"i":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}},"t":{"df":1,"docs":{"8":{"tf":1.0}}},"x":{"df":1,"docs":{"13":{"tf":1.0}}},"z":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"12":{"tf":1.0}}},"p":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"25":{"tf":1.0},"6":{"tf":1.0}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":4,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.0},"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"w":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"i":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"r":{"c":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"15":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.8284271247461903},"9":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"y":{"df":1,"docs":{"16":{"tf":1.0}}}},"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"20":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"u":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}}}}}}},"t":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":6,"docs":{"18":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"1":{"tf":1.0}},"n":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"5":{"tf":1.7320508075688772},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":8,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":3,"docs":{"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.0}}},"v":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"k":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"18":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"11":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"24":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"w":{"df":1,"docs":{"7":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.7320508075688772},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"n":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"p":{"df":2,"docs":{"21":{"tf":1.0},"5":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":6,"docs":{"10":{"tf":1.0},"19":{"tf":1.7320508075688772},"22":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"1":{"6":{")":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"1":{"2":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"4":{"0":{"3":{"df":4,"docs":{"18":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"20":{"tf":2.0},"22":{"tf":3.4641016151377544},"23":{"tf":1.0},"25":{"tf":4.242640687119285}}},"df":0,"docs":{}},"3":{"2":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"8":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"r":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}},"s":{"df":15,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.7320508075688772},"16":{"tf":1.4142135623730951},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"3":{"tf":2.449489742783178},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"r":{"df":2,"docs":{"13":{"tf":1.0},"8":{"tf":1.0}}}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":10,"docs":{"11":{"tf":2.0},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"19":{"tf":1.0},"20":{"tf":2.0},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"0":{"tf":1.0},"15":{"tf":1.0},"5":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"13":{"tf":2.0},"15":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":2.0},"22":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"10":{"tf":3.0},"11":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"m":{"df":6,"docs":{"16":{"tf":1.7320508075688772},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0}}}},"df":0,"docs":{}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.23606797749979},"25":{"tf":1.0},"3":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":11,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"r":{"df":3,"docs":{"22":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"25":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"19":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"25":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"11":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"17":{"tf":1.7320508075688772},"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"12":{"tf":1.0},"14":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":8,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"13":{"tf":1.0},"17":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.23606797749979},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"l":{"d":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":15,"docs":{"10":{"tf":3.3166247903554},"11":{"tf":2.6457513110645907},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":3.1622776601683795},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"19":{"tf":1.4142135623730951},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951}}}}}}},"x":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"23":{"tf":1.0}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":2.23606797749979},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":5,"docs":{"11":{"tf":1.0},"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"breadcrumbs":{"root":{"0":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},".":{"7":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"/":{"1":{"/":{"2":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"1":{"1":{"1":{"1":{"1":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"1":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":1.7320508075688772},"2":{"tf":1.4142135623730951},"22":{"tf":2.0},"25":{"tf":2.0},"7":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"15":{"tf":1.0}}}},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}}},"4":{"0":{"0":{"0":{"0":{"0":{"0":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"0":{"0":{"0":{"0":{"0":{"0":{"df":5,"docs":{"24":{"tf":1.7320508075688772},"25":{"tf":2.23606797749979},"7":{"tf":1.7320508075688772},"8":{"tf":1.7320508075688772},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":2,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"0":{"0":{"0":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"_":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"17":{"tf":1.0}}},"2":{"0":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"9":{"6":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"df":0,"docs":{},"h":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"17":{"tf":1.0}}},"3":{"6":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"4":{"4":{"5":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"5":{"df":1,"docs":{"17":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"21":{"tf":1.0}},"h":{"df":1,"docs":{"13":{"tf":1.0}}},"w":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"19":{"tf":1.4142135623730951}}},"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":21,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.0},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"17":{"tf":1.7320508075688772},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}},"2":{"/":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"21":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}},"w":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":1,"docs":{"13":{"tf":1.0}}},"5":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"3":{"/":{"4":{"/":{"5":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"13":{"tf":1.0},"19":{"tf":1.0}}},"df":8,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.7320508075688772},"22":{"tf":1.0},"25":{"tf":1.7320508075688772}}},"4":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":2.0}}},"5":{",":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":9,"docs":{"13":{"tf":1.7320508075688772},"15":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":2.0},"25":{"tf":1.4142135623730951}}},"6":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"22":{"tf":1.0}}},"7":{"2":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}}},"8":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":2,"docs":{"17":{"tf":1.0},"19":{"tf":1.0}}},"9":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}},"k":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"17":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":1,"docs":{"3":{"tf":1.4142135623730951}},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"10":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0}}}}},"b":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}}}}}},"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"h":{"df":2,"docs":{"24":{"tf":1.0},"8":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"a":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"15":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"13":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}}}}},"m":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"y":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}},"m":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"17":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"7":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"1":{"tf":1.0},"21":{"tf":1.0}}},"i":{"c":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"4":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"4":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}},"t":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"18":{"tf":1.0},"25":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}},"g":{"2":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"13":{"tf":1.0}}},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"df":1,"docs":{"5":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}}}}}},"o":{"df":1,"docs":{"14":{"tf":1.0}}},"t":{"df":13,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.8284271247461903},"12":{"tf":1.4142135623730951},"13":{"tf":2.449489742783178},"14":{"tf":1.7320508075688772},"15":{"tf":1.7320508075688772},"16":{"tf":1.7320508075688772},"17":{"tf":2.0},"19":{"tf":1.7320508075688772},"20":{"tf":1.0},"22":{"tf":2.23606797749979},"9":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.7320508075688772},"19":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"1":{"tf":1.0}}},"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":2.6457513110645907},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"19":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":2.0},"22":{"tf":3.0}}}}}},"c":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"5":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},":":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"14":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"g":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":4,"docs":{"3":{"tf":2.0},"4":{"tf":1.0},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"10":{"tf":1.0}}}}},"df":3,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"4":{"tf":1.0}}}},"g":{"b":{"df":1,"docs":{"14":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.7320508075688772},"5":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"2":{"tf":1.7320508075688772},"7":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":20,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}},"r":{"df":1,"docs":{"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":5,"docs":{"13":{"tf":2.6457513110645907},"20":{"tf":2.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.7320508075688772}}}}},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0}}},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"13":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"18":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":4,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":4.358898943540674},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":2.0},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"4":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"19":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"0":{".":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"o":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":2,"docs":{"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.0},"3":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"df":3,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"13":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":5,"docs":{"1":{"tf":1.0},"2":{"tf":1.7320508075688772},"3":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"i":{"c":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.6457513110645907}}}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"3":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":2,"docs":{"12":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":2.0},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"o":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":1,"docs":{"10":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}},"t":{"df":3,"docs":{"6":{"tf":1.0},"7":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"w":{"df":5,"docs":{"13":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"b":{"df":0,"docs":{},"i":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}},"c":{"df":0,"docs":{},"h":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.0},"4":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"15":{"tf":1.0},"21":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"17":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"f":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":2.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":4,"docs":{"16":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"22":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"2":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.7320508075688772}},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"x":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"5":{"tf":2.0}},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}},"r":{"a":{"df":3,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":1,"docs":{"22":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"6":{"tf":1.0}}}},"w":{"df":2,"docs":{"11":{"tf":1.0},"3":{"tf":1.0}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.6457513110645907},"6":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"22":{"tf":1.0},"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":2,"docs":{"12":{"tf":1.0},"22":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.7320508075688772},"12":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"t":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":3,"docs":{"14":{"tf":1.0},"15":{"tf":1.4142135623730951},"22":{"tf":1.0}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"1":{"4":{"4":{"5":{"/":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":3,"docs":{"25":{"tf":3.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0}}}}}},"o":{"df":1,"docs":{"5":{"tf":1.0}}},"r":{"c":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.0}}}},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":2.0}}}}}}},"df":1,"docs":{"8":{"tf":1.0}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"g":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":4,"docs":{"12":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"b":{"a":{"'":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"19":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}},"/":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":26,"docs":{"0":{"tf":1.0},"1":{"tf":1.4142135623730951},"10":{"tf":1.4142135623730951},"11":{"tf":1.4142135623730951},"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":2.0},"5":{"tf":2.6457513110645907},"6":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":2.449489742783178},"9":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"19":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"7":{"tf":1.0}},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"o":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}},"e":{"df":3,"docs":{"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"o":{"d":{"df":3,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"17":{"tf":1.0},"3":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"i":{"d":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":2.0}}}},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"i":{"df":1,"docs":{"25":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"r":{"d":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"1":{".":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":5,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"2":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.7320508075688772}}},"df":20,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"6":{"tf":2.0},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}}},"p":{"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"0":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"22":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"i":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}},"m":{"df":1,"docs":{"25":{"tf":1.0}}},"v":{"df":1,"docs":{"5":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"a":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"15":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.7320508075688772}}}}}},"o":{"df":2,"docs":{"4":{"tf":1.0},"8":{"tf":1.0}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"3":{"tf":2.0},"5":{"tf":1.4142135623730951}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.4142135623730951},"23":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"22":{"tf":1.0}},"t":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"o":{"df":3,"docs":{"11":{"tf":2.0},"12":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"25":{"tf":3.1622776601683795},"7":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"'":{"df":11,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"12":{"tf":2.0},"15":{"tf":1.0},"16":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":2.0}},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.7320508075688772},"22":{"tf":1.7320508075688772},"5":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"d":{"a":{"df":2,"docs":{"16":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":6,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"17":{"tf":1.0},"4":{"tf":1.4142135623730951}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":2.23606797749979}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}},"g":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.4142135623730951}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"i":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"k":{"df":1,"docs":{"1":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"4":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"x":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"p":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":2.449489742783178}}}},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"df":2,"docs":{"22":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"9":{"tf":2.6457513110645907}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"(":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"c":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":2.6457513110645907}}}},"k":{"df":0,"docs":{},"e":{"df":7,"docs":{"10":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772},"8":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"1":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"10":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}},"i":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"22":{"tf":1.0},"5":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"d":{"d":{"df":0,"docs":{},"l":{"df":2,"docs":{"7":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}},"m":{"df":1,"docs":{"25":{"tf":1.0}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"x":{"df":1,"docs":{"11":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"e":{"3":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"1":{"2":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":12,"docs":{"10":{"tf":1.0},"13":{"tf":3.605551275463989},"14":{"tf":1.7320508075688772},"15":{"tf":1.0},"17":{"tf":2.23606797749979},"18":{"tf":1.0},"20":{"tf":1.7320508075688772},"21":{"tf":1.7320508075688772},"22":{"tf":2.23606797749979},"23":{"tf":2.23606797749979},"25":{"tf":1.0},"5":{"tf":1.7320508075688772}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"10":{"tf":1.4142135623730951},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":8,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":3.1622776601683795},"7":{"tf":2.0},"8":{"tf":2.0}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":3.0}}}}},"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"24":{"tf":1.0},"3":{"tf":2.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}},"w":{"df":3,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"10":{"tf":1.0},"18":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"t":{"df":5,"docs":{"11":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"17":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":2.23606797749979}}}}}}}},"m":{"df":1,"docs":{"8":{"tf":1.0}}},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":8,"docs":{"10":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"17":{"tf":1.0}}},"h":{"df":2,"docs":{"18":{"tf":1.0},"8":{"tf":1.7320508075688772}}},"i":{"c":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"9":{"tf":2.0}}}}},"df":0,"docs":{}}}},"o":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.7320508075688772},"19":{"tf":1.0}}}},"b":{"df":0,"docs":{},"j":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.449489742783178}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"16":{"tf":1.0},"3":{"tf":1.0}}}}}}}},"d":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"5":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":3.0}}}}}}},"k":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"16":{"tf":1.0},"25":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"c":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"16":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.0}}},"df":5,"docs":{"0":{"tf":1.0},"12":{"tf":2.0},"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}},"r":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"r":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"t":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"8":{"tf":1.0}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"5":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":5,"docs":{"13":{"tf":2.23606797749979},"15":{"tf":2.449489742783178},"22":{"tf":2.23606797749979},"23":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}},"t":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"19":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"16":{"tf":1.0},"23":{"tf":1.0},"3":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}},"h":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"15":{"tf":1.0}},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":2.0},"22":{"tf":2.449489742783178},"24":{"tf":2.0},"25":{"tf":1.4142135623730951}}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":3,"docs":{"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":3,"docs":{"10":{"tf":1.0},"21":{"tf":1.0},"8":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"18":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":10,"docs":{"0":{"tf":1.4142135623730951},"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":3.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":3.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"df":3,"docs":{"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"u":{"b":{"df":2,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":3.7416573867739413}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"t":{"df":3,"docs":{"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"10":{"tf":1.0},"19":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"e":{"a":{"d":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":9,"docs":{"1":{"tf":1.0},"10":{"tf":2.0},"11":{"tf":2.449489742783178},"12":{"tf":1.0},"14":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}},"i":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"12":{"tf":1.0},"3":{"tf":1.0}}}}}},"d":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0}},"u":{"c":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":6,"docs":{"11":{"tf":3.4641016151377544},"12":{"tf":2.6457513110645907},"14":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"l":{"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":2.0}}}},"df":0,"docs":{},"v":{"df":1,"docs":{"15":{"tf":1.0}}}},"i":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"4":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":2.449489742783178}}}}}}},"g":{"b":{"1":{"5":{"df":3,"docs":{"13":{"tf":1.7320508075688772},"20":{"tf":1.7320508075688772},"21":{"tf":1.0}}},"6":{"(":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"3":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"l":{"df":1,"docs":{"5":{"tf":1.0}}},"o":{"df":0,"docs":{},"m":{"'":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"21":{"tf":1.4142135623730951},"25":{"tf":2.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"19":{"tf":1.0}}}},"n":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":2.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":6,"docs":{"0":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"3":{"tf":1.0}}}}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":5,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"21":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"6":{"tf":1.4142135623730951},"7":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"15":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.7320508075688772}},"m":{"df":1,"docs":{"8":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":3,"docs":{"22":{"tf":1.0},"24":{"tf":1.0},"9":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}},"t":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"8":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"2":{"tf":1.7320508075688772},"3":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"w":{"df":2,"docs":{"10":{"tf":1.0},"13":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}}}},"i":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}},"t":{"df":1,"docs":{"8":{"tf":1.0}}},"x":{"df":1,"docs":{"13":{"tf":1.0}}},"z":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"12":{"tf":1.0}}},"p":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"25":{"tf":1.0},"6":{"tf":1.0}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":4,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.0},"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"w":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"i":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"r":{"c":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"15":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.8284271247461903},"9":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"y":{"df":1,"docs":{"16":{"tf":1.0}}}},"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"20":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"u":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}}}}},"t":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":6,"docs":{"18":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"1":{"tf":1.0}},"n":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"5":{"tf":1.7320508075688772},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":8,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":3,"docs":{"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.0}}},"v":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"k":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"18":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"11":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.7320508075688772}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"24":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"w":{"df":1,"docs":{"7":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.7320508075688772},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"n":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"p":{"df":2,"docs":{"21":{"tf":1.0},"5":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":6,"docs":{"10":{"tf":1.0},"19":{"tf":1.7320508075688772},"22":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"1":{"6":{")":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"1":{"2":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"4":{"0":{"3":{"df":4,"docs":{"18":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"20":{"tf":2.0},"22":{"tf":3.4641016151377544},"23":{"tf":1.0},"25":{"tf":4.242640687119285}}},"df":0,"docs":{}},"3":{"2":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"8":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"r":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}},"s":{"df":15,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.7320508075688772},"16":{"tf":1.4142135623730951},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"3":{"tf":2.449489742783178},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"r":{"df":2,"docs":{"13":{"tf":1.0},"8":{"tf":1.0}}}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":10,"docs":{"11":{"tf":2.0},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"19":{"tf":1.0},"20":{"tf":2.0},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"0":{"tf":1.0},"15":{"tf":1.0},"5":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"13":{"tf":2.23606797749979},"15":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":2.23606797749979},"22":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"10":{"tf":3.1622776601683795},"11":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"m":{"df":6,"docs":{"16":{"tf":2.0},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0}}}},"df":0,"docs":{}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.23606797749979},"25":{"tf":1.0},"3":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":11,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"r":{"df":3,"docs":{"22":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"25":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"19":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"25":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"11":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"17":{"tf":1.7320508075688772},"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"12":{"tf":1.0},"14":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":8,"docs":{"0":{"tf":1.0},"1":{"tf":1.4142135623730951},"13":{"tf":1.0},"17":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.23606797749979},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"l":{"d":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":15,"docs":{"10":{"tf":3.3166247903554},"11":{"tf":2.6457513110645907},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":3.1622776601683795},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"19":{"tf":1.4142135623730951},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951}}}}}}},"x":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"23":{"tf":1.0}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":2.23606797749979},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":5,"docs":{"11":{"tf":1.0},"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"title":{"root":{"0":{"df":1,"docs":{"2":{"tf":1.0}}},"1":{"df":1,"docs":{"6":{"tf":1.0}}},"3":{"df":1,"docs":{"21":{"tf":1.0}}},"4":{"df":1,"docs":{"22":{"tf":1.0}}},"5":{"df":1,"docs":{"23":{"tf":1.0}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"b":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":1,"docs":{"6":{"tf":1.0}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"12":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"2":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"g":{"b":{"a":{"df":1,"docs":{"6":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"1":{"df":2,"docs":{"7":{"tf":1.0},"8":{"tf":1.0}}},"2":{"df":1,"docs":{"25":{"tf":1.0}}},"df":1,"docs":{"6":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}}}}},"o":{"df":1,"docs":{"11":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"9":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":5,"docs":{"13":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"3":{"tf":1.0},"4":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"12":{"tf":1.0}}}}}}},"g":{"b":{"1":{"5":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"2":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"3":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":2,"docs":{"13":{"tf":1.0},"19":{"tf":1.0}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}}},"pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5"},"results_options":{"limit_results":30,"teaser_word_count":30},"search_options":{"bool":"OR","expand":true,"fields":{"body":{"boost":1},"breadcrumbs":{"boost":1},"title":{"boost":2}}}}; \ No newline at end of file diff --git a/docs/searchindex.json b/docs/searchindex.json index 2753d6d..bc47769 100644 --- a/docs/searchindex.json +++ b/docs/searchindex.json @@ -1 +1 @@ -{"doc_urls":["ch01.html#ch01"],"index":{"documentStore":{"docInfo":{"0":{"body":0,"breadcrumbs":1,"title":1}},"docs":{"0":{"body":"","breadcrumbs":"ch01","id":"0","title":"ch01"}},"length":1,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"c":{"df":0,"docs":{},"h":{"0":{"1":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"breadcrumbs":{"root":{"c":{"df":0,"docs":{},"h":{"0":{"1":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"title":{"root":{"c":{"df":0,"docs":{},"h":{"0":{"1":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5"},"results_options":{"limit_results":30,"teaser_word_count":30},"search_options":{"bool":"OR","expand":true,"fields":{"body":{"boost":1},"breadcrumbs":{"boost":1},"title":{"boost":2}}}} \ No newline at end of file +{"doc_urls":["introduction.html#introduction","introduction.html#other-works","ch0/index.html#chapter-0-development-setup","ch0/index.html#per-system-setup","ch0/index.html#per-project-setup","ch0/index.html#compiling","ch1/index.html#ch-1-hello-gba","ch1/hello1.html#hello1","ch1/hello1.html#explaining-hello1","ch1/hello1.html#all-those-magic-numbers","ch1/hello1.html#sidebar-volatile","ch1/io_registers.html#io-registers","ch1/the_display_control_register.html#the-display-control-register","ch1/the_display_control_register.html#video-modes","ch1/the_display_control_register.html#cgb-mode","ch1/the_display_control_register.html#page-flipping","ch1/the_display_control_register.html#oam-vram-and-blanking","ch1/the_display_control_register.html#screen-layers","ch1/the_display_control_register.html#in-conclusion","ch1/video_memory_intro.html#video-memory-intro","ch1/video_memory_intro.html#rgb15","ch1/video_memory_intro.html#mode-3","ch1/video_memory_intro.html#mode-4","ch1/video_memory_intro.html#mode-5","ch1/video_memory_intro.html#in-conclusion","ch1/hello2.html#hello2"],"index":{"documentStore":{"docInfo":{"0":{"body":16,"breadcrumbs":1,"title":1},"1":{"body":30,"breadcrumbs":1,"title":1},"10":{"body":168,"breadcrumbs":6,"title":2},"11":{"body":143,"breadcrumbs":6,"title":2},"12":{"body":83,"breadcrumbs":7,"title":3},"13":{"body":174,"breadcrumbs":6,"title":2},"14":{"body":25,"breadcrumbs":6,"title":2},"15":{"body":32,"breadcrumbs":6,"title":2},"16":{"body":70,"breadcrumbs":7,"title":3},"17":{"body":54,"breadcrumbs":6,"title":2},"18":{"body":30,"breadcrumbs":5,"title":1},"19":{"body":88,"breadcrumbs":7,"title":3},"2":{"body":20,"breadcrumbs":4,"title":4},"20":{"body":47,"breadcrumbs":5,"title":1},"21":{"body":41,"breadcrumbs":6,"title":2},"22":{"body":211,"breadcrumbs":6,"title":2},"23":{"body":25,"breadcrumbs":6,"title":2},"24":{"body":47,"breadcrumbs":5,"title":1},"25":{"body":300,"breadcrumbs":5,"title":1},"3":{"body":106,"breadcrumbs":3,"title":3},"4":{"body":93,"breadcrumbs":3,"title":3},"5":{"body":385,"breadcrumbs":1,"title":1},"6":{"body":39,"breadcrumbs":4,"title":4},"7":{"body":83,"breadcrumbs":5,"title":1},"8":{"body":283,"breadcrumbs":6,"title":2},"9":{"body":55,"breadcrumbs":7,"title":3}},"docs":{"0":{"body":"Here's a book that'll help you program in Rust on the GBA. It's very \"work in progress\". At the moment there's only one demo program.","breadcrumbs":"Introduction","id":"0","title":"Introduction"},"1":{"body":"If you want to read more about developing on the GBA there are some other good resources as well: Tonc , a tutorial series written for C, but it's what I based the ordering of this book's sections on. GBATEK , a homebrew tech manual for GBA/NDS/DSi. We will regularly link to parts of it when talking about various bits of the GBA.","breadcrumbs":"Other Works","id":"1","title":"Other Works"},"10":{"body":"We'll get into what all that is in a moment, but first let's ask ourselves: Why are we doing volatile writes? You've probably never used it before at all. What is volatile anyway? Well, the optimizer is pretty aggressive some of the time, and so it'll skip reads and writes when it thinks can. Like if you write to a pointer once, and then again a moment later, and it didn't see any other reads in between, it'll think that it can just skip doing that first write since it'll get overwritten anyway. Sometimes that's right, but sometimes it's wrong. Marking a read or write as volatile tells the compiler that it really must do that action, and in the exact order that we wrote it out. It says that there might even be special hardware side effects going on that the compiler isn't aware of. In this case, the Display Control write sets a video mode, and the Video RAM writes set pixels that will show up on the screen. Similar to \"atomic\" operations you might have heard about, all volatile operations are enforced to happen in the exact order that you specify them, but only relative to other volatile operations. So something like c.volatile_write(5);\na += b;\nd.volatile_write(7); might end up changing a either before or after the change to c , but the write to d will always happen after the write to c . If you ever use volatile stuff on other platforms it's important to note that volatile doesn't make things thread-safe, you still need atomic for that. However, the GBA doesn't have threads, so we don't have to worry about thread safety concerns. Accordingly, our first bit of code for our library will be a newtype over a normal *mut T so that it has volatile reads and writes as the default. We'll cover the details later on when we try writing a hello2 program, once we know more of what's going on.","breadcrumbs":"Ch 1: Hello GBA » Sidebar: Volatile","id":"10","title":"Sidebar: Volatile"},"11":{"body":"The GBA has a large number of IO Registers (not to be confused with CPU registers). These are special memory locations from 0x04000000 to 0x040003FE . GBATEK has a full list , but we only need to learn about a few of them at a time as we go, so don't be worried. The important facts to know about IO Registers are these: Each has their own specific size. Most are u16 , but some are u32 . All of them must be accessed in a volatile style. Each register is specifically readable or writable or both. Actually, with some registers there are even individual bits that are read-only or write-only. If you write to a read-only position, those writes are simply ignored. This mostly matters if a writable register contains a read-only bit (such as the Display Control, next section). If you read from a write-only position, you get back values that are basically nonsense . There aren't really any registers that mix writable bits with read only bits, so you're basically safe here. The only (mild) concern is that when you write a value into a write-only register you need to keep track of what you wrote somewhere else if you want to know what you wrote (such to adjust an offset value by +1, or whatever). You can always check GBATEK to be sure, but if I don't mention it then a bit is probably both read and write. Some registers have invalid bit patterns. For example, the lowest three bits of the Display Control register can't legally be set to the values 6 or 7. When talking about bit positions, the numbers are zero indexed just like an array index is.","breadcrumbs":"Ch 1: Hello GBA » IO Registers","id":"11","title":"IO Registers"},"12":{"body":"The display control register is our first actual IO Register. GBATEK gives it the shorthand DISPCNT , so you might see it under that name if you read other guides. Among IO Registers, it's one of the simpler ones, but it's got enough complexity that we can get a hint of what's to come. Also it's the one that you basically always need to set at least once in every GBA game, so it's a good starting one to go over for that reason too. The display control register holds a u16 value, and is located at 0x0400_0000 . Many of the bits here won't mean much to you right now. That is fine. You do NOT need to memorize them all or what they all do right away. We'll just skim over all the parts of this register to start, and then we'll go into more detail in later chapters when we need to come back and use more of the bits.","breadcrumbs":"Ch 1: Hello GBA » The Display Control Register","id":"12","title":"The Display Control Register"},"13":{"body":"The lowest three bits (0-2) let you select from among the GBA's six video modes. You'll notice that 3 bits allows for eight modes, but the values 6 and 7 are prohibited. Modes 0, 1, and 2 are \"tiled\" modes. These are actually the modes that you should eventually learn to use as much as possible. It lets the GBA's limited video hardware do as much of the work as possible, leaving more of your CPU time for gameplay computations. However, they're also complex enough to deserve their own demos and chapters later on, so that's all we'll say about them for now. Modes 3, 4, and 5 are \"bitmap\" modes. These let you write individual pixels to locations on the screen. Mode 3 is full resolution (240w x 160h) RGB15 color. You might not be used to RGB15, since modern computers have 24 or 32 bit colors. In RGB15, there's 5 bits for each color channel stored within a u16 value, and the highest bit is simply ignored. Mode 4 is full resolution paletted color. Instead of being a u16 color, each pixel value is a u8 palette index entry, and then the display uses the palette memory (which we'll talk about later) to store the actual color data. Since each pixel is half sized, we can fit twice as many. This lets us have two \"pages\". At any given moment only one page is active, and you can draw to the other page without the user noticing. You set which page to show with another bit we'll get to in a moment. Mode 5 is full color, but also with pages. This means that we must have a reduced resolution to compensate (video memory is only so big!). The screen is effectively only 160w x 128h in this mode.","breadcrumbs":"Ch 1: Hello GBA » Video Modes","id":"13","title":"Video Modes"},"14":{"body":"Bit 3 is effectively read only. Technically it can be flipped using a BIOS call, but when you write to the display control register normally it won't write to this bit, so we'll call it effectively read only. This bit is on if the CPU is in CGB mode.","breadcrumbs":"Ch 1: Hello GBA » CGB Mode","id":"14","title":"CGB Mode"},"15":{"body":"Bit 4 lets you pick which page to use. This is only relevent in video modes 4 or 5, and is just ignored otherwise. It's very easy to remember: when the bit is 0 the 0th page is used, and when the bit is 1 the 1st page is used. The second page always starts at 0x0600_A000 .","breadcrumbs":"Ch 1: Hello GBA » Page Flipping","id":"15","title":"Page Flipping"},"16":{"body":"Bit 5 lets you access OAM during HBlank if enabled. This is cool, but it reduces the maximum sprites per scanline, so it's not default. Bit 6 lets you adjust if the GBA should treat Object Character VRAM as being 2d (off) or 1d (on). This particular control can be kinda tricky to wrap your head around, so we'll be sure to have some extra diagrams in the chapter that deals with it. Bit 7 forces the screen to stay in vblank as long as it's set. This allows the fastest use of the VRAM, Palette, and Object Attribute Memory. Obviously if you leave this on for too long the player will notice a blank screen, but it might be okay to use for a moment or two every once in a while.","breadcrumbs":"Ch 1: Hello GBA » OAM, VRAM, and Blanking","id":"16","title":"OAM, VRAM, and Blanking"},"17":{"body":"Bits 8 through 11 control if Background layers 0 through 3 should be active. Bit 12 affects the Object layer. Note that not all background layers are available in all video modes: Mode 0: all Mode 1: 0/1/2 Mode 2: 2/3 Mode 3/4/5: 2 Bit 13 and 14 enable the display of Windows 0 and 1, and Bit 15 enables the object display window. We'll get into how windows work later on, they let you do some nifty graphical effects.","breadcrumbs":"Ch 1: Hello GBA » Screen Layers","id":"17","title":"Screen Layers"},"18":{"body":"So what did we do to the display control register in hello1 ? (0x04000000 as *mut u16).write_volatile(0x0403); First let's convert that to binary , and we get 0b100_0000_0011 . So, that's setting Mode 3 with background 2 enabled and nothing else special. However, I think we can do better than that. This is a prime target for more newtyping as we attempt a hello2 program.","breadcrumbs":"Ch 1: Hello GBA » In Conclusion...","id":"18","title":"In Conclusion..."},"19":{"body":"The GBA's Video RAM is 96k stretching from 0x0600_0000 to 0x0601_7FFF . The Video RAM can only be accessed totally freely during a Vertical Blank (aka \"vblank\"). At other times, if the CPU tries to touch the same part of video memory as the display controller is accessing then the CPU gets bumped by a cycle to avoid a clash. Annoyingly, VRAM can only be properly written to in 16 and 32 bit segments (same with PALRAM and OAM). If you try to write just an 8 bit segment, then both parts of the 16 bit segment get the same value written to them. In other words, if you write the byte 5 to 0x0600_0000 , then both 0x0600_0000 and ALSO 0x0600_0001 will have the byte 5 in them. We have to be extra careful when trying to set an individual byte, and we also have to be careful if we use memcopy or memset as well, because they're byte oriented by default and don't know to follow the special rules.","breadcrumbs":"Ch 1: Hello GBA » Video Memory Intro","id":"19","title":"Video Memory Intro"},"2":{"body":"Before you can build a GBA game you'll have to follow some special steps to setup the development environment. Perhaps unfortunately, there's enough detail here to warrant a mini-chapter all on its own.","breadcrumbs":"Chapter 0: Development Setup","id":"2","title":"Chapter 0: Development Setup"},"20":{"body":"As I said before, RGB15 stores a color within a u16 value using 5 bits for each color channel. pub const RED: u16 = 0b0_00000_00000_11111;\npub const GREEN: u16 = 0b0_00000_11111_00000;\npub const BLUE: u16 = 0b0_11111_00000_00000; In Mode 3 and Mode 5 we write direct color values into VRAM, and in Mode 4 we write palette index values, and then the color values go into the PALRAM.","breadcrumbs":"Ch 1: Hello GBA » RGB15","id":"20","title":"RGB15"},"21":{"body":"Mode 3 is pretty easy. We have a full resolution grid of rgb15 pixels. There's 160 rows of 240 pixels each, with the base address being the top left corner. A particular pixel uses normal \"2d indexing\" math: let row_five_col_seven = 5 + (7 * SCREEN_WIDTH); To draw a pixel, we just write a value at the address for the row and col that we want to draw to.","breadcrumbs":"Ch 1: Hello GBA » Mode 3","id":"21","title":"Mode 3"},"22":{"body":"Mode 4 introduces page flipping. Instead of one giant page at 0x0600_0000 , there's Page 0 at 0x0600_0000 and then Page 1 at 0x0600_A000 . The resolution for each page is the same as above, but instead of writing u16 values, the memory is treated as u8 indexes into PALRAM. The PALRAM starts at 0x0500_0000 , and there's enough space for 256 palette entries (each a u16 ). To set the color of a palette entry we just do a normal u16 write_volatile. (0x0500_0000 as *mut u16).offset(target_index).write_volatile(new_color) To draw a pixel we set the palette entry that we want the pixel to use. However, we must remember the \"minimum size\" write limitation that applies to VRAM. So, if we want to change just a single pixel at a time we must Read the full u16 it's a part of. Clear the half of the u16 we're going to replace Write the half of the u16 we're going to replace with the new value Write that result back to the address. So, the math for finding a byte offset is the same as Mode 3 (since they're both a 2d grid). If the byte offset is EVEN it'll be the high bits of the u16 at half the byte offset rounded down. If the offset is ODD it'll be the low bits of the u16 at half the byte. Does that make sense? If we want to write pixel (0,0) the byte offset is 0, so we change the high bits of u16 offset 0. Then we want to write to (1,0), so the byte offset is 1, so we change the low bits of u16 offset 0. The pixels are next to each other, and the target bytes are next to each other, good so far. If we want to write to (5,6) that'd be byte 5 + 6 * 240 = 1445 , so we'd target the low bits of u16 offset floor(1445/2) = 722 . As you can see, trying to write individual pixels in Mode 4 is mostly a bad time. Fret not! We don't have to write individual bytes. If our data is arranged correctly ahead of time we can just write u16 or u32 values directly. The video hardware doesn't care, it'll get along just fine.","breadcrumbs":"Ch 1: Hello GBA » Mode 4","id":"22","title":"Mode 4"},"23":{"body":"Mode 5 is also a two page mode, but instead of compressing the size of a pixel's data to fit in two pages, we compress the resolution. Mode 5 is full u16 color, but only 160w x 128h per page.","breadcrumbs":"Ch 1: Hello GBA » Mode 5","id":"23","title":"Mode 5"},"24":{"body":"So what got written into VRAM in hello1 ? (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); So at pixels (120,80) , (136,80) , and (120,96) we write three values. Once again we probably need to convert them into binary to make sense of it. 0x001F: 0b11111 0x03E0: 0b11111_00000 0x7C00: 0b11111_00000_00000 Ah, of course, a red pixel, a green pixel, and a blue pixel.","breadcrumbs":"Ch 1: Hello GBA » In Conclusion...","id":"24","title":"In Conclusion..."},"25":{"body":"Okay so let's have a look again: hello1 #![feature(start)]\n#![no_std] #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { unsafe { (0x04000000 as *mut u16).write_volatile(0x0403); (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); loop {} }\n} Now let's clean this up so that it's clearer what's going on. First we'll label that display control stuff: pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;\npub const MODE3: u16 = 3;\npub const BG2: u16 = 0b100_0000_0000; Next we make some const values for the actual pixel drawing pub const VRAM: usize = 0x06000000;\npub const SCREEN_WIDTH: isize = 240; And then we want a small helper function for putting together a color value. Happily, this one can even be declared as a const function. At the time of writing, we've got the \"minimal const fn\" support in nightly. It really is quite limited, but I'm happy to let rustc and LLVM pre-compute as much as they can when it comes to the GBA's tiny CPU. pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { blue << 10 | green << 5 | red\n} Finally, we'll make a function for drawing a pixel in Mode 3. Even though it's just a one-liner, having the \"important parts\" be labeled as function arguments usually helps you think about it a lot better. pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) { (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);\n} So now we've got this: hello2 #![feature(start)]\n#![no_std] #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { unsafe { DISPCNT.write_volatile(MODE3 | BG2); mode3_pixel(120, 80, rgb16(31, 0, 0)); mode3_pixel(136, 80, rgb16(0, 31, 0)); mode3_pixel(120, 96, rgb16(0, 0, 31)); loop {} }\n} pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16;\npub const MODE3: u16 = 3;\npub const BG2: u16 = 0b100_0000_0000; pub const VRAM: usize = 0x06000000;\npub const SCREEN_WIDTH: isize = 240; pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { blue << 10 | green << 5 | red\n} pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) { (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color);\n} Exact same program that we started with, but much easier to read. Of course, in the full gba crate that this book is a part of we have these and other elements all labeled and sorted out for you. Still, for educational purposes it's often best to do it yourself at least once.","breadcrumbs":"Ch 1: Hello GBA » hello2","id":"25","title":"hello2"},"3":{"body":"Obviously you need your computer to have a working rust installation. However, you'll also need to ensure that you're using a nightly toolchain. You can run rustup default nightly to set nightly as the system wide default toolchain, or you can use a toolchain file to use nightly just on a specific project, but either way we'll be assuming nightly from now on. Next you need devkitpro . They've got a graphical installer for Windows, and pacman support on Linux. We'll be using a few of their binutils for the arm-none-eabi target, and we'll also be using some of their tools that are specific to GBA development, so even if you already have the right binutils for whatever reason, you'll still want devkitpro for the gbafix utility. On Windows you'll want something like C:\\devkitpro\\devkitARM\\bin and C:\\devkitpro\\tools\\bin to be added to your PATH , depending on where you installed it to and such. On Linux you'll also want it to be added to your path, but if you're using Linux I'll just assume you know how to do all that. Finally, you'll need cargo-xbuild . Just run cargo install cargo-xbuild and cargo will figure it all out for you.","breadcrumbs":"Per System Setup","id":"3","title":"Per System Setup"},"4":{"body":"Now you'll need some particular files each time you want to start a new project. You can find them in the root of the rust-console/gba repo . thumbv4-none-agb.json describes the overall GBA to cargo-xbuild so it knows what to do. This is actually a somewhat made up target name since there's no official target name. The GBA is essentially the same as a normal thumbv4-none-eabi device, but we give it the \"agb\" signifier so that later on we'll be able to use rust's cfg ability to allow our code to know if it's specifically targeting a GBA or some other similar device (like an NDS). crt0.s describes some ASM startup stuff. If you have more ASM to place here later on this is where you can put it. You also need to build it into a crt0.o file before it can actually be used, but we'll cover that below. linker.ld tells the linker more critical info about the layout expectations that the GBA has about our program.","breadcrumbs":"Per Project Setup","id":"4","title":"Per Project Setup"},"5":{"body":"Once you've got something to build, you perform the following steps: arm-none-eabi-as crt0.s -o crt0.o This builds your text format crt0.s file into object format crt0.o . You don't need to perform it every time, only when crt0.s changes, but you might as well do it every time so that you never forget to because it's a practically instant operation. cargo xbuild --target thumbv4-none-agb.json This builds your Rust source. It accepts most of the normal options, such as --release , and options, such as --bin foo or --examples , that you'd expect cargo to accept. You can not build and run tests this way, because they require std , which the GBA doesn't have. You can still run some of your project's tests with cargo test , but that builds for your local machine, so anything specific to the GBA (such as reading and writing registers) won't be testable that way. If you want to isolate and try out some piece code running on the GBA you'll unfortunately have to make a demo for it in your examples/ directory and then run the demo in an emulator and see if it does what you expect. The file extension is important. cargo xbuild takes it as a flag to compile dependencies with the same sysroot, so you can include crates normally. Well, creates that work in the GBA's limited environment, but you get the idea. At this point you have an ELF binary that some emulators can execute directly. This is helpful because it'll have debug symbols and all that, assuming a debug build. Specifically, mgba 0.7 beta 1 can do it, and perhaps other emulators can also do it. However, if you want a \"real\" ROM that works in all emulators and that you could transfer to a flash cart there's a little more to do. arm-none-eabi-objcopy -O binary target/thumbv4-none-agb/MODE/BIN_NAME target/ROM_NAME.gba This will perform an objcopy on our program. Here I've named the program arm-none-eabi-objcopy , which is what devkitpro calls their version of objcopy that's specific to the GBA in the Windows install. If the program isn't found under that name, have a look in your installation directory to see if it's under a slightly different name or something. As you can see from reading the man page, the -O binary option takes our lovely ELF file with symbols and all that and strips it down to basically a bare memory dump of the program. The next argument is the input file. You might not be familiar with how cargo arranges stuff in the target/ directory, and between RLS and cargo doc and stuff it gets kinda crowded, so it goes like this: Since our program was built for a non-local target, first we've got a directory named for that target, thumbv4-none-agb/ Next, the \"MODE\" is either debug/ or release/ , depending on if we had the --release flag included. You'll probably only be packing release mode programs all the way into GBA roms, but it works with either mode. Finally, the name of the program. If your program is something out of the project's src/bin/ then it'll be that file's name, or whatever name you configured for the bin in the Cargo.toml file. If your program is something out of the project's examples/ directory there will be a similar examples/ sub-directory first, and then the example's name. The final argument is the output of the objcopy , which I suggest putting at just the top level of the target/ directory. Really it could go anywhere, but if you're using git then it's likely that your .gitignore file is already setup to exclude everything in target/ , so this makes sure that your intermediate game builds don't get checked into your git. gbafix target/ROM_NAME.gba The gbafix tool also comes from devkitpro. The GBA is very picky about a ROM's format, and gbafix patches the ROM's header and such so that it'll work right. Unlike objcopy , this tool is custom built for GBA development, so it works just perfectly without any arguments beyond the file name. The ROM is patched in place, so we don't even need to specify a new destination. And you're finally done! Of course, you probably want to make a script for all that, but it's up to you.","breadcrumbs":"Compiling","id":"5","title":"Compiling"},"6":{"body":"Traditionally a person writes a \"hello, world\" program so that they can test that their development environment is setup properly and to just get a feel for using the tools involved. To get an idea of what a small part of a source file will look like. All that stuff. Normally, you write a program that prints \"hello, world\" to the terminal. The GBA has no terminal, but it does have a screen, so instead we're going to draw three dots to the screen.","breadcrumbs":"Ch 1: Hello GBA","id":"6","title":"Ch 1: Hello GBA"},"7":{"body":"Ready? Here goes: hello1.rs #![feature(start)]\n#![no_std] #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { unsafe { (0x04000000 as *mut u16).write_volatile(0x0403); (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); loop {} }\n} Throw that into your project, build the program (as described back in Chapter 0), and give it a run. You should see a red, green, and blue dot close-ish to the middle of the screen. If you don't, something already went wrong. Double check things, phone a friend, write your senators, try asking Ketsuban on the Rust Community Discord , until you're able to get your three dots going.","breadcrumbs":"Ch 1: Hello GBA » hello1","id":"7","title":"hello1"},"8":{"body":"So, what just happened? Even if you're used to Rust that might look pretty strange. We'll go over each part extra carefully. #![feature(start)] This enables the start feature , which you would normally be able to read about in the unstable book, except that the book tells you nothing at all except to look at the tracking issue . Basically, a GBA game is even more low-level than the normal amount of low-level that you get from Rust, so we have to tell the compiler to account for that by specifying a #[start] , and we need this feature on to do that. #![no_std] There's no standard library available on the GBA, so we'll have to live a core only life. #[cfg(not(test))]\n#[panic_handler]\nfn panic(_info: &core::panic::PanicInfo) -> ! { loop {}\n} This sets our panic handler . Basically, if we somehow trigger a panic, this is where the program goes. However, right now we don't know how to get any sort of message out to the user so... we do nothing at all. We can't even return from here, so we just sit in an infinite loop. The player will have to reset the universe from the outside. The #[cfg(not(test))] part makes this item only exist in the program when we're not in a test build. This is so that cargo test and such work right as much as possible. #[start]\nfn main(_argc: isize, _argv: *const *const u8) -> isize { This is our #[start] . We call it main , but it's not like a main that you'd see in a Rust program. It's more like the sort of main that you'd see in a C program, but it's still not that either. If you compile a #[start] program for a target with an OS such as arm-none-eabi-nm you can open up the debug info and see that your result will have the symbol for the C main along side the symbol for the start main that we write here. Our start main is just its own unique thing, and the inputs and outputs have to be like that because that's how #[start] is specified to work in Rust. If you think about it for a moment you'll probably realize that, those inputs and outputs are totally useless to us on a GBA. There's no OS on the GBA to call our program, and there's no place for our program to \"return to\" when it's done. unsafe { I hope you're all set for some unsafe , because there's a lot of it to be had. (0x04000000 as *mut u16).write_volatile(0x0403); Sure! (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); Ah, of course. loop {} }\n} And, as mentioned above, there's no place for a GBA program to \"return to\", so we can't ever let main try to return there. Instead, we go into an infinite loop that does nothing. The fact that this doesn't ever return an isize value doesn't seem to bother Rust, because I guess we're at least not returning any other type of thing instead. Fun fact: unlike in C++, an infinite loop with no side effects isn't Undefined Behavior for us rustaceans... semantically . In truth LLVM has a known bug in this area, so we won't actually be relying on empty loops in any future programs.","breadcrumbs":"Ch 1: Hello GBA » Explaining hello1","id":"8","title":"Explaining hello1"},"9":{"body":"Alright, I cheated quite a bit in the middle there. The program works, but I didn't really tell you why because I didn't really tell you what any of those magic numbers mean or do. 0x04000000 is the address of an IO Register called the Display Control. 0x06000000 is the start of Video RAM. So we write some magic to the display control register once, then we write some other magic to three locations of magic to the Video RAM. We get three dots, each in their own location... so that second part makes sense at least. We'll get into the magic number details in the other sections of this chapter.","breadcrumbs":"Ch 1: Hello GBA » All Those Magic Numbers","id":"9","title":"All Those Magic Numbers"}},"length":26,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"0":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},".":{"7":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"/":{"1":{"/":{"2":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"1":{"1":{"1":{"1":{"1":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"1":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":1.7320508075688772},"2":{"tf":1.0},"22":{"tf":2.0},"25":{"tf":2.0},"7":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"15":{"tf":1.0}}}},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}}},"4":{"0":{"0":{"0":{"0":{"0":{"0":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"0":{"0":{"0":{"0":{"0":{"0":{"df":5,"docs":{"24":{"tf":1.7320508075688772},"25":{"tf":2.23606797749979},"7":{"tf":1.7320508075688772},"8":{"tf":1.7320508075688772},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":2,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"0":{"0":{"0":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"_":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"17":{"tf":1.0}}},"2":{"0":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"9":{"6":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"df":0,"docs":{},"h":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"17":{"tf":1.0}}},"3":{"6":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"4":{"4":{"5":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"5":{"df":1,"docs":{"17":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"21":{"tf":1.0}},"h":{"df":1,"docs":{"13":{"tf":1.0}}},"w":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"19":{"tf":1.4142135623730951}}},"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":1.4142135623730951},"22":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}},"2":{"/":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"21":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}},"w":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":1,"docs":{"13":{"tf":1.0}}},"5":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"3":{"/":{"4":{"/":{"5":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"13":{"tf":1.0},"19":{"tf":1.0}}},"df":8,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.7320508075688772}}},"4":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":1.7320508075688772}}},"5":{",":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":9,"docs":{"13":{"tf":1.7320508075688772},"15":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.7320508075688772},"25":{"tf":1.4142135623730951}}},"6":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"22":{"tf":1.0}}},"7":{"2":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}}},"8":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":2,"docs":{"17":{"tf":1.0},"19":{"tf":1.0}}},"9":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}},"k":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"17":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":1,"docs":{"3":{"tf":1.4142135623730951}},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"10":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0}}}}},"b":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}}}}}},"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"h":{"df":2,"docs":{"24":{"tf":1.0},"8":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"a":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"15":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"13":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}}}}},"m":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"y":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}},"m":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"17":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"7":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"1":{"tf":1.0},"21":{"tf":1.0}}},"i":{"c":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"4":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"4":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}},"t":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"18":{"tf":1.0},"25":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}},"g":{"2":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"13":{"tf":1.0}}},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"df":1,"docs":{"5":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}}}}}},"o":{"df":1,"docs":{"14":{"tf":1.0}}},"t":{"df":13,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.8284271247461903},"12":{"tf":1.4142135623730951},"13":{"tf":2.449489742783178},"14":{"tf":1.7320508075688772},"15":{"tf":1.7320508075688772},"16":{"tf":1.7320508075688772},"17":{"tf":2.0},"19":{"tf":1.7320508075688772},"20":{"tf":1.0},"22":{"tf":2.23606797749979},"9":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"19":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"1":{"tf":1.0}}},"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":2.6457513110645907},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"19":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":2.0},"22":{"tf":3.0}}}}}},"c":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"5":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},":":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"14":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"g":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":4,"docs":{"3":{"tf":2.0},"4":{"tf":1.0},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"10":{"tf":1.0}}}}},"df":3,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"4":{"tf":1.0}}}},"g":{"b":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.7320508075688772},"5":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"2":{"tf":1.4142135623730951},"7":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"6":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}},"r":{"df":1,"docs":{"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":5,"docs":{"13":{"tf":2.6457513110645907},"20":{"tf":2.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.7320508075688772}}}}},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0}}},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"13":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":4,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":4.358898943540674},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"4":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"19":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"0":{".":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"o":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":2,"docs":{"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.0},"3":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"df":3,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"13":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":5,"docs":{"1":{"tf":1.0},"2":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"i":{"c":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.6457513110645907}}}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"3":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":2,"docs":{"12":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"o":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":1,"docs":{"10":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}},"t":{"df":3,"docs":{"6":{"tf":1.0},"7":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"w":{"df":5,"docs":{"13":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"b":{"df":0,"docs":{},"i":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}},"c":{"df":0,"docs":{},"h":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.0},"4":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"15":{"tf":1.0},"21":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"17":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"f":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":2.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":4,"docs":{"16":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"22":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"2":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.7320508075688772}},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"x":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"5":{"tf":2.0}},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}},"r":{"a":{"df":3,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":1,"docs":{"22":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"6":{"tf":1.0}}}},"w":{"df":2,"docs":{"11":{"tf":1.0},"3":{"tf":1.0}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.6457513110645907},"6":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"22":{"tf":1.0},"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":2,"docs":{"12":{"tf":1.0},"22":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.7320508075688772},"12":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"t":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":3,"docs":{"14":{"tf":1.0},"15":{"tf":1.0},"22":{"tf":1.0}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"1":{"4":{"4":{"5":{"/":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":3,"docs":{"25":{"tf":3.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0}}}}}},"o":{"df":1,"docs":{"5":{"tf":1.0}}},"r":{"c":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.0}}}},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":2.0}}}}}}},"df":1,"docs":{"8":{"tf":1.0}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"g":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":4,"docs":{"12":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"b":{"a":{"'":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"19":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}},"/":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":13,"docs":{"0":{"tf":1.0},"1":{"tf":1.4142135623730951},"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"2":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":2.0},"5":{"tf":2.6457513110645907},"6":{"tf":1.4142135623730951},"8":{"tf":2.23606797749979}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"19":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"7":{"tf":1.0}},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"o":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}},"e":{"df":3,"docs":{"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"o":{"d":{"df":3,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"17":{"tf":1.0},"3":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"i":{"d":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":2.0}}}},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"i":{"df":1,"docs":{"25":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"r":{"d":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"1":{".":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":5,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"2":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"df":1,"docs":{"6":{"tf":1.7320508075688772}}}},"p":{"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"0":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"22":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"i":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}},"m":{"df":1,"docs":{"25":{"tf":1.0}}},"v":{"df":1,"docs":{"5":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"a":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"15":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.7320508075688772}}}}}},"o":{"df":2,"docs":{"4":{"tf":1.0},"8":{"tf":1.0}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"3":{"tf":2.0},"5":{"tf":1.4142135623730951}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.4142135623730951},"23":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"22":{"tf":1.0}},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"o":{"df":3,"docs":{"11":{"tf":1.7320508075688772},"12":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"25":{"tf":3.1622776601683795},"7":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"'":{"df":11,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"12":{"tf":2.0},"15":{"tf":1.0},"16":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":2.0}},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.7320508075688772},"22":{"tf":1.7320508075688772},"5":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"d":{"a":{"df":2,"docs":{"16":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":6,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"17":{"tf":1.0},"4":{"tf":1.4142135623730951}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":2.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}},"g":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.4142135623730951}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"i":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"k":{"df":1,"docs":{"1":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"4":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"x":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"p":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":2.449489742783178}}}},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"df":2,"docs":{"22":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"9":{"tf":2.449489742783178}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"(":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"c":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":2.6457513110645907}}}},"k":{"df":0,"docs":{},"e":{"df":7,"docs":{"10":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772},"8":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"1":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"10":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}},"i":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"22":{"tf":1.0},"5":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"d":{"d":{"df":0,"docs":{},"l":{"df":2,"docs":{"7":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}},"m":{"df":1,"docs":{"25":{"tf":1.0}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"x":{"df":1,"docs":{"11":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"e":{"3":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"1":{"2":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":12,"docs":{"10":{"tf":1.0},"13":{"tf":3.4641016151377544},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":2.23606797749979},"18":{"tf":1.0},"20":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"22":{"tf":2.0},"23":{"tf":2.0},"25":{"tf":1.0},"5":{"tf":1.7320508075688772}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"10":{"tf":1.4142135623730951},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":8,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":3.1622776601683795},"7":{"tf":2.0},"8":{"tf":2.0}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":3.0}}}}},"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"24":{"tf":1.0},"3":{"tf":2.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}},"w":{"df":3,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"10":{"tf":1.0},"18":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"t":{"df":5,"docs":{"11":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"17":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":2.23606797749979}}}}}}}},"m":{"df":1,"docs":{"8":{"tf":1.0}}},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":8,"docs":{"10":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"17":{"tf":1.0}}},"h":{"df":2,"docs":{"18":{"tf":1.0},"8":{"tf":1.7320508075688772}}},"i":{"c":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"9":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}},"o":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"19":{"tf":1.0}}}},"b":{"df":0,"docs":{},"j":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.449489742783178}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"16":{"tf":1.0},"3":{"tf":1.0}}}}}}}},"d":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"5":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":3.0}}}}}}},"k":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"16":{"tf":1.0},"25":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"c":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"16":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.0}}},"df":5,"docs":{"0":{"tf":1.0},"12":{"tf":2.0},"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}},"r":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"r":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"t":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"8":{"tf":1.0}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"5":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":5,"docs":{"13":{"tf":2.23606797749979},"15":{"tf":2.23606797749979},"22":{"tf":2.23606797749979},"23":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}},"t":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"19":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"16":{"tf":1.0},"23":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}},"h":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"15":{"tf":1.0}},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":2.0},"22":{"tf":2.449489742783178},"24":{"tf":2.0},"25":{"tf":1.4142135623730951}}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":3,"docs":{"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":3,"docs":{"10":{"tf":1.0},"21":{"tf":1.0},"8":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"18":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":10,"docs":{"0":{"tf":1.4142135623730951},"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":3.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":3.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"df":3,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"u":{"b":{"df":2,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":3.7416573867739413}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"t":{"df":3,"docs":{"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"10":{"tf":1.0},"19":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"e":{"a":{"d":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":9,"docs":{"1":{"tf":1.0},"10":{"tf":2.0},"11":{"tf":2.449489742783178},"12":{"tf":1.0},"14":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}},"i":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"12":{"tf":1.0},"3":{"tf":1.0}}}}}},"d":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0}},"u":{"c":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":6,"docs":{"11":{"tf":3.3166247903554},"12":{"tf":2.449489742783178},"14":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"l":{"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":2.0}}}},"df":0,"docs":{},"v":{"df":1,"docs":{"15":{"tf":1.0}}}},"i":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"4":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":2.449489742783178}}}}}}},"g":{"b":{"1":{"5":{"df":3,"docs":{"13":{"tf":1.7320508075688772},"20":{"tf":1.4142135623730951},"21":{"tf":1.0}}},"6":{"(":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"3":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"l":{"df":1,"docs":{"5":{"tf":1.0}}},"o":{"df":0,"docs":{},"m":{"'":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"21":{"tf":1.4142135623730951},"25":{"tf":2.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"19":{"tf":1.0}}}},"n":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":2.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":6,"docs":{"0":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"3":{"tf":1.0}}}}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":5,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"21":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"15":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.7320508075688772}},"m":{"df":1,"docs":{"8":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":3,"docs":{"22":{"tf":1.0},"24":{"tf":1.0},"9":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}},"t":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"8":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"2":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"w":{"df":2,"docs":{"10":{"tf":1.0},"13":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}}}},"i":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}},"t":{"df":1,"docs":{"8":{"tf":1.0}}},"x":{"df":1,"docs":{"13":{"tf":1.0}}},"z":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"12":{"tf":1.0}}},"p":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"25":{"tf":1.0},"6":{"tf":1.0}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":4,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.0},"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"w":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"i":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"r":{"c":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"15":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.8284271247461903},"9":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"y":{"df":1,"docs":{"16":{"tf":1.0}}}},"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"20":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"u":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}}}}}}},"t":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":6,"docs":{"18":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"1":{"tf":1.0}},"n":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"5":{"tf":1.7320508075688772},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":8,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":3,"docs":{"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.0}}},"v":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"k":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"18":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"11":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"24":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"w":{"df":1,"docs":{"7":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.7320508075688772},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"n":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"p":{"df":2,"docs":{"21":{"tf":1.0},"5":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":6,"docs":{"10":{"tf":1.0},"19":{"tf":1.7320508075688772},"22":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"1":{"6":{")":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"1":{"2":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"4":{"0":{"3":{"df":4,"docs":{"18":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"20":{"tf":2.0},"22":{"tf":3.4641016151377544},"23":{"tf":1.0},"25":{"tf":4.242640687119285}}},"df":0,"docs":{}},"3":{"2":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"8":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"r":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}},"s":{"df":15,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.7320508075688772},"16":{"tf":1.4142135623730951},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"3":{"tf":2.449489742783178},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"r":{"df":2,"docs":{"13":{"tf":1.0},"8":{"tf":1.0}}}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":10,"docs":{"11":{"tf":2.0},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"19":{"tf":1.0},"20":{"tf":2.0},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"0":{"tf":1.0},"15":{"tf":1.0},"5":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"13":{"tf":2.0},"15":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":2.0},"22":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"10":{"tf":3.0},"11":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"m":{"df":6,"docs":{"16":{"tf":1.7320508075688772},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0}}}},"df":0,"docs":{}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.23606797749979},"25":{"tf":1.0},"3":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":11,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"r":{"df":3,"docs":{"22":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"25":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"19":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"25":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"11":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"17":{"tf":1.7320508075688772},"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"12":{"tf":1.0},"14":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":8,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"13":{"tf":1.0},"17":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.23606797749979},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"l":{"d":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":15,"docs":{"10":{"tf":3.3166247903554},"11":{"tf":2.6457513110645907},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":3.1622776601683795},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"19":{"tf":1.4142135623730951},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951}}}}}}},"x":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"23":{"tf":1.0}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":2.23606797749979},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":5,"docs":{"11":{"tf":1.0},"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"breadcrumbs":{"root":{"0":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},".":{"7":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"/":{"1":{"/":{"2":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"1":{"1":{"1":{"1":{"1":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"1":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"1":{"1":{"1":{"_":{"0":{"0":{"0":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":1.7320508075688772},"2":{"tf":1.4142135623730951},"22":{"tf":2.0},"25":{"tf":2.0},"7":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"15":{"tf":1.0}}}},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}}},"4":{"0":{"0":{"0":{"0":{"0":{"0":{"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"0":{"0":{"_":{"0":{"0":{"0":{"0":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"0":{"0":{"0":{"0":{"0":{"0":{"df":5,"docs":{"24":{"tf":1.7320508075688772},"25":{"tf":2.23606797749979},"7":{"tf":1.7320508075688772},"8":{"tf":1.7320508075688772},"9":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"0":{"0":{"0":{"0":{"df":2,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"0":{"0":{"0":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"_":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{",":{"0":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"17":{"tf":1.0}}},"2":{"0":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"9":{"6":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"df":0,"docs":{},"h":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"17":{"tf":1.0}}},"3":{"6":{",":{"8":{"0":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"4":{"4":{"5":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"5":{"df":1,"docs":{"17":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"21":{"tf":1.0}},"h":{"df":1,"docs":{"13":{"tf":1.0}}},"w":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"df":1,"docs":{"19":{"tf":1.4142135623730951}}},"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":21,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"14":{"tf":1.0},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"17":{"tf":1.7320508075688772},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}},"2":{"/":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"0":{"1":{"df":0,"docs":{},"f":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"c":{"0":{"0":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"21":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}},"w":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":1,"docs":{"13":{"tf":1.0}}},"5":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"3":{"/":{"4":{"/":{"5":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"13":{"tf":1.0},"19":{"tf":1.0}}},"df":8,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.7320508075688772},"22":{"tf":1.0},"25":{"tf":1.7320508075688772}}},"4":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":2.0}}},"5":{",":{"6":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":9,"docs":{"13":{"tf":1.7320508075688772},"15":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":2.0},"25":{"tf":1.4142135623730951}}},"6":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"22":{"tf":1.0}}},"7":{"2":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}}},"8":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":2,"docs":{"17":{"tf":1.0},"19":{"tf":1.0}}},"9":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}},"k":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"17":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":1,"docs":{"3":{"tf":1.4142135623730951}},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"10":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0}}}}},"b":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}}}}}},"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}},"h":{"df":2,"docs":{"24":{"tf":1.0},"8":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"a":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"4":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"15":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"13":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}}}}},"m":{"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"y":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}},"m":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"17":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"7":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":2,"docs":{"1":{"tf":1.0},"21":{"tf":1.0}}},"i":{"c":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"12":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"21":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"4":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"4":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}},"t":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"18":{"tf":1.0},"25":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}},"g":{"2":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"13":{"tf":1.0}}},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"df":1,"docs":{"5":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}}}}}},"o":{"df":1,"docs":{"14":{"tf":1.0}}},"t":{"df":13,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.8284271247461903},"12":{"tf":1.4142135623730951},"13":{"tf":2.449489742783178},"14":{"tf":1.7320508075688772},"15":{"tf":1.7320508075688772},"16":{"tf":1.7320508075688772},"17":{"tf":2.0},"19":{"tf":1.7320508075688772},"20":{"tf":1.0},"22":{"tf":2.23606797749979},"9":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.7320508075688772},"19":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"1":{"tf":1.0}}},"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"11":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"df":5,"docs":{"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":2.6457513110645907},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"19":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":2.0},"22":{"tf":3.0}}}}}},"c":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"5":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},":":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"\\":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"\\":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"14":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"19":{"tf":1.4142135623730951},"22":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}},"g":{"df":0,"docs":{},"o":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":4,"docs":{"3":{"tf":2.0},"4":{"tf":1.0},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"10":{"tf":1.0}}}}},"df":3,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":1,"docs":{"4":{"tf":1.0}}}},"g":{"b":{"df":1,"docs":{"14":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.7320508075688772},"5":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"2":{"tf":1.7320508075688772},"7":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":20,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"df":3,"docs":{"11":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}},"r":{"df":1,"docs":{"22":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":5,"docs":{"13":{"tf":2.6457513110645907},"20":{"tf":2.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.7320508075688772}}}}},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0}}},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"13":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"13":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"18":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":4,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":4.358898943540674},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":2.0},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"4":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":5,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"19":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"25":{"tf":1.0},"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"0":{".":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"o":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":2,"docs":{"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"16":{"tf":1.0},"19":{"tf":1.0},"3":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"df":3,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"13":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":5,"docs":{"1":{"tf":1.0},"2":{"tf":1.7320508075688772},"3":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"i":{"c":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":2,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}}}}}}}}},"i":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.6457513110645907}}}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"3":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":2,"docs":{"12":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":10,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":2.0},"13":{"tf":1.0},"14":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"19":{"tf":1.0},"25":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"o":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":1,"docs":{"10":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"22":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}},"t":{"df":3,"docs":{"6":{"tf":1.0},"7":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"22":{"tf":1.0},"5":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"w":{"df":5,"docs":{"13":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"a":{"b":{"df":0,"docs":{},"i":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}}}},"c":{"df":0,"docs":{},"h":{"df":8,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.0},"4":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"15":{"tf":1.0},"21":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"17":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"f":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"8":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":2.0}}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":4,"docs":{"16":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"22":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"2":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":7,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.7320508075688772}},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"13":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"x":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"11":{"tf":1.0},"5":{"tf":2.0}},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}},"r":{"a":{"df":3,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":1,"docs":{"22":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"6":{"tf":1.0}}}},"w":{"df":2,"docs":{"11":{"tf":1.0},"3":{"tf":1.0}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"3":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"5":{"tf":1.0}}},"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.6457513110645907},"6":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"d":{"df":2,"docs":{"22":{"tf":1.0},"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":2,"docs":{"12":{"tf":1.0},"22":{"tf":1.0}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.7320508075688772},"12":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"t":{"df":2,"docs":{"13":{"tf":1.0},"23":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":3,"docs":{"14":{"tf":1.0},"15":{"tf":1.4142135623730951},"22":{"tf":1.0}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"1":{"4":{"4":{"5":{"/":{"2":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":3,"docs":{"25":{"tf":3.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"19":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0}}}}}},"o":{"df":1,"docs":{"5":{"tf":1.0}}},"r":{"c":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"7":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"25":{"tf":1.0}}}},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":2.0}}}}}}},"df":1,"docs":{"8":{"tf":1.0}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"g":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":4,"docs":{"12":{"tf":1.0},"2":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"b":{"a":{"'":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"19":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}},"/":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"s":{"/":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":26,"docs":{"0":{"tf":1.0},"1":{"tf":1.4142135623730951},"10":{"tf":1.4142135623730951},"11":{"tf":1.4142135623730951},"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":2.0},"5":{"tf":2.6457513110645907},"6":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":2.449489742783178},"9":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"19":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.0},"7":{"tf":1.0}},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"o":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"20":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}},"e":{"df":3,"docs":{"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"o":{"d":{"df":3,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"17":{"tf":1.0},"3":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0},"7":{"tf":1.0}}}}},"i":{"d":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"13":{"tf":1.0},"22":{"tf":2.0}}}},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"10":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"i":{"df":1,"docs":{"25":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"r":{"d":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"1":{".":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":5,"docs":{"18":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"2":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.7320508075688772}}},"df":20,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"6":{"tf":2.0},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.0}}}},"p":{"df":3,"docs":{"0":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"0":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"2":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"22":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"12":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"i":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}},"m":{"df":1,"docs":{"25":{"tf":1.0}}},"v":{"df":1,"docs":{"5":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"a":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"15":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":5,"docs":{"11":{"tf":1.4142135623730951},"13":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.7320508075688772}}}}}},"o":{"df":2,"docs":{"4":{"tf":1.0},"8":{"tf":1.0}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"3":{"tf":2.0},"5":{"tf":1.4142135623730951}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.4142135623730951},"23":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"22":{"tf":1.0}},"t":{"df":1,"docs":{"0":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.4142135623730951}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"o":{"df":3,"docs":{"11":{"tf":2.0},"12":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"z":{"df":3,"docs":{"25":{"tf":3.1622776601683795},"7":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"'":{"df":11,"docs":{"0":{"tf":1.0},"1":{"tf":1.0},"10":{"tf":1.4142135623730951},"12":{"tf":2.0},"15":{"tf":1.0},"16":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":2.0}},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"10":{"tf":1.7320508075688772},"22":{"tf":1.7320508075688772},"5":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"d":{"a":{"df":2,"docs":{"16":{"tf":1.0},"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":6,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"19":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"8":{"tf":1.0}},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"17":{"tf":1.0},"4":{"tf":1.4142135623730951}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":2.23606797749979}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}},"v":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}},"g":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"df":3,"docs":{"13":{"tf":1.4142135623730951},"15":{"tf":1.0},"16":{"tf":1.4142135623730951}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"i":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}},"k":{"df":1,"docs":{"1":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"4":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"x":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"t":{"df":4,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"p":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.4142135623730951},"8":{"tf":2.449489742783178}}}},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.0}}}},"w":{"df":2,"docs":{"22":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"9":{"tf":2.6457513110645907}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"(":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"c":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":2.6457513110645907}}}},"k":{"df":0,"docs":{},"e":{"df":7,"docs":{"10":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772},"8":{"tf":1.0},"9":{"tf":1.0}}}},"n":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":2,"docs":{"12":{"tf":1.0},"13":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"1":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"10":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"21":{"tf":1.0},"22":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":3,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}},"i":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"19":{"tf":1.7320508075688772},"22":{"tf":1.0},"5":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"d":{"d":{"df":0,"docs":{},"l":{"df":2,"docs":{"7":{"tf":1.0},"9":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.0}},"m":{"df":1,"docs":{"25":{"tf":1.0}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"x":{"df":1,"docs":{"11":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"e":{"3":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"1":{"2":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":12,"docs":{"10":{"tf":1.0},"13":{"tf":3.605551275463989},"14":{"tf":1.7320508075688772},"15":{"tf":1.0},"17":{"tf":2.23606797749979},"18":{"tf":1.0},"20":{"tf":1.7320508075688772},"21":{"tf":1.7320508075688772},"22":{"tf":2.23606797749979},"23":{"tf":2.23606797749979},"25":{"tf":1.0},"5":{"tf":1.7320508075688772}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"13":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"0":{"tf":1.0},"10":{"tf":1.4142135623730951},"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":8,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"18":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":7,"docs":{"10":{"tf":1.0},"18":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":3.1622776601683795},"7":{"tf":2.0},"8":{"tf":2.0}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"12":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":3.0}}}}},"d":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"12":{"tf":1.7320508075688772},"24":{"tf":1.0},"3":{"tf":2.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}},"w":{"df":3,"docs":{"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"10":{"tf":1.0},"18":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"t":{"df":5,"docs":{"11":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"17":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":2.23606797749979}}}}}}}},"m":{"df":1,"docs":{"8":{"tf":1.0}}},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":4,"docs":{"3":{"tf":1.0},"4":{"tf":1.4142135623730951},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":8,"docs":{"10":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"17":{"tf":1.0}}},"h":{"df":2,"docs":{"18":{"tf":1.0},"8":{"tf":1.7320508075688772}}},"i":{"c":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":6,"docs":{"12":{"tf":1.0},"13":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.0}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"11":{"tf":1.4142135623730951},"9":{"tf":2.0}}}}},"df":0,"docs":{}}}},"o":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"16":{"tf":1.7320508075688772},"19":{"tf":1.0}}}},"b":{"df":0,"docs":{},"j":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":2.449489742783178}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"16":{"tf":1.0},"3":{"tf":1.0}}}}}}}},"d":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"5":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":3.0}}}}}}},"k":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"16":{"tf":1.0},"25":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"c":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"16":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.0}}},"df":5,"docs":{"0":{"tf":1.0},"12":{"tf":2.0},"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}},"r":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"r":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"1":{"tf":1.0},"10":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"t":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.7320508075688772},"8":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"8":{"tf":1.0}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"5":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":5,"docs":{"13":{"tf":2.23606797749979},"15":{"tf":2.449489742783178},"22":{"tf":2.23606797749979},"23":{"tf":1.7320508075688772},"5":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}},"t":{"df":4,"docs":{"13":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"i":{"c":{"(":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":1,"docs":{"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"12":{"tf":1.0},"19":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"16":{"tf":1.0},"21":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"3":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"16":{"tf":1.0},"23":{"tf":1.0},"3":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951}},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}},"h":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"i":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"15":{"tf":1.0}},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":1,"docs":{"23":{"tf":1.0}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.7320508075688772},"21":{"tf":2.0},"22":{"tf":2.449489742783178},"24":{"tf":2.0},"25":{"tf":1.4142135623730951}}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":3,"docs":{"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"16":{"tf":1.0},"8":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":1,"docs":{"25":{"tf":1.0}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":3,"docs":{"10":{"tf":1.0},"21":{"tf":1.0},"8":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"18":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}},"o":{"b":{"a":{"b":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"24":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":10,"docs":{"0":{"tf":1.4142135623730951},"10":{"tf":1.0},"18":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":3.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":3.0},"9":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"0":{"tf":1.0}}}}}}},"h":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"df":3,"docs":{"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"7":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"19":{"tf":1.0},"6":{"tf":1.0}}}}}}}}},"u":{"b":{"df":2,"docs":{"20":{"tf":1.7320508075688772},"25":{"tf":3.7416573867739413}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"t":{"df":3,"docs":{"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"9":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"10":{"tf":1.0},"19":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"e":{"a":{"d":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":9,"docs":{"1":{"tf":1.0},"10":{"tf":2.0},"11":{"tf":2.449489742783178},"12":{"tf":1.0},"14":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}},"i":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"12":{"tf":1.0},"3":{"tf":1.0}}}}}},"d":{"df":4,"docs":{"20":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0}},"u":{"c":{"df":2,"docs":{"13":{"tf":1.0},"16":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":6,"docs":{"11":{"tf":3.4641016151377544},"12":{"tf":2.6457513110645907},"14":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"l":{"df":1,"docs":{"10":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":2.0}}}},"df":0,"docs":{},"v":{"df":1,"docs":{"15":{"tf":1.0}}}},"i":{"df":1,"docs":{"8":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"15":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"4":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"13":{"tf":1.7320508075688772},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":2,"docs":{"22":{"tf":1.0},"8":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":2.449489742783178}}}}}}},"g":{"b":{"1":{"5":{"df":3,"docs":{"13":{"tf":1.7320508075688772},"20":{"tf":1.7320508075688772},"21":{"tf":1.0}}},"6":{"(":{"0":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"3":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":5,"docs":{"10":{"tf":1.0},"12":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"l":{"df":1,"docs":{"5":{"tf":1.0}}},"o":{"df":0,"docs":{},"m":{"'":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":1,"docs":{"5":{"tf":1.7320508075688772}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":2,"docs":{"21":{"tf":1.4142135623730951},"25":{"tf":2.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"19":{"tf":1.0}}}},"n":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"5":{"tf":2.0},"7":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"4":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":1,"docs":{"25":{"tf":1.0}}},"df":6,"docs":{"0":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"3":{"tf":1.0}}}}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":5,"docs":{"19":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}}},"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"21":{"tf":1.0},"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"10":{"tf":1.0},"13":{"tf":1.4142135623730951},"16":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"6":{"tf":1.4142135623730951},"7":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"15":{"tf":1.0},"9":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"9":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"22":{"tf":1.0},"5":{"tf":1.7320508075688772},"7":{"tf":1.0},"8":{"tf":1.7320508075688772}},"m":{"df":1,"docs":{"8":{"tf":1.0}}}},"g":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"19":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":3,"docs":{"22":{"tf":1.0},"24":{"tf":1.0},"9":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}},"t":{"df":10,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.0},"16":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"8":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"2":{"tf":1.7320508075688772},"3":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0}}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"w":{"df":2,"docs":{"10":{"tf":1.0},"13":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"12":{"tf":1.0}}}},"i":{"df":2,"docs":{"11":{"tf":1.0},"13":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}},"t":{"df":1,"docs":{"8":{"tf":1.0}}},"x":{"df":1,"docs":{"13":{"tf":1.0}}},"z":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"12":{"tf":1.0}}},"p":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"25":{"tf":1.0},"6":{"tf":1.0}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"8":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":4,"docs":{"10":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.0},"7":{"tf":1.0}}},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"w":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"5":{"tf":1.0},"6":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"18":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}},"i":{"df":3,"docs":{"10":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"r":{"c":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":8,"docs":{"12":{"tf":1.4142135623730951},"15":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.7320508075688772},"4":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":2.8284271247461903},"9":{"tf":1.0}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"y":{"df":1,"docs":{"16":{"tf":1.0}}}},"d":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"20":{"tf":1.0}}}}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"5":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":5,"docs":{"10":{"tf":1.0},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"u":{"b":{"df":1,"docs":{"5":{"tf":1.0}}},"c":{"df":0,"docs":{},"h":{"df":4,"docs":{"11":{"tf":1.4142135623730951},"3":{"tf":1.0},"5":{"tf":2.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"25":{"tf":1.0},"3":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":4,"docs":{"11":{"tf":1.0},"16":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"5":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}}}}},"t":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"l":{"df":0,"docs":{},"k":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"b":{"a":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"5":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":6,"docs":{"18":{"tf":1.0},"22":{"tf":1.4142135623730951},"3":{"tf":1.0},"4":{"tf":1.7320508075688772},"5":{"tf":2.449489742783178},"8":{"tf":1.0}}}}}}},"df":1,"docs":{"10":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"1":{"tf":1.0}},"n":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"10":{"tf":1.0},"4":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"5":{"tf":1.7320508075688772},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":5,"docs":{"10":{"tf":1.0},"13":{"tf":1.0},"18":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"0":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"'":{"df":8,"docs":{"0":{"tf":1.0},"13":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"y":{"'":{"df":0,"docs":{},"r":{"df":3,"docs":{"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.0}}},"v":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"10":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"k":{"df":4,"docs":{"10":{"tf":1.4142135623730951},"18":{"tf":1.0},"25":{"tf":1.0},"8":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"11":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.7320508075688772}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":6,"docs":{"11":{"tf":1.0},"13":{"tf":1.0},"24":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0},"9":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"w":{"df":1,"docs":{"7":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"13":{"tf":1.0},"19":{"tf":1.0},"22":{"tf":1.7320508075688772},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"25":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"n":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"3":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":3,"docs":{"3":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0}}}},"p":{"df":2,"docs":{"21":{"tf":1.0},"5":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"19":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"19":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"11":{"tf":1.0},"8":{"tf":1.0}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":6,"docs":{"10":{"tf":1.0},"19":{"tf":1.7320508075688772},"22":{"tf":1.0},"5":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"13":{"tf":1.0}}}},"df":0,"docs":{}},"o":{"df":3,"docs":{"13":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"u":{"1":{"6":{")":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"1":{"2":{"0":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{"6":{"df":4,"docs":{"24":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{")":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"0":{"df":0,"docs":{},"x":{"0":{"4":{"0":{"3":{"df":4,"docs":{"18":{"tf":1.0},"25":{"tf":1.0},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":7,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"13":{"tf":1.4142135623730951},"20":{"tf":2.0},"22":{"tf":3.4641016151377544},"23":{"tf":1.0},"25":{"tf":4.242640687119285}}},"df":0,"docs":{}},"3":{"2":{"df":2,"docs":{"11":{"tf":1.0},"22":{"tf":1.0}}},"df":0,"docs":{}},"8":{"df":5,"docs":{"13":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"r":{"df":2,"docs":{"12":{"tf":1.0},"5":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":2,"docs":{"2":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"8":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.0}}}}},"s":{"a":{"df":0,"docs":{},"f":{"df":3,"docs":{"25":{"tf":2.0},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"7":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"10":{"tf":1.4142135623730951},"25":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}},"s":{"df":15,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.7320508075688772},"16":{"tf":1.4142135623730951},"19":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"3":{"tf":2.449489742783178},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"r":{"df":2,"docs":{"13":{"tf":1.0},"8":{"tf":1.0}}}},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"25":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"3":{"tf":1.0}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":10,"docs":{"11":{"tf":2.0},"12":{"tf":1.0},"13":{"tf":1.7320508075688772},"19":{"tf":1.0},"20":{"tf":2.0},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"16":{"tf":1.0},"19":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":3,"docs":{"0":{"tf":1.0},"15":{"tf":1.0},"5":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":7,"docs":{"10":{"tf":1.4142135623730951},"13":{"tf":2.23606797749979},"15":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":2.23606797749979},"22":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"10":{"tf":3.1622776601683795},"11":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"m":{"df":6,"docs":{"16":{"tf":2.0},"19":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":2.0}}}},"df":0,"docs":{}}},"w":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":8,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.23606797749979},"25":{"tf":1.0},"3":{"tf":1.7320508075688772},"4":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":2,"docs":{"3":{"tf":1.0},"5":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":11,"docs":{"10":{"tf":1.4142135623730951},"12":{"tf":1.4142135623730951},"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"25":{"tf":1.4142135623730951},"3":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}}},"r":{"df":3,"docs":{"22":{"tf":1.4142135623730951},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"25":{"tf":1.4142135623730951},"5":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":4,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"19":{"tf":1.0},"5":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}},"h":{"a":{"df":0,"docs":{},"t":{"'":{"df":3,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"25":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"11":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"3":{"tf":1.0}}}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":3,"docs":{"17":{"tf":1.7320508075688772},"3":{"tf":1.4142135623730951},"5":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"13":{"tf":1.0},"20":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"13":{"tf":1.0},"5":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":4,"docs":{"12":{"tf":1.0},"14":{"tf":1.0},"5":{"tf":1.0},"8":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":8,"docs":{"0":{"tf":1.0},"1":{"tf":1.4142135623730951},"13":{"tf":1.0},"17":{"tf":1.0},"3":{"tf":1.0},"5":{"tf":2.23606797749979},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}}},"l":{"d":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":15,"docs":{"10":{"tf":3.3166247903554},"11":{"tf":2.6457513110645907},"13":{"tf":1.0},"14":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":3.1622776601683795},"24":{"tf":1.0},"25":{"tf":1.0},"5":{"tf":1.0},"6":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.0},"9":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"19":{"tf":1.4142135623730951},"24":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"10":{"tf":1.0},"7":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"10":{"tf":1.0},"11":{"tf":1.4142135623730951}}}}}}},"x":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"5":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"13":{"tf":1.4142135623730951},"23":{"tf":1.0}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"d":{"df":2,"docs":{"5":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":6,"docs":{"13":{"tf":1.0},"2":{"tf":1.0},"3":{"tf":2.23606797749979},"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"8":{"tf":1.0}}}},"r":{"df":5,"docs":{"11":{"tf":1.0},"3":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"7":{"tf":1.0},"8":{"tf":1.4142135623730951}}},"v":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"title":{"root":{"0":{"df":1,"docs":{"2":{"tf":1.0}}},"1":{"df":1,"docs":{"6":{"tf":1.0}}},"3":{"df":1,"docs":{"21":{"tf":1.0}}},"4":{"df":1,"docs":{"22":{"tf":1.0}}},"5":{"df":1,"docs":{"23":{"tf":1.0}}},"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"b":{"df":1,"docs":{"14":{"tf":1.0}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":1,"docs":{"6":{"tf":1.0}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"18":{"tf":1.0},"24":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"12":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"2":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"12":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"g":{"b":{"a":{"df":1,"docs":{"6":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"1":{"df":2,"docs":{"7":{"tf":1.0},"8":{"tf":1.0}}},"2":{"df":1,"docs":{"25":{"tf":1.0}}},"df":1,"docs":{"6":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"0":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"19":{"tf":1.0}}}}}},"o":{"df":1,"docs":{"11":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"9":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"19":{"tf":1.0}}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":5,"docs":{"13":{"tf":1.0},"14":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"3":{"tf":1.0},"4":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"11":{"tf":1.0},"12":{"tf":1.0}}}}}}},"g":{"b":{"1":{"5":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"2":{"tf":1.0},"3":{"tf":1.0},"4":{"tf":1.0}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"b":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"3":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"9":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":2,"docs":{"13":{"tf":1.0},"19":{"tf":1.0}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"16":{"tf":1.0}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}}},"pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5"},"results_options":{"limit_results":30,"teaser_word_count":30},"search_options":{"bool":"OR","expand":true,"fields":{"body":{"boost":1},"breadcrumbs":{"boost":1},"title":{"boost":2}}}} \ No newline at end of file diff --git a/examples/hello1.rs b/examples/hello1.rs new file mode 100644 index 0000000..e00d918 --- /dev/null +++ b/examples/hello1.rs @@ -0,0 +1,19 @@ +#![feature(start)] +#![no_std] + +#[cfg(not(test))] +#[panic_handler] +fn panic(_info: &core::panic::PanicInfo) -> ! { + loop {} +} + +#[start] +fn main(_argc: isize, _argv: *const *const u8) -> isize { + unsafe { + (0x04000000 as *mut u16).write_volatile(0x0403); + (0x06000000 as *mut u16).offset(120 + 80 * 240).write_volatile(0x001F); + (0x06000000 as *mut u16).offset(136 + 80 * 240).write_volatile(0x03E0); + (0x06000000 as *mut u16).offset(120 + 96 * 240).write_volatile(0x7C00); + loop {} + } +} diff --git a/examples/hello2.rs b/examples/hello2.rs new file mode 100644 index 0000000..2f74a29 --- /dev/null +++ b/examples/hello2.rs @@ -0,0 +1,34 @@ +#![feature(start)] +#![no_std] + +#[cfg(not(test))] +#[panic_handler] +fn panic(_info: &core::panic::PanicInfo) -> ! { + loop {} +} + +#[start] +fn main(_argc: isize, _argv: *const *const u8) -> isize { + unsafe { + DISPCNT.write_volatile(MODE3 | BG2); + mode3_pixel(120, 80, rgb16(31, 0, 0)); + mode3_pixel(136, 80, rgb16(0, 31, 0)); + mode3_pixel(120, 96, rgb16(0, 0, 31)); + loop {} + } +} + +pub const DISPCNT: *mut u16 = 0x04000000 as *mut u16; +pub const MODE3: u16 = 3; +pub const BG2: u16 = 0b100_0000_0000; + +pub const VRAM: usize = 0x06000000; +pub const SCREEN_WIDTH: isize = 240; + +pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { + blue << 10 | green << 5 | red +} + +pub unsafe fn mode3_pixel(col: isize, row: isize, color: u16) { + (VRAM as *mut u16).offset(col + row * SCREEN_WIDTH).write_volatile(color); +} diff --git a/linker.ld b/linker.ld new file mode 100644 index 0000000..60ca1f5 --- /dev/null +++ b/linker.ld @@ -0,0 +1,63 @@ +ENTRY(__start) + +MEMORY { + ewram (w!x) : ORIGIN = 0x2000000, LENGTH = 256K + iwram (w!x) : ORIGIN = 0x3000000, LENGTH = 32K + rom (rx) : ORIGIN = 0x8000000, LENGTH = 32M +} + +SECTIONS { + .text : { + KEEP(crt0.o(.text)); + *(.text .text.*); + . = ALIGN(4); + } >rom = 0xff + + .rodata : { + *(.rodata .rodata.*); + . = ALIGN(4); + } >rom = 0xff + + __data_lma = .; + .data : { + __data_start = ABSOLUTE(.); + *(.data .data.*); + . = ALIGN(4); + __data_end = ABSOLUTE(.); + } >iwram AT>rom = 0xff + + /* debugging sections */ + /* Stabs */ + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + /* DWARF 1 */ + .debug 0 : { *(.debug) } + .line 0 : { *(.line) } + /* GNU DWARF 1 extensions */ + .debug_srcinfo 0 : { *(.debug_srcinfo) } + .debug_sfnames 0 : { *(.debug_sfnames) } + /* DWARF 1.1 and DWARF 2 */ + .debug_aranges 0 : { *(.debug_aranges) } + .debug_pubnames 0 : { *(.debug_pubnames) } + /* DWARF 2 */ + .debug_info 0 : { *(.debug_info) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_line 0 : { *(.debug_line) } + .debug_frame 0 : { *(.debug_frame) } + .debug_str 0 : { *(.debug_str) } + .debug_loc 0 : { *(.debug_loc) } + .debug_macinfo 0 : { *(.debug_macinfo) } + /* SGI/MIPS DWARF 2 extensions */ + .debug_weaknames 0 : { *(.debug_weaknames) } + .debug_funcnames 0 : { *(.debug_funcnames) } + .debug_typenames 0 : { *(.debug_typenames) } + .debug_varnames 0 : { *(.debug_varnames) } + + /* discard anything not already mentioned */ + /DISCARD/ : { *(*) } +} diff --git a/src/core_extras.rs b/src/core_extras.rs index 4673d64..ef9aed2 100644 --- a/src/core_extras.rs +++ b/src/core_extras.rs @@ -1,13 +1,13 @@ //! Things that I wish were in core, but aren't. -#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq, PartialOrd, Ord)] -#[repr(transparent)] /// A simple wrapper to any `*mut T` so that the basic "read" and "write" /// operations are volatile. /// /// Accessing the GBA's IO registers and video ram and specific other places on /// **must** be done with volatile operations. Having this wrapper makes that /// more clear for all the global const values into IO registers. +#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq, PartialOrd, Ord)] +#[repr(transparent)] pub struct VolatilePtr(pub *mut T); impl core::fmt::Pointer for VolatilePtr { @@ -37,4 +37,14 @@ impl VolatilePtr { pub unsafe fn write(&self, data: T) { core::ptr::write_volatile(self.0, data); } + + /// Offsets this address by the amount given. + /// + /// # Safety + /// + /// This is a standard offset, so all safety concerns of a normal raw pointer + /// offset apply. + pub unsafe fn offset(self, count: isize) -> Self { + VolatilePtr(self.0.offset(count)) + } } diff --git a/src/io_registers.rs b/src/io_registers.rs index c4e94ff..c14c867 100644 --- a/src/io_registers.rs +++ b/src/io_registers.rs @@ -15,6 +15,8 @@ // TODO(lokathor): IO Register newtypes. +use gba_proc_macro::register_bit; + use super::*; /// LCD Control. Read/Write. @@ -22,8 +24,85 @@ use super::*; /// * [gbatek entry](http://problemkaputt.de/gbatek.htm#lcdiodisplaycontrol) pub const DISPCNT: VolatilePtr = VolatilePtr(0x4000000 as *mut u16); -/// Undocumented - Green Swap -pub const GREEN_SWAP: VolatilePtr = VolatilePtr(0x4000002 as *mut u16); +/// A newtype over the various display control options that you have on a GBA. +#[derive(Debug, Clone, Copy, Default, PartialEq, Eq)] +#[repr(transparent)] +pub struct DisplayControlSetting(u16); + +#[allow(missing_docs)] +impl DisplayControlSetting { + pub const BG_MODE_MASK: u16 = 0b111; + + pub fn mode(&self) -> DisplayControlMode { + match self.0 & Self::BG_MODE_MASK { + 0 => DisplayControlMode::Tiled0, + 1 => DisplayControlMode::Tiled1, + 2 => DisplayControlMode::Tiled2, + 3 => DisplayControlMode::Bitmap3, + 4 => DisplayControlMode::Bitmap4, + 5 => DisplayControlMode::Bitmap5, + _ => unreachable!(), + } + } + pub fn set_mode(&mut self, new_mode: DisplayControlMode) { + self.0 &= !Self::BG_MODE_MASK; + self.0 |= match new_mode { + DisplayControlMode::Tiled0 => 0, + DisplayControlMode::Tiled1 => 1, + DisplayControlMode::Tiled2 => 2, + DisplayControlMode::Bitmap3 => 3, + DisplayControlMode::Bitmap4 => 4, + DisplayControlMode::Bitmap5 => 5, + }; + } + + register_bit!(CGB_MODE_BIT, u16, 0b1000, cgb_mode, read); + register_bit!(PAGE_SELECT_BIT, u16, 0b1_0000, page1_enabled, read_write); + register_bit!(HBLANK_INTERVAL_FREE_BIT, u16, 0b10_0000, hblank_interval_free, read_write); + register_bit!(OBJECT_MEMORY_1D, u16, 0b100_0000, object_memory_1d, read_write); + register_bit!(FORCE_BLANK_BIT, u16, 0b1000_0000, force_blank, read_write); + register_bit!(DISPLAY_BG0_BIT, u16, 0b1_0000_0000, display_bg0, read_write); + register_bit!(DISPLAY_BG1_BIT, u16, 0b10_0000_0000, display_bg1, read_write); + register_bit!(DISPLAY_BG2_BIT, u16, 0b100_0000_0000, display_bg2, read_write); + register_bit!(DISPLAY_BG3_BIT, u16, 0b1000_0000_0000, display_bg3, read_write); + register_bit!(DISPLAY_OBJECT_BIT, u16, 0b1_0000_0000_0000, display_object, read_write); + register_bit!(DISPLAY_WINDOW0_BIT, u16, 0b10_0000_0000_0000, display_window0, read_write); + register_bit!(DISPLAY_WINDOW1_BIT, u16, 0b100_0000_0000_0000, display_window1, read_write); + register_bit!(OBJECT_WINDOW_BIT, u16, 0b1000_0000_0000_0000, display_object_window, read_write); +} + +/// The six display modes available on the GBA. +pub enum DisplayControlMode { + /// This basically allows for the most different things at once (all layers, + /// 1024 tiles, two palette modes, etc), but you can't do affine + /// transformations. + Tiled0, + /// This is a mix of `Tile0` and `Tile2`: BG0 and BG1 run as if in `Tiled0`, + /// and BG2 runs as if in `Tiled2`. + Tiled1, + /// This allows affine transformations, but only uses BG2 and BG3. + Tiled2, + /// This is the basic bitmap draw mode. The whole screen is a single bitmap. + /// Uses BG2 only. + Bitmap3, + /// This uses _paletted color_ so that there's enough space to have two pages + /// at _full resolution_, allowing page flipping. Uses BG2 only. + Bitmap4, + /// This uses _reduced resolution_ so that there's enough space to have two + /// pages with _full color_, allowing page flipping. Uses BG2 only. + Bitmap5, +} + +/// Assigns the given display control setting. +pub fn set_display_control(setting: DisplayControlSetting) { + unsafe { + DISPCNT.write(setting.0); + } +} +/// Obtains the current display control setting. +pub fn display_control() -> DisplayControlSetting { + unsafe { DisplayControlSetting(DISPCNT.read()) } +} /// General LCD Status (STAT,LYC) pub const DISPSTAT: VolatilePtr = VolatilePtr(0x4000004 as *mut u16); @@ -333,9 +412,3 @@ pub const WAITCNT: VolatilePtr = VolatilePtr(0x4000204 as *mut u16); /// Interrupt Master Enable Register pub const IME: VolatilePtr = VolatilePtr(0x4000208 as *mut u16); - -/// Undocumented - Post Boot Flag -pub const POSTFLG: VolatilePtr = VolatilePtr(0x4000300 as *mut u8); - -/// Undocumented - Power Down Control -pub const HALTCNT: VolatilePtr = VolatilePtr(0x4000301 as *mut u8); diff --git a/src/lib.rs b/src/lib.rs index e913049..d04d888 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -14,10 +14,14 @@ //! **Do not** use this crate in programs that aren't running on the GBA. If you //! do, it's a giant bag of Undefined Behavior. -//pub mod macros; // un-comment once we get some - pub mod core_extras; pub(crate) use crate::core_extras::*; pub mod io_registers; -//pub(crate) use crate::io_registers::*; + +pub mod video_ram; + +/// Combines the Red, Blue, and Green provided into a single color value. +pub const fn rgb16(red: u16, green: u16, blue: u16) -> u16 { + blue << 10 | green << 5 | red +} diff --git a/src/macros.rs b/src/macros.rs index a81a6bc..3a38290 100644 --- a/src/macros.rs +++ b/src/macros.rs @@ -1,6 +1,8 @@ //! Module for all macros. //! -//! Macros are the only thing in rust where declaration order matters, so we -//! place all of them here regardless of what they do. +//! Macros are the only thing in Rust where declaration order matters, so we +//! place all of them here regardless of what they do so that the macros module +//! can appear at the "top" of the library and all other modules can see them +//! properly. // no macros yet! diff --git a/src/video_ram.rs b/src/video_ram.rs new file mode 100644 index 0000000..a41cada --- /dev/null +++ b/src/video_ram.rs @@ -0,0 +1,49 @@ +//! Module for all things relating to the Video RAM. +//! +//! Note that the GBA has six different display modes available, and the +//! _meaning_ of Video RAM depends on which display mode is active. In all +//! cases, Video RAM is **96kb** from `0x0600_0000` to `0x0601_7FFF`. +//! +//! # Safety +//! +//! Note that all possible bit patterns are technically allowed within Video +//! Memory. If you write the "wrong" thing into video memory you don't crash the +//! GBA, instead you just get graphical glitches (or perhaps nothing at all). +//! Accordingly, the "safe" functions here will check that you're in bounds, but +//! they won't bother to check that you've set the video mode they're designed +//! for. + +/// The physical width in pixels of the GBA screen. +pub const SCREEN_WIDTH: isize = 240; + +/// The physical height in pixels of the GBA screen. +pub const SCREEN_HEIGHT: isize = 160; + +/// The start of VRAM. +/// +/// Depending on what display mode is currently set there's different ways that +/// your program should interpret the VRAM space. Accordingly, we give the raw +/// value as just being a `usize`. +pub const VRAM_BASE_ADDRESS: usize = 0x0600_0000; + +/// Draws a pixel to the screen while in Display Mode 3, with bounds checks. +pub fn mode3_pixel(col: isize, row: isize, color: u16) { + assert!(col >= 0 && col < SCREEN_WIDTH); + assert!(row >= 0 && row < SCREEN_HEIGHT); + unsafe { mode3_pixel_unchecked(col, row, color) } +} + +/// Draws a pixel to the screen while in Display Mode 3. +/// +/// Coordinates are relative to the top left corner. +/// +/// If you're in another mode you'll get something weird drawn, but it's memory +/// safe in the rust sense as long as you stay in bounds. +/// +/// # Safety +/// +/// * `col` must be in `0..SCREEN_WIDTH` +/// * `row` must be in `0..SCREEN_HEIGHT` +pub unsafe fn mode3_pixel_unchecked(col: isize, row: isize, color: u16) { + core::ptr::write_volatile((VRAM_BASE_ADDRESS as *mut u16).offset(col + row * SCREEN_WIDTH), color); +} diff --git a/thumbv4-none-eabi.json b/thumbv4-none-agb.json similarity index 94% rename from thumbv4-none-eabi.json rename to thumbv4-none-agb.json index c6cdd94..8045924 100644 --- a/thumbv4-none-eabi.json +++ b/thumbv4-none-agb.json @@ -18,7 +18,7 @@ "linker": "arm-none-eabi-ld", "linker-flavor": "ld", "linker-is-gnu": true, - "llvm-target": "thumbv4-none-eabi", + "llvm-target": "thumbv4-none-agb", "os": "none", "panic-strategy": "abort", "pre-link-args": {