diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..f173110 --- /dev/null +++ b/.nojekyll @@ -0,0 +1 @@ +This file makes sure that Github Pages doesn't process mdBook's output. diff --git a/0-introduce/index.html b/0-introduce/index.html new file mode 100644 index 0000000..21aa43f --- /dev/null +++ b/0-introduce/index.html @@ -0,0 +1,322 @@ + + + + + + eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具

+

1. eBPF简介:安全和有效地扩展内核

+

eBPF 是一项革命性的技术,起源于 Linux 内核,可以在操作系统的内核中运行沙盒程序。它被用来安全和有效地扩展内核的功能,而不需要改变内核的源代码或加载内核模块。eBPF 通过允许在操作系统内运行沙盒程序,应用程序开发人员可以在运行时,可编程地向操作系统动态添加额外的功能。然后,操作系统保证安全和执行效率,就像在即时编译(JIT)编译器和验证引擎的帮助下进行本地编译一样。eBPF 程序在内核版本之间是可移植的,并且可以自动更新,从而避免了工作负载中断和节点重启。

+

今天,eBPF被广泛用于各类场景:在现代数据中心和云原生环境中,可以提供高性能的网络包处理和负载均衡;以非常低的资源开销,做到对多种细粒度指标的可观测性,帮助应用程序开发人员跟踪应用程序,为性能故障排除提供洞察力;保障应用程序和容器运行时的安全执行,等等。可能性是无穷的,而 eBPF 在操作系统内核中所释放的创新才刚刚开始[3]。

+

eBPF 的未来:内核的 JavaScript 可编程接口

+

对于浏览器而言,JavaScript 的引入带来的可编程性开启了一场巨大的革命,使浏览器发展成为几乎独立的操作系统。现在让我们回到 eBPF:为了理解 eBPF 对 Linux 内核的可编程性影响,对 Linux 内核的结构以及它如何与应用程序和硬件进行交互有一个高层次的理解是有帮助的[4]。

+

kernel-arch

+

Linux 内核的主要目的是抽象出硬件或虚拟硬件,并提供一个一致的API(系统调用),允许应用程序运行和共享资源。为了实现这个目的,我们维护了一系列子系统和层,以分配这些责任[5]。每个子系统通常允许某种程度的配置,以考虑到用户的不同需求。如果不能配置所需的行为,就需要改变内核,从历史上看,改变内核的行为,或者让用户编写的程序能够在内核中运行,就有两种选择:

+
+ +
本地支持内核模块写一个内核模块
改变内核源代码,并说服Linux内核社区相信这种改变是必要的。等待几年,让新的内核版本成为一种商品。定期修复它,因为每个内核版本都可能破坏它。由于缺乏安全边界,冒着破坏你的Linux内核的风险
+
+

实际上,两种方案都不常用,前者成本太高,后者则几乎没有可移植性。

+

有了 eBPF,就有了一个新的选择,可以重新编程 Linux 内核的行为,而不需要改变内核的源代码或加载内核模块,同时保证在不同内核版本之间一定程度上的行为一致性和兼容性、以及安全性[6]。为了实现这个目的,eBPF 程序也需要有一套对应的 API,允许用户定义的应用程序运行和共享资源 --- 换句话说,某种意义上讲 eBPF 虚拟机也提供了一套类似于系统调用的机制,借助 eBPF 和用户态通信的机制,Wasm 虚拟机和用户态应用也可以获得这套“系统调用”的完整使用权,一方面能可编程地扩展传统的系统调用的能力,另一方面能在网络、文件系统等许多层次实现更高效的可编程 IO 处理。

+

new-os

+

正如上图所示,当今的 Linux 内核正在向一个新的内核模型演化:用户定义的应用程序可以在内核态和用户态同时执行,用户态通过传统的系统调用访问系统资源,内核态则通过 BPF Helper Calls 和系统的各个部分完成交互。截止 2023 年初,内核中的 eBPF 虚拟机中已经有 220 多个Helper 系统接口,涵盖了非常多的应用场景。

+

值得注意的是,BPF Helper Call 和系统调用二者并不是竞争关系,它们的编程模型和有性能优势的场景完全不同,也不会完全替代对方。对 Wasm 和 Wasi 相关生态来说,情况也类似,专门设计的 wasi 接口需要经历一个漫长的标准化过程,但可能在特定场景能为用户态应用获取更佳的性能和可移植性保证,而 eBPF 在保证沙箱本质和可移植性的前提下,可以提供一个快速灵活的扩展系统接口的方案。

+

目前的 eBPF 仍然处于早期阶段,但是借助当前 eBPF 提供的内核接口和用户态交互的能力,经由 Wasm-bpf 的系统接口转换,Wasm 虚拟机中的应用已经几乎有能力获取内核以及用户态任意一个函数调用的数据和返回值(kprobe,uprobe...);以很低的代价收集和理解所有系统调用,并获取所有网络操作的数据包和套接字级别的数据(tracepoint,socket...);在网络包处理解决方案中添加额外的协议分析器,并轻松地编程任何转发逻辑(XDP,TC...),以满足不断变化的需求,而无需离开Linux内核的数据包处理环境。

+

不仅如此,eBPF 还有能力往用户空间任意进程的任意地址写入数据(bpf_probe_write_user[7]),有限度地修改内核函数的返回值(bpf_override_return[8]),甚至在内核态直接执行某些系统调用[9];所幸的是,eBPF 在加载进内核之前对字节码会进行严格的安全检查,确保没有内存越界等操作,同时,许多可能会扩大攻击面、带来安全风险的功能都是需要在编译内核时明确选择启用才能使用的;在 Wasm 虚拟机将字节码加载进内核之前,也可以明确选择启用或者禁用某些 eBPF 功能,以确保沙箱的安全性。

+

2. 关于如何学习 eBPF 相关的开发的一些建议

+

本文不会对 eBPF 的原理做更详细的介绍,不过这里有一个学习规划和参考资料,也许会有一些价值:

+

eBPF 入门(5-7h)

+
    +
  • Google 或者其他搜索引擎查找:eBPF
  • +
  • 询问 ChatGPT 之类的东西:eBPF 是什么?
  • +
+

推荐:

+ +

回答三个问题:

+
    +
  1. 了解 eBPF 是什么东西?为啥要有这个玩意,不能用内核模块?
  2. +
  3. 它有什么功能?能在 Linux 内核里面完成哪些事情?有哪些 eBPF 程序的类型和 helper(不需要知道全部,但是需要知道去哪里找)?
  4. +
  5. 能拿来做什么?比如说在哪些场景中进行运用?网络、安全、可观测性?
  6. +
+

了解如何开发 eBPF 程序(10-15h)

+

了解并尝试一下 eBPF 开发框架:

+ +

其他开发框架:Go 语言或者 Rust 语言,请自行搜索并且尝试(0-2h)

+

有任何问题或者想了解的东西,不管是不是和本项目相关,都可以在本项目的 discussions 里面开始讨论。

+

回答一些问题,并且进行一些尝试(2-5h):

+
    +
  1. 如何开发一个最简单的 eBPF 程序?
  2. +
  3. 如何用 eBPF 追踪一个内核功能或函数?有很多种方法,举出对应的代码;
  4. +
  5. 有哪些方案能通过用户态和内核态通信?如何从用户态向内核态传送信息?如何从内核态向用户态传递信息?举出代码示例;
  6. +
  7. 编写一个你自己的 eBPF 程序,实现一个功能;
  8. +
  9. eBPF 程序的整个生命周期里面,分别在用户态和内核态做了哪些事情?
  10. +
+

3. 如何使用eBPF编程

+

原始的eBPF程序编写是非常繁琐和困难的。为了改变这一现状,llvm于2015年推出了可以将由高级语言编写的代码编译为eBPF字节码的功能,同时,eBPF 社区将 bpf() 等原始的系统调用进行了初步地封装,给出了libbpf库。这些库会包含将字节码加载到内核中的函数以及一些其他的关键函数。在Linux的源码包的samples/bpf/目录下,有大量Linux提供的基于libbpf的eBPF样例代码。

+

一个典型的基于 libbpf 的eBPF程序具有*_kern.c*_user.c两个文件,*_kern.c中书写在内核中的挂载点以及处理函数,*_user.c中书写用户态代码,完成内核态代码注入以及与用户交互的各种任务。 更为详细的教程可以参考该视频然而由于该方法仍然较难理解且入门存在一定的难度,因此现阶段的eBPF程序开发大多基于一些工具,比如:

+
    +
  • BCC
  • +
  • BPFtrace
  • +
  • libbpf-bootstrap
  • +
  • Go eBPF library
  • +
+

以及还有比较新的工具,例如 eunomia-bpf.

+

编写 eBPF 程序

+

eBPF 程序由内核态部分和用户态部分构成。内核态部分包含程序的实际逻辑,用户态部分负责加载和管理内核态部分。使用 eunomia-bpf 开发工具,只需编写内核态部分的代码。

+

内核态部分的代码需要符合 eBPF 的语法和指令集。eBPF 程序主要由若干个函数组成,每个函数都有其特定的作用。可以使用的函数类型包括:

+
    +
  • kprobe:插探函数,在指定的内核函数前或后执行。
  • +
  • tracepoint:跟踪点函数,在指定的内核跟踪点处执行。
  • +
  • raw_tracepoint:原始跟踪点函数,在指定的内核原始跟踪点处执行。
  • +
  • xdp:网络数据处理函数,拦截和处理网络数据包。
  • +
  • perf_event:性能事件函数,用于处理内核性能事件。
  • +
  • kretprobe:函数返回插探函数,在指定的内核函数返回时执行。
  • +
  • tracepoint_return:跟踪点函数返回,在指定的内核跟踪点返回时执行。
  • +
  • raw_tracepoint_return:原始跟踪点函数返回,在指定的内核原始跟踪
  • +
+

BCC

+

BCC全称为BPF Compiler Collection,该项目是一个python库, +包含了完整的编写、编译、和加载BPF程序的工具链,以及用于调试和诊断性能问题的工具。

+

自2015年发布以来,BCC经过上百位贡献者地不断完善后,目前已经包含了大量随时可用的跟踪工具。其官方项目库 +提供了一个方便上手的教程,用户可以快速地根据教程完成BCC入门工作。

+

用户可以在BCC上使用Python、Lua等高级语言进行编程。 +相较于使用C语言直接编程,这些高级语言具有极大的便捷性,用户只需要使用C来设计内核中的 +BPF程序,其余包括编译、解析、加载等工作在内,均可由BCC完成。

+

然而使用BCC存在一个缺点便是在于其兼容性并不好。基于BCC的 +eBPF程序每次执行时候都需要进行编译,编译则需要用户配置相关的头文件和对应实现。在实际应用中, +相信大家也会有体会,编译依赖问题是一个很棘手的问题。也正是因此,在本项目的开发中我们放弃了BCC, +选择了可以做到一次编译-多次运行的libbpf-bootstrap工具。

+

eBPF Go library

+

eBPF Go库提供了一个通用的eBPF库,它解耦了获取 eBPF 字节码的过程和 eBPF 程序的加载和管理,并实现了类似 libbpf 一样的 CO- 功能。eBPF程序通常是通过编写高级语言创建的,然后使用clang/LLVM编译器编译为eBPF字节码。

+

libbpf

+

libbpf-bootstrap是一个基于libbpf库的BPF开发脚手架,从其 +github 上可以得到其源码。

+

libbpf-bootstrap综合了BPF社区过去多年的实践,为开发者提了一个现代化的、便捷的工作流,实 +现了一次编译,重复使用的目的。

+

基于libbpf-bootstrap的BPF程序对于源文件有一定的命名规则, +用于生成内核态字节码的bpf文件以.bpf.c结尾,用户态加载字节码的文件以.c结尾,且这两个文件的 +前缀必须相同。

+

基于libbpf-bootstrap的BPF程序在编译时会先将*.bpf.c文件编译为 +对应的.o文件,然后根据此文件生成skeleton文件,即*.skel.h,这个文件会包含内核态中定义的一些 +数据结构,以及用于装载内核态代码的关键函数。在用户态代码include此文件之后调用对应的装载函数即可将 +字节码装载到内核中。同样的,libbpf-bootstrap也有非常完备的入门教程,用户可以在该处 +得到详细的入门操作介绍。

+

eunomia-bpf

+

开发、构建和分发 eBPF 一直以来都是一个高门槛的工作,使用 BCC、bpftrace 等工具开发效率高、可移植性好,但是分发部署时需要安装 LLVM、Clang等编译环境,每次运行的时候执行本地或远程编译过程,资源消耗较大;使用原生的 CO-RE libbpf时又需要编写不少用户态加载代码来帮助 eBPF 程序正确加载和从内核中获取上报的信息,同时对于 eBPF 程序的分发、管理也没有很好地解决方案。

+

eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,是为了简化 eBPF 程序的开发、构建、分发、运行而设计的,基于 libbpf 的 CO-RE 轻量级开发框架。

+

使用 eunomia-bpf ,可以:

+
    +
  • 在编写 eBPF 程序或工具时只编写内核态代码,自动获取内核态导出信息,并作为模块动态加载;
  • +
  • 使用 WASM 进行用户态交互程序的开发,在 WASM 虚拟机内部控制整个 eBPF 程序的加载和执行,以及处理相关数据;
  • +
  • eunomia-bpf 可以将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块,跨架构和内核版本进行分发,无需重新编译即可动态加载运行。
  • +
+

eunomia-bpf 由一个编译工具链和一个运行时库组成, 对比传统的 BCC、原生 libbpf 等框架,大幅简化了 eBPF 程序的开发流程,在大多数时候只需编写内核态代码,即可轻松构建、打包、发布完整的 eBPF 应用,同时内核态 eBPF 代码保证和主流的 libbpf, libbpfgo, libbpf-rs 等开发框架的 100% 兼容性。需要编写用户态代码的时候,也可以借助 Webassembly 实现通过多种语言进行用户态开发。和 bpftrace 等脚本工具相比, eunomia-bpf 保留了类似的便捷性, 同时不仅局限于 trace 方面, 可以用于更多的场景, 如网络、安全等等。

+
+ +
+

参考资料

+ +

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/0-introduce/kernel-arch.webp b/0-introduce/kernel-arch.webp new file mode 100644 index 0000000..d030a34 Binary files /dev/null and b/0-introduce/kernel-arch.webp differ diff --git a/0-introduce/new-os-model.jpg b/0-introduce/new-os-model.jpg new file mode 100644 index 0000000..e9eda74 Binary files /dev/null and b/0-introduce/new-os-model.jpg differ diff --git a/1-helloworld/.gitignore b/1-helloworld/.gitignore new file mode 100644 index 0000000..f0f4c81 --- /dev/null +++ b/1-helloworld/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +*.o +*.skel.json +*.skel.yaml +package.yaml +ecli diff --git a/1-helloworld/index.html b/1-helloworld/index.html new file mode 100644 index 0000000..52c6350 --- /dev/null +++ b/1-helloworld/index.html @@ -0,0 +1,311 @@ + + + + + + eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程二:Hello World,基本框架和开发流程

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第二篇,主要介绍 eBPF 的基本框架和开发流程。

+

开发 eBPF 程序可以使用多种工具,如 BCC、eunomia-bpf 等。不同的工具有不同的特点,但基本流程大致相同。

+

开发 eBPF 程序的流程

+

下面以 BCC 工具为例,介绍 eBPF 程序的基本开发流程。

+
    +
  1. 安装编译环境和依赖。使用 BCC 开发 eBPF 程序需要安装 LLVM/Clang 和 bcc,以及其它的依赖库。
  2. +
  3. 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。
  4. +
  5. 编译和加载 eBPF 程序。使用 bcc 工具将 eBPF 程序编译成机器码,然后使用用户态代码加载并运行该程序。
  6. +
  7. 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。用户态程序负责处理这些信息并将结果输出。
  8. +
  9. 结束程序。当 eBPF 程序运行完成后,用户态程序可以卸载并结束运行。
  10. +
+

通过这个过程,你可以开发出一个能够在内核中运行的 eBPF 程序。

+

使用 eunomia-bpf 开发 eBPF 程序

+

eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。它基于 libbpf 的 CO-RE 轻量级开发框架,支持通过用户态 WASM 虚拟机控制 eBPF 程序的加载和执行,并将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块进行分发。使用 eunomia-bpf 可以大幅简化 eBPF 程序的开发流程。

+

使用 eunomia-bpf 开发 eBPF 程序的流程也大致相同,只是细节略有不同。

+
    +
  1. 安装编译环境和依赖。使用 eunomia-bpf 开发 eBPF 程序需要安装 eunomia-bpf 工具链和运行时库,以及其它的依赖库。
  2. +
  3. 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。使用 eunomia-bpf,只需编写内核态代码即可,无需编写用户态代码。
  4. +
  5. 编译和加载 eBPF 程序。使用 eunomia-bpf 工具链将 eBPF 程序编译成机器码,并将编译后的代码打包为可以在任何系统上运行的模块。然后使用 eunomia-bpf 运行时库加载并运行该模块。
  6. +
  7. 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。eunomia-bpf 的运行时库负责处理这些信息并将结果输出。
  8. +
  9. 结束程序。当 eBPF 程序运行完成后,eunomia-bpf 的运行时库可以卸载并结束运行
  10. +
+

下载安装 eunomia-bpf 开发工具

+

可以通过以下步骤下载和安装 eunomia-bpf:

+

下载 ecli 工具,用于运行 eBPF 程序:

+
$ wget https://aka.pw/bpf-ecli -O ecli && chmod +x ./ecli
+$ ./ecli -h
+Usage: ecli [--help] [--version] [--json] [--no-cache] url-and-args
+
+

下载编译器工具链,用于将 eBPF 内核代码编译为 config 文件或 WASM 模块:

+
$ wget https://github.com/eunomia-bpf/eunomia-bpf/releases/latest/download/ecc && chmod +x ./ecc
+$ ./ecc -h
+eunomia-bpf compiler
+Usage: ecc [OPTIONS] <SOURCE_PATH> [EXPORT_EVENT_HEADER]
+....
+
+

也可以使用 docker 镜像进行编译:

+
$ docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest # 使用 docker 进行编译。`pwd` 应该包含 *.bpf.c 文件和 *.h 文件。
+export PATH=PATH:~/.eunomia/bin
+Compiling bpf object...
+Packing ebpf object and config into /src/package.json...
+
+

Hello World - minimal eBPF program

+
/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */
+#define BPF_NO_GLOBAL_DATA
+#include <linux/bpf.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+typedef unsigned int u32;
+typedef int pid_t;
+const pid_t pid_filter = 0;
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+SEC("tp/syscalls/sys_enter_write")
+int handle_tp(void *ctx)
+{
+ pid_t pid = bpf_get_current_pid_tgid() >> 32;
+ if (pid_filter && pid != pid_filter)
+  return 0;
+ bpf_printk("BPF triggered from PID %d.\n", pid);
+ return 0;
+}
+
+

这段程序通过定义一个 handle_tp 函数并使用 SEC 宏把它附加到 sys_enter_write tracepoint(即在进入 write 系统调用时执行)。该函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 write 系统调用的进程 ID,并在内核日志中打印出来。

+
    +
  • bpf_trace_printk(): 一种将信息输出到trace_pipe(/sys/kernel/debug/tracing/trace_pipe)简单机制。 在一些简单用例中这样使用没有问题, but它也有一些限制:最多3 参数; 第一个参数必须是%s(即字符串);同时trace_pipe在内核中全局共享,其他并行使用trace_pipe的程序有可能会将 trace_pipe 的输出扰乱。 一个更好的方式是通过 BPF_PERF_OUTPUT(), 稍后将会讲到。
  • +
  • void *ctx:ctx本来是具体类型的参数, 但是由于我们这里没有使用这个参数,因此就将其写成void *类型。
  • +
  • return 0;:必须这样,返回0 (如果要知道why, 参考 #139 https://github.com/iovisor/bcc/issues/139)。
  • +
+

要编译和运行这段程序,可以使用 ecc 工具和 ecli 命令。首先使用 ecc 编译程序:

+
$ ecc hello.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

或使用 docker 镜像进行编译:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

然后使用 ecli 运行编译后的程序:

+
$ sudo ecli ./package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+           <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345.
+           <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345.
+
+

eBPF 程序的基本框架

+

如上所述, eBPF 程序的基本框架包括:

+
    +
  • 包含头文件:需要包含 <linux/bpf.h> 和 <bpf/bpf_helpers.h> 等头文件。
  • +
  • 定义许可证:需要定义许可证,通常使用 "Dual BSD/GPL"。
  • +
  • 定义 BPF 函数:需要定义一个 BPF 函数,例如其名称为 handle_tp,其参数为 void *ctx,返回值为 int。通常用 C 语言编写。
  • +
  • 使用 BPF 助手函数:在例如 BPF 函数中,可以使用 BPF 助手函数 bpf_get_current_pid_tgid() 和 bpf_printk()。
  • +
  • 返回值
  • +
+

tracepoints

+

跟踪点(tracepoints)是内核静态插桩技术,跟踪点在技术上只是放置在内核源代码中的跟踪函数,实际上就是在源码中插入的一些带有控制条件的探测点,这些探测点允许事后再添加处理函数。比如在内核中,最常见的静态跟踪方法就是 printk,即输出日志。又比如:在系统调用、调度程序事件、文件系统操作和磁盘 I/O 的开始和结束时都有跟踪点。 于 2009 年在 Linux 2.6.32 版本中首次提供。跟踪点是一种稳定的 API,数量有限。

+

总结

+

eBPF 程序的开发和使用流程可以概括为如下几个步骤:

+
    +
  • 定义 eBPF 程序的接口和类型:这包括定义 eBPF 程序的接口函数,定义和实现 eBPF 内核映射(maps)和共享内存(perf events),以及定义和使用 eBPF 内核帮助函数(helpers)。
  • +
  • 编写 eBPF 程序的代码:这包括编写 eBPF 程序的主要逻辑,实现 eBPF 内核映射的读写操作,以及使用 eBPF 内核帮助函数。
  • +
  • 编译 eBPF 程序:这包括使用 eBPF 编译器(例如 clang)将 eBPF 程序代码编译为 eBPF 字节码,并生成可执行的 eBPF 内核模块。ecc 本质上也是调用 clang 编译器来编译 eBPF 程序。
  • +
  • 加载 eBPF 程序到内核:这包括将编译好的 eBPF 内核模块加载到 Linux 内核中,并将 eBPF 程序附加到指定的内核事件上。
  • +
  • 使用 eBPF 程序:这包括监测 eBPF 程序的运行情况,并使用 eBPF 内核映射和共享内存进行数据交换和共享。
  • +
  • 在实际开发中,还可能需要进行其他的步骤,例如配置编译和加载参数,管理 eBPF 内核模块和内核映射,以及使用其他高级功能等。
  • +
+

需要注意的是,BPF 程序的执行是在内核空间进行的,因此需要使用特殊的工具和技术来编写、编译和调试 BPF 程序。eunomia-bpf 是一个开源的 BPF 编译器和工具包,它可以帮助开发者快速和简单地编写和运行 BPF 程序。

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/1-helloworld/minimal.bpf.c b/1-helloworld/minimal.bpf.c new file mode 100644 index 0000000..0c65717 --- /dev/null +++ b/1-helloworld/minimal.bpf.c @@ -0,0 +1,21 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#define BPF_NO_GLOBAL_DATA +#include +#include +#include + +typedef unsigned int u32; +typedef int pid_t; +const pid_t pid_filter = 0; + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; + +SEC("tp/syscalls/sys_enter_write") +int handle_tp(void *ctx) +{ + pid_t pid = bpf_get_current_pid_tgid() >> 32; + if (pid_filter && pid != pid_filter) + return 0; + bpf_printk("BPF triggered from PID %d.\n", pid); + return 0; +} diff --git a/10-hardirqs/.gitignore b/10-hardirqs/.gitignore new file mode 100644 index 0000000..f0f4c81 --- /dev/null +++ b/10-hardirqs/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +*.o +*.skel.json +*.skel.yaml +package.yaml +ecli diff --git a/10-hardirqs/bits.bpf.h b/10-hardirqs/bits.bpf.h new file mode 100644 index 0000000..a2b7bb9 --- /dev/null +++ b/10-hardirqs/bits.bpf.h @@ -0,0 +1,31 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#ifndef __BITS_BPF_H +#define __BITS_BPF_H + +#define READ_ONCE(x) (*(volatile typeof(x) *)&(x)) +#define WRITE_ONCE(x, val) ((*(volatile typeof(x) *)&(x)) = val) + +static __always_inline u64 log2(u32 v) +{ + u32 shift, r; + + r = (v > 0xFFFF) << 4; v >>= r; + shift = (v > 0xFF) << 3; v >>= shift; r |= shift; + shift = (v > 0xF) << 2; v >>= shift; r |= shift; + shift = (v > 0x3) << 1; v >>= shift; r |= shift; + r |= (v >> 1); + + return r; +} + +static __always_inline u64 log2l(u64 v) +{ + u32 hi = v >> 32; + + if (hi) + return log2(hi) + 32; + else + return log2(v); +} + +#endif /* __BITS_BPF_H */ diff --git a/10-hardirqs/hardirqs.bpf.c b/10-hardirqs/hardirqs.bpf.c new file mode 100644 index 0000000..bbfef05 --- /dev/null +++ b/10-hardirqs/hardirqs.bpf.c @@ -0,0 +1,135 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (c) 2020 Wenbo Zhang +#include +#include +#include +#include +#include "hardirqs.h" +#include "bits.bpf.h" +#include "maps.bpf.h" + +#define MAX_ENTRIES 256 + +const volatile bool filter_cg = false; +const volatile bool targ_dist = false; +const volatile bool targ_ns = false; +const volatile bool do_count = false; + +struct irq_key { + char name[32]; +}; + +struct { + __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY); + __type(key, u32); + __type(value, u32); + __uint(max_entries, 1); +} cgroup_map SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_PERCPU_ARRAY); + __uint(max_entries, 1); + __type(key, u32); + __type(value, u64); +} start SEC(".maps"); + +/// @sample {"interval": 1000, "type" : "log2_hist"} +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, struct irq_key); + __type(value, struct info); +} infos SEC(".maps"); + +static struct info zero; + +static int handle_entry(int irq, struct irqaction *action) +{ + if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) + return 0; + + if (do_count) { + struct irq_key key = {}; + struct info *info; + + bpf_probe_read_kernel_str(&key.name, sizeof(key.name), BPF_CORE_READ(action, name)); + info = bpf_map_lookup_or_try_init(&infos, &key, &zero); + if (!info) + return 0; + info->count += 1; + return 0; + } else { + u64 ts = bpf_ktime_get_ns(); + u32 key = 0; + + if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) + return 0; + + bpf_map_update_elem(&start, &key, &ts, BPF_ANY); + return 0; + } +} + +static int handle_exit(int irq, struct irqaction *action) +{ + struct irq_key ikey = {}; + struct info *info; + u32 key = 0; + u64 delta; + u64 *tsp; + + if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) + return 0; + + tsp = bpf_map_lookup_elem(&start, &key); + if (!tsp) + return 0; + + delta = bpf_ktime_get_ns() - *tsp; + if (!targ_ns) + delta /= 1000U; + + bpf_probe_read_kernel_str(&ikey.name, sizeof(ikey.name), BPF_CORE_READ(action, name)); + info = bpf_map_lookup_or_try_init(&infos, &ikey, &zero); + if (!info) + return 0; + + if (!targ_dist) { + info->count += delta; + } else { + u64 slot; + + slot = log2(delta); + if (slot >= MAX_SLOTS) + slot = MAX_SLOTS - 1; + info->slots[slot]++; + } + + return 0; +} + +SEC("tp_btf/irq_handler_entry") +int BPF_PROG(irq_handler_entry_btf, int irq, struct irqaction *action) +{ + return handle_entry(irq, action); +} + +SEC("tp_btf/irq_handler_exit") +int BPF_PROG(irq_handler_exit_btf, int irq, struct irqaction *action) +{ + return handle_exit(irq, action); +} + +SEC("raw_tp/irq_handler_entry") +int BPF_PROG(irq_handler_entry, int irq, struct irqaction *action) +{ + return handle_entry(irq, action); +} + +SEC("raw_tp/irq_handler_exit") +int BPF_PROG(irq_handler_exit, int irq, struct irqaction *action) +{ + return handle_exit(irq, action); +} + +char LICENSE[] SEC("license") = "GPL"; diff --git a/10-hardirqs/hardirqs.h b/10-hardirqs/hardirqs.h new file mode 100644 index 0000000..22a1898 --- /dev/null +++ b/10-hardirqs/hardirqs.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#ifndef __HARDIRQS_H +#define __HARDIRQS_H + +#define MAX_SLOTS 20 + +struct info { + __u64 count; + __u32 slots[MAX_SLOTS]; +}; + +#endif /* __HARDIRQS_H */ diff --git a/10-hardirqs/index.html b/10-hardirqs/index.html new file mode 100644 index 0000000..37ba1f1 --- /dev/null +++ b/10-hardirqs/index.html @@ -0,0 +1,353 @@ + + + + + + eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第十篇,在 eBPF 中。

+

hardirqs是什么?

+

hardirqs 是 bcc-tools 工具包的一部分,该工具包是一组用于在 Linux 系统上执行系统跟踪和分析的实用程序。 +hardirqs 是一种用于跟踪和分析 Linux 内核中的中断处理程序的工具。它使用 BPF(Berkeley Packet Filter)程序来收集有关中断处理程序的数据, +并可用于识别内核中的性能问题和其他与中断处理相关的问题。

+

实现原理

+

在 Linux 内核中,每个中断处理程序都有一个唯一的名称,称为中断向量。hardirqs 通过检查每个中断处理程序的中断向量,来监控内核中的中断处理程序。当内核接收到一个中断时,它会查找与该中断相关的中断处理程序,并执行该程序。hardirqs 通过检查内核中执行的中断处理程序,来监控内核中的中断处理程序。另外,hardirqs 还可以通过注入 BPF 程序到内核中,来捕获内核中的中断处理程序。这样,hardirqs 就可以监控内核中执行的中断处理程序,并收集有关它们的信息。

+

代码实现

+
// SPDX-License-Identifier: GPL-2.0
+// Copyright (c) 2020 Wenbo Zhang
+#include <vmlinux.h>
+#include <bpf/bpf_core_read.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include "hardirqs.h"
+#include "bits.bpf.h"
+#include "maps.bpf.h"
+
+#define MAX_ENTRIES 256
+
+const volatile bool filter_cg = false;
+const volatile bool targ_dist = false;
+const volatile bool targ_ns = false;
+const volatile bool do_count = false;
+
+struct {
+ __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY);
+ __type(key, u32);
+ __type(value, u32);
+ __uint(max_entries, 1);
+} cgroup_map SEC(".maps");
+
+struct {
+ __uint(type, BPF_MAP_TYPE_PERCPU_ARRAY);
+ __uint(max_entries, 1);
+ __type(key, u32);
+ __type(value, u64);
+} start SEC(".maps");
+
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, struct irq_key);
+ __type(value, struct info);
+} infos SEC(".maps");
+
+static struct info zero;
+
+static int handle_entry(int irq, struct irqaction *action)
+{
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ if (do_count) {
+  struct irq_key key = {};
+  struct info *info;
+
+  bpf_probe_read_kernel_str(&key.name, sizeof(key.name), BPF_CORE_READ(action, name));
+  info = bpf_map_lookup_or_try_init(&infos, &key, &zero);
+  if (!info)
+   return 0;
+  info->count += 1;
+  return 0;
+ } else {
+  u64 ts = bpf_ktime_get_ns();
+  u32 key = 0;
+
+  if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+   return 0;
+
+  bpf_map_update_elem(&start, &key, &ts, BPF_ANY);
+  return 0;
+ }
+}
+
+static int handle_exit(int irq, struct irqaction *action)
+{
+ struct irq_key ikey = {};
+ struct info *info;
+ u32 key = 0;
+ u64 delta;
+ u64 *tsp;
+
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ tsp = bpf_map_lookup_elem(&start, &key);
+ if (!tsp)
+  return 0;
+
+ delta = bpf_ktime_get_ns() - *tsp;
+ if (!targ_ns)
+  delta /= 1000U;
+
+ bpf_probe_read_kernel_str(&ikey.name, sizeof(ikey.name), BPF_CORE_READ(action, name));
+ info = bpf_map_lookup_or_try_init(&infos, &ikey, &zero);
+ if (!info)
+  return 0;
+
+ if (!targ_dist) {
+  info->count += delta;
+ } else {
+  u64 slot;
+
+  slot = log2(delta);
+  if (slot >= MAX_SLOTS)
+   slot = MAX_SLOTS - 1;
+  info->slots[slot]++;
+ }
+
+ return 0;
+}
+
+SEC("tp_btf/irq_handler_entry")
+int BPF_PROG(irq_handler_entry_btf, int irq, struct irqaction *action)
+{
+ return handle_entry(irq, action);
+}
+
+SEC("tp_btf/irq_handler_exit")
+int BPF_PROG(irq_handler_exit_btf, int irq, struct irqaction *action)
+{
+ return handle_exit(irq, action);
+}
+
+SEC("raw_tp/irq_handler_entry")
+int BPF_PROG(irq_handler_entry, int irq, struct irqaction *action)
+{
+ return handle_entry(irq, action);
+}
+
+SEC("raw_tp/irq_handler_exit")
+int BPF_PROG(irq_handler_exit, int irq, struct irqaction *action)
+{
+ return handle_exit(irq, action);
+}
+
+char LICENSE[] SEC("license") = "GPL";
+
+

这是一个 BPF(Berkeley Packet Filter)程序。BPF 程序是小型程序,可以直接在 Linux 内核中运行,用于过滤和操纵网络流量。这个特定的程序似乎旨在收集内核中中断处理程序的统计信息。它定义了一些地图(可以在 BPF 程序和内核的其他部分之间共享的数据结构)和两个函数:handle_entry 和 handle_exit。当内核进入和退出中断处理程序时,分别执行这些函数。handle_entry 函数用于跟踪中断处理程序被执行的次数,而 handle_exit 则用于测量中断处理程序中花费的时间。

+

运行代码

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

要编译这个程序,请使用 ecc 工具:

+
$ ecc hardirqs.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

然后运行:

+
sudo ecli ./package.json
+
+

总结

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/10-hardirqs/maps.bpf.h b/10-hardirqs/maps.bpf.h new file mode 100644 index 0000000..51d1012 --- /dev/null +++ b/10-hardirqs/maps.bpf.h @@ -0,0 +1,26 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +// Copyright (c) 2020 Anton Protopopov +#ifndef __MAPS_BPF_H +#define __MAPS_BPF_H + +#include +#include + +static __always_inline void * +bpf_map_lookup_or_try_init(void *map, const void *key, const void *init) +{ + void *val; + long err; + + val = bpf_map_lookup_elem(map, key); + if (val) + return val; + + err = bpf_map_update_elem(map, key, init, BPF_NOEXIST); + if (err && err != -EEXIST) + return 0; + + return bpf_map_lookup_elem(map, key); +} + +#endif /* __MAPS_BPF_H */ diff --git a/11-bootstrap/.gitignore b/11-bootstrap/.gitignore new file mode 100644 index 0000000..f0f4c81 --- /dev/null +++ b/11-bootstrap/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +*.o +*.skel.json +*.skel.yaml +package.yaml +ecli diff --git a/11-bootstrap/bootstrap.bpf.c b/11-bootstrap/bootstrap.bpf.c new file mode 100644 index 0000000..d0860c0 --- /dev/null +++ b/11-bootstrap/bootstrap.bpf.c @@ -0,0 +1,112 @@ +// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause +/* Copyright (c) 2020 Facebook */ +#include "vmlinux.h" +#include +#include +#include +#include "bootstrap.h" + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, 8192); + __type(key, pid_t); + __type(value, u64); +} exec_start SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_RINGBUF); + __uint(max_entries, 256 * 1024); +} rb SEC(".maps"); + +const volatile unsigned long long min_duration_ns = 0; + +SEC("tp/sched/sched_process_exec") +int handle_exec(struct trace_event_raw_sched_process_exec *ctx) +{ + struct task_struct *task; + unsigned fname_off; + struct event *e; + pid_t pid; + u64 ts; + + /* remember time exec() was executed for this PID */ + pid = bpf_get_current_pid_tgid() >> 32; + ts = bpf_ktime_get_ns(); + bpf_map_update_elem(&exec_start, &pid, &ts, BPF_ANY); + + /* don't emit exec events when minimum duration is specified */ + if (min_duration_ns) + return 0; + + /* reserve sample from BPF ringbuf */ + e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); + if (!e) + return 0; + + /* fill out the sample with data */ + task = (struct task_struct *)bpf_get_current_task(); + + e->exit_event = false; + e->pid = pid; + e->ppid = BPF_CORE_READ(task, real_parent, tgid); + bpf_get_current_comm(&e->comm, sizeof(e->comm)); + + fname_off = ctx->__data_loc_filename & 0xFFFF; + bpf_probe_read_str(&e->filename, sizeof(e->filename), (void *)ctx + fname_off); + + /* successfully submit it to user-space for post-processing */ + bpf_ringbuf_submit(e, 0); + return 0; +} + +SEC("tp/sched/sched_process_exit") +int handle_exit(struct trace_event_raw_sched_process_template* ctx) +{ + struct task_struct *task; + struct event *e; + pid_t pid, tid; + u64 id, ts, *start_ts, duration_ns = 0; + + /* get PID and TID of exiting thread/process */ + id = bpf_get_current_pid_tgid(); + pid = id >> 32; + tid = (u32)id; + + /* ignore thread exits */ + if (pid != tid) + return 0; + + /* if we recorded start of the process, calculate lifetime duration */ + start_ts = bpf_map_lookup_elem(&exec_start, &pid); + if (start_ts) + duration_ns = bpf_ktime_get_ns() - *start_ts; + else if (min_duration_ns) + return 0; + bpf_map_delete_elem(&exec_start, &pid); + + /* if process didn't live long enough, return early */ + if (min_duration_ns && duration_ns < min_duration_ns) + return 0; + + /* reserve sample from BPF ringbuf */ + e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); + if (!e) + return 0; + + /* fill out the sample with data */ + task = (struct task_struct *)bpf_get_current_task(); + + e->exit_event = true; + e->duration_ns = duration_ns; + e->pid = pid; + e->ppid = BPF_CORE_READ(task, real_parent, tgid); + e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff; + bpf_get_current_comm(&e->comm, sizeof(e->comm)); + + /* send data to user-space for post-processing */ + bpf_ringbuf_submit(e, 0); + return 0; +} + diff --git a/11-bootstrap/bootstrap.h b/11-bootstrap/bootstrap.h new file mode 100644 index 0000000..b49e022 --- /dev/null +++ b/11-bootstrap/bootstrap.h @@ -0,0 +1,19 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +/* Copyright (c) 2020 Facebook */ +#ifndef __BOOTSTRAP_H +#define __BOOTSTRAP_H + +#define TASK_COMM_LEN 16 +#define MAX_FILENAME_LEN 127 + +struct event { + int pid; + int ppid; + unsigned exit_code; + unsigned long long duration_ns; + char comm[TASK_COMM_LEN]; + char filename[MAX_FILENAME_LEN]; + bool exit_event; +}; + +#endif /* __BOOTSTRAP_H */ diff --git a/11-bootstrap/index.html b/11-bootstrap/index.html new file mode 100644 index 0000000..ee02d3f --- /dev/null +++ b/11-bootstrap/index.html @@ -0,0 +1,340 @@ + + + + + + eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

什么是bootstrap?

+

Bootstrap是一个工具,它使用BPF(Berkeley Packet Filter)程序跟踪执行exec()系统调用(使用SEC(“tp/sched/sched_process_exec”)handle_exit BPF程序),这大致对应于新进程的生成(忽略fork()部分)。此外,它还跟踪exit()(使用SEC(“tp/sched/sched_process_exit”)handle_exit BPF程序)以了解每个进程何时退出。这两个BPF程序共同工作,允许捕获有关任何新进程的有趣信息,例如二进制文件的文件名,以及测量进程的生命周期并在进程死亡时收集有趣的统计信息,例如退出代码或消耗的资源量等。我认为这是深入了解内核内部并观察事物如何真正运作的良好起点。

+

Bootstrap还使用argp API(libc的一部分)进行命令行参数解析。

+

Bootstrap

+

TODO: 添加关于用户态的应用部分,以及关于 libbpf-boostrap 的完整介绍。也许可以参考类似:http://cn-sec.com/archives/1267522.html 的文档。

+
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
+/* Copyright (c) 2020 Facebook */
+#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include <bpf/bpf_core_read.h>
+#include "bootstrap.h"
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+struct {
+	__uint(type, BPF_MAP_TYPE_HASH);
+	__uint(max_entries, 8192);
+	__type(key, pid_t);
+	__type(value, u64);
+} exec_start SEC(".maps");
+
+struct {
+	__uint(type, BPF_MAP_TYPE_RINGBUF);
+	__uint(max_entries, 256 * 1024);
+} rb SEC(".maps");
+
+const volatile unsigned long long min_duration_ns = 0;
+
+SEC("tp/sched/sched_process_exec")
+int handle_exec(struct trace_event_raw_sched_process_exec *ctx)
+{
+	struct task_struct *task;
+	unsigned fname_off;
+	struct event *e;
+	pid_t pid;
+	u64 ts;
+
+	/* remember time exec() was executed for this PID */
+	pid = bpf_get_current_pid_tgid() >> 32;
+	ts = bpf_ktime_get_ns();
+	bpf_map_update_elem(&exec_start, &pid, &ts, BPF_ANY);
+
+	/* don't emit exec events when minimum duration is specified */
+	if (min_duration_ns)
+		return 0;
+
+	/* reserve sample from BPF ringbuf */
+	e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0);
+	if (!e)
+		return 0;
+
+	/* fill out the sample with data */
+	task = (struct task_struct *)bpf_get_current_task();
+
+	e->exit_event = false;
+	e->pid = pid;
+	e->ppid = BPF_CORE_READ(task, real_parent, tgid);
+	bpf_get_current_comm(&e->comm, sizeof(e->comm));
+
+	fname_off = ctx->__data_loc_filename & 0xFFFF;
+	bpf_probe_read_str(&e->filename, sizeof(e->filename), (void *)ctx + fname_off);
+
+	/* successfully submit it to user-space for post-processing */
+	bpf_ringbuf_submit(e, 0);
+	return 0;
+}
+
+SEC("tp/sched/sched_process_exit")
+int handle_exit(struct trace_event_raw_sched_process_template* ctx)
+{
+	struct task_struct *task;
+	struct event *e;
+	pid_t pid, tid;
+	u64 id, ts, *start_ts, duration_ns = 0;
+	
+	/* get PID and TID of exiting thread/process */
+	id = bpf_get_current_pid_tgid();
+	pid = id >> 32;
+	tid = (u32)id;
+
+	/* ignore thread exits */
+	if (pid != tid)
+		return 0;
+
+	/* if we recorded start of the process, calculate lifetime duration */
+	start_ts = bpf_map_lookup_elem(&exec_start, &pid);
+	if (start_ts)
+		duration_ns = bpf_ktime_get_ns() - *start_ts;
+	else if (min_duration_ns)
+		return 0;
+	bpf_map_delete_elem(&exec_start, &pid);
+
+	/* if process didn't live long enough, return early */
+	if (min_duration_ns && duration_ns < min_duration_ns)
+		return 0;
+
+	/* reserve sample from BPF ringbuf */
+	e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0);
+	if (!e)
+		return 0;
+
+	/* fill out the sample with data */
+	task = (struct task_struct *)bpf_get_current_task();
+
+	e->exit_event = true;
+	e->duration_ns = duration_ns;
+	e->pid = pid;
+	e->ppid = BPF_CORE_READ(task, real_parent, tgid);
+	e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff;
+	bpf_get_current_comm(&e->comm, sizeof(e->comm));
+
+	/* send data to user-space for post-processing */
+	bpf_ringbuf_submit(e, 0);
+	return 0;
+}
+
+
+
+

这是一段使用BPF(Berkeley Packet Filter)的C程序,用于跟踪进程启动和退出事件,并显示有关它们的信息。BPF是一种强大的机制,允许您将称为BPF程序的小程序附加到Linux内核的各个部分。这些程序可用于过滤,监视或修改内核的行为。

+

程序首先定义一些常量,并包含一些头文件。然后定义了一个名为env的struct,用于存储一些程序选项,例如详细模式和进程报告的最小持续时间。

+

然后,程序定义了一个名为parse_arg的函数,用于解析传递给程序的命令行参数。它接受三个参数:一个表示正在解析的选项的整数key,一个表示选项参数的字符指针arg和一个表示当前解析状态的struct argp_state指针state。该函数处理选项并在env struct中设置相应的值。

+

然后,程序定义了一个名为sig_handler的函数,当被调用时会将全局标志exiting设置为true。这用于在接收到信号时允许程序干净地退出。

+

接下来,我们将继续描述这段代码中的其他部分。

+

程序定义了一个名为exec_start的BPF map,它的类型为BPF_MAP_TYPE_HASH,最大条目数为8192,键类型为pid_t,值类型为u64。

+

另外,程序还定义了一个名为rb的BPF map,它的类型为BPF_MAP_TYPE_RINGBUF,最大条目数为256 * 1024。

+

程序还定义了一个名为min_duration_ns的常量,其值为0。

+

程序定义了一个名为handle_exec的SEC(static evaluator of code)函数,它被附加到跟踪进程执行的BPF程序上。该函数记录为该PID执行exec()的时间,并在指定了最小持续时间时不发出exec事件。如果未指定最小持续时间,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。

+

程序还定义了一个名为handle_exit的SEC函数,它被附加到跟踪进程退出的BPF程序上。该函数会在确定PID和TID后计算进程的生命周期,然后根据min_duration_ns的值决定是否发出退出事件。如果进程的生命周期足够长,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。

+

最后,主函数调用bpf_ringbuf_poll来轮询BPF ringbuf,并在接收到新的事件时处理该事件。这个函数会持续运行,直到全局标志exiting被设置为true,此时它会清理资源并退出。

+

编译运行上述代码:

+
$ ecc bootstrap.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

总结

+

这是一个使用BPF的C程序,用于跟踪进程的启动和退出事件,并显示有关这些事件的信息。它通过使用argp API来解析命令行参数,并使用BPF地图存储进程的信息,包括进程的PID和执行文件的文件名。程序还使用了SEC函数来附加BPF程序,以监视进程的执行和退出事件。最后,程序在终端中打印出启动和退出的进程信息。

+

编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/13-tcpconnlat/.gitignore b/13-tcpconnlat/.gitignore new file mode 100644 index 0000000..3e91eef --- /dev/null +++ b/13-tcpconnlat/.gitignore @@ -0,0 +1,2 @@ +.vscode +package.json diff --git a/13-tcpconnlat/index.html b/13-tcpconnlat/index.html new file mode 100644 index 0000000..75e5a05 --- /dev/null +++ b/13-tcpconnlat/index.html @@ -0,0 +1,336 @@ + + + + + + eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时

+

背景

+

在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。

+

tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。

+

tcpconnlat 的实现原理

+

tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。

+

tcp 连接原理

+

tcp 连接的整个过程如图所示:

+

tcpconnlate

+

在这个连接过程中,我们来简单分析一下每一步的耗时:

+
    +
  1. 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销
  2. +
  3. SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输
  4. +
  5. 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销
  6. +
  7. SYC/ACK传到客户端:长途网络跋涉
  8. +
  9. 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销
  10. +
  11. ACK传到服务器:长途网络跋涉
  12. +
  13. 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销
  14. +
  15. 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销
  16. +
+

在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。

+

ebpf 实现原理

+

在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是:

+
    +
  • 半连接队列,也称 SYN 队列;
  • +
  • 全连接队列,也称 accepet 队列;
  • +
+

服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。

+

我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中:

+

它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点:

+

+SEC("kprobe/tcp_v4_connect")
+int BPF_KPROBE(tcp_v4_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_v6_connect")
+int BPF_KPROBE(tcp_v6_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_rcv_state_process")
+int BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)
+{
+ return handle_tcp_rcv_state_process(ctx, sk);
+}
+
+

在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中:

+
struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, 4096);
+ __type(key, struct sock *);
+ __type(value, struct piddata);
+} start SEC(".maps");
+
+static int trace_connect(struct sock *sk)
+{
+ u32 tgid = bpf_get_current_pid_tgid() >> 32;
+ struct piddata piddata = {};
+
+ if (targ_tgid && targ_tgid != tgid)
+  return 0;
+
+ bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm));
+ piddata.ts = bpf_ktime_get_ns();
+ piddata.tgid = tgid;
+ bpf_map_update_elem(&start, &sk, &piddata, 0);
+ return 0;
+}
+
+

在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟:

+
static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)
+{
+ struct piddata *piddatap;
+ struct event event = {};
+ s64 delta;
+ u64 ts;
+
+ if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT)
+  return 0;
+
+ piddatap = bpf_map_lookup_elem(&start, &sk);
+ if (!piddatap)
+  return 0;
+
+ ts = bpf_ktime_get_ns();
+ delta = (s64)(ts - piddatap->ts);
+ if (delta < 0)
+  goto cleanup;
+
+ event.delta_us = delta / 1000U;
+ if (targ_min_us && event.delta_us < targ_min_us)
+  goto cleanup;
+ __builtin_memcpy(&event.comm, piddatap->comm,
+   sizeof(event.comm));
+ event.ts_us = ts / 1000;
+ event.tgid = piddatap->tgid;
+ event.lport = BPF_CORE_READ(sk, __sk_common.skc_num);
+ event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport);
+ event.af = BPF_CORE_READ(sk, __sk_common.skc_family);
+ if (event.af == AF_INET) {
+  event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr);
+  event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr);
+ } else {
+  BPF_CORE_READ_INTO(&event.saddr_v6, sk,
+    __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32);
+  BPF_CORE_READ_INTO(&event.daddr_v6, sk,
+    __sk_common.skc_v6_daddr.in6_u.u6_addr32);
+ }
+ bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU,
+   &event, sizeof(event));
+
+cleanup:
+ bpf_map_delete_elem(&start, &sk);
+ return 0;
+}
+
+

编译运行

+
    +
  • git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned
  • +
  • libbpf-bootstrap目录下的文件复制到 libbpf-bootstrap-cloned/examples/c
  • +
  • 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpconnlat
  • +
  • libbpf-bootstrap-cloned/examples/c 下运行 make tcpconnlat
  • +
  • sudo ./tcpconnlat
  • +
+

效果

+
root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpconnlat 
+PID    COMM         IP SADDR            DADDR            DPORT LAT(ms)
+222564 wget         4  192.168.88.15    110.242.68.3     80    25.29
+222684 wget         4  192.168.88.15    167.179.101.42   443   246.76
+222726 ssh          4  192.168.88.15    167.179.101.42   22    241.17
+222774 ssh          4  192.168.88.15    1.15.149.151     22    25.31
+
+

总结

+

通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheusgrafana 等工具进行网络性能分析。

+

来源:https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpconnlat.bpf.c

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.bpf.c b/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.bpf.c new file mode 100644 index 0000000..4b334f7 --- /dev/null +++ b/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.bpf.c @@ -0,0 +1,131 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (c) 2020 Wenbo Zhang +#include +#include +#include +#include +#include "tcpconnlat.h" + +#define AF_INET 2 +#define AF_INET6 10 + +const volatile __u64 targ_min_us = 0; +const volatile pid_t targ_tgid = 0; + +struct piddata { + char comm[TASK_COMM_LEN]; + u64 ts; + u32 tgid; +}; + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, 4096); + __type(key, struct sock *); + __type(value, struct piddata); +} start SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); + __uint(key_size, sizeof(u32)); + __uint(value_size, sizeof(u32)); +} events SEC(".maps"); + +static int trace_connect(struct sock *sk) +{ + u32 tgid = bpf_get_current_pid_tgid() >> 32; + struct piddata piddata = {}; + + if (targ_tgid && targ_tgid != tgid) + return 0; + + bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm)); + piddata.ts = bpf_ktime_get_ns(); + piddata.tgid = tgid; + bpf_map_update_elem(&start, &sk, &piddata, 0); + return 0; +} + +static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk) +{ + struct piddata *piddatap; + struct event event = {}; + s64 delta; + u64 ts; + + if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT) + return 0; + + piddatap = bpf_map_lookup_elem(&start, &sk); + if (!piddatap) + return 0; + + ts = bpf_ktime_get_ns(); + delta = (s64)(ts - piddatap->ts); + if (delta < 0) + goto cleanup; + + event.delta_us = delta / 1000U; + if (targ_min_us && event.delta_us < targ_min_us) + goto cleanup; + __builtin_memcpy(&event.comm, piddatap->comm, + sizeof(event.comm)); + event.ts_us = ts / 1000; + event.tgid = piddatap->tgid; + event.lport = BPF_CORE_READ(sk, __sk_common.skc_num); + event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport); + event.af = BPF_CORE_READ(sk, __sk_common.skc_family); + if (event.af == AF_INET) { + event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr); + event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr); + } else { + BPF_CORE_READ_INTO(&event.saddr_v6, sk, + __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); + BPF_CORE_READ_INTO(&event.daddr_v6, sk, + __sk_common.skc_v6_daddr.in6_u.u6_addr32); + } + bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, + &event, sizeof(event)); + +cleanup: + bpf_map_delete_elem(&start, &sk); + return 0; +} + +SEC("kprobe/tcp_v4_connect") +int BPF_KPROBE(tcp_v4_connect, struct sock *sk) +{ + return trace_connect(sk); +} + +SEC("kprobe/tcp_v6_connect") +int BPF_KPROBE(tcp_v6_connect, struct sock *sk) +{ + return trace_connect(sk); +} + +SEC("kprobe/tcp_rcv_state_process") +int BPF_KPROBE(tcp_rcv_state_process, struct sock *sk) +{ + return handle_tcp_rcv_state_process(ctx, sk); +} + +SEC("fentry/tcp_v4_connect") +int BPF_PROG(fentry_tcp_v4_connect, struct sock *sk) +{ + return trace_connect(sk); +} + +SEC("fentry/tcp_v6_connect") +int BPF_PROG(fentry_tcp_v6_connect, struct sock *sk) +{ + return trace_connect(sk); +} + +SEC("fentry/tcp_rcv_state_process") +int BPF_PROG(fentry_tcp_rcv_state_process, struct sock *sk) +{ + return handle_tcp_rcv_state_process(ctx, sk); +} + +char LICENSE[] SEC("license") = "GPL"; \ No newline at end of file diff --git a/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.c b/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.c new file mode 100644 index 0000000..8fa49a5 --- /dev/null +++ b/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.c @@ -0,0 +1,298 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +// Copyright (c) 2020 Wenbo Zhang +// +// Based on tcpconnlat(8) from BCC by Brendan Gregg. +// 11-Jul-2020 Wenbo Zhang Created this. +#include "tcpconnlat.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "tcpconnlat.skel.h" +// #include "trace_helpers.h" + +#define PERF_BUFFER_PAGES 16 +#define PERF_POLL_TIMEOUT_MS 100 + +static volatile sig_atomic_t exiting = 0; + +static struct env { + __u64 min_us; + pid_t pid; + bool timestamp; + bool lport; + bool verbose; +} env; + +const char* argp_program_version = "tcpconnlat 0.1"; +const char* argp_program_bug_address = + "https://github.com/iovisor/bcc/tree/master/libbpf-tools"; +const char argp_program_doc[] = + "\nTrace TCP connects and show connection latency.\n" + "\n" + "USAGE: tcpconnlat [--help] [-t] [-p PID] [-L]\n" + "\n" + "EXAMPLES:\n" + " tcpconnlat # summarize on-CPU time as a histogram\n" + " tcpconnlat 1 # trace connection latency slower than 1 ms\n" + " tcpconnlat 0.1 # trace connection latency slower than 100 " + "us\n" + " tcpconnlat -t # 1s summaries, milliseconds, and timestamps\n" + " tcpconnlat -p 185 # trace PID 185 only\n" + " tcpconnlat -L # include LPORT while printing outputs\n"; + +static const struct argp_option opts[] = { + {"timestamp", 't', NULL, 0, "Include timestamp on output"}, + {"pid", 'p', "PID", 0, "Trace this PID only"}, + {"lport", 'L', NULL, 0, "Include LPORT on output"}, + {"verbose", 'v', NULL, 0, "Verbose debug output"}, + {NULL, 'h', NULL, OPTION_HIDDEN, "Show the full help"}, + {}, +}; + +static error_t parse_arg(int key, char* arg, struct argp_state* state) { + static int pos_args; + + switch (key) { + case 'h': + argp_state_help(state, stderr, ARGP_HELP_STD_HELP); + break; + case 'v': + env.verbose = true; + break; + case 'p': + errno = 0; + env.pid = strtol(arg, NULL, 10); + if (errno) { + fprintf(stderr, "invalid PID: %s\n", arg); + argp_usage(state); + } + break; + case 't': + env.timestamp = true; + break; + case 'L': + env.lport = true; + break; + case ARGP_KEY_ARG: + if (pos_args++) { + fprintf(stderr, "Unrecognized positional argument: %s\n", arg); + argp_usage(state); + } + errno = 0; + env.min_us = strtod(arg, NULL) * 1000; + if (errno || env.min_us <= 0) { + fprintf(stderr, "Invalid delay (in us): %s\n", arg); + argp_usage(state); + } + break; + default: + return ARGP_ERR_UNKNOWN; + } + return 0; +} + +static int libbpf_print_fn(enum libbpf_print_level level, + const char* format, + va_list args) { + if (level == LIBBPF_DEBUG && !env.verbose) + return 0; + return vfprintf(stderr, format, args); +} + +static void sig_int(int signo) { + exiting = 1; +} + +void handle_event(void* ctx, int cpu, void* data, __u32 data_sz) { + const struct event* e = data; + char src[INET6_ADDRSTRLEN]; + char dst[INET6_ADDRSTRLEN]; + union { + struct in_addr x4; + struct in6_addr x6; + } s, d; + static __u64 start_ts; + + if (env.timestamp) { + if (start_ts == 0) + start_ts = e->ts_us; + printf("%-9.3f ", (e->ts_us - start_ts) / 1000000.0); + } + if (e->af == AF_INET) { + s.x4.s_addr = e->saddr_v4; + d.x4.s_addr = e->daddr_v4; + } else if (e->af == AF_INET6) { + memcpy(&s.x6.s6_addr, e->saddr_v6, sizeof(s.x6.s6_addr)); + memcpy(&d.x6.s6_addr, e->daddr_v6, sizeof(d.x6.s6_addr)); + } else { + fprintf(stderr, "broken event: event->af=%d", e->af); + return; + } + + if (env.lport) { + printf("%-6d %-12.12s %-2d %-16s %-6d %-16s %-5d %.2f\n", e->tgid, + e->comm, e->af == AF_INET ? 4 : 6, + inet_ntop(e->af, &s, src, sizeof(src)), e->lport, + inet_ntop(e->af, &d, dst, sizeof(dst)), ntohs(e->dport), + e->delta_us / 1000.0); + } else { + printf("%-6d %-12.12s %-2d %-16s %-16s %-5d %.2f\n", e->tgid, e->comm, + e->af == AF_INET ? 4 : 6, inet_ntop(e->af, &s, src, sizeof(src)), + inet_ntop(e->af, &d, dst, sizeof(dst)), ntohs(e->dport), + e->delta_us / 1000.0); + } +} + +void handle_lost_events(void* ctx, int cpu, __u64 lost_cnt) { + fprintf(stderr, "lost %llu events on CPU #%d\n", lost_cnt, cpu); +} +static bool fentry_try_attach(int id) { + int prog_fd, attach_fd; + char error[4096]; + struct bpf_insn insns[] = { + {.code = BPF_ALU64 | BPF_MOV | BPF_K, .dst_reg = BPF_REG_0, .imm = 0}, + {.code = BPF_JMP | BPF_EXIT}, + }; + LIBBPF_OPTS(bpf_prog_load_opts, opts, + .expected_attach_type = BPF_TRACE_FENTRY, .attach_btf_id = id, + .log_buf = error, .log_size = sizeof(error), ); + + prog_fd = bpf_prog_load(BPF_PROG_TYPE_TRACING, "test", "GPL", insns, + sizeof(insns) / sizeof(struct bpf_insn), &opts); + if (prog_fd < 0) + return false; + + attach_fd = bpf_raw_tracepoint_open(NULL, prog_fd); + if (attach_fd >= 0) + close(attach_fd); + + close(prog_fd); + return attach_fd >= 0; +} +static bool fentry_can_attach(const char* name, const char* mod) { + struct btf *btf, *vmlinux_btf, *module_btf = NULL; + int err, id; + + vmlinux_btf = btf__load_vmlinux_btf(); + err = libbpf_get_error(vmlinux_btf); + if (err) + return false; + + btf = vmlinux_btf; + + if (mod) { + module_btf = btf__load_module_btf(mod, vmlinux_btf); + err = libbpf_get_error(module_btf); + if (!err) + btf = module_btf; + } + + id = btf__find_by_name_kind(btf, name, BTF_KIND_FUNC); + + btf__free(module_btf); + btf__free(vmlinux_btf); + return id > 0 && fentry_try_attach(id); +} + +int main(int argc, char** argv) { + static const struct argp argp = { + .options = opts, + .parser = parse_arg, + .doc = argp_program_doc, + }; + struct perf_buffer* pb = NULL; + struct tcpconnlat_bpf* obj; + int err; + + err = argp_parse(&argp, argc, argv, 0, NULL, NULL); + if (err) + return err; + + libbpf_set_strict_mode(LIBBPF_STRICT_ALL); + libbpf_set_print(libbpf_print_fn); + + obj = tcpconnlat_bpf__open(); + if (!obj) { + fprintf(stderr, "failed to open BPF object\n"); + return 1; + } + + /* initialize global data (filtering options) */ + obj->rodata->targ_min_us = env.min_us; + obj->rodata->targ_tgid = env.pid; + + if (fentry_can_attach("tcp_v4_connect", NULL)) { + bpf_program__set_attach_target(obj->progs.fentry_tcp_v4_connect, 0, + "tcp_v4_connect"); + bpf_program__set_attach_target(obj->progs.fentry_tcp_v6_connect, 0, + "tcp_v6_connect"); + bpf_program__set_attach_target(obj->progs.fentry_tcp_rcv_state_process, + 0, "tcp_rcv_state_process"); + bpf_program__set_autoload(obj->progs.tcp_v4_connect, false); + bpf_program__set_autoload(obj->progs.tcp_v6_connect, false); + bpf_program__set_autoload(obj->progs.tcp_rcv_state_process, false); + } else { + bpf_program__set_autoload(obj->progs.fentry_tcp_v4_connect, false); + bpf_program__set_autoload(obj->progs.fentry_tcp_v6_connect, false); + bpf_program__set_autoload(obj->progs.fentry_tcp_rcv_state_process, + false); + } + + err = tcpconnlat_bpf__load(obj); + if (err) { + fprintf(stderr, "failed to load BPF object: %d\n", err); + goto cleanup; + } + + err = tcpconnlat_bpf__attach(obj); + if (err) { + goto cleanup; + } + + pb = perf_buffer__new(bpf_map__fd(obj->maps.events), PERF_BUFFER_PAGES, + handle_event, handle_lost_events, NULL, NULL); + if (!pb) { + fprintf(stderr, "failed to open perf buffer: %d\n", errno); + goto cleanup; + } + + /* print header */ + if (env.timestamp) + printf("%-9s ", ("TIME(s)")); + if (env.lport) { + printf("%-6s %-12s %-2s %-16s %-6s %-16s %-5s %s\n", "PID", "COMM", + "IP", "SADDR", "LPORT", "DADDR", "DPORT", "LAT(ms)"); + } else { + printf("%-6s %-12s %-2s %-16s %-16s %-5s %s\n", "PID", "COMM", "IP", + "SADDR", "DADDR", "DPORT", "LAT(ms)"); + } + + if (signal(SIGINT, sig_int) == SIG_ERR) { + fprintf(stderr, "can't set signal handler: %s\n", strerror(errno)); + err = 1; + goto cleanup; + } + + /* main: poll */ + while (!exiting) { + err = perf_buffer__poll(pb, PERF_POLL_TIMEOUT_MS); + if (err < 0 && err != -EINTR) { + fprintf(stderr, "error polling perf buffer: %s\n", strerror(-err)); + goto cleanup; + } + /* reset err to return 0 if exiting */ + err = 0; + } + +cleanup: + perf_buffer__free(pb); + tcpconnlat_bpf__destroy(obj); + + return err != 0; +} \ No newline at end of file diff --git a/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.h b/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.h new file mode 100644 index 0000000..7019483 --- /dev/null +++ b/13-tcpconnlat/libbpf-bootstrap/tcpconnlat.h @@ -0,0 +1,31 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#ifndef __TCPCONNLAT_H +#define __TCPCONNLAT_H + +// #include +typedef unsigned char __u8; +typedef unsigned short __u16; +typedef unsigned int __u32; +typedef unsigned long long __u64; + +#define TASK_COMM_LEN 16 + +struct event { + union { + __u32 saddr_v4; + __u8 saddr_v6[16]; + }; + union { + __u32 daddr_v4; + __u8 daddr_v6[16]; + }; + char comm[TASK_COMM_LEN]; + __u64 delta_us; + __u64 ts_us; + __u32 tgid; + int af; + __u16 lport; + __u16 dport; +}; + +#endif /* __TCPCONNLAT_H_ */ \ No newline at end of file diff --git a/13-tcpconnlat/tcpconnlat.bpf.c b/13-tcpconnlat/tcpconnlat.bpf.c new file mode 100644 index 0000000..544701b --- /dev/null +++ b/13-tcpconnlat/tcpconnlat.bpf.c @@ -0,0 +1,113 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (c) 2020 Wenbo Zhang +#include +#include +#include +#include +#include "tcpconnlat.bpf.h" + +#define AF_INET 2 +#define AF_INET6 10 + +const volatile __u64 targ_min_us = 0; +const volatile pid_t targ_tgid = 0; + +struct piddata { + char comm[TASK_COMM_LEN]; + u64 ts; + u32 tgid; +}; + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, 4096); + __type(key, struct sock *); + __type(value, struct piddata); +} start SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); + __uint(key_size, sizeof(u32)); + __uint(value_size, sizeof(u32)); +} events SEC(".maps"); + +static int trace_connect(struct sock *sk) +{ + u32 tgid = bpf_get_current_pid_tgid() >> 32; + struct piddata piddata = {}; + + if (targ_tgid && targ_tgid != tgid) + return 0; + + bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm)); + piddata.ts = bpf_ktime_get_ns(); + piddata.tgid = tgid; + bpf_map_update_elem(&start, &sk, &piddata, 0); + return 0; +} + +static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk) +{ + struct piddata *piddatap; + struct event event = {}; + s64 delta; + u64 ts; + + if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT) + return 0; + + piddatap = bpf_map_lookup_elem(&start, &sk); + if (!piddatap) + return 0; + + ts = bpf_ktime_get_ns(); + delta = (s64)(ts - piddatap->ts); + if (delta < 0) + goto cleanup; + + event.delta_us = delta / 1000U; + if (targ_min_us && event.delta_us < targ_min_us) + goto cleanup; + __builtin_memcpy(&event.comm, piddatap->comm, + sizeof(event.comm)); + event.ts_us = ts / 1000; + event.tgid = piddatap->tgid; + event.lport = BPF_CORE_READ(sk, __sk_common.skc_num); + event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport); + event.af = BPF_CORE_READ(sk, __sk_common.skc_family); + if (event.af == AF_INET) { + event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr); + event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr); + } else { + BPF_CORE_READ_INTO(&event.saddr_v6, sk, + __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); + BPF_CORE_READ_INTO(&event.daddr_v6, sk, + __sk_common.skc_v6_daddr.in6_u.u6_addr32); + } + bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, + &event, sizeof(event)); + +cleanup: + bpf_map_delete_elem(&start, &sk); + return 0; +} + +SEC("kprobe/tcp_v4_connect") +int BPF_KPROBE(tcp_v4_connect, struct sock *sk) +{ + return trace_connect(sk); +} + +SEC("kprobe/tcp_v6_connect") +int BPF_KPROBE(tcp_v6_connect, struct sock *sk) +{ + return trace_connect(sk); +} + +SEC("kprobe/tcp_rcv_state_process") +int BPF_KPROBE(tcp_rcv_state_process, struct sock *sk) +{ + return handle_tcp_rcv_state_process(ctx, sk); +} + +char LICENSE[] SEC("license") = "GPL"; diff --git a/13-tcpconnlat/tcpconnlat.bpf.h b/13-tcpconnlat/tcpconnlat.bpf.h new file mode 100644 index 0000000..d6cd930 --- /dev/null +++ b/13-tcpconnlat/tcpconnlat.bpf.h @@ -0,0 +1,26 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#ifndef __TCPCONNLAT_H +#define __TCPCONNLAT_H + +#define TASK_COMM_LEN 16 + +struct event { + // union { + unsigned int saddr_v4; + unsigned char saddr_v6[16]; + // }; + // union { + unsigned int daddr_v4; + unsigned char daddr_v6[16]; + // }; + char comm[TASK_COMM_LEN]; + unsigned long long delta_us; + unsigned long long ts_us; + unsigned int tgid; + int af; + unsigned short lport; + unsigned short dport; +}; + + +#endif /* __TCPCONNLAT_H_ */ diff --git a/13-tcpconnlat/tcpconnlat.html b/13-tcpconnlat/tcpconnlat.html new file mode 100644 index 0000000..cf254ba --- /dev/null +++ b/13-tcpconnlat/tcpconnlat.html @@ -0,0 +1,351 @@ + + + + + + eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时

+

代码解释

+

背景

+

在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。

+

tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。

+

tcpconnlat 的实现原理

+

tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。

+

tcp 连接原理

+

tcp 连接的整个过程如图所示:

+

tcpconnlate

+

在这个连接过程中,我们来简单分析一下每一步的耗时:

+
    +
  1. 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销
  2. +
  3. SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输
  4. +
  5. 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销
  6. +
  7. SYC/ACK传到客户端:长途网络跋涉
  8. +
  9. 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销
  10. +
  11. ACK传到服务器:长途网络跋涉
  12. +
  13. 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销
  14. +
  15. 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销
  16. +
+

在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。

+

ebpf 实现原理

+

在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是:

+
    +
  • 半连接队列,也称 SYN 队列;
  • +
  • 全连接队列,也称 accepet 队列;
  • +
+

服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。

+

我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中:

+

它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点:

+

+SEC("kprobe/tcp_v4_connect")
+int BPF_KPROBE(tcp_v4_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_v6_connect")
+int BPF_KPROBE(tcp_v6_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_rcv_state_process")
+int BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)
+{
+ return handle_tcp_rcv_state_process(ctx, sk);
+}
+
+

在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中:

+
struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, 4096);
+ __type(key, struct sock *);
+ __type(value, struct piddata);
+} start SEC(".maps");
+
+static int trace_connect(struct sock *sk)
+{
+ u32 tgid = bpf_get_current_pid_tgid() >> 32;
+ struct piddata piddata = {};
+
+ if (targ_tgid && targ_tgid != tgid)
+  return 0;
+
+ bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm));
+ piddata.ts = bpf_ktime_get_ns();
+ piddata.tgid = tgid;
+ bpf_map_update_elem(&start, &sk, &piddata, 0);
+ return 0;
+}
+
+

在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟:

+
static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)
+{
+ struct piddata *piddatap;
+ struct event event = {};
+ s64 delta;
+ u64 ts;
+
+ if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT)
+  return 0;
+
+ piddatap = bpf_map_lookup_elem(&start, &sk);
+ if (!piddatap)
+  return 0;
+
+ ts = bpf_ktime_get_ns();
+ delta = (s64)(ts - piddatap->ts);
+ if (delta < 0)
+  goto cleanup;
+
+ event.delta_us = delta / 1000U;
+ if (targ_min_us && event.delta_us < targ_min_us)
+  goto cleanup;
+ __builtin_memcpy(&event.comm, piddatap->comm,
+   sizeof(event.comm));
+ event.ts_us = ts / 1000;
+ event.tgid = piddatap->tgid;
+ event.lport = BPF_CORE_READ(sk, __sk_common.skc_num);
+ event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport);
+ event.af = BPF_CORE_READ(sk, __sk_common.skc_family);
+ if (event.af == AF_INET) {
+  event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr);
+  event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr);
+ } else {
+  BPF_CORE_READ_INTO(&event.saddr_v6, sk,
+    __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32);
+  BPF_CORE_READ_INTO(&event.daddr_v6, sk,
+    __sk_common.skc_v6_daddr.in6_u.u6_addr32);
+ }
+ bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU,
+   &event, sizeof(event));
+
+cleanup:
+ bpf_map_delete_elem(&start, &sk);
+ return 0;
+}
+
+

Eunomia 测试 demo

+

使用命令行进行追踪:

+
$ sudo build/bin/Release/eunomia run tcpconnlat
+[sudo] password for yunwei: 
+[2022-08-07 02:13:39.601] [info] eunomia run in cmd...
+[2022-08-07 02:13:40.534] [info] press 'Ctrl C' key to exit...
+PID    COMM        IP  SRC              DEST             PORT  LAT(ms) CONATINER/OS
+3477   openresty    4  172.19.0.7       172.19.0.5       2379  0.05    docker-apisix_apisix_1
+3483   openresty    4  172.19.0.7       172.19.0.5       2379  0.08    docker-apisix_apisix_1
+3477   openresty    4  172.19.0.7       172.19.0.5       2379  0.04    docker-apisix_apisix_1
+3478   openresty    4  172.19.0.7       172.19.0.5       2379  0.05    docker-apisix_apisix_1
+3478   openresty    4  172.19.0.7       172.19.0.5       2379  0.03    docker-apisix_apisix_1
+3478   openresty    4  172.19.0.7       172.19.0.5       2379  0.03    docker-apisix_apisix_1
+
+

还可以使用 eunomia 作为 prometheus exporter,在运行上述命令之后,打开 prometheus 自带的可视化面板:

+

使用下述查询命令即可看到延时的统计图表:

+
  rate(eunomia_observed_tcpconnlat_v4_histogram_sum[5m])
+/
+  rate(eunomia_observed_tcpconnlat_v4_histogram_count[5m])
+
+

结果:

+

result

+

总结

+

通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheusgrafana 等工具进行网络性能分析。

+
+

Eunomia 是一个使用 C/C++ 开发的基于 eBPF的轻量级,高性能云原生监控工具,旨在帮助用户了解容器的各项行为、监控可疑的容器安全事件,力求提供覆盖容器全生命周期的轻量级开源监控解决方案。它使用 Linux eBPF 技术在运行时跟踪您的系统和应用程序,并分析收集的事件以检测可疑的行为模式。目前,它包含性能分析、容器集群网络可视化分析*、容器安全感知告警、一键部署、持久化存储监控等功能,提供了多样化的 ebpf 追踪点。其核心导出器/命令行工具最小仅需要约 4MB 大小的二进制程序,即可在支持的 Linux 内核上启动。

+
+

项目地址:https://github.com/yunwei37/Eunomia

+

参考资料

+
    +
  1. http://kerneltravel.net/blog/2020/tcpconnlat/
  2. +
  3. https://network.51cto.com/article/640631.html
  4. +
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/13-tcpconnlat/tcpconnlat1.png b/13-tcpconnlat/tcpconnlat1.png new file mode 100644 index 0000000..4fd5eda Binary files /dev/null and b/13-tcpconnlat/tcpconnlat1.png differ diff --git a/13-tcpconnlat/tcpconnlat_p.png b/13-tcpconnlat/tcpconnlat_p.png new file mode 100644 index 0000000..74caa9a Binary files /dev/null and b/13-tcpconnlat/tcpconnlat_p.png differ diff --git a/14-tcpstates/.gitignore b/14-tcpstates/.gitignore new file mode 100644 index 0000000..c610807 --- /dev/null +++ b/14-tcpstates/.gitignore @@ -0,0 +1,5 @@ +.vscode +package.json +eunomia-exporter +ecli + \ No newline at end of file diff --git a/14-tcpstates/index.html b/14-tcpstates/index.html new file mode 100644 index 0000000..a0fd265 --- /dev/null +++ b/14-tcpstates/index.html @@ -0,0 +1,330 @@ + + + + + + eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时

+

tcpstates 是一个追踪当前系统上的TCP套接字的TCP状态的程序,主要通过跟踪内核跟踪点 inet_sock_set_state 来实现。统计数据通过 perf_event向用户态传输。

+
SEC("tracepoint/sock/inet_sock_set_state")
+int handle_set_state(struct trace_event_raw_inet_sock_set_state *ctx)
+
+

在套接字改变状态处附加一个eBPF跟踪函数。

+
 if (ctx->protocol != IPPROTO_TCP)
+  return 0;
+
+ if (target_family && target_family != family)
+  return 0;
+
+ if (filter_by_sport && !bpf_map_lookup_elem(&sports, &sport))
+  return 0;
+
+ if (filter_by_dport && !bpf_map_lookup_elem(&dports, &dport))
+  return 0;
+
+

跟踪函数被调用后,先判断当前改变状态的套接字是否满足我们需要的过滤条件,如果不满足则不进行记录。

+
 tsp = bpf_map_lookup_elem(&timestamps, &sk);
+ ts = bpf_ktime_get_ns();
+ if (!tsp)
+  delta_us = 0;
+ else
+  delta_us = (ts - *tsp) / 1000;
+
+ event.skaddr = (__u64)sk;
+ event.ts_us = ts / 1000;
+ event.delta_us = delta_us;
+ event.pid = bpf_get_current_pid_tgid() >> 32;
+ event.oldstate = ctx->oldstate;
+ event.newstate = ctx->newstate;
+ event.family = family;
+ event.sport = sport;
+ event.dport = dport;
+ bpf_get_current_comm(&event.task, sizeof(event.task));
+
+ if (family == AF_INET) {
+  bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_rcv_saddr);
+  bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_daddr);
+ } else { /* family == AF_INET6 */
+  bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32);
+  bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_v6_daddr.in6_u.u6_addr32);
+ }
+
+

使用状态改变相关填充event结构体。

+
    +
  • 此处使用了libbpf 的 CO-RE 支持。
  • +
+
 bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event));
+
+

将事件结构体发送至用户态程序。

+
 if (ctx->newstate == TCP_CLOSE)
+  bpf_map_delete_elem(&timestamps, &sk);
+ else
+  bpf_map_update_elem(&timestamps, &sk, &ts, BPF_ANY);
+
+

根据这个TCP链接的新状态,决定是更新下时间戳记录还是不再记录它的时间戳。

+

用户态程序

+
    while (!exiting) {
+        err = perf_buffer__poll(pb, PERF_POLL_TIMEOUT_MS);
+        if (err < 0 && err != -EINTR) {
+            warn("error polling perf buffer: %s\n", strerror(-err));
+            goto cleanup;
+        }
+        /* reset err to return 0 if exiting */
+        err = 0;
+    }
+
+

不停轮询内核程序所发过来的 perf event

+
static void handle_event(void* ctx, int cpu, void* data, __u32 data_sz) {
+    char ts[32], saddr[26], daddr[26];
+    struct event* e = data;
+    struct tm* tm;
+    int family;
+    time_t t;
+
+    if (emit_timestamp) {
+        time(&t);
+        tm = localtime(&t);
+        strftime(ts, sizeof(ts), "%H:%M:%S", tm);
+        printf("%8s ", ts);
+    }
+
+    inet_ntop(e->family, &e->saddr, saddr, sizeof(saddr));
+    inet_ntop(e->family, &e->daddr, daddr, sizeof(daddr));
+    if (wide_output) {
+        family = e->family == AF_INET ? 4 : 6;
+        printf(
+            "%-16llx %-7d %-16s %-2d %-26s %-5d %-26s %-5d %-11s -> %-11s "
+            "%.3f\n",
+            e->skaddr, e->pid, e->task, family, saddr, e->sport, daddr,
+            e->dport, tcp_states[e->oldstate], tcp_states[e->newstate],
+            (double)e->delta_us / 1000);
+    } else {
+        printf(
+            "%-16llx %-7d %-10.10s %-15s %-5d %-15s %-5d %-11s -> %-11s %.3f\n",
+            e->skaddr, e->pid, e->task, saddr, e->sport, daddr, e->dport,
+            tcp_states[e->oldstate], tcp_states[e->newstate],
+            (double)e->delta_us / 1000);
+    }
+}
+
+static void handle_lost_events(void* ctx, int cpu, __u64 lost_cnt) {
+    warn("lost %llu events on CPU #%d\n", lost_cnt, cpu);
+}
+
+

收到事件后所调用对应的处理函数并进行输出打印。

+

编译运行

+
    +
  • git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned
  • +
  • libbpf-bootstrap目录下的文件复制到 libbpf-bootstrap-cloned/examples/c
  • +
  • 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpstates
  • +
  • libbpf-bootstrap-cloned/examples/c 下运行 make tcpstates
  • +
  • sudo ./tcpstates
  • +
+

效果

+
root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpstates 
+SKADDR           PID     COMM       LADDR           LPORT RADDR           RPORT OLDSTATE    -> NEWSTATE    MS
+ffff9bf61bb62bc0 164978  node       192.168.88.15   0     52.178.17.2     443   CLOSE       -> SYN_SENT    0.000
+ffff9bf61bb62bc0 0       swapper/0  192.168.88.15   41596 52.178.17.2     443   SYN_SENT    -> ESTABLISHED 225.794
+ffff9bf61bb62bc0 0       swapper/0  192.168.88.15   41596 52.178.17.2     443   ESTABLISHED -> CLOSE_WAIT  901.454
+ffff9bf61bb62bc0 164978  node       192.168.88.15   41596 52.178.17.2     443   CLOSE_WAIT  -> LAST_ACK    0.793
+ffff9bf61bb62bc0 164978  node       192.168.88.15   41596 52.178.17.2     443   LAST_ACK    -> LAST_ACK    0.086
+ffff9bf61bb62bc0 228759  kworker/u6 192.168.88.15   41596 52.178.17.2     443   LAST_ACK    -> CLOSE       0.193
+ffff9bf6d8ee88c0 229832  redis-serv 0.0.0.0         6379  0.0.0.0         0     CLOSE       -> LISTEN      0.000
+ffff9bf6d8ee88c0 229832  redis-serv 0.0.0.0         6379  0.0.0.0         0     LISTEN      -> CLOSE       1.763
+ffff9bf7109d6900 88750   node       127.0.0.1       39755 127.0.0.1       50966 ESTABLISHED -> FIN_WAIT1   0.000
+
+

对于输出的详细解释,详见 README.md

+

总结

+

这里的代码修改自 https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpstates.bpf.c

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/14-tcpstates/libbpf-bootstrap/tcpstates.bpf.c b/14-tcpstates/libbpf-bootstrap/tcpstates.bpf.c new file mode 100644 index 0000000..0f9ed24 --- /dev/null +++ b/14-tcpstates/libbpf-bootstrap/tcpstates.bpf.c @@ -0,0 +1,102 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +/* Copyright (c) 2021 Hengqi Chen */ +#include +#include +#include +#include +#include "tcpstates.h" + +#define MAX_ENTRIES 10240 +#define AF_INET 2 +#define AF_INET6 10 + +const volatile bool filter_by_sport = false; +const volatile bool filter_by_dport = false; +const volatile short target_family = 0; + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, __u16); + __type(value, __u16); +} sports SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, __u16); + __type(value, __u16); +} dports SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, struct sock *); + __type(value, __u64); +} timestamps SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); + __uint(key_size, sizeof(__u32)); + __uint(value_size, sizeof(__u32)); +} events SEC(".maps"); + +SEC("tracepoint/sock/inet_sock_set_state") +int handle_set_state(struct trace_event_raw_inet_sock_set_state *ctx) +{ + struct sock *sk = (struct sock *)ctx->skaddr; + __u16 family = ctx->family; + __u16 sport = ctx->sport; + __u16 dport = ctx->dport; + __u64 *tsp, delta_us, ts; + struct event event = {}; + + if (ctx->protocol != IPPROTO_TCP) + return 0; + + if (target_family && target_family != family) + return 0; + + if (filter_by_sport && !bpf_map_lookup_elem(&sports, &sport)) + return 0; + + if (filter_by_dport && !bpf_map_lookup_elem(&dports, &dport)) + return 0; + + tsp = bpf_map_lookup_elem(×tamps, &sk); + ts = bpf_ktime_get_ns(); + if (!tsp) + delta_us = 0; + else + delta_us = (ts - *tsp) / 1000; + + event.skaddr = (__u64)sk; + event.ts_us = ts / 1000; + event.delta_us = delta_us; + event.pid = bpf_get_current_pid_tgid() >> 32; + event.oldstate = ctx->oldstate; + event.newstate = ctx->newstate; + event.family = family; + event.sport = sport; + event.dport = dport; + bpf_get_current_comm(&event.task, sizeof(event.task)); + + if (family == AF_INET) { + bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_rcv_saddr); + bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_daddr); + } else { /* family == AF_INET6 */ + bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); + bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_v6_daddr.in6_u.u6_addr32); + } + + bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); + + if (ctx->newstate == TCP_CLOSE) + bpf_map_delete_elem(×tamps, &sk); + else + bpf_map_update_elem(×tamps, &sk, &ts, BPF_ANY); + + return 0; +} + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; diff --git a/14-tcpstates/libbpf-bootstrap/tcpstates.c b/14-tcpstates/libbpf-bootstrap/tcpstates.c new file mode 100644 index 0000000..ecdeb67 --- /dev/null +++ b/14-tcpstates/libbpf-bootstrap/tcpstates.c @@ -0,0 +1,546 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) + +/* + * tcpstates Trace TCP session state changes with durations. + * Copyright (c) 2021 Hengqi Chen + * + * Based on tcpstates(8) from BCC by Brendan Gregg. + * 18-Dec-2021 Hengqi Chen Created this. + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +// #include "btf_helpers.h" +#include "tcpstates.h" +#include "tcpstates.skel.h" +// #include "trace_helpers.h" + +#define PERF_BUFFER_PAGES 16 +#define PERF_POLL_TIMEOUT_MS 100 +#define warn(...) fprintf(stderr, __VA_ARGS__) + +static volatile sig_atomic_t exiting = 0; + +static bool emit_timestamp = false; +static short target_family = 0; +static char* target_sports = NULL; +static char* target_dports = NULL; +static bool wide_output = false; +static bool verbose = false; +static const char* tcp_states[] = { + [1] = "ESTABLISHED", [2] = "SYN_SENT", [3] = "SYN_RECV", + [4] = "FIN_WAIT1", [5] = "FIN_WAIT2", [6] = "TIME_WAIT", + [7] = "CLOSE", [8] = "CLOSE_WAIT", [9] = "LAST_ACK", + [10] = "LISTEN", [11] = "CLOSING", [12] = "NEW_SYN_RECV", + [13] = "UNKNOWN", +}; + +const char* argp_program_version = "tcpstates 1.0"; +const char* argp_program_bug_address = + "https://github.com/iovisor/bcc/tree/master/libbpf-tools"; +const char argp_program_doc[] = + "Trace TCP session state changes and durations.\n" + "\n" + "USAGE: tcpstates [-4] [-6] [-T] [-L lport] [-D dport]\n" + "\n" + "EXAMPLES:\n" + " tcpstates # trace all TCP state changes\n" + " tcpstates -T # include timestamps\n" + " tcpstates -L 80 # only trace local port 80\n" + " tcpstates -D 80 # only trace remote port 80\n"; + +static const struct argp_option opts[] = { + {"verbose", 'v', NULL, 0, "Verbose debug output"}, + {"timestamp", 'T', NULL, 0, "Include timestamp on output"}, + {"ipv4", '4', NULL, 0, "Trace IPv4 family only"}, + {"ipv6", '6', NULL, 0, "Trace IPv6 family only"}, + {"wide", 'w', NULL, 0, "Wide column output (fits IPv6 addresses)"}, + {"localport", 'L', "LPORT", 0, + "Comma-separated list of local ports to trace."}, + {"remoteport", 'D', "DPORT", 0, + "Comma-separated list of remote ports to trace."}, + {NULL, 'h', NULL, OPTION_HIDDEN, "Show the full help"}, + {}, +}; + +static error_t parse_arg(int key, char* arg, struct argp_state* state) { + long port_num; + char* port; + + switch (key) { + case 'v': + verbose = true; + break; + case 'T': + emit_timestamp = true; + break; + case '4': + target_family = AF_INET; + break; + case '6': + target_family = AF_INET6; + break; + case 'w': + wide_output = true; + break; + case 'L': + if (!arg) { + warn("No ports specified\n"); + argp_usage(state); + } + target_sports = strdup(arg); + port = strtok(arg, ","); + while (port) { + port_num = strtol(port, NULL, 10); + if (errno || port_num <= 0 || port_num > 65536) { + warn("Invalid ports: %s\n", arg); + argp_usage(state); + } + port = strtok(NULL, ","); + } + break; + case 'D': + if (!arg) { + warn("No ports specified\n"); + argp_usage(state); + } + target_dports = strdup(arg); + port = strtok(arg, ","); + while (port) { + port_num = strtol(port, NULL, 10); + if (errno || port_num <= 0 || port_num > 65536) { + warn("Invalid ports: %s\n", arg); + argp_usage(state); + } + port = strtok(NULL, ","); + } + break; + case 'h': + argp_state_help(state, stderr, ARGP_HELP_STD_HELP); + break; + default: + return ARGP_ERR_UNKNOWN; + } + return 0; +} + +static int libbpf_print_fn(enum libbpf_print_level level, + const char* format, + va_list args) { + if (level == LIBBPF_DEBUG && !verbose) + return 0; + + return vfprintf(stderr, format, args); +} + +static void sig_int(int signo) { + exiting = 1; +} + +static void handle_event(void* ctx, int cpu, void* data, __u32 data_sz) { + char ts[32], saddr[26], daddr[26]; + struct event* e = data; + struct tm* tm; + int family; + time_t t; + + if (emit_timestamp) { + time(&t); + tm = localtime(&t); + strftime(ts, sizeof(ts), "%H:%M:%S", tm); + printf("%8s ", ts); + } + + inet_ntop(e->family, &e->saddr, saddr, sizeof(saddr)); + inet_ntop(e->family, &e->daddr, daddr, sizeof(daddr)); + if (wide_output) { + family = e->family == AF_INET ? 4 : 6; + printf( + "%-16llx %-7d %-16s %-2d %-26s %-5d %-26s %-5d %-11s -> %-11s " + "%.3f\n", + e->skaddr, e->pid, e->task, family, saddr, e->sport, daddr, + e->dport, tcp_states[e->oldstate], tcp_states[e->newstate], + (double)e->delta_us / 1000); + } else { + printf( + "%-16llx %-7d %-10.10s %-15s %-5d %-15s %-5d %-11s -> %-11s %.3f\n", + e->skaddr, e->pid, e->task, saddr, e->sport, daddr, e->dport, + tcp_states[e->oldstate], tcp_states[e->newstate], + (double)e->delta_us / 1000); + } +} + +static void handle_lost_events(void* ctx, int cpu, __u64 lost_cnt) { + warn("lost %llu events on CPU #%d\n", lost_cnt, cpu); +} + +extern unsigned char _binary_min_core_btfs_tar_gz_start[] __attribute__((weak)); +extern unsigned char _binary_min_core_btfs_tar_gz_end[] __attribute__((weak)); + + +/* tar header from + * https://github.com/tklauser/libtar/blob/v1.2.20/lib/libtar.h#L39-L60 */ +struct tar_header { + char name[100]; + char mode[8]; + char uid[8]; + char gid[8]; + char size[12]; + char mtime[12]; + char chksum[8]; + char typeflag; + char linkname[100]; + char magic[6]; + char version[2]; + char uname[32]; + char gname[32]; + char devmajor[8]; + char devminor[8]; + char prefix[155]; + char padding[12]; +}; + +static char* tar_file_start(struct tar_header* tar, + const char* name, + int* length) { + while (tar->name[0]) { + sscanf(tar->size, "%o", length); + if (!strcmp(tar->name, name)) + return (char*)(tar + 1); + tar += 1 + (*length + 511) / 512; + } + return NULL; +} +#define FIELD_LEN 65 +#define ID_FMT "ID=%64s" +#define VERSION_FMT "VERSION_ID=\"%64s" + +struct os_info { + char id[FIELD_LEN]; + char version[FIELD_LEN]; + char arch[FIELD_LEN]; + char kernel_release[FIELD_LEN]; +}; + +static struct os_info* get_os_info() { + struct os_info* info = NULL; + struct utsname u; + size_t len = 0; + ssize_t read; + char* line = NULL; + FILE* f; + + if (uname(&u) == -1) + return NULL; + + f = fopen("/etc/os-release", "r"); + if (!f) + return NULL; + + info = calloc(1, sizeof(*info)); + if (!info) + goto out; + + strncpy(info->kernel_release, u.release, FIELD_LEN); + strncpy(info->arch, u.machine, FIELD_LEN); + + while ((read = getline(&line, &len, f)) != -1) { + if (sscanf(line, ID_FMT, info->id) == 1) + continue; + + if (sscanf(line, VERSION_FMT, info->version) == 1) { + /* remove '"' suffix */ + info->version[strlen(info->version) - 1] = 0; + continue; + } + } + +out: + free(line); + fclose(f); + + return info; +} +#define INITIAL_BUF_SIZE (1024 * 1024 * 4) /* 4MB */ + +/* adapted from https://zlib.net/zlib_how.html */ +static int inflate_gz(unsigned char* src, + int src_size, + unsigned char** dst, + int* dst_size) { + size_t size = INITIAL_BUF_SIZE; + size_t next_size = size; + z_stream strm; + void* tmp; + int ret; + + strm.zalloc = Z_NULL; + strm.zfree = Z_NULL; + strm.opaque = Z_NULL; + strm.avail_in = 0; + strm.next_in = Z_NULL; + + ret = inflateInit2(&strm, 16 + MAX_WBITS); + if (ret != Z_OK) + return -EINVAL; + + *dst = malloc(size); + if (!*dst) + return -ENOMEM; + + strm.next_in = src; + strm.avail_in = src_size; + + /* run inflate() on input until it returns Z_STREAM_END */ + do { + strm.next_out = *dst + strm.total_out; + strm.avail_out = next_size; + ret = inflate(&strm, Z_NO_FLUSH); + if (ret != Z_OK && ret != Z_STREAM_END) + goto out_err; + /* we need more space */ + if (strm.avail_out == 0) { + next_size = size; + size *= 2; + tmp = realloc(*dst, size); + if (!tmp) { + ret = -ENOMEM; + goto out_err; + } + *dst = tmp; + } + } while (ret != Z_STREAM_END); + + *dst_size = strm.total_out; + + /* clean up and return */ + ret = inflateEnd(&strm); + if (ret != Z_OK) { + ret = -EINVAL; + goto out_err; + } + return 0; + +out_err: + free(*dst); + *dst = NULL; + return ret; +} +struct btf *btf__load_vmlinux_btf(void); +void btf__free(struct btf *btf); +static bool vmlinux_btf_exists(void) { + struct btf* btf; + int err; + + btf = btf__load_vmlinux_btf(); + err = libbpf_get_error(btf); + if (err) + return false; + + btf__free(btf); + return true; +} + +static int ensure_core_btf(struct bpf_object_open_opts* opts) { + char name_fmt[] = "./%s/%s/%s/%s.btf"; + char btf_path[] = "/tmp/bcc-libbpf-tools.btf.XXXXXX"; + struct os_info* info = NULL; + unsigned char* dst_buf = NULL; + char* file_start; + int dst_size = 0; + char name[100]; + FILE* dst = NULL; + int ret; + + /* do nothing if the system provides BTF */ + if (vmlinux_btf_exists()) + return 0; + + /* compiled without min core btfs */ + if (!_binary_min_core_btfs_tar_gz_start) + return -EOPNOTSUPP; + + info = get_os_info(); + if (!info) + return -errno; + + ret = mkstemp(btf_path); + if (ret < 0) { + ret = -errno; + goto out; + } + + dst = fdopen(ret, "wb"); + if (!dst) { + ret = -errno; + goto out; + } + + ret = snprintf(name, sizeof(name), name_fmt, info->id, info->version, + info->arch, info->kernel_release); + if (ret < 0 || ret == sizeof(name)) { + ret = -EINVAL; + goto out; + } + + ret = inflate_gz( + _binary_min_core_btfs_tar_gz_start, + _binary_min_core_btfs_tar_gz_end - _binary_min_core_btfs_tar_gz_start, + &dst_buf, &dst_size); + if (ret < 0) + goto out; + + ret = 0; + file_start = tar_file_start((struct tar_header*)dst_buf, name, &dst_size); + if (!file_start) { + ret = -EINVAL; + goto out; + } + + if (fwrite(file_start, 1, dst_size, dst) != dst_size) { + ret = -ferror(dst); + goto out; + } + + opts->btf_custom_path = strdup(btf_path); + if (!opts->btf_custom_path) + ret = -ENOMEM; + +out: + free(info); + fclose(dst); + free(dst_buf); + + return ret; +} + +static void cleanup_core_btf(struct bpf_object_open_opts* opts) { + if (!opts) + return; + + if (!opts->btf_custom_path) + return; + + unlink(opts->btf_custom_path); + free((void*)opts->btf_custom_path); +} + +int main(int argc, char** argv) { + LIBBPF_OPTS(bpf_object_open_opts, open_opts); + static const struct argp argp = { + .options = opts, + .parser = parse_arg, + .doc = argp_program_doc, + }; + struct perf_buffer* pb = NULL; + struct tcpstates_bpf* obj; + int err, port_map_fd; + short port_num; + char* port; + + err = argp_parse(&argp, argc, argv, 0, NULL, NULL); + if (err) + return err; + + libbpf_set_strict_mode(LIBBPF_STRICT_ALL); + libbpf_set_print(libbpf_print_fn); + + err = ensure_core_btf(&open_opts); + if (err) { + warn("failed to fetch necessary BTF for CO-RE: %s\n", strerror(-err)); + return 1; + } + + obj = tcpstates_bpf__open_opts(&open_opts); + if (!obj) { + warn("failed to open BPF object\n"); + return 1; + } + + obj->rodata->filter_by_sport = target_sports != NULL; + obj->rodata->filter_by_dport = target_dports != NULL; + obj->rodata->target_family = target_family; + + err = tcpstates_bpf__load(obj); + if (err) { + warn("failed to load BPF object: %d\n", err); + goto cleanup; + } + + if (target_sports) { + port_map_fd = bpf_map__fd(obj->maps.sports); + port = strtok(target_sports, ","); + while (port) { + port_num = strtol(port, NULL, 10); + bpf_map_update_elem(port_map_fd, &port_num, &port_num, BPF_ANY); + port = strtok(NULL, ","); + } + } + if (target_dports) { + port_map_fd = bpf_map__fd(obj->maps.dports); + port = strtok(target_dports, ","); + while (port) { + port_num = strtol(port, NULL, 10); + bpf_map_update_elem(port_map_fd, &port_num, &port_num, BPF_ANY); + port = strtok(NULL, ","); + } + } + + err = tcpstates_bpf__attach(obj); + if (err) { + warn("failed to attach BPF programs: %d\n", err); + goto cleanup; + } + + pb = perf_buffer__new(bpf_map__fd(obj->maps.events), PERF_BUFFER_PAGES, + handle_event, handle_lost_events, NULL, NULL); + if (!pb) { + err = -errno; + warn("failed to open perf buffer: %d\n", err); + goto cleanup; + } + + if (signal(SIGINT, sig_int) == SIG_ERR) { + warn("can't set signal handler: %s\n", strerror(errno)); + err = 1; + goto cleanup; + } + + if (emit_timestamp) + printf("%-8s ", "TIME(s)"); + if (wide_output) + printf( + "%-16s %-7s %-16s %-2s %-26s %-5s %-26s %-5s %-11s -> %-11s %s\n", + "SKADDR", "PID", "COMM", "IP", "LADDR", "LPORT", "RADDR", "RPORT", + "OLDSTATE", "NEWSTATE", "MS"); + else + printf("%-16s %-7s %-10s %-15s %-5s %-15s %-5s %-11s -> %-11s %s\n", + "SKADDR", "PID", "COMM", "LADDR", "LPORT", "RADDR", "RPORT", + "OLDSTATE", "NEWSTATE", "MS"); + + while (!exiting) { + err = perf_buffer__poll(pb, PERF_POLL_TIMEOUT_MS); + if (err < 0 && err != -EINTR) { + warn("error polling perf buffer: %s\n", strerror(-err)); + goto cleanup; + } + /* reset err to return 0 if exiting */ + err = 0; + } + +cleanup: + perf_buffer__free(pb); + tcpstates_bpf__destroy(obj); + cleanup_core_btf(&open_opts); + + return err != 0; +} diff --git a/14-tcpstates/libbpf-bootstrap/tcpstates.h b/14-tcpstates/libbpf-bootstrap/tcpstates.h new file mode 100644 index 0000000..31f2b61 --- /dev/null +++ b/14-tcpstates/libbpf-bootstrap/tcpstates.h @@ -0,0 +1,23 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +/* Copyright (c) 2021 Hengqi Chen */ +#ifndef __TCPSTATES_H +#define __TCPSTATES_H + +#define TASK_COMM_LEN 16 + +struct event { + unsigned __int128 saddr; + unsigned __int128 daddr; + __u64 skaddr; + __u64 ts_us; + __u64 delta_us; + __u32 pid; + int oldstate; + int newstate; + __u16 family; + __u16 sport; + __u16 dport; + char task[TASK_COMM_LEN]; +}; + +#endif /* __TCPSTATES_H */ diff --git a/14-tcpstates/tcpstates.bpf.c b/14-tcpstates/tcpstates.bpf.c new file mode 100644 index 0000000..b479ca4 --- /dev/null +++ b/14-tcpstates/tcpstates.bpf.c @@ -0,0 +1,109 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +/* Copyright (c) 2021 Hengqi Chen */ +#include +#include +#include +#include +#include "tcpstates.bpf.h" + +#define MAX_ENTRIES 10240 +#define AF_INET 2 +#define AF_INET6 10 + +const volatile bool filter_by_sport = false; +const volatile bool filter_by_dport = false; +const volatile short target_family = 0; + +struct +{ + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, __u16); + __type(value, __u16); +} sports SEC(".maps"); + +struct +{ + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, __u16); + __type(value, __u16); +} dports SEC(".maps"); + +struct +{ + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, struct sock *); + __type(value, __u64); +} timestamps SEC(".maps"); + +struct +{ + __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); + __uint(key_size, sizeof(__u32)); + __uint(value_size, sizeof(__u32)); +} events SEC(".maps"); + +SEC("tracepoint/sock/inet_sock_set_state") +int handle_set_state(struct trace_event_raw_inet_sock_set_state *ctx) +{ + struct sock *sk = (struct sock *)ctx->skaddr; + __u16 family = ctx->family; + __u16 sport = ctx->sport; + __u16 dport = ctx->dport; + __u64 *tsp, delta_us, ts; + struct event event = {}; + + if (ctx->protocol != IPPROTO_TCP) + return 0; + + if (target_family && target_family != family) + return 0; + + if (filter_by_sport && !bpf_map_lookup_elem(&sports, &sport)) + return 0; + + if (filter_by_dport && !bpf_map_lookup_elem(&dports, &dport)) + return 0; + + tsp = bpf_map_lookup_elem(×tamps, &sk); + ts = bpf_ktime_get_ns(); + if (!tsp) + delta_us = 0; + else + delta_us = (ts - *tsp) / 1000; + + event.skaddr = (__u64)sk; + event.ts_us = ts / 1000; + event.delta_us = delta_us; + event.pid = bpf_get_current_pid_tgid() >> 32; + event.oldstate = ctx->oldstate; + event.newstate = ctx->newstate; + event.family = family; + event.sport = sport; + event.dport = dport; + bpf_get_current_comm(&event.task, sizeof(event.task)); + + if (family == AF_INET) + { + bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_rcv_saddr); + bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_daddr); + } + else + { /* family == AF_INET6 */ + bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); + bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_v6_daddr.in6_u.u6_addr32); + } + + bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); + + if (ctx->newstate == TCP_CLOSE) + bpf_map_delete_elem(×tamps, &sk); + else + bpf_map_update_elem(×tamps, &sk, &ts, BPF_ANY); + + return 0; +} + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; diff --git a/14-tcpstates/tcpstates.bpf.h b/14-tcpstates/tcpstates.bpf.h new file mode 100644 index 0000000..9084301 --- /dev/null +++ b/14-tcpstates/tcpstates.bpf.h @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +/* Copyright (c) 2021 Hengqi Chen */ +#ifndef __TCPSTATES_H +#define __TCPSTATES_H + +#define TASK_COMM_LEN 16 + +struct event +{ + unsigned __int128 saddr; + unsigned __int128 daddr; + __u64 skaddr; + __u64 ts_us; + __u64 delta_us; + __u32 pid; + int oldstate; + int newstate; + __u16 family; + __u16 sport; + __u16 dport; + char task[TASK_COMM_LEN]; +}; + +#endif /* __TCPSTATES_H */ diff --git a/15-tcprtt/index.html b/15-tcprtt/index.html new file mode 100644 index 0000000..b9a2f19 --- /dev/null +++ b/15-tcprtt/index.html @@ -0,0 +1,212 @@ + + + + + + eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间

+

背景

+

网络质量在互联网社会中是一个很重要的因素。导致网络质量差的因素有很多,可能是硬件因素导致,也可能是程序 +写的不好导致。为了能更好地定位网络问题,tcprtt 工具被提出。它可以监测TCP链接的往返时间,从而分析 +网络质量,帮助用户定位问题来源。

+

当有tcp链接建立时,该工具会自动根据当前系统的支持情况,选择合适的执行函数。 +在执行函数中,tcprtt会收集tcp链接的各项基本底薪,包括地址,源端口,目标端口,耗时 +等等,并将其更新到直方图的map中。运行结束后通过用户态代码,展现给用户。

+

编写 eBPF 程序

+

TODO

+

编译运行

+

TODO

+

总结

+

TODO

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/16-memleak/index.html b/16-memleak/index.html new file mode 100644 index 0000000..7a3aa69 --- /dev/null +++ b/16-memleak/index.html @@ -0,0 +1,215 @@ + + + + + + eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏

+

背景

+

内存泄漏对于一个程序而言是一个很严重的问题。倘若放任一个存在内存泄漏的程序运行,久而久之 +系统的内存会慢慢被耗尽,导致程序运行速度显著下降。为了避免这一情况,memleak工具被提出。 +它可以跟踪并匹配内存分配和释放的请求,并且打印出已经被分配资源而又尚未释放的堆栈信息。

+

实现原理

+

memleak 的实现逻辑非常直观。它在我们常用的动态分配内存的函数接口路径上挂载了ebpf程序, +同时在free上也挂载了ebpf程序。在调用分配内存相关函数时,memleak 会记录调用者的pid,分配得到 +内存的地址,分配得到的内存大小等基本数据。在free之后,memeleak则会去map中删除记录的对应的分配 +信息。对于用户态常用的分配函数 malloc, calloc 等,memleak使用了 uporbe 技术实现挂载,对于 +内核态的函数,比如 kmalloc 等,memleak 则使用了现有的 tracepoint 来实现。

+

编写 eBPF 程序

+

TODO

+

编译运行

+

TODO

+

总结

+

TODO

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/17-biopattern/index.html b/17-biopattern/index.html new file mode 100644 index 0000000..3499923 --- /dev/null +++ b/17-biopattern/index.html @@ -0,0 +1,211 @@ + + + + + + eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O

+

背景

+

Biopattern 可以统计随机/顺序磁盘I/O次数的比例。

+

TODO

+

实现原理

+

Biopattern 的ebpf代码在 tracepoint/block/block_rq_complete 挂载点下实现。在磁盘完成IO请求 +后,程序会经过此挂载点。Biopattern 内部存有一张以设备号为主键的哈希表,当程序经过挂载点时, Biopattern +会获得操作信息,根据哈希表中该设备的上一次操作记录来判断本次操作是随机IO还是顺序IO,并更新操作计数。

+

编写 eBPF 程序

+

TODO

+

总结

+

Biopattern 可以展现随机/顺序磁盘I/O次数的比例,对于开发者把握整体I/O情况有较大帮助。

+

TODO

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/18-further-reading/index.html b/18-further-reading/index.html new file mode 100644 index 0000000..4561688 --- /dev/null +++ b/18-further-reading/index.html @@ -0,0 +1,200 @@ + + + + + + 更多的参考资料 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

更多的参考资料

+

TODO

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/19-lsm-connect/.gitignore b/19-lsm-connect/.gitignore new file mode 100644 index 0000000..7d5aebf --- /dev/null +++ b/19-lsm-connect/.gitignore @@ -0,0 +1,6 @@ +.vscode +package.json +*.o +*.skel.json +*.skel.yaml +package.yaml diff --git a/19-lsm-connect/index.html b/19-lsm-connect/index.html new file mode 100644 index 0000000..483c698 --- /dev/null +++ b/19-lsm-connect/index.html @@ -0,0 +1,219 @@ + + + + + + eBPF 入门实践教程:使用 LSM 进行安全检测防御 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门实践教程:使用 LSM 进行安全检测防御

+

背景

+

TODO

+

LSM 概述

+

TODO

+

编写 eBPF 程序

+

TODO

+

编译运行

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

or compile with ecc:

+
$ ecc lsm-connect.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

Run:

+
sudo ecli  examples/bpftools/lsm-connect/package.json
+
+

总结

+

TODO

+

参考:https://github.com/leodido/demo-cloud-native-ebpf-day

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/19-lsm-connect/lsm-connect.bpf.c b/19-lsm-connect/lsm-connect.bpf.c new file mode 100644 index 0000000..c731c93 --- /dev/null +++ b/19-lsm-connect/lsm-connect.bpf.c @@ -0,0 +1,41 @@ +#include "vmlinux.h" +#include +#include +#include + +char LICENSE[] SEC("license") = "GPL"; + +#define EPERM 1 +#define AF_INET 2 + +const __u32 blockme = 16843009; // 1.1.1.1 -> int + +SEC("lsm/socket_connect") +int BPF_PROG(restrict_connect, struct socket *sock, struct sockaddr *address, int addrlen, int ret) +{ + // Satisfying "cannot override a denial" rule + if (ret != 0) + { + return ret; + } + + // Only IPv4 in this example + if (address->sa_family != AF_INET) + { + return 0; + } + + // Cast the address to an IPv4 socket address + struct sockaddr_in *addr = (struct sockaddr_in *)address; + + // Where do you want to go? + __u32 dest = addr->sin_addr.s_addr; + bpf_printk("lsm: found connect to %d", dest); + + if (dest == blockme) + { + bpf_printk("lsm: blocking %d", dest); + return -EPERM; + } + return 0; +} diff --git a/2-kprobe-unlink/.gitignore b/2-kprobe-unlink/.gitignore new file mode 100644 index 0000000..f0f4c81 --- /dev/null +++ b/2-kprobe-unlink/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +*.o +*.skel.json +*.skel.yaml +package.yaml +ecli diff --git a/2-kprobe-unlink/index.html b/2-kprobe-unlink/index.html new file mode 100644 index 0000000..c8dfe62 --- /dev/null +++ b/2-kprobe-unlink/index.html @@ -0,0 +1,276 @@ + + + + + + eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第二篇,在 eBPF 中使用 kprobe 捕获 unlink 系统调用。

+

kprobes技术背景

+

开发人员在内核或者模块的调试过程中,往往会需要要知道其中的一些函数有无被调用、何时被调用、执行是否正确以及函数的入参和返回值是什么等等。比较简单的做法是在内核代码对应的函数中添加日志打印信息,但这种方式往往需要重新编译内核或模块,重新启动设备之类的,操作较为复杂甚至可能会破坏原有的代码执行过程。

+

而利用kprobes技术,用户可以定义自己的回调函数,然后在内核或者模块中几乎所有的函数中(有些函数是不可探测的,例如kprobes自身的相关实现函数,后文会有详细说明)动态的插入探测点,当内核执行流程执行到指定的探测函数时,会调用该回调函数,用户即可收集所需的信息了,同时内核最后还会回到原本的正常执行流程。如果用户已经收集足够的信息,不再需要继续探测,则同样可以动态地移除探测点。因此kprobes技术具有对内核执行流程影响小和操作方便的优点。

+

kprobes技术包括的3种探测手段分别时kprobe、jprobe和kretprobe。首先kprobe是最基本的探测方式,是实现后两种的基础,它可以在任意的位置放置探测点(就连函数内部的某条指令处也可以),它提供了探测点的调用前、调用后和内存访问出错3种回调方式,分别是pre_handler、post_handler和fault_handler,其中pre_handler函数将在被探测指令被执行前回调,post_handler会在被探测指令执行完毕后回调(注意不是被探测函数),fault_handler会在内存访问出错时被调用;jprobe基于kprobe实现,它用于获取被探测函数的入参值;最后kretprobe从名字中就可以看出其用途了,它同样基于kprobe实现,用于获取被探测函数的返回值。

+

kprobes的技术原理并不仅仅包含存软件的实现方案,它也需要硬件架构提供支持。其中涉及硬件架构相关的是CPU的异常处理和单步调试技术,前者用于让程序的执行流程陷入到用户注册的回调函数中去,而后者则用于单步执行被探测点指令,因此并不是所有的架构均支持,目前kprobes技术已经支持多种架构,包括i386、x86_64、ppc64、ia64、sparc64、arm、ppc和mips(有些架构实现可能并不完全,具体可参考内核的Documentation/kprobes.txt)。

+

kprobes的特点与使用限制:

+
    +
  1. kprobes允许在同一个被被探测位置注册多个kprobe,但是目前jprobe却不可以;同时也不允许以其他的jprobe回调函数和kprobe的post_handler回调函数作为被探测点。
  2. +
  3. 一般情况下,可以探测内核中的任何函数,包括中断处理函数。不过在kernel/kprobes.c和arch/*/kernel/kprobes.c程序中用于实现kprobes自身的函数是不允许被探测的,另外还有do_page_fault和notifier_call_chain;
  4. +
  5. 如果以一个内联函数为探测点,则kprobes可能无法保证对该函数的所有实例都注册探测点。由于gcc可能会自动将某些函数优化为内联函数,因此可能无法达到用户预期的探测效果;
  6. +
  7. 一个探测点的回调函数可能会修改被探测函数运行的上下文,例如通过修改内核的数据结构或者保存与struct pt_regs结构体中的触发探测器之前寄存器信息。因此kprobes可以被用来安装bug修复代码或者注入故障测试代码;
  8. +
  9. kprobes会避免在处理探测点函数时再次调用另一个探测点的回调函数,例如在printk()函数上注册了探测点,则在它的回调函数中可能再次调用printk函数,此时将不再触发printk探测点的回调,仅仅时增加了kprobe结构体中nmissed字段的数值;
  10. +
  11. 在kprobes的注册和注销过程中不会使用mutex锁和动态的申请内存;
  12. +
  13. kprobes回调函数的运行期间是关闭内核抢占的,同时也可能在关闭中断的情况下执行,具体要视CPU架构而定。因此不论在何种情况下,在回调函数中不要调用会放弃CPU的函数(如信号量、mutex锁等);
  14. +
  15. kretprobe通过替换返回地址为预定义的trampoline的地址来实现,因此栈回溯和gcc内嵌函数__builtin_return_address()调用将返回trampoline的地址而不是真正的被探测函数的返回地址;
  16. +
  17. 如果一个函数的调用次数和返回次数不相等,则在类似这样的函数上注册kretprobe将可能不会达到预期的效果,例如do_exit()函数会存在问题,而do_execve()函数和do_fork()函数不会;
  18. +
  19. 如果当在进入和退出一个函数时,CPU运行在非当前任务所有的栈上,那么往该函数上注册kretprobe可能会导致不可预料的后果,因此,kprobes不支持在X86_64的结构下为__switch_to()函数注册kretprobe,将直接返回-EINVAL。
  20. +
+

kprobe

+
#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include <bpf/bpf_core_read.h>
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+SEC("kprobe/do_unlinkat")
+int BPF_KPROBE(do_unlinkat, int dfd, struct filename *name)
+{
+ pid_t pid;
+ const char *filename;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ filename = BPF_CORE_READ(name, name);
+ bpf_printk("KPROBE ENTRY pid = %d, filename = %s\n", pid, filename);
+ return 0;
+}
+
+SEC("kretprobe/do_unlinkat")
+int BPF_KRETPROBE(do_unlinkat_exit, long ret)
+{
+ pid_t pid;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_printk("KPROBE EXIT: pid = %d, ret = %ld\n", pid, ret);
+ return 0;
+}
+
+

kprobe 是 eBPF 用于处理内核空间入口和出口(返回)探针(kprobe 和 kretprobe)的一个例子。它将 kprobe 和 kretprobe BPF 程序附加到 do_unlinkat() 函数上,并使用 bpf_printk() 宏分别记录 PID、文件名和返回值。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。

+

要编译这个程序,请使用 ecc 工具:

+
$ ecc kprobe-link.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

然后运行:

+
sudo ecli package.json
+
+

在另外一个窗口中:

+
touch test1
+rm test1
+touch test2
+rm test2
+
+

在 /sys/kernel/debug/tracing/trace_pipe 文件中,应该能看到类似下面的 kprobe 演示输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+              rm-9346    [005] d..3  4710.951696: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test1
+              rm-9346    [005] d..4  4710.951819: bpf_trace_printk: KPROBE EXIT: ret = 0
+              rm-9346    [005] d..3  4710.951852: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test2
+              rm-9346    [005] d..4  4710.951895: bpf_trace_printk: KPROBE EXIT: ret = 0
+
+

总结

+

通过本文的示例,我们学习了如何使用 eBPF 的 kprobe 和 kretprobe 捕获 unlink 系统调用。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

本文是 eBPF 入门开发实践教程的第二篇。下一篇文章将介绍如何在 eBPF 中使用 fentry 监测捕获 unlink 系统调用。

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/2-kprobe-unlink/kprobe-link.bpf.c b/2-kprobe-unlink/kprobe-link.bpf.c new file mode 100644 index 0000000..1b1009d --- /dev/null +++ b/2-kprobe-unlink/kprobe-link.bpf.c @@ -0,0 +1,30 @@ +// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause +/* Copyright (c) 2021 Sartura */ +#include "vmlinux.h" +#include +#include +#include + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; + +SEC("kprobe/do_unlinkat") +int BPF_KPROBE(do_unlinkat, int dfd, struct filename *name) +{ + pid_t pid; + const char *filename; + + pid = bpf_get_current_pid_tgid() >> 32; + filename = BPF_CORE_READ(name, name); + bpf_printk("KPROBE ENTRY pid = %d, filename = %s\n", pid, filename); + return 0; +} + +SEC("kretprobe/do_unlinkat") +int BPF_KRETPROBE(do_unlinkat_exit, long ret) +{ + pid_t pid; + + pid = bpf_get_current_pid_tgid() >> 32; + bpf_printk("KPROBE EXIT: pid = %d, ret = %ld\n", pid, ret); + return 0; +} diff --git a/20-tc/.gitignore b/20-tc/.gitignore new file mode 100755 index 0000000..bbee7c8 --- /dev/null +++ b/20-tc/.gitignore @@ -0,0 +1,10 @@ +.vscode +package.json +*.wasm +ewasm-skel.h +ecli +ewasm +*.o +*.skel.json +*.skel.yaml +package.yaml diff --git a/20-tc/index.html b/20-tc/index.html new file mode 100644 index 0000000..fda947f --- /dev/null +++ b/20-tc/index.html @@ -0,0 +1,265 @@ + + + + + + eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制

+

tc 程序示例

+
#include <vmlinux.h>
+#include <bpf/bpf_endian.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+#define TC_ACT_OK 0
+#define ETH_P_IP 0x0800 /* Internet Protocol packet */
+
+/// @tchook {"ifindex":1, "attach_point":"BPF_TC_INGRESS"}
+/// @tcopts {"handle":1, "priority":1}
+SEC("tc")
+int tc_ingress(struct __sk_buff *ctx)
+{
+    void *data_end = (void *)(__u64)ctx->data_end;
+    void *data = (void *)(__u64)ctx->data;
+    struct ethhdr *l2;
+    struct iphdr *l3;
+
+    if (ctx->protocol != bpf_htons(ETH_P_IP))
+        return TC_ACT_OK;
+
+    l2 = data;
+    if ((void *)(l2 + 1) > data_end)
+        return TC_ACT_OK;
+
+    l3 = (struct iphdr *)(l2 + 1);
+    if ((void *)(l3 + 1) > data_end)
+        return TC_ACT_OK;
+
+    bpf_printk("Got IP packet: tot_len: %d, ttl: %d", bpf_ntohs(l3->tot_len), l3->ttl);
+    return TC_ACT_OK;
+}
+
+char __license[] SEC("license") = "GPL";
+
+

这段代码定义了一个 eBPF 程序,它可以通过 Linux TC(Transmission Control)来捕获数据包并进行处理。在这个程序中,我们限定了只捕获 IPv4 协议的数据包,然后通过 bpf_printk 函数打印出数据包的总长度和 Time-To-Live(TTL)字段的值。

+

需要注意的是,我们在代码中使用了一些 BPF 库函数,例如 bpf_htons 和 bpf_ntohs 函数,它们用于进行网络字节序和主机字节序之间的转换。此外,我们还使用了一些注释来为 TC 提供附加点和选项信息。例如,在这段代码的开头,我们使用了以下注释:

+
/// @tchook {"ifindex":1, "attach_point":"BPF_TC_INGRESS"}
+/// @tcopts {"handle":1, "priority":1}
+
+

这些注释告诉 TC 将 eBPF 程序附加到网络接口的 ingress 附加点,并指定了 handle 和 priority 选项的值。

+

总之,这段代码实现了一个简单的 eBPF 程序,用于捕获数据包并打印出它们的信息。

+

编译运行

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

or compile with ecc:

+
$ ecc tc.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+
$ sudo ecli ./package.json
+...
+Successfully started! Please run `sudo cat /sys/kernel/debug/tracing/trace_pipe` to see output of the BPF program.
+......
+
+

The tc output in /sys/kernel/debug/tracing/trace_pipe should look +something like this:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+            node-1254811 [007] ..s1 8737831.671074: 0: Got IP packet: tot_len: 79, ttl: 64
+            sshd-1254728 [006] ..s1 8737831.674334: 0: Got IP packet: tot_len: 79, ttl: 64
+            sshd-1254728 [006] ..s1 8737831.674349: 0: Got IP packet: tot_len: 72, ttl: 64
+            node-1254811 [007] ..s1 8737831.674550: 0: Got IP packet: tot_len: 71, ttl: 64
+
+

总结

+

TODO

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/20-tc/tc.bpf.c b/20-tc/tc.bpf.c new file mode 100644 index 0000000..4b82864 --- /dev/null +++ b/20-tc/tc.bpf.c @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +/* Copyright (c) 2022 Hengqi Chen */ +#include +#include +#include +#include + +#define TC_ACT_OK 0 +#define ETH_P_IP 0x0800 /* Internet Protocol packet */ + +/// @tchook {"ifindex":1, "attach_point":"BPF_TC_INGRESS"} +/// @tcopts {"handle":1, "priority":1} +SEC("tc") +int tc_ingress(struct __sk_buff *ctx) +{ + void *data_end = (void *)(__u64)ctx->data_end; + void *data = (void *)(__u64)ctx->data; + struct ethhdr *l2; + struct iphdr *l3; + + if (ctx->protocol != bpf_htons(ETH_P_IP)) + return TC_ACT_OK; + + l2 = data; + if ((void *)(l2 + 1) > data_end) + return TC_ACT_OK; + + l3 = (struct iphdr *)(l2 + 1); + if ((void *)(l3 + 1) > data_end) + return TC_ACT_OK; + + bpf_printk("Got IP packet: tot_len: %d, ttl: %d", bpf_ntohs(l3->tot_len), l3->ttl); + return TC_ACT_OK; +} + +char __license[] SEC("license") = "GPL"; diff --git a/3-fentry-unlink/.gitignore b/3-fentry-unlink/.gitignore new file mode 100644 index 0000000..f0f4c81 --- /dev/null +++ b/3-fentry-unlink/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +*.o +*.skel.json +*.skel.yaml +package.yaml +ecli diff --git a/3-fentry-unlink/fentry-link.bpf.c b/3-fentry-unlink/fentry-link.bpf.c new file mode 100644 index 0000000..baf5575 --- /dev/null +++ b/3-fentry-unlink/fentry-link.bpf.c @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause +/* Copyright (c) 2021 Sartura */ +#include "vmlinux.h" +#include +#include + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; + +SEC("fentry/do_unlinkat") +int BPF_PROG(do_unlinkat, int dfd, struct filename *name) +{ + pid_t pid; + + pid = bpf_get_current_pid_tgid() >> 32; + bpf_printk("fentry: pid = %d, filename = %s\n", pid, name->name); + return 0; +} + +SEC("fexit/do_unlinkat") +int BPF_PROG(do_unlinkat_exit, int dfd, struct filename *name, long ret) +{ + pid_t pid; + + pid = bpf_get_current_pid_tgid() >> 32; + bpf_printk("fexit: pid = %d, filename = %s, ret = %ld\n", pid, name->name, ret); + return 0; +} diff --git a/3-fentry-unlink/index.html b/3-fentry-unlink/index.html new file mode 100644 index 0000000..727a4ec --- /dev/null +++ b/3-fentry-unlink/index.html @@ -0,0 +1,256 @@ + + + + + + eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第三篇,在 eBPF 中使用 fentry 捕获 unlink 系统调用。

+

Fentry

+
#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+SEC("fentry/do_unlinkat")
+int BPF_PROG(do_unlinkat, int dfd, struct filename *name)
+{
+ pid_t pid;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_printk("fentry: pid = %d, filename = %s\n", pid, name->name);
+ return 0;
+}
+
+SEC("fexit/do_unlinkat")
+int BPF_PROG(do_unlinkat_exit, int dfd, struct filename *name, long ret)
+{
+ pid_t pid;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_printk("fexit: pid = %d, filename = %s, ret = %ld\n", pid, name->name, ret);
+ return 0;
+}
+
+

这段程序通过定义两个函数,分别附加到 do_unlinkat 和 do_unlinkat_exit 上。这两个函数分别在进入 do_unlinkat 和离开 do_unlinkat 时执行。这两个函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数来获取调用 do_unlinkat 的进程 ID,文件名和返回值,并在内核日志中打印出来。

+

与 kprobes 相比,fentry 和 fexit 程序有更高的性能和可用性。在这个例子中,我们可以直接访问函数的指针参数,就像在普通的 C 代码中一样,而不需要使用各种读取帮助程序。fexit 和 kretprobe 程序最大的区别在于,fexit 程序可以访问函数的输入参数和返回值,而 kretprobe 只能访问返回值。

+

从 5.5 内核开始,fentry 和 fexit 程序可用。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
$ ecc fentry-link.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

在另外一个窗口中:

+
touch test_file
+rm test_file
+touch test_file2
+rm test_file2
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+              rm-9290    [004] d..2  4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file
+              rm-9290    [004] d..2  4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file, ret = 0
+              rm-9290    [004] d..2  4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file2
+              rm-9290    [004] d..2  4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file2, ret = 0
+
+

总结

+

这段程序是一个 eBPF 程序,通过使用 fentry 和 fexit 捕获 do_unlinkat 和 do_unlinkat_exit 函数,并通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 do_unlinkat 的进程 ID、文件名和返回值,并在内核日志中打印出来。

+

编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令,并通过查看 /sys/kernel/debug/tracing/trace_pipe 文件查看 eBPF 程序的输出。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/4-opensnoop/.gitignore b/4-opensnoop/.gitignore new file mode 100644 index 0000000..b669b39 --- /dev/null +++ b/4-opensnoop/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +eunomia-exporter +ecli +*.bpf.o +*.skel.json +*.skel.yaml diff --git a/4-opensnoop/index.html b/4-opensnoop/index.html new file mode 100644 index 0000000..4b2b213 --- /dev/null +++ b/4-opensnoop/index.html @@ -0,0 +1,271 @@ + + + + + + eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第四篇,主要介绍如何捕获进程打开文件的系统调用集合,并使用全局变量在 eBPF 中过滤进程 pid。

+

在 eBPF 中捕获进程打开文件的系统调用集合

+

首先,我们需要编写一段 eBPF 程序来捕获进程打开文件的系统调用,具体实现如下:

+
#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+
+/// @description "Process ID to trace"
+const volatile int pid_target = 0;
+
+SEC("tracepoint/syscalls/sys_enter_openat")
+int tracepoint__syscalls__sys_enter_openat(struct trace_event_raw_sys_enter* ctx)
+{
+ u64 id = bpf_get_current_pid_tgid();
+ u32 pid = id;
+
+ if (pid_target && pid_target != pid)
+  return false;
+ // Use bpf_printk to print the process information
+ bpf_printk("Process ID: %d enter sys openat\n", pid);
+ return 0;
+}
+
+/// "Trace open family syscalls."
+char LICENSE[] SEC("license") = "GPL";
+
+
+

上面的 eBPF 程序通过定义函数 tracepoint__syscalls__sys_enter_openat 并使用 SEC 宏把它们附加到 sys_enter_openat 的 tracepoint(即在进入 openat 系统调用时执行)。这个函数通过使用 bpf_get_current_pid_tgid 函数获取调用 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
$ ecc fentry-link.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+           <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 3840345 enter sys openat
+           <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 3840345 enter sys openat
+
+

此时,我们已经能够捕获进程打开文件的系统调用了。

+

使用全局变量在 eBPF 中过滤进程 pid

+

在上面的程序中,我们定义了一个全局变量 pid_target 来指定要捕获的进程的 pid。在 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数中,我们可以使用这个全局变量来过滤输出,只输出指定的进程的信息。

+

可以通过执行 ecli -h 命令来查看 opensnoop 的帮助信息:

+
$ ecli package.json -h
+Usage: opensnoop_bpf [--help] [--version] [--verbose] [--pid_target VAR]
+
+Trace open family syscalls.
+
+Optional arguments:
+  -h, --help    shows help message and exits 
+  -v, --version prints version information and exits 
+  --verbose     prints libbpf debug information 
+  --pid_target  Process ID to trace 
+
+Built with eunomia-bpf framework.
+See https://github.com/eunomia-bpf/eunomia-bpf for more information.
+
+

可以通过 --pid_target 参数来指定要捕获的进程的 pid,例如:

+
$ sudo ./ecli run package.json  --pid_target 618
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+           <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 618 enter sys openat
+           <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 618 enter sys openat
+
+

总结

+

本文介绍了如何使用 eBPF 程序来捕获进程打开文件的系统调用。在 eBPF 程序中,我们可以通过定义 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数并使用 SEC 宏把它们附加到 sys_enter_open 和 sys_enter_openat 两个 tracepoint 来捕获进程打开文件的系统调用。我们可以使用 bpf_get_current_pid_tgid 函数获取调用 open 或 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。在 eBPF 程序中,我们还可以通过定义一个全局变量 pid_target 来指定要捕获的进程的 pid,从而过滤输出,只输出指定的进程的信息。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/4-opensnoop/opensnoop.bpf.c b/4-opensnoop/opensnoop.bpf.c new file mode 100644 index 0000000..93cef09 --- /dev/null +++ b/4-opensnoop/opensnoop.bpf.c @@ -0,0 +1,21 @@ +#include +#include + +/// @description "Process ID to trace" +const volatile int pid_target = 0; + +SEC("tracepoint/syscalls/sys_enter_openat") +int tracepoint__syscalls__sys_enter_openat(struct trace_event_raw_sys_enter* ctx) +{ + u64 id = bpf_get_current_pid_tgid(); + u32 pid = id; + + if (pid_target && pid_target != pid) + return false; + // Use bpf_printk to print the process information + bpf_printk("Process ID: %d enter sys openat\n", pid); + return 0; +} + +/// "Trace open family syscalls." +char LICENSE[] SEC("license") = "GPL"; diff --git a/404.html b/404.html new file mode 100644 index 0000000..a9e14ae --- /dev/null +++ b/404.html @@ -0,0 +1,189 @@ + + + + + + Page not found - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Document not found (404)

+

This URL is invalid, sorry. Please use the navigation bar or search to continue.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/5-uprobe-bashreadline/.gitignore b/5-uprobe-bashreadline/.gitignore new file mode 100644 index 0000000..a857114 --- /dev/null +++ b/5-uprobe-bashreadline/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +ecli +*.o +*.skel.json +*.skel.yaml +package.yaml \ No newline at end of file diff --git a/5-uprobe-bashreadline/bashreadline.bpf.c b/5-uprobe-bashreadline/bashreadline.bpf.c new file mode 100644 index 0000000..8058734 --- /dev/null +++ b/5-uprobe-bashreadline/bashreadline.bpf.c @@ -0,0 +1,38 @@ +#include +#include +#include + +#define TASK_COMM_LEN 16 +#define MAX_LINE_SIZE 80 + +/* Format of u[ret]probe section definition supporting auto-attach: + * u[ret]probe/binary:function[+offset] + * + * binary can be an absolute/relative path or a filename; the latter is resolved to a + * full binary path via bpf_program__attach_uprobe_opts. + * + * Specifying uprobe+ ensures we carry out strict matching; either "uprobe" must be + * specified (and auto-attach is not possible) or the above format is specified for + * auto-attach. + */ +SEC("uretprobe//bin/bash:readline") +int BPF_KRETPROBE(printret, const void *ret) +{ + char str[MAX_LINE_SIZE]; + char comm[TASK_COMM_LEN]; + u32 pid; + + if (!ret) + return 0; + + bpf_get_current_comm(&comm, sizeof(comm)); + + pid = bpf_get_current_pid_tgid() >> 32; + bpf_probe_read_user_str(str, sizeof(str), ret); + + bpf_printk("PID %d (%s) read: %s ", pid, comm, str); + + return 0; +}; + +char LICENSE[] SEC("license") = "GPL"; \ No newline at end of file diff --git a/5-uprobe-bashreadline/index.html b/5-uprobe-bashreadline/index.html new file mode 100644 index 0000000..4f911c2 --- /dev/null +++ b/5-uprobe-bashreadline/index.html @@ -0,0 +1,276 @@ + + + + + + eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第五篇,主要介绍如何使用 uprobe 捕获 bash 的 readline 函数调用。

+

什么是uprobe

+

uprobe是一种用户空间探针,uprobe探针允许在用户空间程序中动态插桩,插桩位置包括:函数入口、特定偏移处,以及函数返回处。当我们定义uprobe时,内核会在附加的指令上创建快速断点指令(x86机器上为int3指令),当程序执行到该指令时,内核将触发事件,程序陷入到内核态,并以回调函数的方式调用探针函数,执行完探针函数再返回到用户态继续执行后序的指令。

+

uprobe基于文件,当一个二进制文件中的一个函数被跟踪时,所有使用到这个文件的进程都会被插桩,包括那些尚未启动的进程,这样就可以在全系统范围内跟踪系统调用。

+

uprobe适用于在用户态去解析一些内核态探针无法解析的流量,例如http2流量(报文header被编码,内核无法解码),https流量(加密流量,内核无法解密)。

+

使用 uprobe 捕获 bash 的 readline 函数调用

+

uprobe 是一种用于捕获用户空间函数调用的 eBPF 的探针,我们可以通过它来捕获用户空间程序调用的系统函数。

+

例如,我们可以使用 uprobe 来捕获 bash 的 readline 函数调用,从而获取用户在 bash 中输入的命令行。示例代码如下:

+
#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+#define TASK_COMM_LEN 16
+#define MAX_LINE_SIZE 80
+
+/* Format of u[ret]probe section definition supporting auto-attach:
+ * u[ret]probe/binary:function[+offset]
+ *
+ * binary can be an absolute/relative path or a filename; the latter is resolved to a
+ * full binary path via bpf_program__attach_uprobe_opts.
+ *
+ * Specifying uprobe+ ensures we carry out strict matching; either "uprobe" must be
+ * specified (and auto-attach is not possible) or the above format is specified for
+ * auto-attach.
+ */
+SEC("uretprobe//bin/bash:readline")
+int BPF_KRETPROBE(printret, const void *ret)
+{
+ char str[MAX_LINE_SIZE];
+ char comm[TASK_COMM_LEN];
+ u32 pid;
+
+ if (!ret)
+  return 0;
+
+ bpf_get_current_comm(&comm, sizeof(comm));
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_probe_read_user_str(str, sizeof(str), ret);
+
+ bpf_printk("PID %d (%s) read: %s ", pid, comm, str);
+
+ return 0;
+};
+
+char LICENSE[] SEC("license") = "GPL";
+
+

这段代码的作用是在 bash 的 readline 函数返回时执行指定的 BPF_KRETPROBE 函数,即 printret 函数。

+

在 printret 函数中,我们首先获取了调用 readline 函数的进程的进程名称和进程 ID,然后通过 bpf_probe_read_user_str 函数读取了用户输入的命令行字符串,最后通过 bpf_printk 函数打印出进程 ID、进程名称和输入的命令行字符串。

+

除此之外,我们还需要通过 SEC 宏来定义 uprobe 探针,并使用 BPF_KRETPROBE 宏来定义探针函数。

+

在 SEC 宏中,我们需要指定 uprobe 的类型、要捕获的二进制文件的路径和要捕获的函数名称。例如,上面的代码中的 SEC 宏的定义如下:

+
SEC("uprobe//bin/bash:readline")
+
+

这表示我们要捕获的是 /bin/bash 二进制文件中的 readline 函数。

+

接下来,我们需要使用 BPF_KRETPROBE 宏来定义探针函数,例如:

+
BPF_KRETPROBE(printret, const void *ret)
+
+

这里的 printret 是探针函数的名称,const void *ret 是探针函数的参数,它代表被捕获的函数的返回值。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
$ ecc bashreadline.bpf.c bashreadline.h
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+            bash-32969   [000] d..31 64001.375748: bpf_trace_printk: PID 32969 (bash) read: fff 
+            bash-32969   [000] d..31 64002.056951: bpf_trace_printk: PID 32969 (bash) read: fff
+
+

可以看到,我们成功的捕获了 bash 的 readline 函数调用,并获取了用户在 bash 中输入的命令行。

+

总结

+

在上述代码中,我们使用了 SEC 宏来定义了一个 uprobe 探针,它指定了要捕获的用户空间程序 (bin/bash) 和要捕获的函数 (readline)。此外,我们还使用了 BPF_KRETPROBE 宏来定义了一个用于处理 readline 函数返回值的回调函数 (printret)。该函数可以获取到 readline 函数的返回值,并将其打印到内核日志中。通过这样的方式,我们就可以使用 eBPF 来捕获 bash 的 readline 函数调用,并获取用户在 bash 中输入的命令行。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/6-sigsnoop/.gitignore b/6-sigsnoop/.gitignore new file mode 100755 index 0000000..bbee7c8 --- /dev/null +++ b/6-sigsnoop/.gitignore @@ -0,0 +1,10 @@ +.vscode +package.json +*.wasm +ewasm-skel.h +ecli +ewasm +*.o +*.skel.json +*.skel.yaml +package.yaml diff --git a/6-sigsnoop/index.html b/6-sigsnoop/index.html new file mode 100644 index 0000000..3fb7c42 --- /dev/null +++ b/6-sigsnoop/index.html @@ -0,0 +1,313 @@ + + + + + + eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第六篇,主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。

+

sigsnoop

+

示例代码如下:

+
#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+#define MAX_ENTRIES 10240
+#define TASK_COMM_LEN 16
+
+struct event {
+ unsigned int pid;
+ unsigned int tpid;
+ int sig;
+ int ret;
+ char comm[TASK_COMM_LEN];
+};
+
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, __u32);
+ __type(value, struct event);
+} values SEC(".maps");
+
+
+static int probe_entry(pid_t tpid, int sig)
+{
+ struct event event = {};
+ __u64 pid_tgid;
+ __u32 tid;
+
+ pid_tgid = bpf_get_current_pid_tgid();
+ tid = (__u32)pid_tgid;
+ event.pid = pid_tgid >> 32;
+ event.tpid = tpid;
+ event.sig = sig;
+ bpf_get_current_comm(event.comm, sizeof(event.comm));
+ bpf_map_update_elem(&values, &tid, &event, BPF_ANY);
+ return 0;
+}
+
+static int probe_exit(void *ctx, int ret)
+{
+ __u64 pid_tgid = bpf_get_current_pid_tgid();
+ __u32 tid = (__u32)pid_tgid;
+ struct event *eventp;
+
+ eventp = bpf_map_lookup_elem(&values, &tid);
+ if (!eventp)
+  return 0;
+
+ eventp->ret = ret;
+ bpf_printk("PID %d (%s) sent signal %d to PID %d, ret = %d",
+     eventp->pid, eventp->comm, eventp->sig, eventp->tpid, ret);
+
+cleanup:
+ bpf_map_delete_elem(&values, &tid);
+ return 0;
+}
+
+SEC("tracepoint/syscalls/sys_enter_kill")
+int kill_entry(struct trace_event_raw_sys_enter *ctx)
+{
+ pid_t tpid = (pid_t)ctx->args[0];
+ int sig = (int)ctx->args[1];
+
+ return probe_entry(tpid, sig);
+}
+
+SEC("tracepoint/syscalls/sys_exit_kill")
+int kill_exit(struct trace_event_raw_sys_exit *ctx)
+{
+ return probe_exit(ctx, ctx->ret);
+}
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+

上面的代码定义了一个 eBPF 程序,用于捕获进程发送信号的系统调用,包括 kill、tkill 和 tgkill。它通过使用 tracepoint 来捕获系统调用的进入和退出事件,并在这些事件发生时执行指定的探针函数,例如 probe_entry 和 probe_exit。

+

在探针函数中,我们使用 bpf_map 存储捕获的事件信息,包括发送信号的进程 ID、接收信号的进程 ID、信号值和系统调用的返回值。在系统调用退出时,我们将获取存储在 bpf_map 中的事件信息,并使用 bpf_printk 打印进程 ID、进程名称、发送的信号和系统调用的返回值。

+

最后,我们还需要使用 SEC 宏来定义探针,并指定要捕获的系统调用的名称,以及要执行的探针函数。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

或者

+
$ ecc sigsnoop.bpf.c sigsnoop.h
+Compiling bpf object...
+Generating export types...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+            node-3517    [003] d..31 82575.798191: bpf_trace_printk: PID 3517 (node) sent signal 0 to PID 3427, ret = 0
+            node-15194   [003] d..31 82575.849227: bpf_trace_printk: PID 15194 (node) sent signal 0 to PID 3427, ret = 0
+            node-30016   [003] d..31 82576.001361: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0
+    cpptools-srv-38617   [002] d..31 82576.461085: bpf_trace_printk: PID 38617 (cpptools-srv) sent signal 0 to PID 30496, ret = 0
+            node-30040   [002] d..31 82576.467720: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0
+
+

总结

+

本文主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。使用 hash map 需要定义一个结构体:

+
struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, __u32);
+ __type(value, struct event);
+} values SEC(".maps");
+
+

并使用一些对应的 API 进行访问,例如 bpf_map_lookup_elem、bpf_map_update_elem、bpf_map_delete_elem 等。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/6-sigsnoop/sigsnoop.bpf.c b/6-sigsnoop/sigsnoop.bpf.c new file mode 100755 index 0000000..552dbb7 --- /dev/null +++ b/6-sigsnoop/sigsnoop.bpf.c @@ -0,0 +1,74 @@ +#include +#include +#include + +#define MAX_ENTRIES 10240 +#define TASK_COMM_LEN 16 + +struct event { + unsigned int pid; + unsigned int tpid; + int sig; + int ret; + char comm[TASK_COMM_LEN]; +}; + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, __u32); + __type(value, struct event); +} values SEC(".maps"); + + +static int probe_entry(pid_t tpid, int sig) +{ + struct event event = {}; + __u64 pid_tgid; + __u32 tid; + + pid_tgid = bpf_get_current_pid_tgid(); + tid = (__u32)pid_tgid; + event.pid = pid_tgid >> 32; + event.tpid = tpid; + event.sig = sig; + bpf_get_current_comm(event.comm, sizeof(event.comm)); + bpf_map_update_elem(&values, &tid, &event, BPF_ANY); + return 0; +} + +static int probe_exit(void *ctx, int ret) +{ + __u64 pid_tgid = bpf_get_current_pid_tgid(); + __u32 tid = (__u32)pid_tgid; + struct event *eventp; + + eventp = bpf_map_lookup_elem(&values, &tid); + if (!eventp) + return 0; + + eventp->ret = ret; + bpf_printk("PID %d (%s) sent signal %d to PID %d, ret = %d", + eventp->pid, eventp->comm, eventp->sig, eventp->tpid, ret); + +cleanup: + bpf_map_delete_elem(&values, &tid); + return 0; +} + +SEC("tracepoint/syscalls/sys_enter_kill") +int kill_entry(struct trace_event_raw_sys_enter *ctx) +{ + pid_t tpid = (pid_t)ctx->args[0]; + int sig = (int)ctx->args[1]; + + return probe_entry(tpid, sig); +} + +SEC("tracepoint/syscalls/sys_exit_kill") +int kill_exit(struct trace_event_raw_sys_exit *ctx) +{ + return probe_exit(ctx, ctx->ret); +} + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; diff --git a/7-execsnoop/.gitignore b/7-execsnoop/.gitignore new file mode 100644 index 0000000..e78ed98 --- /dev/null +++ b/7-execsnoop/.gitignore @@ -0,0 +1,3 @@ +ecli +*.json + diff --git a/7-execsnoop/execsnoop.bpf.c b/7-execsnoop/execsnoop.bpf.c new file mode 100644 index 0000000..4ea9978 --- /dev/null +++ b/7-execsnoop/execsnoop.bpf.c @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +#include +#include +#include +#include "execsnoop.h" + +struct { + __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); + __uint(key_size, sizeof(u32)); + __uint(value_size, sizeof(u32)); +} events SEC(".maps"); + +SEC("tracepoint/syscalls/sys_enter_execve") +int tracepoint__syscalls__sys_enter_execve(struct trace_event_raw_sys_enter* ctx) +{ + u64 id; + pid_t pid, tgid; + struct event event; + struct task_struct *task; + + uid_t uid = (u32)bpf_get_current_uid_gid(); + id = bpf_get_current_pid_tgid(); + pid = (pid_t)id; + tgid = id >> 32; + + event.pid = tgid; + event.uid = uid; + task = (struct task_struct*)bpf_get_current_task(); + event.ppid = BPF_CORE_READ(task, real_parent, tgid); + bpf_get_current_comm(&event.comm, sizeof(event.comm)); + bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); + return 0; +} + +char LICENSE[] SEC("license") = "GPL"; + diff --git a/7-execsnoop/execsnoop.h b/7-execsnoop/execsnoop.h new file mode 100644 index 0000000..d5e8965 --- /dev/null +++ b/7-execsnoop/execsnoop.h @@ -0,0 +1,16 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#ifndef __EXECSNOOP_H +#define __EXECSNOOP_H + +#define TASK_COMM_LEN 16 + +struct event { + int pid; + int ppid; + int uid; + char comm[TASK_COMM_LEN]; +}; + +#endif /* __EXECSNOOP_H */ + + diff --git a/7-execsnoop/index.html b/7-execsnoop/index.html new file mode 100644 index 0000000..1d51429 --- /dev/null +++ b/7-execsnoop/index.html @@ -0,0 +1,291 @@ + + + + + + eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第七篇,主要介绍如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,不需要再通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出。通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。

+

perf buffer

+

eBPF 提供了两个环形缓冲区,可以用来将信息从 eBPF 程序传输到用户区控制器。第一个是perf环形缓冲区,,它至少从内核v4.15开始就存在了。第二个是后来引入的 BPF 环形缓冲区。本文只考虑perf环形缓冲区。

+

execsnoop

+

通过 perf event array 向用户态命令行打印输出,需要编写一个头文件,一个 C 源文件。示例代码如下:

+

头文件:execsnoop.h

+
#ifndef __EXECSNOOP_H
+#define __EXECSNOOP_H
+
+#define TASK_COMM_LEN 16
+
+struct event {
+ int pid;
+ int ppid;
+ int uid;
+ int retval;
+ bool is_exit;
+ char comm[TASK_COMM_LEN];
+};
+
+#endif /* __EXECSNOOP_H */
+
+

源文件:execsnoop.bpf.c

+
// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
+#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_core_read.h>
+#include "execsnoop.h"
+
+struct {
+ __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY);
+ __uint(key_size, sizeof(u32));
+ __uint(value_size, sizeof(u32));
+} events SEC(".maps");
+
+SEC("tracepoint/syscalls/sys_enter_execve")
+int tracepoint__syscalls__sys_enter_execve(struct trace_event_raw_sys_enter* ctx)
+{
+ u64 id;
+ pid_t pid, tgid;
+ struct event event;
+ struct task_struct *task;
+
+ uid_t uid = (u32)bpf_get_current_uid_gid();
+ id = bpf_get_current_pid_tgid();
+ pid = (pid_t)id;
+ tgid = id >> 32;
+
+ event.pid = tgid;
+ event.uid = uid;
+ task = (struct task_struct*)bpf_get_current_task();
+ event.ppid = BPF_CORE_READ(task, real_parent, tgid);
+ bpf_get_current_comm(&event.comm, sizeof(event.comm));
+ bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event));
+ return 0;
+}
+
+char LICENSE[] SEC("license") = "GPL";
+
+

这段代码定义了个 eBPF 程序,用于捕获进程执行 execve 系统调用的入口。

+

在入口程序中,我们首先获取了当前进程的进程 ID 和用户 ID,然后通过 bpf_get_current_task 函数获取了当前进程的 task_struct 结构体,并通过 bpf_probe_read_str 函数读取了进程名称。最后,我们通过 bpf_perf_event_output 函数将进程执行事件输出到 perf buffer。

+

使用这段代码,我们就可以捕获 Linux 内核中进程执行的事件, 并分析进程的执行情况。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

使用容器编译:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

或者使用 ecc 编译:

+
ecc execsnoop.bpf.c execsnoop.h
+
+

运行

+
$ sudo ./ecli run package.json 
+TIME     PID     PPID    UID     COMM    
+21:28:30  40747  3517    1000    node
+21:28:30  40748  40747   1000    sh
+21:28:30  40749  3517    1000    node
+21:28:30  40750  40749   1000    sh
+21:28:30  40751  3517    1000    node
+21:28:30  40752  40751   1000    sh
+21:28:30  40753  40752   1000    cpuUsage.sh
+
+

总结

+

本文介绍了如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。在 libbpf 对应的内核态代码中,定义这样一个结构体和对应的头文件:

+
struct {
+ __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY);
+ __uint(key_size, sizeof(u32));
+ __uint(value_size, sizeof(u32));
+} events SEC(".maps");
+
+

就可以往用户态直接发送信息。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/8-exitsnoop/.gitignore b/8-exitsnoop/.gitignore new file mode 100644 index 0000000..84c0a30 --- /dev/null +++ b/8-exitsnoop/.gitignore @@ -0,0 +1,4 @@ +.vscode +eunomia-exporter +ecli +*.json diff --git a/8-exitsnoop/exitsnoop.bpf.c b/8-exitsnoop/exitsnoop.bpf.c new file mode 100644 index 0000000..a2c41d9 --- /dev/null +++ b/8-exitsnoop/exitsnoop.bpf.c @@ -0,0 +1,50 @@ +// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause +/* Copyright (c) 2020 Facebook */ +#include "vmlinux.h" +#include +#include +#include +#include "exitsnoop.h" + +char LICENSE[] SEC("license") = "Dual BSD/GPL"; + +struct { + __uint(type, BPF_MAP_TYPE_RINGBUF); + __uint(max_entries, 256 * 1024); +} rb SEC(".maps"); + +SEC("tp/sched/sched_process_exit") +int handle_exit(struct trace_event_raw_sched_process_template* ctx) +{ + struct task_struct *task; + struct event *e; + pid_t pid, tid; + u64 id, ts, *start_ts, duration_ns = 0; + + /* get PID and TID of exiting thread/process */ + id = bpf_get_current_pid_tgid(); + pid = id >> 32; + tid = (u32)id; + + /* ignore thread exits */ + if (pid != tid) + return 0; + + /* reserve sample from BPF ringbuf */ + e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); + if (!e) + return 0; + + /* fill out the sample with data */ + task = (struct task_struct *)bpf_get_current_task(); + + e->duration_ns = duration_ns; + e->pid = pid; + e->ppid = BPF_CORE_READ(task, real_parent, tgid); + e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff; + bpf_get_current_comm(&e->comm, sizeof(e->comm)); + + /* send data to user-space for post-processing */ + bpf_ringbuf_submit(e, 0); + return 0; +} diff --git a/8-exitsnoop/exitsnoop.h b/8-exitsnoop/exitsnoop.h new file mode 100644 index 0000000..be990c2 --- /dev/null +++ b/8-exitsnoop/exitsnoop.h @@ -0,0 +1,15 @@ +#ifndef __BOOTSTRAP_H +#define __BOOTSTRAP_H + +#define TASK_COMM_LEN 16 +#define MAX_FILENAME_LEN 127 + +struct event { + int pid; + int ppid; + unsigned exit_code; + unsigned long long duration_ns; + char comm[TASK_COMM_LEN]; +}; + +#endif /* __BOOTSTRAP_H */ diff --git a/8-exitsnoop/index.html b/8-exitsnoop/index.html new file mode 100644 index 0000000..1b25cf0 --- /dev/null +++ b/8-exitsnoop/index.html @@ -0,0 +1,318 @@ + + + + + + eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件。

+

ring buffer

+

现在有一个新的 BPF 数据结构可用。BPF 环形缓冲区(ring buffer)。它解决了 BPF perf buffer(当今从内核向用户空间发送数据的事实上的标准)的内存效率和事件重排问题,同时达到或超过了它的性能。它既提供了与 perf buffer 兼容以方便迁移,又有新的保留/提交API,具有更好的可用性。另外,合成和真实世界的基准测试表明,在几乎所有的情况下,所以考虑将其作为从BPF程序向用户空间发送数据的默认选择。

+

BPF ringbuf vs BPF perfbuf

+

今天,只要BPF程序需要将收集到的数据发送到用户空间进行后处理和记录,它通常会使用BPF perf buffer(perfbuf)来实现。Perfbuf 是每个CPU循环缓冲区的集合,它允许在内核和用户空间之间有效地交换数据。它在实践中效果很好,但由于其按CPU设计,它有两个主要的缺点,在实践中被证明是不方便的:内存的低效使用和事件的重新排序。

+

为了解决这些问题,从Linux 5.8开始,BPF提供了一个新的BPF数据结构(BPF map)。BPF环形缓冲区(ringbuf)。它是一个多生产者、单消费者(MPSC)队列,可以同时在多个CPU上安全共享。

+

BPF ringbuf 支持来自 BPF perfbuf 的熟悉的功能:

+
    +
  • 变长的数据记录。
  • +
  • 能够通过内存映射区域有效地从用户空间读取数据,而不需要额外的内存拷贝和/或进入内核的系统调用。
  • +
  • 既支持epoll通知,又能以绝对最小的延迟进行忙环操作。
  • +
+

同时,BPF ringbuf解决了BPF perfbuf的以下问题:

+
    +
  • 内存开销。
  • +
  • 数据排序。
  • +
  • 浪费的工作和额外的数据复制。
  • +
+

exitsnoop

+

本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件,并使用 ring buffer 向用户态打印输出。

+

使用 ring buffer 向用户态打印输出的步骤和 perf buffer 类似,首先需要定义一个头文件:

+

头文件:exitsnoop.h

+
#ifndef __BOOTSTRAP_H
+#define __BOOTSTRAP_H
+
+#define TASK_COMM_LEN 16
+#define MAX_FILENAME_LEN 127
+
+struct event {
+	int pid;
+	int ppid;
+	unsigned exit_code;
+	unsigned long long duration_ns;
+	char comm[TASK_COMM_LEN];
+};
+
+#endif /* __BOOTSTRAP_H */
+
+

源文件:exitsnoop.bpf.c

+
#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include <bpf/bpf_core_read.h>
+#include "exitsnoop.h"
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+struct {
+ __uint(type, BPF_MAP_TYPE_RINGBUF);
+ __uint(max_entries, 256 * 1024);
+} rb SEC(".maps");
+
+SEC("tp/sched/sched_process_exit")
+int handle_exit(struct trace_event_raw_sched_process_template* ctx)
+{
+ struct task_struct *task;
+ struct event *e;
+ pid_t pid, tid;
+ u64 id, ts, *start_ts, duration_ns = 0;
+ 
+ /* get PID and TID of exiting thread/process */
+ id = bpf_get_current_pid_tgid();
+ pid = id >> 32;
+ tid = (u32)id;
+
+ /* ignore thread exits */
+ if (pid != tid)
+  return 0;
+
+ /* reserve sample from BPF ringbuf */
+ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0);
+ if (!e)
+  return 0;
+
+ /* fill out the sample with data */
+ task = (struct task_struct *)bpf_get_current_task();
+
+ e->duration_ns = duration_ns;
+ e->pid = pid;
+ e->ppid = BPF_CORE_READ(task, real_parent, tgid);
+ e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff;
+ bpf_get_current_comm(&e->comm, sizeof(e->comm));
+
+ /* send data to user-space for post-processing */
+ bpf_ringbuf_submit(e, 0);
+ return 0;
+}
+
+

这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件。

+

该程序通过注册一个 tracepoint,来监控进程退出事件。Tracepoint 是一种内核特性,允许内核模块获取特定事件的通知。在本程序中,注册的 tracepoint 是“tp/sched/sched_process_exit”,表示该程序监控的是进程退出事件。

+

当系统中发生进程退出事件时,BPF 程序会捕获该事件,并调用“handle_exit”函数来处理它。该函数首先检查当前退出事件是否是进程退出事件(而不是线程退出事件),然后在 BPF 环形缓冲区(“rb”)中保留一个事件结构体,并填充该结构体中的其他信息,例如进程 ID、进程名称、退出代码和退出信号等信息。最后,该函数还会调用 BPF 的“perf_event_output”函数,将捕获的事件发送给用户空间程序。

+

总而言之,这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件.

+

Compile and Run

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

Compile:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

Or

+
$ ecc exitsnoop.bpf.c exitsnoop.h
+Compiling bpf object...
+Generating export types...
+Packing ebpf object and config into package.json...
+
+

Run:

+
$ sudo ./ecli run package.json 
+TIME     PID     PPID    EXIT_CODE  DURATION_NS  COMM    
+21:40:09  42050  42049   0          0            which
+21:40:09  42049  3517    0          0            sh
+21:40:09  42052  42051   0          0            ps
+21:40:09  42051  3517    0          0            sh
+21:40:09  42055  42054   0          0            sed
+21:40:09  42056  42054   0          0            cat
+21:40:09  42057  42054   0          0            cat
+21:40:09  42058  42054   0          0            cat
+21:40:09  42059  42054   0          0            cat
+
+

总结

+

本文介绍了如何使用 eunomia-bpf 开发一个简单的 BPF 程序,该程序可以监控 Linux 系统中的进程退出事件, 并将捕获的事件通过 ring buffer 发送给用户空间程序。在本文中,我们使用 eunomia-bpf 编译运行了这个例子。如果你想了解更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/9-runqlat/.gitignore b/9-runqlat/.gitignore new file mode 100644 index 0000000..616c325 --- /dev/null +++ b/9-runqlat/.gitignore @@ -0,0 +1,7 @@ +.vscode +package.json +*.o +*.skel.json +*.skel.yaml +package.yaml +ecli \ No newline at end of file diff --git a/9-runqlat/bits.bpf.h b/9-runqlat/bits.bpf.h new file mode 100644 index 0000000..a2b7bb9 --- /dev/null +++ b/9-runqlat/bits.bpf.h @@ -0,0 +1,31 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#ifndef __BITS_BPF_H +#define __BITS_BPF_H + +#define READ_ONCE(x) (*(volatile typeof(x) *)&(x)) +#define WRITE_ONCE(x, val) ((*(volatile typeof(x) *)&(x)) = val) + +static __always_inline u64 log2(u32 v) +{ + u32 shift, r; + + r = (v > 0xFFFF) << 4; v >>= r; + shift = (v > 0xFF) << 3; v >>= shift; r |= shift; + shift = (v > 0xF) << 2; v >>= shift; r |= shift; + shift = (v > 0x3) << 1; v >>= shift; r |= shift; + r |= (v >> 1); + + return r; +} + +static __always_inline u64 log2l(u64 v) +{ + u32 hi = v >> 32; + + if (hi) + return log2(hi) + 32; + else + return log2(v); +} + +#endif /* __BITS_BPF_H */ diff --git a/9-runqlat/core_fixes.bpf.h b/9-runqlat/core_fixes.bpf.h new file mode 100644 index 0000000..003163a --- /dev/null +++ b/9-runqlat/core_fixes.bpf.h @@ -0,0 +1,112 @@ +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +/* Copyright (c) 2021 Hengqi Chen */ + +#ifndef __CORE_FIXES_BPF_H +#define __CORE_FIXES_BPF_H + +#include +#include + +/** + * commit 2f064a59a1 ("sched: Change task_struct::state") changes + * the name of task_struct::state to task_struct::__state + * see: + * https://github.com/torvalds/linux/commit/2f064a59a1 + */ +struct task_struct___o { + volatile long int state; +} __attribute__((preserve_access_index)); + +struct task_struct___x { + unsigned int __state; +} __attribute__((preserve_access_index)); + +static __always_inline __s64 get_task_state(void *task) +{ + struct task_struct___x *t = task; + + if (bpf_core_field_exists(t->__state)) + return BPF_CORE_READ(t, __state); + return BPF_CORE_READ((struct task_struct___o *)task, state); +} + +/** + * commit 309dca309fc3 ("block: store a block_device pointer in struct bio") + * adds a new member bi_bdev which is a pointer to struct block_device + * see: + * https://github.com/torvalds/linux/commit/309dca309fc3 + */ +struct bio___o { + struct gendisk *bi_disk; +} __attribute__((preserve_access_index)); + +struct bio___x { + struct block_device *bi_bdev; +} __attribute__((preserve_access_index)); + +static __always_inline struct gendisk *get_gendisk(void *bio) +{ + struct bio___x *b = bio; + + if (bpf_core_field_exists(b->bi_bdev)) + return BPF_CORE_READ(b, bi_bdev, bd_disk); + return BPF_CORE_READ((struct bio___o *)bio, bi_disk); +} + +/** + * commit d5869fdc189f ("block: introduce block_rq_error tracepoint") + * adds a new tracepoint block_rq_error and it shares the same arguments + * with tracepoint block_rq_complete. As a result, the kernel BTF now has + * a `struct trace_event_raw_block_rq_completion` instead of + * `struct trace_event_raw_block_rq_complete`. + * see: + * https://github.com/torvalds/linux/commit/d5869fdc189f + */ +struct trace_event_raw_block_rq_complete___x { + dev_t dev; + sector_t sector; + unsigned int nr_sector; +} __attribute__((preserve_access_index)); + +struct trace_event_raw_block_rq_completion___x { + dev_t dev; + sector_t sector; + unsigned int nr_sector; +} __attribute__((preserve_access_index)); + +static __always_inline bool has_block_rq_completion() +{ + if (bpf_core_type_exists(struct trace_event_raw_block_rq_completion___x)) + return true; + return false; +} + +/** + * commit d152c682f03c ("block: add an explicit ->disk backpointer to the + * request_queue") and commit f3fa33acca9f ("block: remove the ->rq_disk + * field in struct request") make some changes to `struct request` and + * `struct request_queue`. Now, to get the `struct gendisk *` field in a CO-RE + * way, we need both `struct request` and `struct request_queue`. + * see: + * https://github.com/torvalds/linux/commit/d152c682f03c + * https://github.com/torvalds/linux/commit/f3fa33acca9f + */ +struct request_queue___x { + struct gendisk *disk; +} __attribute__((preserve_access_index)); + +struct request___x { + struct request_queue___x *q; + struct gendisk *rq_disk; +} __attribute__((preserve_access_index)); + +static __always_inline struct gendisk *get_disk(void *request) +{ + struct request___x *r = request; + + if (bpf_core_field_exists(r->rq_disk)) + return BPF_CORE_READ(r, rq_disk); + return BPF_CORE_READ(r, q, disk); +} + +#endif /* __CORE_FIXES_BPF_H */ diff --git a/9-runqlat/index.html b/9-runqlat/index.html new file mode 100644 index 0000000..c7a50f7 --- /dev/null +++ b/9-runqlat/index.html @@ -0,0 +1,446 @@ + + + + + + eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

runqlat是什么?

+

bcc-tools 是一组用于在 Linux 系统上使用 BPF 程序的工具。runqlat 是 bcc-tools 中的一个工具,用于分析 Linux 系统的调度性能。具体来说,runqlat 用于测量一个任务在被调度到 CPU 上运行之前在运行队列中等待的时间。这些信息对于识别性能瓶颈和提高 Linux 内核调度算法的整体效率非常有用。

+

runqlat 原理

+

runqlat 使用内核跟踪点和函数探针的结合来测量进程在运行队列中的时间。当进程被排队时,trace_enqueue 函数会在一个映射中记录时间戳。当进程被调度到 CPU 上运行时,handle_switch 函数会检索时间戳,并计算当前时间与排队时间之间的时间差。这个差值(或 delta)然后用于更新进程的直方图,该直方图记录运行队列延迟的分布。该直方图可用于分析 Linux 内核的调度性能。

+

runqlat 代码实现

+

首先我们需要编写一个源代码文件 runqlat.bpf.c:

+
// SPDX-License-Identifier: GPL-2.0
+// Copyright (c) 2020 Wenbo Zhang
+#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_core_read.h>
+#include <bpf/bpf_tracing.h>
+#include "runqlat.h"
+#include "bits.bpf.h"
+#include "maps.bpf.h"
+#include "core_fixes.bpf.h"
+
+#define MAX_ENTRIES 10240
+#define TASK_RUNNING  0
+
+const volatile bool filter_cg = false;
+const volatile bool targ_per_process = false;
+const volatile bool targ_per_thread = false;
+const volatile bool targ_per_pidns = false;
+const volatile bool targ_ms = false;
+const volatile pid_t targ_tgid = 0;
+
+struct {
+ __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY);
+ __type(key, u32);
+ __type(value, u32);
+ __uint(max_entries, 1);
+} cgroup_map SEC(".maps");
+
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, u32);
+ __type(value, u64);
+} start SEC(".maps");
+
+static struct hist zero;
+
+/// @sample {"interval": 1000, "type" : "log2_hist"}
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, u32);
+ __type(value, struct hist);
+} hists SEC(".maps");
+
+static int trace_enqueue(u32 tgid, u32 pid)
+{
+ u64 ts;
+
+ if (!pid)
+  return 0;
+ if (targ_tgid && targ_tgid != tgid)
+  return 0;
+
+ ts = bpf_ktime_get_ns();
+ bpf_map_update_elem(&start, &pid, &ts, BPF_ANY);
+ return 0;
+}
+
+static unsigned int pid_namespace(struct task_struct *task)
+{
+ struct pid *pid;
+ unsigned int level;
+ struct upid upid;
+ unsigned int inum;
+
+ /*  get the pid namespace by following task_active_pid_ns(),
+  *  pid->numbers[pid->level].ns
+  */
+ pid = BPF_CORE_READ(task, thread_pid);
+ level = BPF_CORE_READ(pid, level);
+ bpf_core_read(&upid, sizeof(upid), &pid->numbers[level]);
+ inum = BPF_CORE_READ(upid.ns, ns.inum);
+
+ return inum;
+}
+
+static int handle_switch(bool preempt, struct task_struct *prev, struct task_struct *next)
+{
+ struct hist *histp;
+ u64 *tsp, slot;
+ u32 pid, hkey;
+ s64 delta;
+
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ if (get_task_state(prev) == TASK_RUNNING)
+  trace_enqueue(BPF_CORE_READ(prev, tgid), BPF_CORE_READ(prev, pid));
+
+ pid = BPF_CORE_READ(next, pid);
+
+ tsp = bpf_map_lookup_elem(&start, &pid);
+ if (!tsp)
+  return 0;
+ delta = bpf_ktime_get_ns() - *tsp;
+ if (delta < 0)
+  goto cleanup;
+
+ if (targ_per_process)
+  hkey = BPF_CORE_READ(next, tgid);
+ else if (targ_per_thread)
+  hkey = pid;
+ else if (targ_per_pidns)
+  hkey = pid_namespace(next);
+ else
+  hkey = -1;
+ histp = bpf_map_lookup_or_try_init(&hists, &hkey, &zero);
+ if (!histp)
+  goto cleanup;
+ if (!histp->comm[0])
+  bpf_probe_read_kernel_str(&histp->comm, sizeof(histp->comm),
+     next->comm);
+ if (targ_ms)
+  delta /= 1000000U;
+ else
+  delta /= 1000U;
+ slot = log2l(delta);
+ if (slot >= MAX_SLOTS)
+  slot = MAX_SLOTS - 1;
+ __sync_fetch_and_add(&histp->slots[slot], 1);
+
+cleanup:
+ bpf_map_delete_elem(&start, &pid);
+ return 0;
+}
+
+SEC("raw_tp/sched_wakeup")
+int BPF_PROG(handle_sched_wakeup, struct task_struct *p)
+{
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));
+}
+
+SEC("raw_tp/sched_wakeup_new")
+int BPF_PROG(handle_sched_wakeup_new, struct task_struct *p)
+{
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));
+}
+
+SEC("raw_tp/sched_switch")
+int BPF_PROG(handle_sched_switch, bool preempt, struct task_struct *prev, struct task_struct *next)
+{
+ return handle_switch(preempt, prev, next);
+}
+
+char LICENSE[] SEC("license") = "GPL";
+
+

然后我们需要定义一个头文件runqlat.h,用来给用户态处理从内核态上报的事件:

+
/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */
+#ifndef __RUNQLAT_H
+#define __RUNQLAT_H
+
+#define TASK_COMM_LEN 16
+#define MAX_SLOTS 26
+
+struct hist {
+ __u32 slots[MAX_SLOTS];
+ char comm[TASK_COMM_LEN];
+};
+
+#endif /* __RUNQLAT_H */
+
+

这是一个 Linux 内核 BPF 程序,旨在收集和报告运行队列的延迟。BPF 是 Linux 内核中一项技术,它允许将程序附加到内核中的特定点并进行安全高效的执行。这些程序可用于收集有关内核行为的信息,并实现自定义行为。这个 BPF 程序使用 BPF maps 来收集有关任务何时从内核的运行队列中排队和取消排队的信息,并记录任务在被安排执行之前在运行队列上等待的时间。然后,它使用这些信息生成直方图,显示不同组任务的运行队列延迟分布。这些直方图可用于识别和诊断内核调度行为中的性能问题。

+

编译运行

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

Compile:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

或者

+
$ ecc runqlat.bpf.c runqlat.h
+Compiling bpf object...
+Generating export types...
+Packing ebpf object and config into package.json...
+
+

Run:

+
$ sudo ecli examples/bpftools/runqlat/package.json -h
+Usage: runqlat_bpf [--help] [--version] [--verbose] [--filter_cg] [--targ_per_process] [--targ_per_thread] [--targ_per_pidns] [--targ_ms] [--targ_tgid VAR]
+
+A simple eBPF program
+
+Optional arguments:
+  -h, --help            shows help message and exits 
+  -v, --version         prints version information and exits 
+  --verbose             prints libbpf debug information 
+  --filter_cg           set value of bool variable filter_cg 
+  --targ_per_process    set value of bool variable targ_per_process 
+  --targ_per_thread     set value of bool variable targ_per_thread 
+  --targ_per_pidns      set value of bool variable targ_per_pidns 
+  --targ_ms             set value of bool variable targ_ms 
+  --targ_tgid           set value of pid_t variable targ_tgid 
+
+Built with eunomia-bpf framework.
+See https://github.com/eunomia-bpf/eunomia-bpf for more information.
+
+$ sudo ecli examples/bpftools/runqlat/package.json
+key =  4294967295
+comm = rcu_preempt
+
+     (unit)              : count    distribution
+         0 -> 1          : 9        |****                                    |
+         2 -> 3          : 6        |**                                      |
+         4 -> 7          : 12       |*****                                   |
+         8 -> 15         : 28       |*************                           |
+        16 -> 31         : 40       |*******************                     |
+        32 -> 63         : 83       |****************************************|
+        64 -> 127        : 57       |***************************             |
+       128 -> 255        : 19       |*********                               |
+       256 -> 511        : 11       |*****                                   |
+       512 -> 1023       : 2        |                                        |
+      1024 -> 2047       : 2        |                                        |
+      2048 -> 4095       : 0        |                                        |
+      4096 -> 8191       : 0        |                                        |
+      8192 -> 16383      : 0        |                                        |
+     16384 -> 32767      : 1        |                                        |
+
+$ sudo ecli examples/bpftools/runqlat/package.json --targ_per_process
+key =  3189
+comm = cpptools
+
+     (unit)              : count    distribution
+         0 -> 1          : 0        |                                        |
+         2 -> 3          : 0        |                                        |
+         4 -> 7          : 0        |                                        |
+         8 -> 15         : 1        |***                                     |
+        16 -> 31         : 2        |*******                                 |
+        32 -> 63         : 11       |****************************************|
+        64 -> 127        : 8        |*****************************           |
+       128 -> 255        : 3        |**********                              |
+
+

总结

+

runqlat 是一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度。编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。

+

runqlat 是一种用于监控Linux内核中进程调度延迟的工具。它可以帮助您了解进程在内核中等待执行的时间,并根据这些信息优化进程调度,提高系统的性能。可以在 libbpf-tools 中找到最初的源代码:https://github.com/iovisor/bcc/blob/master/libbpf-tools/runqlat.bpf.c

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/9-runqlat/maps.bpf.h b/9-runqlat/maps.bpf.h new file mode 100644 index 0000000..51d1012 --- /dev/null +++ b/9-runqlat/maps.bpf.h @@ -0,0 +1,26 @@ +// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) +// Copyright (c) 2020 Anton Protopopov +#ifndef __MAPS_BPF_H +#define __MAPS_BPF_H + +#include +#include + +static __always_inline void * +bpf_map_lookup_or_try_init(void *map, const void *key, const void *init) +{ + void *val; + long err; + + val = bpf_map_lookup_elem(map, key); + if (val) + return val; + + err = bpf_map_update_elem(map, key, init, BPF_NOEXIST); + if (err && err != -EEXIST) + return 0; + + return bpf_map_lookup_elem(map, key); +} + +#endif /* __MAPS_BPF_H */ diff --git a/9-runqlat/runqlat.bpf.c b/9-runqlat/runqlat.bpf.c new file mode 100644 index 0000000..0659151 --- /dev/null +++ b/9-runqlat/runqlat.bpf.c @@ -0,0 +1,152 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (c) 2020 Wenbo Zhang +#include +#include +#include +#include +#include "runqlat.h" +#include "bits.bpf.h" +#include "maps.bpf.h" +#include "core_fixes.bpf.h" + +#define MAX_ENTRIES 10240 +#define TASK_RUNNING 0 + +const volatile bool filter_cg = false; +const volatile bool targ_per_process = false; +const volatile bool targ_per_thread = false; +const volatile bool targ_per_pidns = false; +const volatile bool targ_ms = false; +const volatile pid_t targ_tgid = 0; + +struct { + __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY); + __type(key, u32); + __type(value, u32); + __uint(max_entries, 1); +} cgroup_map SEC(".maps"); + +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, u32); + __type(value, u64); +} start SEC(".maps"); + +static struct hist zero; + +/// @sample {"interval": 1000, "type" : "log2_hist"} +struct { + __uint(type, BPF_MAP_TYPE_HASH); + __uint(max_entries, MAX_ENTRIES); + __type(key, u32); + __type(value, struct hist); +} hists SEC(".maps"); + +static int trace_enqueue(u32 tgid, u32 pid) +{ + u64 ts; + + if (!pid) + return 0; + if (targ_tgid && targ_tgid != tgid) + return 0; + + ts = bpf_ktime_get_ns(); + bpf_map_update_elem(&start, &pid, &ts, BPF_ANY); + return 0; +} + +static unsigned int pid_namespace(struct task_struct *task) +{ + struct pid *pid; + unsigned int level; + struct upid upid; + unsigned int inum; + + /* get the pid namespace by following task_active_pid_ns(), + * pid->numbers[pid->level].ns + */ + pid = BPF_CORE_READ(task, thread_pid); + level = BPF_CORE_READ(pid, level); + bpf_core_read(&upid, sizeof(upid), &pid->numbers[level]); + inum = BPF_CORE_READ(upid.ns, ns.inum); + + return inum; +} + +static int handle_switch(bool preempt, struct task_struct *prev, struct task_struct *next) +{ + struct hist *histp; + u64 *tsp, slot; + u32 pid, hkey; + s64 delta; + + if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) + return 0; + + if (get_task_state(prev) == TASK_RUNNING) + trace_enqueue(BPF_CORE_READ(prev, tgid), BPF_CORE_READ(prev, pid)); + + pid = BPF_CORE_READ(next, pid); + + tsp = bpf_map_lookup_elem(&start, &pid); + if (!tsp) + return 0; + delta = bpf_ktime_get_ns() - *tsp; + if (delta < 0) + goto cleanup; + + if (targ_per_process) + hkey = BPF_CORE_READ(next, tgid); + else if (targ_per_thread) + hkey = pid; + else if (targ_per_pidns) + hkey = pid_namespace(next); + else + hkey = -1; + histp = bpf_map_lookup_or_try_init(&hists, &hkey, &zero); + if (!histp) + goto cleanup; + if (!histp->comm[0]) + bpf_probe_read_kernel_str(&histp->comm, sizeof(histp->comm), + next->comm); + if (targ_ms) + delta /= 1000000U; + else + delta /= 1000U; + slot = log2l(delta); + if (slot >= MAX_SLOTS) + slot = MAX_SLOTS - 1; + __sync_fetch_and_add(&histp->slots[slot], 1); + +cleanup: + bpf_map_delete_elem(&start, &pid); + return 0; +} + +SEC("raw_tp/sched_wakeup") +int BPF_PROG(handle_sched_wakeup, struct task_struct *p) +{ + if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) + return 0; + + return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid)); +} + +SEC("raw_tp/sched_wakeup_new") +int BPF_PROG(handle_sched_wakeup_new, struct task_struct *p) +{ + if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) + return 0; + + return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid)); +} + +SEC("raw_tp/sched_switch") +int BPF_PROG(handle_sched_switch, bool preempt, struct task_struct *prev, struct task_struct *next) +{ + return handle_switch(preempt, prev, next); +} + +char LICENSE[] SEC("license") = "GPL"; diff --git a/9-runqlat/runqlat.h b/9-runqlat/runqlat.h new file mode 100644 index 0000000..b6f0a02 --- /dev/null +++ b/9-runqlat/runqlat.h @@ -0,0 +1,14 @@ + +/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */ +#ifndef __RUNQLAT_H +#define __RUNQLAT_H + +#define TASK_COMM_LEN 16 +#define MAX_SLOTS 26 + +struct hist { + __u32 slots[MAX_SLOTS]; + char comm[TASK_COMM_LEN]; +}; + +#endif /* __RUNQLAT_H */ diff --git a/FontAwesome/css/font-awesome.css b/FontAwesome/css/font-awesome.css new file mode 100644 index 0000000..540440c --- /dev/null +++ b/FontAwesome/css/font-awesome.css @@ -0,0 +1,4 @@ +/*! + * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto} diff --git a/FontAwesome/fonts/FontAwesome.ttf b/FontAwesome/fonts/FontAwesome.ttf new file mode 100644 index 0000000..35acda2 Binary files /dev/null and b/FontAwesome/fonts/FontAwesome.ttf differ diff --git a/FontAwesome/fonts/fontawesome-webfont.eot b/FontAwesome/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000..e9f60ca Binary files /dev/null and b/FontAwesome/fonts/fontawesome-webfont.eot differ diff --git a/FontAwesome/fonts/fontawesome-webfont.svg b/FontAwesome/fonts/fontawesome-webfont.svg new file mode 100644 index 0000000..855c845 --- /dev/null +++ b/FontAwesome/fonts/fontawesome-webfont.svg @@ -0,0 +1,2671 @@ + + + + +Created by FontForge 20120731 at Mon Oct 24 17:37:40 2016 + By ,,, +Copyright Dave Gandy 2016. All rights reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FontAwesome/fonts/fontawesome-webfont.ttf b/FontAwesome/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000..35acda2 Binary files /dev/null and b/FontAwesome/fonts/fontawesome-webfont.ttf differ diff --git a/FontAwesome/fonts/fontawesome-webfont.woff b/FontAwesome/fonts/fontawesome-webfont.woff new file mode 100644 index 0000000..400014a Binary files /dev/null and b/FontAwesome/fonts/fontawesome-webfont.woff differ diff --git a/FontAwesome/fonts/fontawesome-webfont.woff2 b/FontAwesome/fonts/fontawesome-webfont.woff2 new file mode 100644 index 0000000..4d13fc6 Binary files /dev/null and b/FontAwesome/fonts/fontawesome-webfont.woff2 differ diff --git a/ayu-highlight.css b/ayu-highlight.css new file mode 100644 index 0000000..32c9432 --- /dev/null +++ b/ayu-highlight.css @@ -0,0 +1,78 @@ +/* +Based off of the Ayu theme +Original by Dempfi (https://github.com/dempfi/ayu) +*/ + +.hljs { + display: block; + overflow-x: auto; + background: #191f26; + color: #e6e1cf; +} + +.hljs-comment, +.hljs-quote { + color: #5c6773; + font-style: italic; +} + +.hljs-variable, +.hljs-template-variable, +.hljs-attribute, +.hljs-attr, +.hljs-regexp, +.hljs-link, +.hljs-selector-id, +.hljs-selector-class { + color: #ff7733; +} + +.hljs-number, +.hljs-meta, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params { + color: #ffee99; +} + +.hljs-string, +.hljs-bullet { + color: #b8cc52; +} + +.hljs-title, +.hljs-built_in, +.hljs-section { + color: #ffb454; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-symbol { + color: #ff7733; +} + +.hljs-name { + color: #36a3d9; +} + +.hljs-tag { + color: #00568d; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-addition { + color: #91b362; +} + +.hljs-deletion { + color: #d96c75; +} diff --git a/bcc-documents/kernel-versions.html b/bcc-documents/kernel-versions.html new file mode 100644 index 0000000..4241d05 --- /dev/null +++ b/bcc-documents/kernel-versions.html @@ -0,0 +1,685 @@ + + + + + + BPF Features by Linux Kernel Version - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

BPF Features by Linux Kernel Version

+

eBPF support

+
+ +
Kernel versionCommit
3.15bd4cf0ed331a
+
+

JIT compiling

+

The list of supported architectures for your kernel can be retrieved with:

+
git grep HAVE_EBPF_JIT arch/
+
+
+ + + + + + + + + + + + + + +
Feature / ArchitectureKernel versionCommit
x86_643.16622582786c9e
ARM643.18e54bcde3d69d
s3904.1054623105728
Constant blinding for JIT machines4.74f3446bb809f
PowerPC644.8156d0e290e96
Constant blinding - PowerPC644.9b7b7013cac55
Sparc644.127a12b5031c6b
MIPS4.13f381bf6d82f0
ARM324.1439c13c204bb1
x86_324.1803f5781be2c7
RISC-V RV64G5.12353ecc6f91f
RISC-V RV32G5.75f316b65e99f
PowerPC325.1351c66ad849a7
LoongArch6.15dc615520c4d
+
+

Main features

+

Several (but not all) of these main features translate to an eBPF program type. +The list of such program types supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep -W 'bpf_prog_type {' include/uapi/linux/bpf.h
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureKernel versionCommit
AF_PACKET (libpcap/tcpdump, cls_bpf classifier, netfilter's xt_bpf, team driver's load-balancing mode…)3.15bd4cf0ed331a
Kernel helpers3.15bd4cf0ed331a
bpf() syscall3.1899c55f7d47c0
Maps (a.k.a. Tables; details below)3.1899c55f7d47c0
BPF attached to sockets3.1989aa075832b0
BPF attached to kprobes4.12541517c32be
cls_bpf / act_bpf for tc4.1e2e9b6541dd4
Tail calls4.204fd61ab36ec
Non-root programs on sockets4.41be7f75d1668
Persistent maps and programs (virtual FS)4.4b2197755b263
tc's direct-action (da) mode4.4045efa82ff56
tc's clsact qdisc4.51f211a1b929c
BPF attached to tracepoints4.798b5c2c65c29
Direct packet access4.7969bf05eb3ce
XDP (see below)4.86a773a15a1e8
BPF attached to perf events4.90515e5999a46
Hardware offload for tc's cls_bpf4.9332ae8e2f6ec
Verifier exposure and internal hooks4.913a27dfc6697
BPF attached to cgroups for socket filtering4.100e33661de493
Lightweight tunnel encapsulation4.103a0af8fd61f9
eBPF support for xt_bpf module (iptables)4.102c16d6033264
BPF program tag4.107bd509e311f4
Tracepoints to debug BPF4.11 (removed in 4.18)a67edbf4fb6d 4d220ed0f814
Testing / benchmarking BPF programs4.121cf1cae963c2
BPF programs and maps IDs4.13dc4bb0e23561
BPF support for sock_ops4.1340304b2a1567
BPF support for skbs on sockets4.14b005fd189cec
bpftool utility in kernel sources4.1571bb428fe2c1
BPF attached to cgroups as device controller4.15ebc614f68736
bpf2bpf function calls4.16cc8b0b92a169
BPF used for monitoring socket RX/TX data4.174f738adba30a
BPF attached to raw tracepoints4.17c4f6699dfcb8
BPF attached to bind() system call4.174fbac77d2d09 aac3fc320d94
BPF attached to connect() system call4.17d74bad4e74ee
BPF Type Format (BTF)4.1869b693f0aefa
AF_XDP4.18fbfc504a24f5
bpfilter4.18d2ba09c17a06
End.BPF action for seg6local LWT4.18004d4b274e2a
BPF attached to LIRC devices4.18f4364dcfc86d
Pass map values to map helpers4.18d71962f3e627
BPF socket reuseport4.192dbb9b9e6df6
BPF flow dissector4.20d58e468b1112
BPF 1M insn limit5.2c04c0d2b968a
BPF cgroup sysctl5.27b146cebe30c
BPF raw tracepoint writable5.29df1c28bb752
BPF bounded loop5.32589726d12a1
BPF trampoline5.5fec56f5890d9
BPF LSM hook5.7fc611f47f218 641cd7b06c91
BPF iterator5.8180139dca8b3
BPF socket lookup hook5.9e9ddbb7707ff
Sleepable BPF programs5.101e6c62a88215
+
+

Program types

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Program typeKernel versionCommitEnum
Socket filter3.19ddd872bc3098BPF_PROG_TYPE_SOCKET_FILTER
Kprobe4.12541517c32beBPF_PROG_TYPE_KPROBE
traffic control (TC)4.196be4325f443BPF_PROG_TYPE_SCHED_CLS
traffic control (TC)4.194caee8c312dBPF_PROG_TYPE_SCHED_ACT
Tracepoint4.798b5c2c65c29BPF_PROG_TYPE_TRACEPOINT
XDP4.86a773a15a1e8BPF_PROG_TYPE_XDP
Perf event4.90515e5999a46BPF_PROG_TYPE_PERF_EVENT
cgroup socket filtering4.100e33661de493BPF_PROG_TYPE_CGROUP_SKB
cgroup sock modification4.10610236587600BPF_PROG_TYPE_CGROUP_SOCK
lightweight tunnel (IN)4.103a0af8fd61f9BPF_PROG_TYPE_LWT_IN
lightweight tunnel (OUT)4.103a0af8fd61f9BPF_PROG_TYPE_LWT_OUT
lightweight tunnel (XMIT)4.103a0af8fd61f9BPF_PROG_TYPE_LWT_XMIT
cgroup sock ops (per conn)4.1340304b2a1567BPF_PROG_TYPE_SOCK_OPS
stream parser / stream verdict4.14b005fd189cecBPF_PROG_TYPE_SK_SKB
cgroup device manager4.15ebc614f68736BPF_PROG_TYPE_CGROUP_DEVICE
socket msg verdict4.174f738adba30aBPF_PROG_TYPE_SK_MSG
Raw tracepoint4.17c4f6699dfcb8BPF_PROG_TYPE_RAW_TRACEPOINT
socket binding4.174fbac77d2d09BPF_PROG_TYPE_CGROUP_SOCK_ADDR
LWT seg6local4.18004d4b274e2aBPF_PROG_TYPE_LWT_SEG6LOCAL
lirc devices4.18f4364dcfc86dBPF_PROG_TYPE_LIRC_MODE2
lookup SO_REUSEPORT socket4.192dbb9b9e6df6BPF_PROG_TYPE_SK_REUSEPORT
flow dissector4.20d58e468b1112BPF_PROG_TYPE_FLOW_DISSECTOR
cgroup sysctl5.27b146cebe30cBPF_PROG_TYPE_CGROUP_SYSCTL
writable raw tracepoints5.29df1c28bb752BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE
cgroup getsockopt/setsockopt5.30d01da6afc54BPF_PROG_TYPE_CGROUP_SOCKOPT
Tracing (BTF/BPF trampoline)5.5f1b9509c2fb0BPF_PROG_TYPE_TRACING
struct ops5.627ae7997a661BPF_PROG_TYPE_STRUCT_OPS
extensions5.6be8704ff07d2BPF_PROG_TYPE_EXT
LSM5.7fc611f47f218BPF_PROG_TYPE_LSM
lookup listening socket5.9e9ddbb7707ffBPF_PROG_TYPE_SK_LOOKUP
Allow executing syscalls5.1579a7f8bdb159BPF_PROG_TYPE_SYSCALL
+
+

Maps (a.k.a. Tables, in BCC lingo)

+

Map types

+

The list of map types supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep -W 'bpf_map_type {' include/uapi/linux/bpf.h
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Map typeKernel versionCommitEnum
Hash3.190f8e4bd8a1fcBPF_MAP_TYPE_HASH
Array3.1928fbcfa08d8eBPF_MAP_TYPE_ARRAY
Prog array4.204fd61ab36ecBPF_MAP_TYPE_PROG_ARRAY
Perf events4.3ea317b267e9dBPF_MAP_TYPE_PERF_EVENT_ARRAY
Per-CPU hash4.6824bd0ce6c7cBPF_MAP_TYPE_PERCPU_HASH
Per-CPU array4.6a10423b87a7eBPF_MAP_TYPE_PERCPU_ARRAY
Stack trace4.6d5a3b1f69186BPF_MAP_TYPE_STACK_TRACE
cgroup array4.84ed8ec521ed5BPF_MAP_TYPE_CGROUP_ARRAY
LRU hash4.1029ba732acbee 3a08c2fd7634BPF_MAP_TYPE_LRU_HASH
LRU per-CPU hash4.108f8449384ec3 961578b63474BPF_MAP_TYPE_LRU_PERCPU_HASH
LPM trie (longest-prefix match)4.11b95a5c4db09bBPF_MAP_TYPE_LPM_TRIE
Array of maps4.1256f668dfe00dBPF_MAP_TYPE_ARRAY_OF_MAPS
Hash of maps4.12bcc6b1b7ebf8BPF_MAP_TYPE_HASH_OF_MAPS
Netdevice references (array)4.14546ac1ffb70dBPF_MAP_TYPE_DEVMAP
Socket references (array)4.14174a79ff9515BPF_MAP_TYPE_SOCKMAP
CPU references4.156710e1126934BPF_MAP_TYPE_CPUMAP
AF_XDP socket (XSK) references4.18fbfc504a24f5BPF_MAP_TYPE_XSKMAP
Socket references (hashmap)4.1881110384441aBPF_MAP_TYPE_SOCKHASH
cgroup storage4.19de9cbbaadba5BPF_MAP_TYPE_CGROUP_STORAGE
reuseport sockarray4.195dc4c4b7d4e8BPF_MAP_TYPE_REUSEPORT_SOCKARRAY
precpu cgroup storage4.20b741f1630346BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE
queue4.20f1a2e44a3aecBPF_MAP_TYPE_QUEUE
stack4.20f1a2e44a3aecBPF_MAP_TYPE_STACK
socket local storage5.26ac99e8f23d4BPF_MAP_TYPE_SK_STORAGE
Netdevice references (hashmap)5.46f9d451ab1a3BPF_MAP_TYPE_DEVMAP_HASH
struct ops5.685d33df357b6BPF_MAP_TYPE_STRUCT_OPS
ring buffer5.8457f44363a88BPF_MAP_TYPE_RINGBUF
inode storage5.108ea636848acaBPF_MAP_TYPE_INODE_STORAGE
task storage5.114cf1bc1f1045BPF_MAP_TYPE_TASK_STORAGE
Bloom filter5.169330986c0300BPF_MAP_TYPE_BLOOM_FILTER
user ringbuf6.1583c1f420173BPF_MAP_TYPE_USER_RINGBUF
+
+

Map userspace API

+

Some (but not all) of these API features translate to a subcommand beginning with BPF_MAP_. +The list of subcommands supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep -W 'bpf_cmd {' include/uapi/linux/bpf.h
+
+
+ + + + + + + + + + + + + + + + + +
FeatureKernel versionCommit
Basic operations (lookup, update, delete, GET_NEXT_KEY)3.18db20fd2b0108
Pass flags to UPDATE_ELEM3.193274f52073d8
Pre-alloc map memory by default4.66c9059817432
Pass NULL to GET_NEXT_KEY4.128fe45924387b
Creation: select NUMA node4.1496eabe7a40aa
Restrict access from syscall side4.156e71b04a8224
Creation: specify map name4.15ad5b177bd73f
LOOKUP_AND_DELETE_ELEM4.20bd513cd08f10
Creation: BPF_F_ZERO_SEED5.096b3b6c9091d
BPF_F_LOCK flag for lookup / update5.196049f3afd50
Restrict access from BPF side5.2591fe9888d78
FREEZE5.287df15de441b
mmap() support for array maps5.5fc9702273e2e
LOOKUP_BATCH5.6cb4d03ab499d
UPDATE_BATCH, DELETE_BATCH5.6aa2e93b8e58e
LOOKUP_AND_DELETE_BATCH5.6057996380a42
LOOKUP_AND_DELETE_ELEM support for hash maps5.143e87f192b405
+
+

XDP

+

An approximate list of drivers or components supporting XDP programs for your +kernel can be retrieved with:

+
git grep -l XDP_SETUP_PROG drivers/
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Feature / DriverKernel versionCommit
XDP core architecture4.86a773a15a1e8
Action: drop4.86a773a15a1e8
Action: pass on to stack4.86a773a15a1e8
Action: direct forwarding (on same port)4.86ce96ca348a9
Direct packet data write4.84acf6c0b84c9
Mellanox mlx4 driver4.847a38e155037
Mellanox mlx5 driver4.986994156c736
Netronome nfp driver4.10ecd63a0217d5
QLogic (Cavium) qed* drivers4.10496e05170958
virtio_net driver4.10f600b6905015
Broadcom bnxt_en driver4.11c6d30e8391b8
Intel ixgbe* drivers4.12924708081629
Cavium thunderx driver4.1205c773f52b96
Generic XDP4.12b5cdae3291f7
Intel i40e driver4.130c8493d90b6b
Action: redirect4.146453073987ba
Support for tap4.14761876c857cb
Support for veth4.14d445516966dc
Intel ixgbevf driver4.17c7aec59657b6
Freescale dpaa2 driver5.07e273a8ebdd3
Socionext netsec driver5.3ba2b232108d3
TI cpsw driver5.39ed4050c0d75
Intel ice driver5.5efc2214b6047
Solarflare sfc driver5.5eb9a36be7f3e
Marvell mvneta driver5.50db51da7a8e9
Microsoft hv_netvsc driver5.6351e1581395f
Amazon ena driver5.6838c93dc5449
xen-netfront driver5.96c5aa6fc4def
Intel igb driver5.109cbc948b5a20
+
+

Helpers

+

The list of helpers supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep '	FN(' include/uapi/linux/bpf.h
+
+

Alphabetical order

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HelperKernel versionLicenseCommit
BPF_FUNC_bind()4.17d74bad4e74ee
BPF_FUNC_bprm_opts_set()5.113f6719c7b62f
BPF_FUNC_btf_find_by_name_kind()5.143d78417b60fb
BPF_FUNC_cgrp_storage_delete()6.2c4bcfb38a95e
BPF_FUNC_cgrp_storage_get()6.2c4bcfb38a95e
BPF_FUNC_check_mtu()5.1234b2021cc616
BPF_FUNC_clone_redirect()4.23896d655f4d4
BPF_FUNC_copy_from_user()5.1007be4c4a3e7a
BPF_FUNC_copy_from_user_task()5.18GPL376040e47334
BPF_FUNC_csum_diff()4.67d672345ed29
BPF_FUNC_csum_level()5.77cdec54f9713
BPF_FUNC_csum_update()4.936bbef52c7eb
BPF_FUNC_current_task_under_cgroup()4.960d20f9195b2
BPF_FUNC_d_path()5.106e22ab9da793
BPF_FUNC_dynptr_data()5.1934d4ef5775f7
BPF_FUNC_dynptr_from_mem()5.19263ae152e962
BPF_FUNC_dynptr_read()5.1913bbbfbea759
BPF_FUNC_dynptr_write()5.1913bbbfbea759
BPF_FUNC_fib_lookup()4.18GPL87f5fc7e48dd
BPF_FUNC_find_vma()5.177c7e3d31e785
BPF_FUNC_for_each_map_elem()5.1369c087ba6225
BPF_FUNC_get_attach_cookie()5.157adfc6c9b315
BPF_FUNC_get_branch_snapshot()5.16GPL856c02dbce4f
BPF_FUNC_get_current_ancestor_cgroup_id()5.6b4490c5c4e02
BPF_FUNC_get_cgroup_classid()4.38d20aabe1c76
BPF_FUNC_get_current_cgroup_id()4.18bf6fa2c893c5
BPF_FUNC_get_current_comm()4.2ffeedafbf023
BPF_FUNC_get_current_pid_tgid()4.2ffeedafbf023
BPF_FUNC_get_current_task()4.8GPL606274c5abd8
BPF_FUNC_get_current_task_btf()5.11GPL3ca1032ab7ab
BPF_FUNC_get_current_uid_gid()4.2ffeedafbf023
BPF_FUNC_get_func_arg()5.17f92c1e183604
BPF_FUNC_get_func_arg_cnt()5.17f92c1e183604
BPF_FUNC_get_func_ip()5.155d8b583d04ae
BPF_FUNC_get_func_ret()5.17f92c1e183604
BPF_FUNC_get_retval()5.18b44123b4a3dc
BPF_FUNC_get_hash_recalc()4.813c5c240f789
BPF_FUNC_get_listener_sock()5.1dbafd7ddd623
BPF_FUNC_get_local_storage()4.19cd3394317653
BPF_FUNC_get_netns_cookie()5.7f318903c0bf4
BPF_FUNC_get_ns_current_pid_tgid()5.7b4490c5c4e02
BPF_FUNC_get_numa_node_id()4.102d0e30c30f84
BPF_FUNC_get_prandom_u32()4.103e69b508b6f
BPF_FUNC_get_route_realm()4.4c46646d0484f
BPF_FUNC_get_smp_processor_id()4.1c04167ce2ca0
BPF_FUNC_get_socket_cookie()4.1291b8270f2a4d
BPF_FUNC_get_socket_uid()4.126acc5c291068
BPF_FUNC_get_stack()4.18GPLde2ff05f48af
BPF_FUNC_get_stackid()4.6GPLd5a3b1f69186
BPF_FUNC_get_task_stack()5.9fa28dcb82a38
BPF_FUNC_getsockopt()4.15cd86d1fd2102
BPF_FUNC_ima_file_hash()5.18174b16946e39
BPF_FUNC_ima_inode_hash()5.1127672f0d280a
BPF_FUNC_inode_storage_delete()5.108ea636848aca
BPF_FUNC_inode_storage_get()5.108ea636848aca
BPF_FUNC_jiffies64()5.55576b991e9c1
BPF_FUNC_kallsyms_lookup_name()5.16d6aef08a872b
BPF_FUNC_kptr_xchg()5.19c0a5a21c25f3
BPF_FUNC_ktime_get_boot_ns()5.871d19214776e
BPF_FUNC_ktime_get_coarse_ns()5.11d05512618056
BPF_FUNC_ktime_get_ns()4.1d9847d310ab4
BPF_FUNC_ktime_get_tai_ns()6.1c8996c98f703
BPF_FUNC_l3_csum_replace()4.191bc4822c3d6
BPF_FUNC_l4_csum_replace()4.191bc4822c3d6
BPF_FUNC_load_hdr_opt()5.100813a841566f
BPF_FUNC_loop()5.17e6f2dd0f8067
BPF_FUNC_lwt_push_encap()4.18fe94cc290f53
BPF_FUNC_lwt_seg6_action()4.18fe94cc290f53
BPF_FUNC_lwt_seg6_adjust_srh()4.18fe94cc290f53
BPF_FUNC_lwt_seg6_store_bytes()4.18fe94cc290f53
BPF_FUNC_map_delete_elem()3.19d0003ec01c66
BPF_FUNC_map_lookup_elem()3.19d0003ec01c66
BPF_FUNC_map_lookup_percpu_elem()5.1907343110b293
BPF_FUNC_map_peek_elem()4.20f1a2e44a3aec
BPF_FUNC_map_pop_elem()4.20f1a2e44a3aec
BPF_FUNC_map_push_elem()4.20f1a2e44a3aec
BPF_FUNC_map_update_elem()3.19d0003ec01c66
BPF_FUNC_msg_apply_bytes()4.172a100317c9eb
BPF_FUNC_msg_cork_bytes()4.1791843d540a13
BPF_FUNC_msg_pop_data()5.07246d8ed4dcc
BPF_FUNC_msg_pull_data()4.17015632bb30da
BPF_FUNC_msg_push_data()4.206fff607e2f14
BPF_FUNC_msg_redirect_hash()4.1881110384441a
BPF_FUNC_msg_redirect_map()4.174f738adba30a
BPF_FUNC_per_cpu_ptr()5.10eaa6bcb71ef6
BPF_FUNC_perf_event_output()4.4GPLa43eec304259
BPF_FUNC_perf_event_read()4.3GPL35578d798400
BPF_FUNC_perf_event_read_value()4.15GPL908432ca84fc
BPF_FUNC_perf_prog_read_value()4.15GPL4bebdc7a85aa
BPF_FUNC_probe_read()4.1GPL2541517c32be
BPF_FUNC_probe_read_kernel()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_kernel_str()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_user()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_user_str()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_str()4.11GPLa5e8c07059d0
BPF_FUNC_probe_write_user()4.8GPL96ae52279594
BPF_FUNC_rc_keydown()4.18GPLf4364dcfc86d
BPF_FUNC_rc_pointer_rel()5.0GPL01d3240a04f4
BPF_FUNC_rc_repeat()4.18GPLf4364dcfc86d
BPF_FUNC_read_branch_records()5.6GPLfff7b64355ea
BPF_FUNC_redirect()4.427b29f63058d
BPF_FUNC_redirect_map()4.1497f91a7cf04f
BPF_FUNC_redirect_neigh()5.10b4ab31414970
BPF_FUNC_redirect_peer()5.109aa1206e8f48
BPF_FUNC_reserve_hdr_opt()5.100813a841566f
BPF_FUNC_ringbuf_discard()5.8457f44363a88
BPF_FUNC_ringbuf_discard_dynptr()5.19bc34dee65a65
BPF_FUNC_ringbuf_output()5.8457f44363a88
BPF_FUNC_ringbuf_query()5.8457f44363a88
BPF_FUNC_ringbuf_reserve()5.8457f44363a88
BPF_FUNC_ringbuf_reserve_dynptr()5.19bc34dee65a65
BPF_FUNC_ringbuf_submit()5.8457f44363a88
BPF_FUNC_ringbuf_submit_dynptr()5.19bc34dee65a65
BPF_FUNC_send_signal()5.38b401f9ed244
BPF_FUNC_send_signal_thread()5.58482941f0906
BPF_FUNC_seq_printf()5.7GPL492e639f0c22
BPF_FUNC_seq_printf_btf()5.10eb411377aed9
BPF_FUNC_seq_write()5.7GPL492e639f0c22
BPF_FUNC_set_hash()4.13ded092cd73c2
BPF_FUNC_set_hash_invalid()4.97a4b28c6cc9f
BPF_FUNC_set_retval()5.18b44123b4a3dc
BPF_FUNC_setsockopt()4.138c4b4c7e9ff0
BPF_FUNC_sk_ancestor_cgroup_id()5.7f307fa2cb4c9
BPF_FUNC_sk_assign()5.6cf7fbe660f2d
BPF_FUNC_sk_cgroup_id()5.7f307fa2cb4c9
BPF_FUNC_sk_fullsock()5.146f8bc92758c
BPF_FUNC_sk_lookup_tcp()4.206acc9b432e67
BPF_FUNC_sk_lookup_udp()4.206acc9b432e67
BPF_FUNC_sk_redirect_hash()4.1881110384441a
BPF_FUNC_sk_redirect_map()4.14174a79ff9515
BPF_FUNC_sk_release()4.206acc9b432e67
BPF_FUNC_sk_select_reuseport()4.192dbb9b9e6df6
BPF_FUNC_sk_storage_delete()5.26ac99e8f23d4
BPF_FUNC_sk_storage_get()5.26ac99e8f23d4
BPF_FUNC_skb_adjust_room()4.132be7e212d541
BPF_FUNC_skb_ancestor_cgroup_id()4.197723628101aa
BPF_FUNC_skb_change_head()4.103a0af8fd61f9
BPF_FUNC_skb_change_proto()4.86578171a7ff0
BPF_FUNC_skb_change_tail()4.95293efe62df8
BPF_FUNC_skb_change_type()4.8d2485c4242a8
BPF_FUNC_skb_cgroup_classid()5.10b426ce83baa7
BPF_FUNC_skb_cgroup_id()4.18cb20b08ead40
BPF_FUNC_skb_ecn_set_ce()5.1f7c917ba11a6
BPF_FUNC_skb_get_tunnel_key()4.3d3aa45ce6b94
BPF_FUNC_skb_get_tunnel_opt()4.614ca0751c96f
BPF_FUNC_skb_get_xfrm_state()4.1812bed760a78d
BPF_FUNC_skb_load_bytes()4.505c74e5e53f6
BPF_FUNC_skb_load_bytes_relative()4.184e1ec56cdc59
BPF_FUNC_skb_output()5.5a7658e1a4164
BPF_FUNC_skb_pull_data()4.936bbef52c7eb
BPF_FUNC_skb_set_tstamp()5.189bb984f28d5b
BPF_FUNC_skb_set_tunnel_key()4.3d3aa45ce6b94
BPF_FUNC_skb_set_tunnel_opt()4.614ca0751c96f
BPF_FUNC_skb_store_bytes()4.191bc4822c3d6
BPF_FUNC_skb_under_cgroup()4.84a482f34afcc
BPF_FUNC_skb_vlan_pop()4.34e10df9a60d9
BPF_FUNC_skb_vlan_push()4.34e10df9a60d9
BPF_FUNC_skc_lookup_tcp()5.2edbf8c01de5a
BPF_FUNC_skc_to_mctcp_sock()5.193bc253c2e652
BPF_FUNC_skc_to_tcp_sock()5.9478cfbdf5f13
BPF_FUNC_skc_to_tcp_request_sock()5.9478cfbdf5f13
BPF_FUNC_skc_to_tcp_timewait_sock()5.9478cfbdf5f13
BPF_FUNC_skc_to_tcp6_sock()5.9af7ec1383361
BPF_FUNC_skc_to_udp6_sock()5.90d4fad3e57df
BPF_FUNC_skc_to_unix_sock()5.169eeb3aa33ae0
BPF_FUNC_snprintf()5.137b15523a989b
BPF_FUNC_snprintf_btf()5.10c4d0bfb45068
BPF_FUNC_sock_from_file()5.114f19cab76136
BPF_FUNC_sock_hash_update()4.1881110384441a
BPF_FUNC_sock_map_update()4.14174a79ff9515
BPF_FUNC_spin_lock()5.1d83525ca62cf
BPF_FUNC_spin_unlock()5.1d83525ca62cf
BPF_FUNC_store_hdr_opt()5.100813a841566f
BPF_FUNC_strncmp()5.17c5fb19937455
BPF_FUNC_strtol()5.2d7a4cb9b6705
BPF_FUNC_strtoul()5.2d7a4cb9b6705
BPF_FUNC_sys_bpf()5.1479a7f8bdb159
BPF_FUNC_sys_close()5.143abea089246f
BPF_FUNC_sysctl_get_current_value()5.21d11b3016cec
BPF_FUNC_sysctl_get_name()5.2808649fb787d
BPF_FUNC_sysctl_get_new_value()5.24e63acdff864
BPF_FUNC_sysctl_set_new_value()5.24e63acdff864
BPF_FUNC_tail_call()4.204fd61ab36ec
BPF_FUNC_task_pt_regs()5.15GPLdd6e10fbd9f
BPF_FUNC_task_storage_delete()5.114cf1bc1f1045
BPF_FUNC_task_storage_get()5.114cf1bc1f1045
BPF_FUNC_tcp_check_syncookie()5.2399040847084
BPF_FUNC_tcp_gen_syncookie()5.370d66244317e
BPF_FUNC_tcp_raw_check_syncookie_ipv4()6.033bf9885040c
BPF_FUNC_tcp_raw_check_syncookie_ipv6()6.033bf9885040c
BPF_FUNC_tcp_raw_gen_syncookie_ipv4()6.033bf9885040c
BPF_FUNC_tcp_raw_gen_syncookie_ipv6()6.033bf9885040c
BPF_FUNC_tcp_send_ack()5.5206057fe020a
BPF_FUNC_tcp_sock()5.1655a51e536c0
BPF_FUNC_this_cpu_ptr()5.1063d9b80dcf2c
BPF_FUNC_timer_init()5.15b00628b1c7d5
BPF_FUNC_timer_set_callback()5.15b00628b1c7d5
BPF_FUNC_timer_start()5.15b00628b1c7d5
BPF_FUNC_timer_cancel()5.15b00628b1c7d5
BPF_FUNC_trace_printk()4.1GPL9c959c863f82
BPF_FUNC_trace_vprintk()5.16GPL10aceb629e19
BPF_FUNC_user_ringbuf_drain()6.1205715673844
BPF_FUNC_xdp_adjust_head()4.1017bedab27231
BPF_FUNC_xdp_adjust_meta()4.15de8f3a83b0a0
BPF_FUNC_xdp_adjust_tail()4.18b32cc5b9a346
BPF_FUNC_xdp_get_buff_len()5.180165cc817075
BPF_FUNC_xdp_load_bytes()5.183f364222d032
BPF_FUNC_xdp_store_bytes()5.183f364222d032
BPF_FUNC_xdp_output()5.6GPLd831ee84bfc9
BPF_FUNC_override_return()4.16GPL9802d86585db
BPF_FUNC_sock_ops_cb_flags_set()4.16b13d88072172
+
+

Note: GPL-only BPF helpers require a GPL-compatible license. The current licenses considered GPL-compatible by the kernel are:

+
    +
  • GPL
  • +
  • GPL v2
  • +
  • GPL and additional rights
  • +
  • Dual BSD/GPL
  • +
  • Dual MIT/GPL
  • +
  • Dual MPL/GPL
  • +
+

Check the list of GPL-compatible licenses in your kernel source code.

+

Program Types

+

The list of program types and supported helper functions can be retrieved with:

+
git grep -W 'func_proto(enum bpf_func_id func_id' kernel/ net/ drivers/
+
+
+ + + + + + + + + + + + + + + + + + + + + +
Program TypeHelper Functions
BPF_PROG_TYPE_SOCKET_FILTERBPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_load_bytes_relative()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
BPF_FUNC_perf_event_output()
Base functions
BPF_PROG_TYPE_KPROBEBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_perf_event_read_value()
BPF_FUNC_override_return()
Tracing functions
BPF_PROG_TYPE_SCHED_CLS
BPF_PROG_TYPE_SCHED_ACT
BPF_FUNC_skb_store_bytes()
BPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_load_bytes_relative()
BPF_FUNC_skb_pull_data()
BPF_FUNC_csum_diff()
BPF_FUNC_csum_update()
BPF_FUNC_l3_csum_replace()
BPF_FUNC_l4_csum_replace()
BPF_FUNC_clone_redirect()
BPF_FUNC_get_cgroup_classid()
BPF_FUNC_skb_vlan_push()
BPF_FUNC_skb_vlan_pop()
BPF_FUNC_skb_change_proto()
BPF_FUNC_skb_change_type()
BPF_FUNC_skb_adjust_room()
BPF_FUNC_skb_change_tail()
BPF_FUNC_skb_get_tunnel_key()
BPF_FUNC_skb_set_tunnel_key()
BPF_FUNC_skb_get_tunnel_opt()
BPF_FUNC_skb_set_tunnel_opt()
BPF_FUNC_redirect()
BPF_FUNC_get_route_realm()
BPF_FUNC_get_hash_recalc()
BPF_FUNC_set_hash_invalid()
BPF_FUNC_set_hash()
BPF_FUNC_perf_event_output()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_skb_under_cgroup()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
BPF_FUNC_fib_lookup()
BPF_FUNC_skb_get_xfrm_state()
BPF_FUNC_skb_cgroup_id()
Base functions
BPF_PROG_TYPE_TRACEPOINTBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_d_path()
Tracing functions
BPF_PROG_TYPE_XDPBPF_FUNC_perf_event_output()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_csum_diff()
BPF_FUNC_xdp_adjust_head()
BPF_FUNC_xdp_adjust_meta()
BPF_FUNC_redirect()
BPF_FUNC_redirect_map()
BPF_FUNC_xdp_adjust_tail()
BPF_FUNC_fib_lookup()
Base functions
BPF_PROG_TYPE_PERF_EVENTBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_perf_prog_read_value()
Tracing functions
BPF_PROG_TYPE_CGROUP_SKBBPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_load_bytes_relative()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
Base functions
BPF_PROG_TYPE_CGROUP_SOCKBPF_FUNC_get_current_uid_gid()
Base functions
BPF_PROG_TYPE_LWT_INBPF_FUNC_lwt_push_encap()
LWT functions
Base functions
BPF_PROG_TYPE_LWT_OUTLWT functions
Base functions
BPF_PROG_TYPE_LWT_XMITBPF_FUNC_skb_get_tunnel_key()
BPF_FUNC_skb_set_tunnel_key()
BPF_FUNC_skb_get_tunnel_opt()
BPF_FUNC_skb_set_tunnel_opt()
BPF_FUNC_redirect()
BPF_FUNC_clone_redirect()
BPF_FUNC_skb_change_tail()
BPF_FUNC_skb_change_head()
BPF_FUNC_skb_store_bytes()
BPF_FUNC_csum_update()
BPF_FUNC_l3_csum_replace()
BPF_FUNC_l4_csum_replace()
BPF_FUNC_set_hash_invalid()
LWT functions
BPF_PROG_TYPE_SOCK_OPSBPF_FUNC_setsockopt()
BPF_FUNC_getsockopt()
BPF_FUNC_sock_ops_cb_flags_set()
BPF_FUNC_sock_map_update()
BPF_FUNC_sock_hash_update()
BPF_FUNC_get_socket_cookie()
Base functions
BPF_PROG_TYPE_SK_SKBBPF_FUNC_skb_store_bytes()
BPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_pull_data()
BPF_FUNC_skb_change_tail()
BPF_FUNC_skb_change_head()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
BPF_FUNC_sk_redirect_map()
BPF_FUNC_sk_redirect_hash()
BPF_FUNC_sk_lookup_tcp()
BPF_FUNC_sk_lookup_udp()
BPF_FUNC_sk_release()
Base functions
BPF_PROG_TYPE_CGROUP_DEVICEBPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_get_current_uid_gid()
BPF_FUNC_trace_printk()
BPF_PROG_TYPE_SK_MSGBPF_FUNC_msg_redirect_map()
BPF_FUNC_msg_redirect_hash()
BPF_FUNC_msg_apply_bytes()
BPF_FUNC_msg_cork_bytes()
BPF_FUNC_msg_pull_data()
BPF_FUNC_msg_push_data()
BPF_FUNC_msg_pop_data()
Base functions
BPF_PROG_TYPE_RAW_TRACEPOINTBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_skb_output()
Tracing functions
BPF_PROG_TYPE_CGROUP_SOCK_ADDRBPF_FUNC_get_current_uid_gid()
BPF_FUNC_bind()
BPF_FUNC_get_socket_cookie()
Base functions
BPF_PROG_TYPE_LWT_SEG6LOCALBPF_FUNC_lwt_seg6_store_bytes()
BPF_FUNC_lwt_seg6_action()
BPF_FUNC_lwt_seg6_adjust_srh()
LWT functions
BPF_PROG_TYPE_LIRC_MODE2BPF_FUNC_rc_repeat()
BPF_FUNC_rc_keydown()
BPF_FUNC_rc_pointer_rel()
BPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_ktime_get_ns()
BPF_FUNC_tail_call()
BPF_FUNC_get_prandom_u32()
BPF_FUNC_trace_printk()
BPF_PROG_TYPE_SK_REUSEPORTBPF_FUNC_sk_select_reuseport()
BPF_FUNC_skb_load_bytes()
BPF_FUNC_load_bytes_relative()
Base functions
BPF_PROG_TYPE_FLOW_DISSECTORBPF_FUNC_skb_load_bytes()
Base functions
+
+ + + +
Function GroupFunctions
Base functionsBPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_map_peek_elem()
BPF_FUNC_map_pop_elem()
BPF_FUNC_map_push_elem()
BPF_FUNC_get_prandom_u32()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_get_numa_node_id()
BPF_FUNC_tail_call()
BPF_FUNC_ktime_get_boot_ns()
BPF_FUNC_ktime_get_ns()
BPF_FUNC_trace_printk()
BPF_FUNC_spin_lock()
BPF_FUNC_spin_unlock()
Tracing functionsBPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_probe_read()
BPF_FUNC_ktime_get_boot_ns()
BPF_FUNC_ktime_get_ns()
BPF_FUNC_tail_call()
BPF_FUNC_get_current_pid_tgid()
BPF_FUNC_get_current_task()
BPF_FUNC_get_current_uid_gid()
BPF_FUNC_get_current_comm()
BPF_FUNC_trace_printk()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_get_numa_node_id()
BPF_FUNC_perf_event_read()
BPF_FUNC_probe_write_user()
BPF_FUNC_current_task_under_cgroup()
BPF_FUNC_get_prandom_u32()
BPF_FUNC_probe_read_str()
BPF_FUNC_get_current_cgroup_id()
BPF_FUNC_send_signal()
BPF_FUNC_probe_read_kernel()
BPF_FUNC_probe_read_kernel_str()
BPF_FUNC_probe_read_user()
BPF_FUNC_probe_read_user_str()
BPF_FUNC_send_signal_thread()
BPF_FUNC_get_ns_current_pid_tgid()
BPF_FUNC_xdp_output()
BPF_FUNC_get_task_stack()
LWT functionsBPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_pull_data()
BPF_FUNC_csum_diff()
BPF_FUNC_get_cgroup_classid()
BPF_FUNC_get_route_realm()
BPF_FUNC_get_hash_recalc()
BPF_FUNC_perf_event_output()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_skb_under_cgroup()
+
+
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/bcc-documents/kernel_config.html b/bcc-documents/kernel_config.html new file mode 100644 index 0000000..924c80c --- /dev/null +++ b/bcc-documents/kernel_config.html @@ -0,0 +1,243 @@ + + + + + + Kernel Configuration for BPF Features - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Kernel Configuration for BPF Features

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FunctionalitiesKernel ConfigurationDescription
BasicCONFIG_BPF_SYSCALLEnable the bpf() system call
CONFIG_BPF_JITBPF programs are normally handled by a BPF interpreter. This option allows the kernel to generate native code when a program is loaded into the kernel. This will significantly speed-up processing of BPF programs
CONFIG_HAVE_BPF_JITEnable BPF Just In Time compiler
CONFIG_HAVE_EBPF_JITExtended BPF JIT (eBPF)
CONFIG_HAVE_CBPF_JITClassic BPF JIT (cBPF)
CONFIG_MODULESEnable to build loadable kernel modules
CONFIG_BPFBPF VM interpreter
CONFIG_BPF_EVENTSAllow the user to attach BPF programs to kprobe, uprobe, and tracepoint events
CONFIG_PERF_EVENTSKernel performance events and counters
CONFIG_HAVE_PERF_EVENTSEnable perf events
CONFIG_PROFILINGEnable the extended profiling support mechanisms used by profilers
BTFCONFIG_DEBUG_INFO_BTFGenerate deduplicated BTF type information from DWARF debug info
CONFIG_PAHOLE_HAS_SPLIT_BTFGenerate BTF for each selected kernel module
CONFIG_DEBUG_INFO_BTF_MODULESGenerate compact split BTF type information for kernel modules
SecurityCONFIG_BPF_JIT_ALWAYS_ONEnable BPF JIT and removes BPF interpreter to avoid speculative execution
CONFIG_BPF_UNPRIV_DEFAULT_OFFDisable unprivileged BPF by default by setting
CgroupCONFIG_CGROUP_BPFSupport for BPF programs attached to cgroups
NetworkCONFIG_BPFILTERBPF based packet filtering framework (BPFILTER)
CONFIG_BPFILTER_UMHThis builds bpfilter kernel module with embedded user mode helper
CONFIG_NET_CLS_BPFBPF-based classifier - to classify packets based on programmable BPF (JIT'ed) filters as an alternative to ematches
CONFIG_NET_ACT_BPFExecute BPF code on packets. The BPF code will decide if the packet should be dropped or not
CONFIG_BPF_STREAM_PARSEREnable this to allow a TCP stream parser to be used with BPF_MAP_TYPE_SOCKMAP
CONFIG_LWTUNNEL_BPFAllow to run BPF programs as a nexthop action following a route lookup for incoming and outgoing packets
CONFIG_NETFILTER_XT_MATCH_BPFBPF matching applies a linux socket filter to each packet and accepts those for which the filter returns non-zero
CONFIG_IPV6_SEG6_BPFTo support BPF seg6local hook. bpf: Add IPv6 Segment Routing helpersy. Reference
kprobesCONFIG_KPROBE_EVENTSThis allows the user to add tracing events (similar to tracepoints) on the fly via the ftrace interface
CONFIG_KPROBESEnable kprobes-based dynamic events
CONFIG_HAVE_KPROBESCheck if krpobes enabled
CONFIG_HAVE_REGS_AND_STACK_ACCESS_APIThis symbol should be selected by an architecture if it supports the API needed to access registers and stack entries from pt_regs. For example the kprobes-based event tracer needs this API.
CONFIG_KPROBES_ON_FTRACEHave kprobes on function tracer if arch supports full passing of pt_regs to function tracing
kprobe multiCONFIG_FPROBEEnable fprobe to attach the probe on multiple functions at once
kprobe overrideCONFIG_BPF_KPROBE_OVERRIDEEnable BPF programs to override a kprobed function
uprobesCONFIG_UPROBE_EVENTSEnable uprobes-based dynamic events
CONFIG_ARCH_SUPPORTS_UPROBESArch specific uprobes support
CONFIG_UPROBESUprobes is the user-space counterpart to kprobes: they enable instrumentation applications (such as 'perf probe') to establish unintrusive probes in user-space binaries and libraries, by executing handler functions when the probes are hit by user-space applications.
CONFIG_MMUMMU-based virtualised addressing space support by paged memory management
TracepointsCONFIG_TRACEPOINTSEnable inserting tracepoints in the kernel and connect to proble functions
CONFIG_HAVE_SYSCALL_TRACEPOINTSEnable syscall enter/exit tracing
Raw TracepointsSame as Tracepoints
LSMCONFIG_BPF_LSMEnable instrumentation of the security hooks with BPF programs for implementing dynamic MAC and Audit Policies
LIRCCONFIG_BPF_LIRC_MODE2Allow attaching BPF programs to a lirc device
+
+
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/bcc-documents/reference_guide.html b/bcc-documents/reference_guide.html new file mode 100644 index 0000000..5a7ce61 --- /dev/null +++ b/bcc-documents/reference_guide.html @@ -0,0 +1,2000 @@ + + + + + + bcc Reference Guide - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

bcc Reference Guide

+

Intended for search (Ctrl-F) and reference. For tutorials, start with tutorial.md.

+

This guide is incomplete. If something feels missing, check the bcc and kernel source. And if you confirm we're missing something, please send a pull request to fix it, and help out everyone.

+

Contents

+ +

BPF C

+

This section describes the C part of a bcc program.

+

Events & Arguments

+

1. kprobes

+

Syntax: kprobe__kernel_function_name

+

kprobe__ is a special prefix that creates a kprobe (dynamic tracing of a kernel function call) for the kernel function name provided as the remainder. You can also use kprobes by declaring a normal C function, then using the Python BPF.attach_kprobe() (covered later) to associate it with a kernel function.

+

Arguments are specified on the function declaration: kprobe__kernel_function_name(struct pt_regs *ctx [, argument1 ...])

+

For example:

+
int kprobe__tcp_v4_connect(struct pt_regs *ctx, struct sock *sk) {
+    [...]
+}
+
+

This instruments the tcp_v4_connect() kernel function using a kprobe, with the following arguments:

+
    +
  • struct pt_regs *ctx: Registers and BPF context.
  • +
  • struct sock *sk: First argument to tcp_v4_connect().
  • +
+

The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them).

+

Examples in situ: +code (output), +code (output)

+ +

2. kretprobes

+

Syntax: kretprobe__kernel_function_name

+

kretprobe__ is a special prefix that creates a kretprobe (dynamic tracing of a kernel function return) for the kernel function name provided as the remainder. You can also use kretprobes by declaring a normal C function, then using the Python BPF.attach_kretprobe() (covered later) to associate it with a kernel function.

+

Return value is available as PT_REGS_RC(ctx), given a function declaration of: kretprobe__kernel_function_name(struct pt_regs *ctx)

+

For example:

+
int kretprobe__tcp_v4_connect(struct pt_regs *ctx)
+{
+    int ret = PT_REGS_RC(ctx);
+    [...]
+}
+
+

This instruments the return of the tcp_v4_connect() kernel function using a kretprobe, and stores the return value in ret.

+

Examples in situ: +code (output)

+

3. Tracepoints

+

Syntax: TRACEPOINT_PROBE(category, event)

+

This is a macro that instruments the tracepoint defined by category:event.

+

The tracepoint name is <category>:<event>. +The probe function name is tracepoint__<category>__<event>.

+

Arguments are available in an args struct, which are the tracepoint arguments. One way to list these is to cat the relevant format file under /sys/kernel/debug/tracing/events/category/event/format.

+

The args struct can be used in place of ctx in each functions requiring a context as an argument. This includes notably perf_submit().

+

For example:

+
TRACEPOINT_PROBE(random, urandom_read) {
+    // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format
+    bpf_trace_printk("%d\\n", args->got_bits);
+    return 0;
+}
+
+

This instruments the tracepoint random:urandom_read tracepoint, and prints the tracepoint argument got_bits. +When using Python API, this probe is automatically attached to the right tracepoint target. +For C++, this tracepoint probe can be attached by specifying the tracepoint target and function name explicitly: +BPF::attach_tracepoint("random:urandom_read", "tracepoint__random__urandom_read") +Note the name of the probe function defined above is tracepoint__random__urandom_read.

+

Examples in situ: +code (output), +search /examples, +search /tools

+

4. uprobes

+

These are instrumented by declaring a normal function in C, then associating it as a uprobe probe in Python via BPF.attach_uprobe() (covered later).

+

Arguments can be examined using PT_REGS_PARM macros.

+

For example:

+
int count(struct pt_regs *ctx) {
+    char buf[64];
+    bpf_probe_read_user(&buf, sizeof(buf), (void *)PT_REGS_PARM1(ctx));
+    bpf_trace_printk("%s %d", buf, PT_REGS_PARM2(ctx));
+    return(0);
+}
+
+

This reads the first argument as a string, and then prints it with the second argument as an integer.

+

Examples in situ: +code

+

5. uretprobes

+

These are instrumented by declaring a normal function in C, then associating it as a uretprobe probe in Python via BPF.attach_uretprobe() (covered later).

+

Return value is available as PT_REGS_RC(ctx), given a function declaration of: function_name(struct pt_regs *ctx)

+

For example:

+
BPF_HISTOGRAM(dist);
+int count(struct pt_regs *ctx) {
+    dist.increment(PT_REGS_RC(ctx));
+    return 0;
+}
+
+

This increments the bucket in the dist histogram that is indexed by the return value.

+

Examples in situ: +code (output), +code (output)

+

6. USDT probes

+

These are User Statically-Defined Tracing (USDT) probes, which may be placed in some applications or libraries to provide a user-level equivalent of tracepoints. The primary BPF method provided for USDT support method is enable_probe(). USDT probes are instrumented by declaring a normal function in C, then associating it as a USDT probe in Python via USDT.enable_probe().

+

Arguments can be read via: bpf_usdt_readarg(index, ctx, &addr)

+

For example:

+
int do_trace(struct pt_regs *ctx) {
+    uint64_t addr;
+    char path[128];
+    bpf_usdt_readarg(6, ctx, &addr);
+    bpf_probe_read_user(&path, sizeof(path), (void *)addr);
+    bpf_trace_printk("path:%s\\n", path);
+    return 0;
+};
+
+

This reads the sixth USDT argument, and then pulls it in as a string to path.

+

When initializing USDTs via the third argument of BPF::init in the C API, if any USDT fails to init, entire BPF::init will fail. If you're OK with some USDTs failing to init, use BPF::init_usdt before calling BPF::init.

+

Examples in situ: +code, +search /examples, +search /tools

+

7. Raw Tracepoints

+

Syntax: RAW_TRACEPOINT_PROBE(event)

+

This is a macro that instruments the raw tracepoint defined by event.

+

The argument is a pointer to struct bpf_raw_tracepoint_args, which is defined in bpf.h. The struct field args contains all parameters of the raw tracepoint where you can found at linux tree include/trace/events +directory.

+

For example:

+
RAW_TRACEPOINT_PROBE(sched_switch)
+{
+    // TP_PROTO(bool preempt, struct task_struct *prev, struct task_struct *next)
+    struct task_struct *prev = (struct task_struct *)ctx->args[1];
+    struct task_struct *next= (struct task_struct *)ctx->args[2];
+    s32 prev_tgid, next_tgid;
+
+    bpf_probe_read_kernel(&prev_tgid, sizeof(prev->tgid), &prev->tgid);
+    bpf_probe_read_kernel(&next_tgid, sizeof(next->tgid), &next->tgid);
+    bpf_trace_printk("%d -> %d\\n", prev_tgid, next_tgid);
+}
+
+

This instruments the sched:sched_switch tracepoint, and prints the prev and next tgid.

+

Examples in situ: +search /tools

+

8. system call tracepoints

+

Syntax: syscall__SYSCALLNAME

+

syscall__ is a special prefix that creates a kprobe for the system call name provided as the remainder. You can use it by declaring a normal C function, then using the Python BPF.get_syscall_fnname(SYSCALLNAME) and BPF.attach_kprobe() to associate it.

+

Arguments are specified on the function declaration: syscall__SYSCALLNAME(struct pt_regs *ctx, [, argument1 ...]).

+

For example:

+
int syscall__execve(struct pt_regs *ctx,
+    const char __user *filename,
+    const char __user *const __user *__argv,
+    const char __user *const __user *__envp)
+{
+    [...]
+}
+
+

This instruments the execve system call.

+

The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them).

+

Corresponding Python code:

+
b = BPF(text=bpf_text)
+execve_fnname = b.get_syscall_fnname("execve")
+b.attach_kprobe(event=execve_fnname, fn_name="syscall__execve")
+
+

Examples in situ: +code (output)

+

9. kfuncs

+

Syntax: KFUNC_PROBE(function, typeof(arg1) arg1, typeof(arg2) arge ...)

+

This is a macro that instruments the kernel function via trampoline +before the function is executed. It's defined by function name and +the function arguments defined as argX.

+

For example:

+
KFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode)
+{
+    ...
+
+

This instruments the do_sys_open kernel function and make its arguments +accessible as standard argument values.

+

Examples in situ: +search /tools

+

10. kretfuncs

+

Syntax: KRETFUNC_PROBE(event, typeof(arg1) arg1, typeof(arg2) arge ..., int ret)

+

This is a macro that instruments the kernel function via trampoline +after the function is executed. It's defined by function name and +the function arguments defined as argX.

+

The last argument of the probe is the return value of the instrumented function.

+

For example:

+
KRETFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode, int ret)
+{
+    ...
+
+

This instruments the do_sys_open kernel function and make its arguments +accessible as standard argument values together with its return value.

+

Examples in situ: +search /tools

+

11. LSM Probes

+

Syntax: LSM_PROBE(hook, typeof(arg1) arg1, typeof(arg2) arg2 ...)

+

This is a macro that instruments an LSM hook as a BPF program. It can be +used to audit security events and implement MAC security policies in BPF. +It is defined by specifying the hook name followed by its arguments.

+

Hook names can be found in +include/linux/security.h +by taking functions like security_hookname and taking just the hookname part. +For example, security_bpf would simply become bpf.

+

Unlike other BPF program types, the return value specified in an LSM probe +matters. A return value of 0 allows the hook to succeed, whereas +any non-zero return value will cause the hook to fail and deny the +security operation.

+

The following example instruments a hook that denies all future BPF operations:

+
LSM_PROBE(bpf, int cmd, union bpf_attr *attr, unsigned int size)
+{
+    return -EPERM;
+}
+
+

This instruments the security_bpf hook and causes it to return -EPERM. +Changing return -EPERM to return 0 would cause the BPF program +to allow the operation instead.

+

LSM probes require at least a 5.7+ kernel with the following configuation options set:

+
    +
  • CONFIG_BPF_LSM=y
  • +
  • CONFIG_LSM comma separated string must contain "bpf" (for example, +CONFIG_LSM="lockdown,yama,bpf")
  • +
+

Examples in situ: +search /tests

+

12. BPF ITERATORS

+

Syntax: BPF_ITER(target)

+

This is a macro to define a program signature for a bpf iterator program. The argument target specifies what to iterate for the program.

+

Currently, kernel does not have interface to discover what targets are supported. A good place to find what is supported is in tools/testing/selftests/bpf/prog_test/bpf_iter.c and some sample bpf iter programs are in tools/testing/selftests/bpf/progs with file name prefix bpf_iter.

+

The following example defines a program for target task, which traverses all tasks in the kernel.

+
BPF_ITER(task)
+{
+  struct seq_file *seq = ctx->meta->seq;
+  struct task_struct *task = ctx->task;
+
+  if (task == (void *)0)
+    return 0;
+
+  ... task->pid, task->tgid, task->comm, ...
+  return 0;
+}
+
+

BPF iterators are introduced in 5.8 kernel for task, task_file, bpf_map, netlink_sock and ipv6_route . In 5.9, support is added to tcp/udp sockets and bpf map element (hashmap, arraymap and sk_local_storage_map) traversal.

+

Data

+

1. bpf_probe_read_kernel()

+

Syntax: int bpf_probe_read_kernel(void *dst, int size, const void *src)

+

Return: 0 on success

+

This copies size bytes from kernel address space to the BPF stack, so that BPF can later operate on it. For safety, all kernel memory reads must pass through bpf_probe_read_kernel(). This happens automatically in some cases, such as dereferencing kernel variables, as bcc will rewrite the BPF program to include the necessary bpf_probe_read_kernel().

+

Examples in situ: +search /examples, +search /tools

+

2. bpf_probe_read_kernel_str()

+

Syntax: int bpf_probe_read_kernel_str(void *dst, int size, const void *src)

+

Return:

+
    +
  • > 0 length of the string including the trailing NULL on success
  • +
  • < 0 error
  • +
+

This copies a NULL terminated string from kernel address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL.

+

Examples in situ: +search /examples, +search /tools

+

3. bpf_ktime_get_ns()

+

Syntax: u64 bpf_ktime_get_ns(void)

+

Return: u64 number of nanoseconds. Starts at system boot time but stops during suspend.

+

Examples in situ: +search /examples, +search /tools

+

4. bpf_get_current_pid_tgid()

+

Syntax: u64 bpf_get_current_pid_tgid(void)

+

Return: current->tgid << 32 | current->pid

+

Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits.

+

Examples in situ: +search /examples, +search /tools

+

5. bpf_get_current_uid_gid()

+

Syntax: u64 bpf_get_current_uid_gid(void)

+

Return: current_gid << 32 | current_uid

+

Returns the user ID and group IDs.

+

Examples in situ: +search /examples, +search /tools

+

6. bpf_get_current_comm()

+

Syntax: bpf_get_current_comm(char *buf, int size_of_buf)

+

Return: 0 on success

+

Populates the first argument address with the current process name. It should be a pointer to a char array of at least size TASK_COMM_LEN, which is defined in linux/sched.h. For example:

+
#include <linux/sched.h>
+
+int do_trace(struct pt_regs *ctx) {
+    char comm[TASK_COMM_LEN];
+    bpf_get_current_comm(&comm, sizeof(comm));
+[...]
+
+

Examples in situ: +search /examples, +search /tools

+

7. bpf_get_current_task()

+

Syntax: bpf_get_current_task()

+

Return: current task as a pointer to struct task_struct.

+

Returns a pointer to the current task's task_struct object. This helper can be used to compute the on-CPU time for a process, identify kernel threads, get the current CPU's run queue, or retrieve many other pieces of information.

+

With Linux 4.13, due to issues with field randomization, you may need two #define directives before the includes:

+
#define randomized_struct_fields_start  struct {
+#define randomized_struct_fields_end    };
+#include <linux/sched.h>
+
+int do_trace(void *ctx) {
+    struct task_struct *t = (struct task_struct *)bpf_get_current_task();
+[...]
+
+

Examples in situ: +search /examples, +search /tools

+

8. bpf_log2l()

+

Syntax: unsigned int bpf_log2l(unsigned long v)

+

Returns the log-2 of the provided value. This is often used to create indexes for histograms, to construct power-of-2 histograms.

+

Examples in situ: +search /examples, +search /tools

+

9. bpf_get_prandom_u32()

+

Syntax: u32 bpf_get_prandom_u32()

+

Returns a pseudo-random u32.

+

Example in situ: +search /examples, +search /tools

+

10. bpf_probe_read_user()

+

Syntax: int bpf_probe_read_user(void *dst, int size, const void *src)

+

Return: 0 on success

+

This attempts to safely read size bytes from user address space to the BPF stack, so that BPF can later operate on it. For safety, all user address space memory reads must pass through bpf_probe_read_user().

+

Examples in situ: +search /examples, +search /tools

+

11. bpf_probe_read_user_str()

+

Syntax: int bpf_probe_read_user_str(void *dst, int size, const void *src)

+

Return:

+
    +
  • > 0 length of the string including the trailing NULL on success
  • +
  • < 0 error
  • +
+

This copies a NULL terminated string from user address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL.

+

Examples in situ: +search /examples, +search /tools

+

12. bpf_get_ns_current_pid_tgid()

+

Syntax: u32 bpf_get_ns_current_pid_tgid(u64 dev, u64 ino, struct bpf_pidns_info* nsdata, u32 size)

+

Values for pid and tgid as seen from the current namespace will be returned in nsdata.

+

Return 0 on success, or one of the following in case of failure:

+
    +
  • +

    -EINVAL if dev and inum supplied don't match dev_t and inode number with nsfs of current task, or if dev conversion to dev_t lost high bits.

    +
  • +
  • +

    -ENOENT if pidns does not exists for the current task.

    +
  • +
+

Examples in situ: +search /examples, +search /tools

+

Debugging

+

1. bpf_override_return()

+

Syntax: int bpf_override_return(struct pt_regs *, unsigned long rc)

+

Return: 0 on success

+

When used in a program attached to a function entry kprobe, causes the +execution of the function to be skipped, immediately returning rc instead. +This is used for targeted error injection.

+

bpf_override_return will only work when the kprobed function is whitelisted to +allow error injections. Whitelisting entails tagging a function with +ALLOW_ERROR_INJECTION() in the kernel source tree; see io_ctl_init for +an example. If the kprobed function is not whitelisted, the bpf program will +fail to attach with ioctl(PERF_EVENT_IOC_SET_BPF): Invalid argument

+
int kprobe__io_ctl_init(void *ctx) {
+	bpf_override_return(ctx, -ENOMEM);
+	return 0;
+}
+
+

Output

+

1. bpf_trace_printk()

+

Syntax: int bpf_trace_printk(const char *fmt, ...)

+

Return: 0 on success

+

A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(). Note that calling this helper is made simpler than the original kernel version, which has fmt_size as the second parameter.

+

Examples in situ: +search /examples, +search /tools

+

2. BPF_PERF_OUTPUT

+

Syntax: BPF_PERF_OUTPUT(name)

+

Creates a BPF table for pushing out custom event data to user space via a perf ring buffer. This is the preferred method for pushing per-event data to user space.

+

For example:

+
struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_PERF_OUTPUT(events);
+
+int hello(struct pt_regs *ctx) {
+    struct data_t data = {};
+
+    data.pid = bpf_get_current_pid_tgid();
+    data.ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data.comm, sizeof(data.comm));
+
+    events.perf_submit(ctx, &data, sizeof(data));
+
+    return 0;
+}
+
+

The output table is named events, and data is pushed to it via events.perf_submit().

+

Examples in situ: +search /examples, +search /tools

+

3. perf_submit()

+

Syntax: int perf_submit((void *)ctx, (void *)data, u32 data_size)

+

Return: 0 on success

+

A method of a BPF_PERF_OUTPUT table, for submitting custom event data to user space. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().)

+

The ctx parameter is provided in kprobes or kretprobes. For SCHED_CLS or SOCKET_FILTER programs, the struct __sk_buff *skb must be used instead.

+

Examples in situ: +search /examples, +search /tools

+

4. perf_submit_skb()

+

Syntax: int perf_submit_skb((void *)ctx, u32 packet_size, (void *)data, u32 data_size)

+

Return: 0 on success

+

A method of a BPF_PERF_OUTPUT table available in networking program types, for submitting custom event data to user space, along with the first packet_size bytes of the packet buffer. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().)

+

Examples in situ: +search /examples, +search /tools

+

5. BPF_RINGBUF_OUTPUT

+

Syntax: BPF_RINGBUF_OUTPUT(name, page_cnt)

+

Creates a BPF table for pushing out custom event data to user space via a ringbuf ring buffer. +BPF_RINGBUF_OUTPUT has several advantages over BPF_PERF_OUTPUT, summarized as follows:

+
    +
  • Buffer is shared across all CPUs, meaning no per-CPU allocation
  • +
  • Supports two APIs for BPF programs +
      +
    • map.ringbuf_output() works like map.perf_submit() (covered in ringbuf_output)
    • +
    • map.ringbuf_reserve()/map.ringbuf_submit()/map.ringbuf_discard() +split the process of reserving buffer space and submitting events into two steps +(covered in ringbuf_reserve, ringbuf_submit, ringbuf_discard)
    • +
    +
  • +
  • BPF APIs do not require access to a CPU ctx argument
  • +
  • Superior performance and latency in userspace thanks to a shared ring buffer manager
  • +
  • Supports two ways of consuming data in userspace
  • +
+

Starting in Linux 5.8, this should be the preferred method for pushing per-event data to user space.

+

Example of both APIs:

+
struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+
+// Creates a ringbuf called events with 8 pages of space, shared across all CPUs
+BPF_RINGBUF_OUTPUT(events, 8);
+
+int first_api_example(struct pt_regs *ctx) {
+    struct data_t data = {};
+
+    data.pid = bpf_get_current_pid_tgid();
+    data.ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data.comm, sizeof(data.comm));
+
+    events.ringbuf_output(&data, sizeof(data), 0 /* flags */);
+
+    return 0;
+}
+
+int second_api_example(struct pt_regs *ctx) {
+    struct data_t *data = events.ringbuf_reserve(sizeof(struct data_t));
+    if (!data) { // Failed to reserve space
+        return 1;
+    }
+
+    data->pid = bpf_get_current_pid_tgid();
+    data->ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data->comm, sizeof(data->comm));
+
+    events.ringbuf_submit(data, 0 /* flags */);
+
+    return 0;
+}
+
+

The output table is named events. Data is allocated via events.ringbuf_reserve() and pushed to it via events.ringbuf_submit().

+

Examples in situ: +search /examples,

+

6. ringbuf_output()

+

Syntax: int ringbuf_output((void *)data, u64 data_size, u64 flags)

+

Return: 0 on success

+

Flags:

+
    +
  • BPF_RB_NO_WAKEUP: Do not sent notification of new data availability
  • +
  • BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally
  • +
+

A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. This method works like perf_submit(), +although it does not require a ctx argument.

+

Examples in situ: +search /examples,

+

7. ringbuf_reserve()

+

Syntax: void* ringbuf_reserve(u64 data_size)

+

Return: Pointer to data struct on success, NULL on failure

+

A method of the BPF_RINGBUF_OUTPUT table, for reserving space in the ring buffer and simultaenously +allocating a data struct for output. Must be used with one of ringbuf_submit or ringbuf_discard.

+

Examples in situ: +search /examples,

+

8. ringbuf_submit()

+

Syntax: void ringbuf_submit((void *)data, u64 flags)

+

Return: Nothing, always succeeds

+

Flags:

+
    +
  • BPF_RB_NO_WAKEUP: Do not sent notification of new data availability
  • +
  • BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally
  • +
+

A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. Must be preceded by a call to +ringbuf_reserve() to reserve space for the data.

+

Examples in situ: +search /examples,

+

9. ringbuf_discard()

+

Syntax: void ringbuf_discard((void *)data, u64 flags)

+

Return: Nothing, always succeeds

+

Flags:

+
    +
  • BPF_RB_NO_WAKEUP: Do not sent notification of new data availability
  • +
  • BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally
  • +
+

A method of the BPF_RINGBUF_OUTPUT table, for discarding custom event data; userspace +ignores the data associated with the discarded event. Must be preceded by a call to +ringbuf_reserve() to reserve space for the data.

+

Examples in situ: +search /examples,

+

Maps

+

Maps are BPF data stores, and are the basis for higher level object types including tables, hashes, and histograms.

+

1. BPF_TABLE

+

Syntax: BPF_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries)

+

Creates a map named _name. Most of the time this will be used via higher-level macros, like BPF_HASH, BPF_ARRAY, BPF_HISTOGRAM, etc.

+

BPF_F_TABLE is a variant that takes a flag in the last parameter. BPF_TABLE(https://github.com/iovisor/bcc/tree/master.) is actually a wrapper to BPF_F_TABLE(https://github.com/iovisor/bcc/tree/master., 0 /* flag */).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

Pinned Maps

+

Syntax: BPF_TABLE_PINNED(_table_type, _key_type, _leaf_type, _name, _max_entries, "/sys/fs/bpf/xyz")

+

Create a new map if it doesn't exist and pin it to the bpffs as a FILE, otherwise use the map that was pinned to the bpffs. The type information is not enforced and the actual map type depends on the map that got pinned to the location.

+

For example:

+
BPF_TABLE_PINNED("hash", u64, u64, ids, 1024, "/sys/fs/bpf/ids");
+
+

2. BPF_HASH

+

Syntax: BPF_HASH(name [, key_type [, leaf_type [, size]]])

+

Creates a hash map (associative array) named name, with optional parameters.

+

Defaults: BPF_HASH(name, key_type=u64, leaf_type=u64, size=10240)

+

For example:

+
BPF_HASH(start, struct request *);
+
+

This creates a hash named start where the key is a struct request *, and the value defaults to u64. This hash is used by the disksnoop.py example for saving timestamps for each I/O request, where the key is the pointer to struct request, and the value is the timestamp.

+

This is a wrapper macro for BPF_TABLE("hash", ...).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

3. BPF_ARRAY

+

Syntax: BPF_ARRAY(name [, leaf_type [, size]])

+

Creates an int-indexed array which is optimized for fastest lookup and update, named name, with optional parameters.

+

Defaults: BPF_ARRAY(name, leaf_type=u64, size=10240)

+

For example:

+
BPF_ARRAY(counts, u64, 32);
+
+

This creates an array named counts where with 32 buckets and 64-bit integer values. This array is used by the funccount.py example for saving call count of each function.

+

This is a wrapper macro for BPF_TABLE("array", ...).

+

Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted.

+

Examples in situ: +search /examples, +search /tools

+

4. BPF_HISTOGRAM

+

Syntax: BPF_HISTOGRAM(name [, key_type [, size ]])

+

Creates a histogram map named name, with optional parameters.

+

Defaults: BPF_HISTOGRAM(name, key_type=int, size=64)

+

For example:

+
BPF_HISTOGRAM(dist);
+
+

This creates a histogram named dist, which defaults to 64 buckets indexed by keys of type int.

+

This is a wrapper macro for BPF_TABLE("histgram", ...).

+

Methods (covered later): map.increment().

+

Examples in situ: +search /examples, +search /tools

+

5. BPF_STACK_TRACE

+

Syntax: BPF_STACK_TRACE(name, max_entries)

+

Creates stack trace map named name, with a maximum entry count provided. These maps are used to store stack traces.

+

For example:

+
BPF_STACK_TRACE(stack_traces, 1024);
+
+

This creates stack trace map named stack_traces, with a maximum number of stack trace entries of 1024.

+

This is a wrapper macro for BPF_TABLE("stacktrace", ...).

+

Methods (covered later): map.get_stackid().

+

Examples in situ: +search /examples, +search /tools

+

6. BPF_PERF_ARRAY

+

Syntax: BPF_PERF_ARRAY(name, max_entries)

+

Creates perf array named name, with a maximum entry count provided, which must be equal to the number of system cpus. These maps are used to fetch hardware performance counters.

+

For example:

+
text="""
+BPF_PERF_ARRAY(cpu_cycles, NUM_CPUS);
+"""
+b = bcc.BPF(text=text, cflags=["-DNUM_CPUS=%d" % multiprocessing.cpu_count()])
+b["cpu_cycles"].open_perf_event(b["cpu_cycles"].HW_CPU_CYCLES)
+
+

This creates a perf array named cpu_cycles, with number of entries equal to the number of cpus/cores. The array is configured so that later calling map.perf_read() will return a hardware-calculated counter of the number of cycles elapsed from some point in the past. Only one type of hardware counter may be configured per table at a time.

+

Methods (covered later): map.perf_read().

+

Examples in situ: +search /tests

+

7. BPF_PERCPU_HASH

+

Syntax: BPF_PERCPU_HASH(name [, key_type [, leaf_type [, size]]])

+

Creates NUM_CPU int-indexed hash maps (associative arrays) named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way.

+

Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. +In other words, BPF_PERCPU_HASH elements cannot be larger than 32KB in size.

+

Defaults: BPF_PERCPU_HASH(name, key_type=u64, leaf_type=u64, size=10240)

+

For example:

+
BPF_PERCPU_HASH(start, struct request *);
+
+

This creates NUM_CPU hashes named start where the key is a struct request *, and the value defaults to u64.

+

This is a wrapper macro for BPF_TABLE("percpu_hash", ...).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

8. BPF_PERCPU_ARRAY

+

Syntax: BPF_PERCPU_ARRAY(name [, leaf_type [, size]])

+

Creates NUM_CPU int-indexed arrays which are optimized for fastest lookup and update, named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way.

+

Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. +In other words, BPF_PERCPU_ARRAY elements cannot be larger than 32KB in size.

+

Defaults: BPF_PERCPU_ARRAY(name, leaf_type=u64, size=10240)

+

For example:

+
BPF_PERCPU_ARRAY(counts, u64, 32);
+
+

This creates NUM_CPU arrays named counts where with 32 buckets and 64-bit integer values.

+

This is a wrapper macro for BPF_TABLE("percpu_array", ...).

+

Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted.

+

Examples in situ: +search /examples, +search /tools

+

9. BPF_LPM_TRIE

+

Syntax: BPF_LPM_TRIE(name [, key_type [, leaf_type [, size]]])

+

Creates a longest prefix match trie map named name, with optional parameters.

+

Defaults: BPF_LPM_TRIE(name, key_type=u64, leaf_type=u64, size=10240)

+

For example:

+
BPF_LPM_TRIE(trie, struct key_v6);
+
+

This creates an LPM trie map named trie where the key is a struct key_v6, and the value defaults to u64.

+

This is a wrapper macro to BPF_F_TABLE("lpm_trie", ..., BPF_F_NO_PREALLOC).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

10. BPF_PROG_ARRAY

+

Syntax: BPF_PROG_ARRAY(name, size)

+

This creates a program array named name with size entries. Each entry of the array is either a file descriptor to a bpf program or NULL. The array acts as a jump table so that bpf programs can "tail-call" other bpf programs.

+

This is a wrapper macro for BPF_TABLE("prog", ...).

+

Methods (covered later): map.call().

+

Examples in situ: +search /examples, +search /tests, +assign fd

+

11. BPF_DEVMAP

+

Syntax: BPF_DEVMAP(name, size)

+

This creates a device map named name with size entries. Each entry of the map is an ifindex to a network interface. This map is only used in XDP.

+

For example:

+
BPF_DEVMAP(devmap, 10);
+
+

Methods (covered later): map.redirect_map().

+

Examples in situ: +search /examples,

+

12. BPF_CPUMAP

+

Syntax: BPF_CPUMAP(name, size)

+

This creates a cpu map named name with size entries. The index of the map represents the CPU id and each entry is the size of the ring buffer allocated for the CPU. This map is only used in XDP.

+

For example:

+
BPF_CPUMAP(cpumap, 16);
+
+

Methods (covered later): map.redirect_map().

+

Examples in situ: +search /examples,

+

13. BPF_XSKMAP

+

Syntax: BPF_XSKMAP(name, size [, "/sys/fs/bpf/xyz"])

+

This creates a xsk map named name with size entries and pin it to the bpffs as a FILE. Each entry represents one NIC's queue id. This map is only used in XDP to redirect packet to an AF_XDP socket. If the AF_XDP socket is binded to a queue which is different than the current packet's queue id, the packet will be dropped. For kernel v5.3 and latter, lookup method is available and can be used to check whether and AF_XDP socket is available for the current packet's queue id. More details at AF_XDP.

+

For example:

+
BPF_XSKMAP(xsks_map, 8);
+
+

Methods (covered later): map.redirect_map(). map.lookup()

+

Examples in situ: +search /examples,

+

14. BPF_ARRAY_OF_MAPS

+

Syntax: BPF_ARRAY_OF_MAPS(name, inner_map_name, size)

+

This creates an array map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE.

+

For example:

+
BPF_TABLE("hash", int, int, ex1, 1024);
+BPF_TABLE("hash", int, int, ex2, 1024);
+BPF_ARRAY_OF_MAPS(maps_array, "ex1", 10);
+
+

15. BPF_HASH_OF_MAPS

+

Syntax: BPF_HASH_OF_MAPS(name, key_type, inner_map_name, size)

+

This creates a hash map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE.

+

For example:

+
BPF_ARRAY(ex1, int, 1024);
+BPF_ARRAY(ex2, int, 1024);
+BPF_HASH_OF_MAPS(maps_hash, struct custom_key, "ex1", 10);
+
+

16. BPF_STACK

+

Syntax: BPF_STACK(name, leaf_type, max_entries[, flags])

+

Creates a stack named name with value type leaf_type and max entries max_entries. +Stack and Queue maps are only available from Linux 4.20+.

+

For example:

+
BPF_STACK(stack, struct event, 10240);
+
+

This creates a stack named stack where the value type is struct event, that holds up to 10240 entries.

+

Methods (covered later): map.push(), map.pop(), map.peek().

+

Examples in situ: +search /tests,

+

17. BPF_QUEUE

+

Syntax: BPF_QUEUE(name, leaf_type, max_entries[, flags])

+

Creates a queue named name with value type leaf_type and max entries max_entries. +Stack and Queue maps are only available from Linux 4.20+.

+

For example:

+
BPF_QUEUE(queue, struct event, 10240);
+
+

This creates a queue named queue where the value type is struct event, that holds up to 10240 entries.

+

Methods (covered later): map.push(), map.pop(), map.peek().

+

Examples in situ: +search /tests,

+

18. BPF_SOCKHASH

+

Syntax: BPF_SOCKHASH(name[, key_type [, max_entries)

+

Creates a hash named name, with optional parameters. sockhash is only available from Linux 4.18+.

+

Default: BPF_SOCKHASH(name, key_type=u32, max_entries=10240)

+

For example:

+
struct sock_key {
+  u32 remote_ip4;
+  u32 local_ip4;
+  u32 remote_port;
+  u32 local_port;
+};
+BPF_HASH(skh, struct sock_key, 65535);
+
+

This creates a hash named skh where the key is a struct sock_key.

+

A sockhash is a BPF map type that holds references to sock structs. Then with a new sk/msg redirect bpf helper BPF programs can use the map to redirect skbs/msgs between sockets (map.sk_redirect_hash()/map.msg_redirect_hash()).

+

The difference between BPF_SOCKHASH and BPF_SOCKMAP is that BPF_SOCKMAP is implemented based on an array, and enforces keys to be four bytes. While BPF_SOCKHASH is implemented based on hash table, and the type of key can be specified freely.

+

Methods (covered later): map.sock_hash_update(), map.msg_redirect_hash(), map.sk_redirect_hash().

+

search /tests

+

19. map.lookup()

+

Syntax: *val map.lookup(&key)

+

Lookup the key in the map, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer.

+

Examples in situ: +search /examples, +search /tools

+

20. map.lookup_or_try_init()

+

Syntax: *val map.lookup_or_try_init(&key, &zero)

+

Lookup the key in the map, and return a pointer to its value if it exists, else initialize the key's value to the second argument. This is often used to initialize values to zero. If the key cannot be inserted (e.g. the map is full) then NULL is returned.

+

Examples in situ: +search /examples, +search /tools

+

Note: The old map.lookup_or_init() may cause return from the function, so lookup_or_try_init() is recommended as it +does not have this side effect.

+

21. map.delete()

+

Syntax: map.delete(&key)

+

Delete the key from the hash.

+

Examples in situ: +search /examples, +search /tools

+

22. map.update()

+

Syntax: map.update(&key, &val)

+

Associate the value in the second argument to the key, overwriting any previous value.

+

Examples in situ: +search /examples, +search /tools

+

23. map.insert()

+

Syntax: map.insert(&key, &val)

+

Associate the value in the second argument to the key, only if there was no previous value.

+

Examples in situ: +search /examples, +search /tools

+

24. map.increment()

+

Syntax: map.increment(key[, increment_amount])

+

Increments the key's value by increment_amount, which defaults to 1. Used for histograms.

+

map.increment() are not atomic. In the concurrency case. If you want more accurate results, use map.atomic_increment() instead of map.increment(). The overhead of map.increment() and map.atomic_increment() is similar.

+

Note. When using map.atomic_increment() to operate on a BPF map of type BPF_MAP_TYPE_HASH, map.atomic_increment() does not guarantee the atomicity of the operation when the specified key does not exist.

+

Examples in situ: +search /examples, +search /tools

+

25. map.get_stackid()

+

Syntax: int map.get_stackid(void *ctx, u64 flags)

+

This walks the stack found via the struct pt_regs in ctx, saves it in the stack trace map, and returns a unique ID for the stack trace.

+

Examples in situ: +search /examples, +search /tools

+

26. map.perf_read()

+

Syntax: u64 map.perf_read(u32 cpu)

+

This returns the hardware performance counter as configured in 5. BPF_PERF_ARRAY

+

Examples in situ: +search /tests

+

27. map.call()

+

Syntax: void map.call(void *ctx, int index)

+

This invokes bpf_tail_call() to tail-call the bpf program which the index entry in BPF_PROG_ARRAY points to. A tail-call is different from the normal call. It reuses the current stack frame after jumping to another bpf program and never goes back. If the index entry is empty, it won't jump anywhere and the program execution continues as normal.

+

For example:

+
BPF_PROG_ARRAY(prog_array, 10);
+
+int tail_call(void *ctx) {
+    bpf_trace_printk("Tail-call\n");
+    return 0;
+}
+
+int do_tail_call(void *ctx) {
+    bpf_trace_printk("Original program\n");
+    prog_array.call(ctx, 2);
+    return 0;
+}
+
+
b = BPF(src_file="example.c")
+tail_fn = b.load_func("tail_call", BPF.KPROBE)
+prog_array = b.get_table("prog_array")
+prog_array[c_int(2)] = c_int(tail_fn.fd)
+b.attach_kprobe(event="some_kprobe_event", fn_name="do_tail_call")
+
+

This assigns tail_call() to prog_array[2]. In the end of do_tail_call(), prog_array.call(ctx, 2) tail-calls tail_call() and executes it.

+

NOTE: To prevent infinite loop, the maximum number of tail-calls is 32 (MAX_TAIL_CALL_CNT).

+

Examples in situ: +search /examples, +search /tests

+

28. map.redirect_map()

+

Syntax: int map.redirect_map(int index, int flags)

+

This redirects the incoming packets based on the index entry. If the map is BPF_DEVMAP, the packet will be sent to the transmit queue of the network interface that the entry points to. If the map is BPF_CPUMAP, the packet will be sent to the ring buffer of the index CPU and be processed by the CPU later. If the map is BPF_XSKMAP, the packet will be sent to the AF_XDP socket attached to the queue.

+

If the packet is redirected successfully, the function will return XDP_REDIRECT. Otherwise, it will return XDP_ABORTED to discard the packet.

+

For example:

+
BPF_DEVMAP(devmap, 1);
+
+int redirect_example(struct xdp_md *ctx) {
+    return devmap.redirect_map(0, 0);
+}
+int xdp_dummy(struct xdp_md *ctx) {
+    return XDP_PASS;
+}
+
+
ip = pyroute2.IPRoute()
+idx = ip.link_lookup(ifname="eth1")[0]
+
+b = bcc.BPF(src_file="example.c")
+
+devmap = b.get_table("devmap")
+devmap[c_uint32(0)] = c_int(idx)
+
+in_fn = b.load_func("redirect_example", BPF.XDP)
+out_fn = b.load_func("xdp_dummy", BPF.XDP)
+b.attach_xdp("eth0", in_fn, 0)
+b.attach_xdp("eth1", out_fn, 0)
+
+

Examples in situ: +search /examples,

+

29. map.push()

+

Syntax: int map.push(&val, int flags)

+

Push an element onto a Stack or Queue table. +Passing BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full. +Returns 0 on success, negative error on failure.

+

Examples in situ: +search /tests,

+

30. map.pop()

+

Syntax: int map.pop(&val)

+

Pop an element from a Stack or Queue table. *val is populated with the result. +Unlike peeking, popping removes the element. +Returns 0 on success, negative error on failure.

+

Examples in situ: +search /tests,

+

31. map.peek()

+

Syntax: int map.peek(&val)

+

Peek an element at the head of a Stack or Queue table. *val is populated with the result. +Unlike popping, peeking does not remove the element. +Returns 0 on success, negative error on failure.

+

Examples in situ: +search /tests,

+

32. map.sock_hash_update()

+

Syntax: int map.sock_hash_update(struct bpf_sock_ops *skops, &key, int flags)

+

Add an entry to, or update a sockhash map referencing sockets. The skops is used as a new value for the entry associated to key. flags is one of:

+
BPF_NOEXIST: The entry for key must not exist in the map.
+BPF_EXIST: The entry for key must already exist in the map.
+BPF_ANY: No condition on the existence of the entry for key.
+
+

If the map has eBPF programs (parser and verdict), those will be inherited by the socket being added. If the socket is already attached to eBPF programs, this results in an error.

+

Return 0 on success, or a negative error in case of failure.

+

Examples in situ: +search /tests,

+

33. map.msg_redirect_hash()

+

Syntax: int map.msg_redirect_hash(struct sk_msg_buff *msg, void *key, u64 flags)

+

This helper is used in programs implementing policies at the socket level. If the message msg is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress path otherwise). This is the only flag supported for now.

+

Return SK_PASS on success, or SK_DROP on error.

+

Examples in situ: +search /tests,

+

34. map.sk_redirect_hash()

+

Syntax: int map.sk_redirect_hash(struct sk_buff *skb, void *key, u64 flags)

+

This helper is used in programs implementing policies at the skb socket level. If the sk_buff skb is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress otherwise). This is the only flag supported for now.

+

Return SK_PASS on success, or SK_DROP on error.

+

Examples in situ: +search /tests,

+

Licensing

+

Depending on which BPF helpers are used, a GPL-compatible license is required.

+

The special BCC macro BPF_LICENSE specifies the license of the BPF program. You can set the license as a comment in your source code, but the kernel has a special interface to specify it programmatically. If you need to use GPL-only helpers, it is recommended to specify the macro in your C code so that the kernel can understand it:

+
// SPDX-License-Identifier: GPL-2.0+
+#define BPF_LICENSE GPL
+
+

Otherwise, the kernel may reject loading your program (see the error description below). Note that it supports multiple words and quotes are not necessary:

+
// SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause
+#define BPF_LICENSE Dual BSD/GPL
+
+

Check the BPF helpers reference to see which helpers are GPL-only and what the kernel understands as GPL-compatible.

+

If the macro is not specified, BCC will automatically define the license of the program as GPL.

+

Rewriter

+

One of jobs for rewriter is to turn implicit memory accesses to explicit ones using kernel helpers. Recent kernel introduced a config option ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE which will be set for architectures who user address space and kernel address are disjoint. x86 and arm has this config option set while s390 does not. If ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE is not set, the bpf old helper bpf_probe_read() will not be available. Some existing users may have implicit memory accesses to access user memory, so using bpf_probe_read_kernel() will cause their application to fail. Therefore, for non-s390, the rewriter will use bpf_probe_read() for these implicit memory accesses. For s390, bpf_probe_read_kernel() is used as default and users should use bpf_probe_read_user() explicitly when accessing user memories.

+

bcc Python

+

Initialization

+

Constructors.

+

1. BPF

+

Syntax: BPF({text=BPF_program | src_file=filename} [, usdt_contexts=[USDT_object, ...]] [, cflags=[arg1, ...]] [, debug=int])

+

Creates a BPF object. This is the main object for defining a BPF program, and interacting with its output.

+

Exactly one of text or src_file must be supplied (not both).

+

The cflags specifies additional arguments to be passed to the compiler, for example -DMACRO_NAME=value or -I/include/path. The arguments are passed as an array, with each element being an additional argument. Note that strings are not split on whitespace, so each argument must be a different element of the array, e.g. ["-include", "header.h"].

+

The debug flags control debug output, and can be or'ed together:

+
    +
  • DEBUG_LLVM_IR = 0x1 compiled LLVM IR
  • +
  • DEBUG_BPF = 0x2 loaded BPF bytecode and register state on branches
  • +
  • DEBUG_PREPROCESSOR = 0x4 pre-processor result
  • +
  • DEBUG_SOURCE = 0x8 ASM instructions embedded with source
  • +
  • DEBUG_BPF_REGISTER_STATE = 0x10 register state on all instructions in addition to DEBUG_BPF
  • +
  • DEBUG_BTF = 0x20 print the messages from the libbpf library.
  • +
+

Examples:

+
# define entire BPF program in one line:
+BPF(text='int do_trace(void *ctx) { bpf_trace_printk("hit!\\n"); return 0; }');
+
+# define program as a variable:
+prog = """
+int hello(void *ctx) {
+    bpf_trace_printk("Hello, World!\\n");
+    return 0;
+}
+"""
+b = BPF(text=prog)
+
+# source a file:
+b = BPF(src_file = "vfsreadlat.c")
+
+# include a USDT object:
+u = USDT(pid=int(pid))
+[...]
+b = BPF(text=bpf_text, usdt_contexts=[u])
+
+# add include paths:
+u = BPF(text=prog, cflags=["-I/path/to/include"])
+
+

Examples in situ: +search /examples, +search /tools

+

2. USDT

+

Syntax: USDT({pid=pid | path=path})

+

Creates an object to instrument User Statically-Defined Tracing (USDT) probes. Its primary method is enable_probe().

+

Arguments:

+
    +
  • pid: attach to this process ID.
  • +
  • path: instrument USDT probes from this binary path.
  • +
+

Examples:

+
# include a USDT object:
+u = USDT(pid=int(pid))
+[...]
+b = BPF(text=bpf_text, usdt_contexts=[u])
+
+

Examples in situ: +search /examples, +search /tools

+

Events

+

1. attach_kprobe()

+

Syntax: BPF.attach_kprobe(event="event", fn_name="name")

+

Instruments the kernel function event() using kernel dynamic tracing of the function entry, and attaches our C defined function name() to be called when the kernel function is called.

+

For example:

+
b.attach_kprobe(event="sys_clone", fn_name="do_trace")
+
+

This will instrument the kernel sys_clone() function, which will then run our BPF defined do_trace() function each time it is called.

+

You can call attach_kprobe() more than once, and attach your BPF function to multiple kernel functions. +You can also call attach_kprobe() more than once to attach multiple BPF functions to the same kernel function.

+

See the previous kprobes section for how to instrument arguments from BPF.

+

Examples in situ: +search /examples, +search /tools

+

2. attach_kretprobe()

+

Syntax: BPF.attach_kretprobe(event="event", fn_name="name" [, maxactive=int])

+

Instruments the return of the kernel function event() using kernel dynamic tracing of the function return, and attaches our C defined function name() to be called when the kernel function returns.

+

For example:

+
b.attach_kretprobe(event="vfs_read", fn_name="do_return")
+
+

This will instrument the kernel vfs_read() function, which will then run our BPF defined do_return() function each time it is called.

+

You can call attach_kretprobe() more than once, and attach your BPF function to multiple kernel function returns. +You can also call attach_kretprobe() more than once to attach multiple BPF functions to the same kernel function return.

+

When a kretprobe is installed on a kernel function, there is a limit on how many parallel calls it can catch. You can change that limit with maxactive. See the kprobes documentation for its default value.

+

See the previous kretprobes section for how to instrument the return value from BPF.

+

Examples in situ: +search /examples, +search /tools

+

3. attach_tracepoint()

+

Syntax: BPF.attach_tracepoint(tp="tracepoint", fn_name="name")

+

Instruments the kernel tracepoint described by tracepoint, and when hit, runs the BPF function name().

+

This is an explicit way to instrument tracepoints. The TRACEPOINT_PROBE syntax, covered in the earlier tracepoints section, is an alternate method with the advantage of auto-declaring an args struct containing the tracepoint arguments. With attach_tracepoint(), the tracepoint arguments need to be declared in the BPF program.

+

For example:

+
# define BPF program
+bpf_text = """
+#include <uapi/linux/ptrace.h>
+
+struct urandom_read_args {
+    // from /sys/kernel/debug/tracing/events/random/urandom_read/format
+    u64 __unused__;
+    u32 got_bits;
+    u32 pool_left;
+    u32 input_left;
+};
+
+int printarg(struct urandom_read_args *args) {
+    bpf_trace_printk("%d\\n", args->got_bits);
+    return 0;
+};
+"""
+
+# load BPF program
+b = BPF(text=bpf_text)
+b.attach_tracepoint("random:urandom_read", "printarg")
+
+

Notice how the first argument to printarg() is now our defined struct.

+

Examples in situ: +code, +search /examples, +search /tools

+

4. attach_uprobe()

+

Syntax: BPF.attach_uprobe(name="location", sym="symbol", fn_name="name" [, sym_off=int]), BPF.attach_uprobe(name="location", sym_re="regex", fn_name="name"), BPF.attach_uprobe(name="location", addr=int, fn_name="name")

+

Instruments the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function entry, and attach our C defined function name() to be called whenever the user-level function is called. If sym_off is given, the function is attached to the offset within the symbol.

+

The real address addr may be supplied in place of sym, in which case sym must be set to its default value. If the file is a non-PIE executable, addr must be a virtual address, otherwise it must be an offset relative to the file load address.

+

Instead of a symbol name, a regular expression can be provided in sym_re. The uprobe will then attach to symbols that match the provided regular expression.

+

Libraries can be given in the name argument without the lib prefix, or with the full path (/usr/lib/...). Binaries can be given only with the full path (/bin/sh).

+

For example:

+
b.attach_uprobe(name="c", sym="strlen", fn_name="count")
+
+

This will instrument strlen() function from libc, and call our BPF function count() when it is called. Note how the "lib" in "libc" is not necessary to specify.

+

Other examples:

+
b.attach_uprobe(name="c", sym="getaddrinfo", fn_name="do_entry")
+b.attach_uprobe(name="/usr/bin/python", sym="main", fn_name="do_main")
+
+

You can call attach_uprobe() more than once, and attach your BPF function to multiple user-level functions.

+

See the previous uprobes section for how to instrument arguments from BPF.

+

Examples in situ: +search /examples, +search /tools

+

5. attach_uretprobe()

+

Syntax: BPF.attach_uretprobe(name="location", sym="symbol", fn_name="name")

+

Instruments the return of the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function return, and attach our C defined function name() to be called whenever the user-level function returns.

+

For example:

+
b.attach_uretprobe(name="c", sym="strlen", fn_name="count")
+
+

This will instrument strlen() function from libc, and call our BPF function count() when it returns.

+

Other examples:

+
b.attach_uretprobe(name="c", sym="getaddrinfo", fn_name="do_return")
+b.attach_uretprobe(name="/usr/bin/python", sym="main", fn_name="do_main")
+
+

You can call attach_uretprobe() more than once, and attach your BPF function to multiple user-level functions.

+

See the previous uretprobes section for how to instrument the return value from BPF.

+

Examples in situ: +search /examples, +search /tools

+

6. USDT.enable_probe()

+

Syntax: USDT.enable_probe(probe=probe, fn_name=name)

+

Attaches a BPF C function name to the USDT probe probe.

+

Example:

+
# enable USDT probe from given PID
+u = USDT(pid=int(pid))
+u.enable_probe(probe="http__server__request", fn_name="do_trace")
+
+

To check if your binary has USDT probes, and what they are, you can run readelf -n binary and check the stap debug section.

+

Examples in situ: +search /examples, +search /tools

+

7. attach_raw_tracepoint()

+

Syntax: BPF.attach_raw_tracepoint(tp="tracepoint", fn_name="name")

+

Instruments the kernel raw tracepoint described by tracepoint (event only, no category), and when hit, runs the BPF function name().

+

This is an explicit way to instrument tracepoints. The RAW_TRACEPOINT_PROBE syntax, covered in the earlier raw tracepoints section, is an alternate method.

+

For example:

+
b.attach_raw_tracepoint("sched_switch", "do_trace")
+
+

Examples in situ: +search /tools

+

8. attach_raw_socket()

+

Syntax: BPF.attach_raw_socket(fn, dev)

+

Attaches a BPF function to the specified network interface.

+

The fn must be the type of BPF.function and the bpf_prog type needs to be BPF_PROG_TYPE_SOCKET_FILTER (fn=BPF.load_func(func_name, BPF.SOCKET_FILTER))

+

fn.sock is a non-blocking raw socket that was created and bound to dev.

+

All network packets processed by dev are copied to the recv-q of fn.sock after being processed by bpf_prog. Try to recv packet form fn.sock with rev/recvfrom/recvmsg. Note that if the recv-q is not read in time after the recv-q is full, the copied packets will be discarded.

+

We can use this feature to capture network packets just like tcpdump.

+

We can use ss --bpf --packet -p to observe fn.sock.

+

Example:

+
BPF.attach_raw_socket(bpf_func, ifname)
+
+

Examples in situ: +search /examples

+

9. attach_xdp()

+

Syntax: BPF.attach_xdp(dev="device", fn=b.load_func("fn_name",BPF.XDP), flags)

+

Instruments the network driver described by dev , and then receives the packet, run the BPF function fn_name() with flags.

+

Here is a list of optional flags.

+
# from xdp_flags uapi/linux/if_link.h
+XDP_FLAGS_UPDATE_IF_NOEXIST = (1 << 0)
+XDP_FLAGS_SKB_MODE = (1 << 1)
+XDP_FLAGS_DRV_MODE = (1 << 2)
+XDP_FLAGS_HW_MODE = (1 << 3)
+XDP_FLAGS_REPLACE = (1 << 4)
+
+

You can use flags like this BPF.attach_xdp(dev="device", fn=b.load_func("fn_name",BPF.XDP), flags=BPF.XDP_FLAGS_UPDATE_IF_NOEXIST)

+

The default value of flags is 0. This means if there is no xdp program with device, the fn will run with that device. If there is an xdp program running with device, the old program will be replaced with new fn program.

+

Currently, bcc does not support XDP_FLAGS_REPLACE flag. The following are the descriptions of other flags.

+

1. XDP_FLAGS_UPDATE_IF_NOEXIST

+

If an XDP program is already attached to the specified driver, attaching the XDP program again will fail.

+

2. XDP_FLAGS_SKB_MODE

+

Driver doesn’t have support for XDP, but the kernel fakes it. +XDP program works, but there’s no real performance benefit because packets are handed to kernel stack anyways which then emulates XDP – this is usually supported with generic network drivers used in home computers, laptops, and virtualized HW.

+

3. XDP_FLAGS_DRV_MODE

+

A driver has XDP support and can hand then to XDP without kernel stack interaction – Few drivers can support it and those are usually for enterprise HW.

+

4. XDP_FLAGS_HW_MODE

+

XDP can be loaded and executed directly on the NIC – just a handful of NICs can do that.

+

For example:

+
b.attach_xdp(dev="ens1", fn=b.load_func("do_xdp", BPF.XDP))
+
+

This will instrument the network device ens1 , which will then run our BPF defined do_xdp() function each time it receives packets.

+

Don't forget to call b.remove_xdp("ens1") at the end!

+

Examples in situ: +search /examples, +search /tools

+

10. attach_func()

+

Syntax: BPF.attach_func(fn, attachable_fd, attach_type [, flags])

+

Attaches a BPF function of the specified type to a particular attachable_fd. if the attach_type is BPF_FLOW_DISSECTOR, the function is expected to attach to current net namespace and attachable_fd must be 0.

+

For example:

+
b.attach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)
+b.attach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT)
+
+

Note. When attached to "global" hooks (xdp, tc, lwt, cgroup). If the "BPF function" is no longer needed after the program terminates, be sure to call detach_func when the program exits.

+

Examples in situ:

+

search /examples,

+

11. detach_func()

+

Syntax: BPF.detach_func(fn, attachable_fd, attach_type)

+

Detaches a BPF function of the specified type.

+

For example:

+
b.detach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)
+b.detach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT)
+
+

Examples in situ:

+

search /examples,

+

12. detach_kprobe()

+

Syntax: BPF.detach_kprobe(event="event", fn_name="name")

+

Detach a kprobe handler function of the specified event.

+

For example:

+
b.detach_kprobe(event="__page_cache_alloc", fn_name="trace_func_entry")
+
+

13. detach_kretprobe()

+

Syntax: BPF.detach_kretprobe(event="event", fn_name="name")

+

Detach a kretprobe handler function of the specified event.

+

For example:

+
b.detach_kretprobe(event="__page_cache_alloc", fn_name="trace_func_return")
+
+

Debug Output

+

1. trace_print()

+

Syntax: BPF.trace_print(fmt="fields")

+

This method continually reads the globally shared /sys/kernel/debug/tracing/trace_pipe file and prints its contents. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred.

+

Arguments:

+
    +
  • fmt: optional, and can contain a field formatting string. It defaults to None.
  • +
+

Examples:

+
# print trace_pipe output as-is:
+b.trace_print()
+
+# print PID and message:
+b.trace_print(fmt="{1} {5}")
+
+

Examples in situ: +search /examples, +search /tools

+

2. trace_fields()

+

Syntax: BPF.trace_fields(nonblocking=False)

+

This method reads one line from the globally shared /sys/kernel/debug/tracing/trace_pipe file and returns it as fields. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred.

+

Arguments:

+
    +
  • nonblocking: optional, defaults to False. When set to True, the program will not block waiting for input.
  • +
+

Examples:

+
while 1:
+    try:
+        (task, pid, cpu, flags, ts, msg) = b.trace_fields()
+    except ValueError:
+        continue
+    [...]
+
+

Examples in situ: +search /examples, +search /tools

+

Output APIs

+

Normal output from a BPF program is either:

+
    +
  • per-event: using PERF_EVENT_OUTPUT, open_perf_buffer(), and perf_buffer_poll().
  • +
  • map summary: using items(), or print_log2_hist(), covered in the Maps section.
  • +
+

1. perf_buffer_poll()

+

Syntax: BPF.perf_buffer_poll(timeout=T)

+

This polls from all open perf ring buffers, calling the callback function that was provided when calling open_perf_buffer for each entry.

+

The timeout parameter is optional and measured in milliseconds. In its absence, polling continues indefinitely.

+

Example:

+
# loop with callback to print_event
+b["events"].open_perf_buffer(print_event)
+while 1:
+    try:
+        b.perf_buffer_poll()
+    except KeyboardInterrupt:
+        exit();
+
+

Examples in situ: +code, +search /examples, +search /tools

+

2. ring_buffer_poll()

+

Syntax: BPF.ring_buffer_poll(timeout=T)

+

This polls from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry.

+

The timeout parameter is optional and measured in milliseconds. In its absence, polling continues until +there is no more data or the callback returns a negative value.

+

Example:

+
# loop with callback to print_event
+b["events"].open_ring_buffer(print_event)
+while 1:
+    try:
+        b.ring_buffer_poll(30)
+    except KeyboardInterrupt:
+        exit();
+
+

Examples in situ: +search /examples,

+

3. ring_buffer_consume()

+

Syntax: BPF.ring_buffer_consume()

+

This consumes from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry.

+

Unlike ring_buffer_poll, this method does not poll for data before attempting to consume. +This reduces latency at the expense of higher CPU consumption. If you are unsure which to use, +use ring_buffer_poll.

+

Example:

+
# loop with callback to print_event
+b["events"].open_ring_buffer(print_event)
+while 1:
+    try:
+        b.ring_buffer_consume()
+    except KeyboardInterrupt:
+        exit();
+
+

Examples in situ: +search /examples,

+

Map APIs

+

Maps are BPF data stores, and are used in bcc to implement a table, and then higher level objects on top of tables, including hashes and histograms.

+

1. get_table()

+

Syntax: BPF.get_table(name)

+

Returns a table object. This is no longer used, as tables can now be read as items from BPF. Eg: BPF[name].

+

Examples:

+
counts = b.get_table("counts")
+
+counts = b["counts"]
+
+

These are equivalent.

+

2. open_perf_buffer()

+

Syntax: table.open_perf_buffers(callback, page_cnt=N, lost_cb=None)

+

This operates on a table as defined in BPF as BPF_PERF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the perf ring buffer. This is part of the recommended mechanism for transferring per-event data from kernel to user space. The size of the perf ring buffer can be specified via the page_cnt parameter, which must be a power of two number of pages and defaults to 8. If the callback is not processing data fast enough, some submitted data may be lost. lost_cb will be called to log / monitor the lost count. If lost_cb is the default None value, it will just print a line of message to stderr.

+

Example:

+
# process event
+def print_event(cpu, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+    [...]
+
+# loop with callback to print_event
+b["events"].open_perf_buffer(print_event)
+while 1:
+    try:
+        b.perf_buffer_poll()
+    except KeyboardInterrupt:
+        exit()
+
+

Note that the data structure transferred will need to be declared in C in the BPF program. For example:

+
// define output data structure in C
+struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_PERF_OUTPUT(events);
+[...]
+
+

In Python, you can either let bcc generate the data structure from C declaration automatically (recommended):

+
def print_event(cpu, data, size):
+    event = b["events"].event(data)
+[...]
+
+

or define it manually:

+
# define output data structure in Python
+TASK_COMM_LEN = 16    # linux/sched.h
+class Data(ct.Structure):
+    _fields_ = [("pid", ct.c_ulonglong),
+                ("ts", ct.c_ulonglong),
+                ("comm", ct.c_char * TASK_COMM_LEN)]
+
+def print_event(cpu, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+[...]
+
+

Examples in situ: +code, +search /examples, +search /tools

+

3. items()

+

Syntax: table.items()

+

Returns an array of the keys in a table. This can be used with BPF_HASH maps to fetch, and iterate, over the keys.

+

Example:

+
# print output
+print("%10s %s" % ("COUNT", "STRING"))
+counts = b.get_table("counts")
+for k, v in sorted(counts.items(), key=lambda counts: counts[1].value):
+    print("%10d \"%s\"" % (v.value, k.c.encode('string-escape')))
+
+

This example also uses the sorted() method to sort by value.

+

Examples in situ: +search /examples, +search /tools

+

4. values()

+

Syntax: table.values()

+

Returns an array of the values in a table.

+

5. clear()

+

Syntax: table.clear()

+

Clears the table: deletes all entries.

+

Example:

+
# print map summary every second:
+while True:
+    time.sleep(1)
+    print("%-8s\n" % time.strftime("%H:%M:%S"), end="")
+    dist.print_log2_hist(sym + " return:")
+    dist.clear()
+
+

Examples in situ: +search /examples, +search /tools

+

6. items_lookup_and_delete_batch()

+

Syntax: table.items_lookup_and_delete_batch()

+

Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. It also clears the table: deletes all entries. +You should rather use table.items_lookup_and_delete_batch() than table.items() followed by table.clear(). It requires kernel v5.6.

+

Example:

+
# print call rate per second:
+print("%9s-%9s-%8s-%9s" % ("PID", "COMM", "fname", "counter"))
+while True:
+    for k, v in sorted(b['map'].items_lookup_and_delete_batch(), key=lambda kv: (kv[0]).pid):
+        print("%9s-%9s-%8s-%9d" % (k.pid, k.comm, k.fname, v.counter))
+    sleep(1)
+
+

7. items_lookup_batch()

+

Syntax: table.items_lookup_batch()

+

Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. +You should rather use table.items_lookup_batch() than table.items(). It requires kernel v5.6.

+

Example:

+
# print current value of map:
+print("%9s-%9s-%8s-%9s" % ("PID", "COMM", "fname", "counter"))
+while True:
+    for k, v in sorted(b['map'].items_lookup_batch(), key=lambda kv: (kv[0]).pid):
+        print("%9s-%9s-%8s-%9d" % (k.pid, k.comm, k.fname, v.counter))
+
+

8. items_delete_batch()

+

Syntax: table.items_delete_batch(keys)

+

It clears all entries of a BPF_HASH map when keys is None. It is more efficient than table.clear() since it generates only one system call. You can delete a subset of a map by giving an array of keys as parameter. Those keys and their associated values will be deleted. It requires kernel v5.6.

+

Arguments:

+
    +
  • keys is optional and by default is None.
  • +
+

9. items_update_batch()

+

Syntax: table.items_update_batch(keys, values)

+

Update all the provided keys with new values. The two arguments must be the same length and within the map limits (between 1 and the maximum entries). It requires kernel v5.6.

+

Arguments:

+
    +
  • keys is the list of keys to be updated
  • +
  • values is the list containing the new values.
  • +
+

10. print_log2_hist()

+

Syntax: table.print_log2_hist(val_type="value", section_header="Bucket ptr", section_print_fn=None)

+

Prints a table as a log2 histogram in ASCII. The table must be stored as log2, which can be done using the BPF function bpf_log2l().

+

Arguments:

+
    +
  • val_type: optional, column header.
  • +
  • section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each.
  • +
  • section_print_fn: if section_print_fn is not None, it will be passed the bucket value.
  • +
+

Example:

+
b = BPF(text="""
+BPF_HISTOGRAM(dist);
+
+int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)
+{
+	dist.increment(bpf_log2l(req->__data_len / 1024));
+	return 0;
+}
+""")
+[...]
+
+b["dist"].print_log2_hist("kbytes")
+
+

Output:

+
     kbytes          : count     distribution
+       0 -> 1        : 3        |                                      |
+       2 -> 3        : 0        |                                      |
+       4 -> 7        : 211      |**********                            |
+       8 -> 15       : 0        |                                      |
+      16 -> 31       : 0        |                                      |
+      32 -> 63       : 0        |                                      |
+      64 -> 127      : 1        |                                      |
+     128 -> 255      : 800      |**************************************|
+
+

This output shows a multi-modal distribution, with the largest mode of 128->255 kbytes and a count of 800.

+

This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the count column is passed to user space.

+

Examples in situ: +search /examples, +search /tools

+

11. print_linear_hist()

+

Syntax: table.print_linear_hist(val_type="value", section_header="Bucket ptr", section_print_fn=None)

+

Prints a table as a linear histogram in ASCII. This is intended to visualize small integer ranges, eg, 0 to 100.

+

Arguments:

+
    +
  • val_type: optional, column header.
  • +
  • section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each.
  • +
  • section_print_fn: if section_print_fn is not None, it will be passed the bucket value.
  • +
+

Example:

+
b = BPF(text="""
+BPF_HISTOGRAM(dist);
+
+int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)
+{
+	dist.increment(req->__data_len / 1024);
+	return 0;
+}
+""")
+[...]
+
+b["dist"].print_linear_hist("kbytes")
+
+

Output:

+
     kbytes        : count     distribution
+        0          : 3        |******                                  |
+        1          : 0        |                                        |
+        2          : 0        |                                        |
+        3          : 0        |                                        |
+        4          : 19       |****************************************|
+        5          : 0        |                                        |
+        6          : 0        |                                        |
+        7          : 0        |                                        |
+        8          : 4        |********                                |
+        9          : 0        |                                        |
+        10         : 0        |                                        |
+        11         : 0        |                                        |
+        12         : 0        |                                        |
+        13         : 0        |                                        |
+        14         : 0        |                                        |
+        15         : 0        |                                        |
+        16         : 2        |****                                    |
+[...]
+
+

This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the values in the count column are passed to user space.

+

Examples in situ: +search /examples, +search /tools

+

12. open_ring_buffer()

+

Syntax: table.open_ring_buffer(callback, ctx=None)

+

This operates on a table as defined in BPF as BPF_RINGBUF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the ringbuf ring buffer. This is part of the new (Linux 5.8+) recommended mechanism for transferring per-event data from kernel to user space. Unlike perf buffers, ringbuf sizes are specified within the BPF program, as part of the BPF_RINGBUF_OUTPUT macro. If the callback is not processing data fast enough, some submitted data may be lost. In this case, the events should be polled more frequently and/or the size of the ring buffer should be increased.

+

Example:

+
# process event
+def print_event(ctx, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+    [...]
+
+# loop with callback to print_event
+b["events"].open_ring_buffer(print_event)
+while 1:
+    try:
+        b.ring_buffer_poll()
+    except KeyboardInterrupt:
+        exit()
+
+

Note that the data structure transferred will need to be declared in C in the BPF program. For example:

+
// define output data structure in C
+struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_RINGBUF_OUTPUT(events, 8);
+[...]
+
+

In Python, you can either let bcc generate the data structure from C declaration automatically (recommended):

+
def print_event(ctx, data, size):
+    event = b["events"].event(data)
+[...]
+
+

or define it manually:

+
# define output data structure in Python
+TASK_COMM_LEN = 16    # linux/sched.h
+class Data(ct.Structure):
+    _fields_ = [("pid", ct.c_ulonglong),
+                ("ts", ct.c_ulonglong),
+                ("comm", ct.c_char * TASK_COMM_LEN)]
+
+def print_event(ctx, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+[...]
+
+

Examples in situ: +search /examples,

+

13. push()

+

Syntax: table.push(leaf, flags=0)

+

Push an element onto a Stack or Queue table. Raises an exception if the operation does not succeed. +Passing QueueStack.BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full.

+

Examples in situ: +search /tests,

+

14. pop()

+

Syntax: leaf = table.pop()

+

Pop an element from a Stack or Queue table. Unlike peek(), pop() +removes the element from the table before returning it. +Raises a KeyError exception if the operation does not succeed.

+

Examples in situ: +search /tests,

+

15. peek()

+

Syntax: leaf = table.peek()

+

Peek the element at the head of a Stack or Queue table. Unlike pop(), peek() +does not remove the element from the table. Raises an exception if the operation does not succeed.

+

Examples in situ: +search /tests,

+

Helpers

+

Some helper methods provided by bcc. Note that since we're in Python, we can import any Python library and their methods, including, for example, the libraries: argparse, collections, ctypes, datetime, re, socket, struct, subprocess, sys, and time.

+

1. ksym()

+

Syntax: BPF.ksym(addr)

+

Translate a kernel memory address into a kernel function name, which is returned.

+

Example:

+
print("kernel function: " + b.ksym(addr))
+
+

Examples in situ: +search /examples, +search /tools

+

2. ksymname()

+

Syntax: BPF.ksymname(name)

+

Translate a kernel name into an address. This is the reverse of ksym. Returns -1 when the function name is unknown.

+

Example:

+
print("kernel address: %x" % b.ksymname("vfs_read"))
+
+

Examples in situ: +search /examples, +search /tools

+

3. sym()

+

Syntax: BPF.sym(addr, pid, show_module=False, show_offset=False)

+

Translate a memory address into a function name for a pid, which is returned. A pid of less than zero will access the kernel symbol cache. The show_module and show_offset parameters control whether the module in which the symbol lies should be displayed, and whether the instruction offset from the beginning of the symbol should be displayed. These extra parameters default to False.

+

Example:

+
print("function: " + b.sym(addr, pid))
+
+

Examples in situ: +search /examples, +search /tools

+

4. num_open_kprobes()

+

Syntax: BPF.num_open_kprobes()

+

Returns the number of open k[ret]probes. Can be useful for scenarios where event_re is used while attaching and detaching probes. Excludes perf_events readers.

+

Example:

+
b.attach_kprobe(event_re=pattern, fn_name="trace_count")
+matched = b.num_open_kprobes()
+if matched == 0:
+    print("0 functions matched by \"%s\". Exiting." % args.pattern)
+    exit()
+
+

Examples in situ: +search /examples, +search /tools

+

5. get_syscall_fnname()

+

Syntax: BPF.get_syscall_fnname(name : str)

+

Return the corresponding kernel function name of the syscall. This helper function will try different prefixes and use the right one to concatenate with the syscall name. Note that the return value may vary in different versions of linux kernel and sometimes it will causing trouble. (see #2590)

+

Example:

+
print("The function name of %s in kernel is %s" % ("clone", b.get_syscall_fnname("clone")))
+# sys_clone or __x64_sys_clone or ...
+
+

Examples in situ: +search /examples, +search /tools

+

BPF Errors

+

See the "Understanding eBPF verifier messages" section in the kernel source under Documentation/networking/filter.txt.

+

1. Invalid mem access

+

This can be due to trying to read memory directly, instead of operating on memory on the BPF stack. All kernel memory reads must be passed via bpf_probe_read_kernel() to copy kernel memory into the BPF stack, which can be automatic by the bcc rewriter in some cases of simple dereferencing. bpf_probe_read_kernel() does all the required checks.

+

Example:

+
bpf: Permission denied
+0: (bf) r6 = r1
+1: (79) r7 = *(u64 *)(r6 +80)
+2: (85) call 14
+3: (bf) r8 = r0
+[...]
+23: (69) r1 = *(u16 *)(r7 +16)
+R7 invalid mem access 'inv'
+
+Traceback (most recent call last):
+  File "./tcpaccept", line 179, in <module>
+    b = BPF(text=bpf_text)
+  File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 172, in __init__
+    self._trace_autoload()
+  File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 612, in _trace_autoload
+    fn = self.load_func(func_name, BPF.KPROBE)
+  File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 212, in load_func
+    raise Exception("Failed to load BPF program %s" % func_name)
+Exception: Failed to load BPF program kretprobe__inet_csk_accept
+
+

2. Cannot call GPL only function from proprietary program

+

This error happens when a GPL-only helper is called from a non-GPL BPF program. To fix this error, do not use GPL-only helpers from a proprietary BPF program, or relicense the BPF program under a GPL-compatible license. Check which BPF helpers are GPL-only, and what licenses are considered GPL-compatible.

+

Example calling bpf_get_stackid(), a GPL-only BPF helper, from a proprietary program (#define BPF_LICENSE Proprietary):

+
bpf: Failed to load program: Invalid argument
+[...]
+8: (85) call bpf_get_stackid#27
+cannot call GPL only function from proprietary program
+
+

Environment Variables

+

1. Kernel source directory

+

eBPF program compilation needs kernel sources or kernel headers with headers +compiled. In case your kernel sources are at a non-standard location where BCC +cannot find then, its possible to provide BCC the absolute path of the location +by setting BCC_KERNEL_SOURCE to it.

+

2. Kernel version overriding

+

By default, BCC stores the LINUX_VERSION_CODE in the generated eBPF object +which is then passed along to the kernel when the eBPF program is loaded. +Sometimes this is quite inconvenient especially when the kernel is slightly +updated such as an LTS kernel release. Its extremely unlikely the slight +mismatch would cause any issues with the loaded eBPF program. By setting +BCC_LINUX_VERSION_CODE to the version of the kernel that's running, the check +for verifying the kernel version can be bypassed. This is needed for programs +that use kprobes. This needs to be encoded in the format: (VERSION * 65536) + (PATCHLEVEL * 256) + SUBLEVEL. For example, if the running kernel is 4.9.10, +then can set export BCC_LINUX_VERSION_CODE=264458 to override the kernel +version check successfully.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/bcc-documents/special_filtering.html b/bcc-documents/special_filtering.html new file mode 100644 index 0000000..26c1760 --- /dev/null +++ b/bcc-documents/special_filtering.html @@ -0,0 +1,279 @@ + + + + + + Special Filtering - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

Special Filtering

+

Some tools have special filtering capabitilies, the main use case is to trace +processes running in containers, but those mechanisms are generic and could +be used in other cases as well.

+

Filtering by cgroups

+

Some tools have an option to filter by cgroup by referencing a pinned BPF hash +map managed externally.

+

Examples of commands:

+
# ./opensnoop --cgroupmap /sys/fs/bpf/test01
+# ./execsnoop --cgroupmap /sys/fs/bpf/test01
+# ./tcpconnect --cgroupmap /sys/fs/bpf/test01
+# ./tcpaccept --cgroupmap /sys/fs/bpf/test01
+# ./tcptracer --cgroupmap /sys/fs/bpf/test01
+
+

The commands above will only display results from processes that belong to one +of the cgroups whose id, returned by bpf_get_current_cgroup_id(), is in the +pinned BPF hash map.

+

The BPF hash map can be created by:

+
# bpftool map create /sys/fs/bpf/test01 type hash key 8 value 8 entries 128 \
+        name cgroupset flags 0
+
+

To get a shell in a new cgroup, you can use:

+
# systemd-run --pty --unit test bash
+
+

The shell will be running in the cgroup +/sys/fs/cgroup/unified/system.slice/test.service.

+

The cgroup id can be discovered using the name_to_handle_at() system call. In +the examples/cgroupid, you will find an example of program to get the cgroup +id.

+
# cd examples/cgroupid
+# make
+# ./cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service
+
+

or, using Docker:

+
# cd examples/cgroupid
+# docker build -t cgroupid .
+# docker run --rm --privileged -v /sys/fs/cgroup:/sys/fs/cgroup \
+	cgroupid cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service
+
+

This prints the cgroup id as a hexadecimal string in the host endianness such +as 77 16 00 00 01 00 00 00.

+
# FILE=/sys/fs/bpf/test01
+# CGROUPID_HEX="77 16 00 00 01 00 00 00"
+# bpftool map update pinned $FILE key hex $CGROUPID_HEX value hex 00 00 00 00 00 00 00 00 any
+
+

Now that the shell started by systemd-run has its cgroup id in the BPF hash +map, bcc tools will display results from this shell. Cgroups can be added and +removed from the BPF hash map without restarting the bcc tool.

+

This feature is useful for integrating bcc tools in external projects.

+

Filtering by mount by namespace

+

The BPF hash map can be created by:

+
# bpftool map create /sys/fs/bpf/mnt_ns_set type hash key 8 value 4 entries 128 \
+        name mnt_ns_set flags 0
+
+

Execute the execsnoop tool filtering only the mount namespaces +in /sys/fs/bpf/mnt_ns_set:

+
# tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set
+
+

Start a terminal in a new mount namespace:

+
# unshare -m bash
+
+

Update the hash map with the mount namespace ID of the terminal above:

+
FILE=/sys/fs/bpf/mnt_ns_set
+if [ $(printf '\1' | od -dAn) -eq 1 ]; then
+ HOST_ENDIAN_CMD=tac
+else
+  HOST_ENDIAN_CMD=cat
+fi
+
+NS_ID_HEX="$(printf '%016x' $(stat -Lc '%i' /proc/self/ns/mnt) | sed 's/.\{2\}/&\n/g' | $HOST_ENDIAN_CMD)"
+bpftool map update pinned $FILE key hex $NS_ID_HEX value hex 00 00 00 00 any
+
+

Execute a command in this terminal:

+
# ping kinvolk.io
+
+

You'll see how on the execsnoop terminal you started above the call is logged:

+
# tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set
+[sudo] password for mvb:
+PCOMM            PID    PPID   RET ARGS
+ping             8096   7970     0 /bin/ping kinvolk.io
+
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/bcc-documents/tutorial.html b/bcc-documents/tutorial.html new file mode 100644 index 0000000..30a794c --- /dev/null +++ b/bcc-documents/tutorial.html @@ -0,0 +1,512 @@ + + + + + + bcc Tutorial - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

bcc Tutorial

+

This tutorial covers how to use bcc tools to quickly solve performance, troubleshooting, and networking issues. If you want to develop new bcc tools, see tutorial_bcc_python_developer.md for that tutorial.

+

It is assumed for this tutorial that bcc is already installed, and you can run tools like execsnoop successfully. See INSTALL.md. This uses enhancements added to the Linux 4.x series.

+

Observability

+

Some quick wins.

+

0. Before bcc

+

Before using bcc, you should start with the Linux basics. One reference is the Linux Performance Analysis in 60,000 Milliseconds post, which covers these commands:

+
    +
  1. uptime
  2. +
  3. dmesg | tail
  4. +
  5. vmstat 1
  6. +
  7. mpstat -P ALL 1
  8. +
  9. pidstat 1
  10. +
  11. iostat -xz 1
  12. +
  13. free -m
  14. +
  15. sar -n DEV 1
  16. +
  17. sar -n TCP,ETCP 1
  18. +
  19. top
  20. +
+

1. General Performance

+

Here is a generic checklist for performance investigations with bcc, first as a list, then in detail:

+
    +
  1. execsnoop
  2. +
  3. opensnoop
  4. +
  5. ext4slower (or btrfs*, xfs*, zfs*)
  6. +
  7. biolatency
  8. +
  9. biosnoop
  10. +
  11. cachestat
  12. +
  13. tcpconnect
  14. +
  15. tcpaccept
  16. +
  17. tcpretrans
  18. +
  19. runqlat
  20. +
  21. profile
  22. +
+

These tools may be installed on your system under /usr/share/bcc/tools, or you can run them from the bcc github repo under /tools where they have a .py extension. Browse the 50+ tools available for more analysis options.

+

1.1 execsnoop

+
# ./execsnoop
+PCOMM            PID    RET ARGS
+supervise        9660     0 ./run
+supervise        9661     0 ./run
+mkdir            9662     0 /bin/mkdir -p ./main
+run              9663     0 ./run
+[...]
+
+

execsnoop prints one line of output for each new process. Check for short-lived processes. These can consume CPU resources, but not show up in most monitoring tools that periodically take snapshots of which processes are running.

+

It works by tracing exec(), not the fork(), so it will catch many types of new processes but not all (eg, it won't see an application launching working processes, that doesn't exec() anything else).

+

More examples.

+

1.2. opensnoop

+
# ./opensnoop
+PID    COMM               FD ERR PATH
+1565   redis-server        5   0 /proc/1565/stat
+1565   redis-server        5   0 /proc/1565/stat
+1565   redis-server        5   0 /proc/1565/stat
+1603   snmpd               9   0 /proc/net/dev
+1603   snmpd              11   0 /proc/net/if_inet6
+1603   snmpd              -1   2 /sys/class/net/eth0/device/vendor
+1603   snmpd              11   0 /proc/sys/net/ipv4/neigh/eth0/retrans_time_ms
+1603   snmpd              11   0 /proc/sys/net/ipv6/neigh/eth0/retrans_time_ms
+1603   snmpd              11   0 /proc/sys/net/ipv6/conf/eth0/forwarding
+[...]
+
+

opensnoop prints one line of output for each open() syscall, including details.

+

Files that are opened can tell you a lot about how applications work: identifying their data files, config files, and log files. Sometimes applications can misbehave, and perform poorly, when they are constantly attempting to read files that do not exist. opensnoop gives you a quick look.

+

More examples.

+

1.3. ext4slower (or btrfs*, xfs*, zfs*)

+
# ./ext4slower
+Tracing ext4 operations slower than 10 ms
+TIME     COMM           PID    T BYTES   OFF_KB   LAT(ms) FILENAME
+06:35:01 cron           16464  R 1249    0          16.05 common-auth
+06:35:01 cron           16463  R 1249    0          16.04 common-auth
+06:35:01 cron           16465  R 1249    0          16.03 common-auth
+06:35:01 cron           16465  R 4096    0          10.62 login.defs
+06:35:01 cron           16464  R 4096    0          10.61 login.defs
+
+

ext4slower traces the ext4 file system and times common operations, and then only prints those that exceed a threshold.

+

This is great for identifying or exonerating one type of performance issue: show individually slow disk i/O via the file system. Disks process I/O asynchronously, and it can be difficult to associate latency at that layer with the latency applications experience. Tracing higher up in the kernel stack, at the VFS -> file system interface, will more closely match what an application suffers. Use this tool to identify if file system latency exceeds a given threshold.

+

Similar tools exist in bcc for other file systems: btrfsslower, xfsslower, and zfsslower. There is also fileslower, which works at the VFS layer and traces everything (although at some higher overhead).

+

More examples.

+

1.4. biolatency

+
# ./biolatency
+Tracing block device I/O... Hit Ctrl-C to end.
+^C
+     usecs           : count     distribution
+       0 -> 1        : 0        |                                      |
+       2 -> 3        : 0        |                                      |
+       4 -> 7        : 0        |                                      |
+       8 -> 15       : 0        |                                      |
+      16 -> 31       : 0        |                                      |
+      32 -> 63       : 0        |                                      |
+      64 -> 127      : 1        |                                      |
+     128 -> 255      : 12       |********                              |
+     256 -> 511      : 15       |**********                            |
+     512 -> 1023     : 43       |*******************************       |
+    1024 -> 2047     : 52       |**************************************|
+    2048 -> 4095     : 47       |**********************************    |
+    4096 -> 8191     : 52       |**************************************|
+    8192 -> 16383    : 36       |**************************            |
+   16384 -> 32767    : 15       |**********                            |
+   32768 -> 65535    : 2        |*                                     |
+   65536 -> 131071   : 2        |*                                     |
+
+

biolatency traces disk I/O latency (time from device issue to completion), and when the tool ends (Ctrl-C, or a given interval), it prints a histogram summary of the latency.

+

This is great for understanding disk I/O latency beyond the average times given by tools like iostat. I/O latency outliers will be visible at the end of the distribution, as well as multi-mode distributions.

+

More examples.

+

1.5. biosnoop

+
# ./biosnoop
+TIME(s)        COMM           PID    DISK    T  SECTOR    BYTES   LAT(ms)
+0.000004001    supervise      1950   xvda1   W  13092560  4096       0.74
+0.000178002    supervise      1950   xvda1   W  13092432  4096       0.61
+0.001469001    supervise      1956   xvda1   W  13092440  4096       1.24
+0.001588002    supervise      1956   xvda1   W  13115128  4096       1.09
+1.022346001    supervise      1950   xvda1   W  13115272  4096       0.98
+1.022568002    supervise      1950   xvda1   W  13188496  4096       0.93
+[...]
+
+

biosnoop prints a line of output for each disk I/O, with details including latency (time from device issue to completion).

+

This allows you to examine disk I/O in more detail, and look for time-ordered patterns (eg, reads queueing behind writes). Note that the output will be verbose if your system performs disk I/O at a high rate.

+

More examples.

+

1.6. cachestat

+
# ./cachestat
+    HITS   MISSES  DIRTIES  READ_HIT% WRITE_HIT%   BUFFERS_MB  CACHED_MB
+    1074       44       13      94.9%       2.9%            1        223
+    2195      170        8      92.5%       6.8%            1        143
+     182       53       56      53.6%       1.3%            1        143
+   62480    40960    20480      40.6%      19.8%            1        223
+       7        2        5      22.2%      22.2%            1        223
+     348        0        0     100.0%       0.0%            1        223
+[...]
+
+

cachestat prints a one line summary every second (or every custom interval) showing statistics from the file system cache.

+

Use this to identify a low cache hit ratio, and a high rate of misses: which gives one lead for performance tuning.

+

More examples.

+

1.7. tcpconnect

+
# ./tcpconnect
+PID    COMM         IP SADDR            DADDR            DPORT
+1479   telnet       4  127.0.0.1        127.0.0.1        23
+1469   curl         4  10.201.219.236   54.245.105.25    80
+1469   curl         4  10.201.219.236   54.67.101.145    80
+1991   telnet       6  ::1              ::1              23
+2015   ssh          6  fe80::2000:bff:fe82:3ac fe80::2000:bff:fe82:3ac 22
+[...]
+
+

tcpconnect prints one line of output for every active TCP connection (eg, via connect()), with details including source and destination addresses.

+

Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder.

+

More examples.

+

1.8. tcpaccept

+
# ./tcpaccept
+PID    COMM         IP RADDR            LADDR            LPORT
+907    sshd         4  192.168.56.1     192.168.56.102   22
+907    sshd         4  127.0.0.1        127.0.0.1        22
+5389   perl         6  1234:ab12:2040:5020:2299:0:5:0 1234:ab12:2040:5020:2299:0:5:0 7001
+[...]
+
+

tcpaccept prints one line of output for every passive TCP connection (eg, via accept()), with details including source and destination addresses.

+

Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder.

+

More examples.

+

1.9. tcpretrans

+
# ./tcpretrans
+TIME     PID    IP LADDR:LPORT          T> RADDR:RPORT          STATE
+01:55:05 0      4  10.153.223.157:22    R> 69.53.245.40:34619   ESTABLISHED
+01:55:05 0      4  10.153.223.157:22    R> 69.53.245.40:34619   ESTABLISHED
+01:55:17 0      4  10.153.223.157:22    R> 69.53.245.40:22957   ESTABLISHED
+[...]
+
+

tcprerans prints one line of output for every TCP retransmit packet, with details including source and destination addresses, and kernel state of the TCP connection.

+

TCP retransmissions cause latency and throughput issues. For ESTABLISHED retransmits, look for patterns with networks. For SYN_SENT, this may point to target kernel CPU saturation and kernel packet drops.

+

More examples.

+

1.10. runqlat

+
# ./runqlat
+Tracing run queue latency... Hit Ctrl-C to end.
+^C
+     usecs               : count     distribution
+         0 -> 1          : 233      |***********                             |
+         2 -> 3          : 742      |************************************    |
+         4 -> 7          : 203      |**********                              |
+         8 -> 15         : 173      |********                                |
+        16 -> 31         : 24       |*                                       |
+        32 -> 63         : 0        |                                        |
+        64 -> 127        : 30       |*                                       |
+       128 -> 255        : 6        |                                        |
+       256 -> 511        : 3        |                                        |
+       512 -> 1023       : 5        |                                        |
+      1024 -> 2047       : 27       |*                                       |
+      2048 -> 4095       : 30       |*                                       |
+      4096 -> 8191       : 20       |                                        |
+      8192 -> 16383      : 29       |*                                       |
+     16384 -> 32767      : 809      |****************************************|
+     32768 -> 65535      : 64       |***                                     |
+
+

runqlat times how long threads were waiting on the CPU run queues, and prints this as a histogram.

+

This can help quantify time lost waiting for a turn on CPU, during periods of CPU saturation.

+

More examples.

+

1.11. profile

+
# ./profile
+Sampling at 49 Hertz of all threads by user + kernel stack... Hit Ctrl-C to end.
+^C
+    00007f31d76c3251 [unknown]
+    47a2c1e752bf47f7 [unknown]
+    -                sign-file (8877)
+        1
+
+    ffffffff813d0af8 __clear_user
+    ffffffff813d5277 iov_iter_zero
+    ffffffff814ec5f2 read_iter_zero
+    ffffffff8120be9d __vfs_read
+    ffffffff8120c385 vfs_read
+    ffffffff8120d786 sys_read
+    ffffffff817cc076 entry_SYSCALL_64_fastpath
+    00007fc5652ad9b0 read
+    -                dd (25036)
+        4
+
+    0000000000400542 func_a
+    0000000000400598 main
+    00007f12a133e830 __libc_start_main
+    083e258d4c544155 [unknown]
+    -                func_ab (13549)
+        5
+
+[...]
+
+    ffffffff8105eb66 native_safe_halt
+    ffffffff8103659e default_idle
+    ffffffff81036d1f arch_cpu_idle
+    ffffffff810bba5a default_idle_call
+    ffffffff810bbd07 cpu_startup_entry
+    ffffffff8104df55 start_secondary
+    -                swapper/1 (0)
+        75
+
+

profile is a CPU profiler, which takes samples of stack traces at timed intervals, and prints a summary of unique stack traces and a count of their occurrence.

+

Use this tool to understand the code paths that are consuming CPU resources.

+

More examples.

+

2. Observability with Generic Tools

+

In addition to the above tools for performance tuning, below is a checklist for bcc generic tools, first as a list, and in detail:

+
    +
  1. trace
  2. +
  3. argdist
  4. +
  5. funccount
  6. +
+

These generic tools may be useful to provide visibility to solve your specific problems.

+

2.1. trace

+
Example 1
+

Suppose you want to track file ownership change. There are three syscalls, chown, fchown and lchown which users can use to change file ownership. The corresponding syscall entry is SyS_[f|l]chown. The following command can be used to print out syscall parameters and the calling process user id. You can use id command to find the uid of a particular user.

+
$ trace.py \
+  'p::SyS_chown "file = %s, to_uid = %d, to_gid = %d, from_uid = %d", arg1, arg2, arg3, $uid' \
+  'p::SyS_fchown "fd = %d, to_uid = %d, to_gid = %d, from_uid = %d", arg1, arg2, arg3, $uid' \
+  'p::SyS_lchown "file = %s, to_uid = %d, to_gid = %d, from_uid = %d", arg1, arg2, arg3, $uid'
+PID    TID    COMM         FUNC             -
+1269255 1269255 python3.6    SyS_lchown       file = /tmp/dotsync-usisgezu/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269441 1269441 zstd         SyS_chown        file = /tmp/dotsync-vic7ygj0/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269255 1269255 python3.6    SyS_lchown       file = /tmp/dotsync-a40zd7ev/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269442 1269442 zstd         SyS_chown        file = /tmp/dotsync-gzp413o_/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269255 1269255 python3.6    SyS_lchown       file = /tmp/dotsync-whx4fivm/tmp/.bash_profile, to_uid = 128203, to_gid = 100, from_uid = 128203
+
+
Example 2
+

Suppose you want to count nonvoluntary context switches (nvcsw) in your bpf based performance monitoring tools and you do not know what is the proper method. /proc/<pid>/status already tells you the number (nonvoluntary_ctxt_switches) for a pid and you can use trace.py to do a quick experiment to verify your method. With kernel source code, the nvcsw is counted at file linux/kernel/sched/core.c function __schedule and under condition

+
!(!preempt && prev->state) // i.e., preempt || !prev->state
+
+

The __schedule function is marked as notrace, and the best place to evaluate the above condition seems in sched/sched_switch tracepoint called inside function __schedule and defined in linux/include/trace/events/sched.h. trace.py already has args being the pointer to the tracepoint TP_STRUCT__entry. The above condition in function __schedule can be represented as

+
args->prev_state == TASK_STATE_MAX || args->prev_state == 0
+
+

The below command can be used to count the involuntary context switches (per process or per pid) and compare to /proc/<pid>/status or /proc/<pid>/task/<task_id>/status for correctness, as in typical cases, involuntary context switches are not very common.

+
$ trace.py -p 1134138 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'
+PID    TID    COMM         FUNC
+1134138 1134140 contention_test sched_switch
+1134138 1134142 contention_test sched_switch
+...
+$ trace.py -L 1134140 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'
+PID    TID    COMM         FUNC
+1134138 1134140 contention_test sched_switch
+1134138 1134140 contention_test sched_switch
+...
+
+
Example 3
+

This example is related to issue 1231 and 1516 where uprobe does not work at all in certain cases. First, you can do a strace as below

+
$ strace trace.py 'r:bash:readline "%s", retval'
+...
+perf_event_open(0x7ffd968212f0, -1, 0, -1, 0x8 /* PERF_FLAG_??? */) = -1 EIO (Input/output error)
+...
+
+

The perf_event_open syscall returns -EIO. Digging into kernel uprobe related codes in /kernel/trace and /kernel/events directories to search EIO, the function uprobe_register is the most suspicious. Let us find whether this function is called or not and what is the return value if it is called. In one terminal using the following command to print out the return value of uprobe_register,

+
$ trace.py 'r::uprobe_register "ret = %d", retval'
+
+

In another terminal run the same bash uretprobe tracing example, and you should get

+
$ trace.py 'r::uprobe_register "ret = %d", retval'
+PID    TID    COMM         FUNC             -
+1041401 1041401 python2.7    uprobe_register  ret = -5
+
+

The -5 error code is EIO. This confirms that the following code in function uprobe_register is the most suspicious culprit.

+
 if (!inode->i_mapping->a_ops->readpage && !shmem_mapping(inode->i_mapping))
+        return -EIO;
+
+

The shmem_mapping function is defined as

+
bool shmem_mapping(struct address_space *mapping)
+{
+        return mapping->a_ops == &shmem_aops;
+}
+
+

To confirm the theory, find what is inode->i_mapping->a_ops with the following command

+
$ trace.py -I 'linux/fs.h' 'p::uprobe_register(struct inode *inode) "a_ops = %llx", inode->i_mapping->a_ops'
+PID    TID    COMM         FUNC             -
+814288 814288 python2.7    uprobe_register  a_ops = ffffffff81a2adc0
+^C$ grep ffffffff81a2adc0 /proc/kallsyms
+ffffffff81a2adc0 R empty_aops
+
+

The kernel symbol empty_aops does not have readpage defined and hence the above suspicious condition is true. Further examining the kernel source code shows that overlayfs does not provide its own a_ops while some other file systems (e.g., ext4) define their own a_ops (e.g., ext4_da_aops), and ext4_da_aops defines readpage. Hence, uprobe works fine on ext4 while not on overlayfs.

+

More examples.

+

2.2. argdist

+

More examples.

+

2.3. funccount

+

More examples.

+

Networking

+

To do.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/bcc-documents/tutorial_bcc_python_developer.html b/bcc-documents/tutorial_bcc_python_developer.html new file mode 100644 index 0000000..33ee46f --- /dev/null +++ b/bcc-documents/tutorial_bcc_python_developer.html @@ -0,0 +1,826 @@ + + + + + + bcc Python Developer Tutorial - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

bcc Python Developer Tutorial

+

This tutorial is about developing bcc tools and programs using the Python interface. There are two parts: observability then networking. Snippets are taken from various programs in bcc: see their files for licences.

+

Also see the bcc developer's reference_guide.md, and a tutorial for end-users of tools: tutorial.md. There is also a lua interface for bcc.

+

Observability

+

This observability tutorial contains 17 lessons, and 46 enumerated things to learn.

+

Lesson 1. Hello World

+

Start by running examples/hello_world.py, while running some commands (eg, "ls") in another session. It should print "Hello, World!" for new processes. If not, start by fixing bcc: see INSTALL.md.

+
# ./examples/hello_world.py
+            bash-13364 [002] d... 24573433.052937: : Hello, World!
+            bash-13364 [003] d... 24573436.642808: : Hello, World!
+[...]
+
+

Here's the code for hello_world.py:

+
from bcc import BPF
+BPF(text='int kprobe__sys_clone(void *ctx) { bpf_trace_printk("Hello, World!\\n"); return 0; }').trace_print()
+
+

There are six things to learn from this:

+
    +
  1. +

    text='...': This defines a BPF program inline. The program is written in C.

    +
  2. +
  3. +

    kprobe__sys_clone(): This is a short-cut for kernel dynamic tracing via kprobes. If the C function begins with kprobe__, the rest is treated as a kernel function name to instrument, in this case, sys_clone().

    +
  4. +
  5. +

    void *ctx: ctx has arguments, but since we aren't using them here, we'll just cast it to void *.

    +
  6. +
  7. +

    bpf_trace_printk(): A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(), covered later.

    +
  8. +
  9. +

    return 0;: Necessary formality (if you want to know why, see #139).

    +
  10. +
  11. +

    .trace_print(): A bcc routine that reads trace_pipe and prints the output.

    +
  12. +
+

Lesson 2. sys_sync()

+

Write a program that traces the sys_sync() kernel function. Print "sys_sync() called" when it runs. Test by running sync in another session while tracing. The hello_world.py program has everything you need for this.

+

Improve it by printing "Tracing sys_sync()... Ctrl-C to end." when the program first starts. Hint: it's just Python.

+

Lesson 3. hello_fields.py

+

This program is in examples/tracing/hello_fields.py. Sample output (run commands in another session):

+
# examples/tracing/hello_fields.py
+TIME(s)            COMM             PID    MESSAGE
+24585001.174885999 sshd             1432   Hello, World!
+24585001.195710000 sshd             15780  Hello, World!
+24585001.991976000 systemd-udevd    484    Hello, World!
+24585002.276147000 bash             15787  Hello, World!
+
+

Code:

+
from bcc import BPF
+
+# define BPF program
+prog = """
+int hello(void *ctx) {
+    bpf_trace_printk("Hello, World!\\n");
+    return 0;
+}
+"""
+
+# load BPF program
+b = BPF(text=prog)
+b.attach_kprobe(event=b.get_syscall_fnname("clone"), fn_name="hello")
+
+# header
+print("%-18s %-16s %-6s %s" % ("TIME(s)", "COMM", "PID", "MESSAGE"))
+
+# format output
+while 1:
+    try:
+        (task, pid, cpu, flags, ts, msg) = b.trace_fields()
+    except ValueError:
+        continue
+    print("%-18.9f %-16s %-6d %s" % (ts, task, pid, msg))
+
+

This is similar to hello_world.py, and traces new processes via sys_clone() again, but has a few more things to learn:

+
    +
  1. +

    prog =: This time we declare the C program as a variable, and later refer to it. This is useful if you want to add some string substitutions based on command line arguments.

    +
  2. +
  3. +

    hello(): Now we're just declaring a C function, instead of the kprobe__ shortcut. We'll refer to this later. All C functions declared in the BPF program are expected to be executed on a probe, hence they all need to take a pt_reg* ctx as first argument. If you need to define some helper function that will not be executed on a probe, they need to be defined as static inline in order to be inlined by the compiler. Sometimes you would also need to add _always_inline function attribute to it.

    +
  4. +
  5. +

    b.attach_kprobe(event=b.get_syscall_fnname("clone"), fn_name="hello"): Creates a kprobe for the kernel clone system call function, which will execute our defined hello() function. You can call attach_kprobe() more than once, and attach your C function to multiple kernel functions.

    +
  6. +
  7. +

    b.trace_fields(): Returns a fixed set of fields from trace_pipe. Similar to trace_print(), this is handy for hacking, but for real tooling we should switch to BPF_PERF_OUTPUT().

    +
  8. +
+

Lesson 4. sync_timing.py

+

Remember the days of sysadmins typing sync three times on a slow console before reboot, to give the first asynchronous sync time to complete? Then someone thought sync;sync;sync was clever, to run them all on one line, which became industry practice despite defeating the original purpose! And then sync became synchronous, so more reasons it was silly. Anyway.

+

The following example times how quickly the do_sync function is called, and prints output if it has been called more recently than one second ago. A sync;sync;sync will print output for the 2nd and 3rd sync's:

+
# examples/tracing/sync_timing.py
+Tracing for quick sync's... Ctrl-C to end
+At time 0.00 s: multiple syncs detected, last 95 ms ago
+At time 0.10 s: multiple syncs detected, last 96 ms ago
+
+

This program is examples/tracing/sync_timing.py:

+
from __future__ import print_function
+from bcc import BPF
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+
+BPF_HASH(last);
+
+int do_trace(struct pt_regs *ctx) {
+    u64 ts, *tsp, delta, key = 0;
+
+    // attempt to read stored timestamp
+    tsp = last.lookup(&key);
+    if (tsp != NULL) {
+        delta = bpf_ktime_get_ns() - *tsp;
+        if (delta < 1000000000) {
+            // output if time is less than 1 second
+            bpf_trace_printk("%d\\n", delta / 1000000);
+        }
+        last.delete(&key);
+    }
+
+    // update stored timestamp
+    ts = bpf_ktime_get_ns();
+    last.update(&key, &ts);
+    return 0;
+}
+""")
+
+b.attach_kprobe(event=b.get_syscall_fnname("sync"), fn_name="do_trace")
+print("Tracing for quick sync's... Ctrl-C to end")
+
+# format output
+start = 0
+while 1:
+    (task, pid, cpu, flags, ts, ms) = b.trace_fields()
+    if start == 0:
+        start = ts
+    ts = ts - start
+    print("At time %.2f s: multiple syncs detected, last %s ms ago" % (ts, ms))
+
+

Things to learn:

+
    +
  1. bpf_ktime_get_ns(): Returns the time as nanoseconds.
  2. +
  3. BPF_HASH(last): Creates a BPF map object that is a hash (associative array), called "last". We didn't specify any further arguments, so it defaults to key and value types of u64.
  4. +
  5. key = 0: We'll only store one key/value pair in this hash, where the key is hardwired to zero.
  6. +
  7. last.lookup(&key): Lookup the key in the hash, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer.
  8. +
  9. if (tsp != NULL) {: The verifier requires that pointer values derived from a map lookup must be checked for a null value before they can be dereferenced and used.
  10. +
  11. last.delete(&key): Delete the key from the hash. This is currently required because of a kernel bug in .update() (fixed in 4.8.10).
  12. +
  13. last.update(&key, &ts): Associate the value in the 2nd argument to the key, overwriting any previous value. This records the timestamp.
  14. +
+

Lesson 5. sync_count.py

+

Modify the sync_timing.py program (prior lesson) to store the count of all kernel sync system calls (both fast and slow), and print it with the output. This count can be recorded in the BPF program by adding a new key index to the existing hash.

+

Lesson 6. disksnoop.py

+

Browse the examples/tracing/disksnoop.py program to see what is new. Here is some sample output:

+
# disksnoop.py
+TIME(s)            T  BYTES    LAT(ms)
+16458043.436012    W  4096        3.13
+16458043.437326    W  4096        4.44
+16458044.126545    R  4096       42.82
+16458044.129872    R  4096        3.24
+[...]
+
+

And a code snippet:

+
[...]
+REQ_WRITE = 1		# from include/linux/blk_types.h
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+#include <linux/blk-mq.h>
+
+BPF_HASH(start, struct request *);
+
+void trace_start(struct pt_regs *ctx, struct request *req) {
+	// stash start timestamp by request ptr
+	u64 ts = bpf_ktime_get_ns();
+
+	start.update(&req, &ts);
+}
+
+void trace_completion(struct pt_regs *ctx, struct request *req) {
+	u64 *tsp, delta;
+
+	tsp = start.lookup(&req);
+	if (tsp != 0) {
+		delta = bpf_ktime_get_ns() - *tsp;
+		bpf_trace_printk("%d %x %d\\n", req->__data_len,
+		    req->cmd_flags, delta / 1000);
+		start.delete(&req);
+	}
+}
+""")
+if BPF.get_kprobe_functions(b'blk_start_request'):
+        b.attach_kprobe(event="blk_start_request", fn_name="trace_start")
+b.attach_kprobe(event="blk_mq_start_request", fn_name="trace_start")
+if BPF.get_kprobe_functions(b'__blk_account_io_done'):
+    b.attach_kprobe(event="__blk_account_io_done", fn_name="trace_completion")
+else:
+    b.attach_kprobe(event="blk_account_io_done", fn_name="trace_completion")
+[...]
+
+

Things to learn:

+
    +
  1. REQ_WRITE: We're defining a kernel constant in the Python program because we'll use it there later. If we were using REQ_WRITE in the BPF program, it should just work (without needing to be defined) with the appropriate #includes.
  2. +
  3. trace_start(struct pt_regs *ctx, struct request *req): This function will later be attached to kprobes. The arguments to kprobe functions are struct pt_regs *ctx, for registers and BPF context, and then the actual arguments to the function. We'll attach this to blk_start_request(), where the first argument is struct request *.
  4. +
  5. start.update(&req, &ts): We're using the pointer to the request struct as a key in our hash. What? This is commonplace in tracing. Pointers to structs turn out to be great keys, as they are unique: two structs can't have the same pointer address. (Just be careful about when it gets free'd and reused.) So what we're really doing is tagging the request struct, which describes the disk I/O, with our own timestamp, so that we can time it. There's two common keys used for storing timestamps: pointers to structs, and, thread IDs (for timing function entry to return).
  6. +
  7. req->__data_len: We're dereferencing members of struct request. See its definition in the kernel source for what members are there. bcc actually rewrites these expressions to be a series of bpf_probe_read_kernel() calls. Sometimes bcc can't handle a complex dereference, and you need to call bpf_probe_read_kernel() directly.
  8. +
+

This is a pretty interesting program, and if you can understand all the code, you'll understand many important basics. We're still using the bpf_trace_printk() hack, so let's fix that next.

+

Lesson 7. hello_perf_output.py

+

Let's finally stop using bpf_trace_printk() and use the proper BPF_PERF_OUTPUT() interface. This will also mean we stop getting the free trace_field() members like PID and timestamp, and will need to fetch them directly. Sample output while commands are run in another session:

+
# hello_perf_output.py
+TIME(s)            COMM             PID    MESSAGE
+0.000000000        bash             22986  Hello, perf_output!
+0.021080275        systemd-udevd    484    Hello, perf_output!
+0.021359520        systemd-udevd    484    Hello, perf_output!
+0.021590610        systemd-udevd    484    Hello, perf_output!
+[...]
+
+

Code is examples/tracing/hello_perf_output.py:

+
from bcc import BPF
+
+# define BPF program
+prog = """
+#include <linux/sched.h>
+
+// define output data structure in C
+struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_PERF_OUTPUT(events);
+
+int hello(struct pt_regs *ctx) {
+    struct data_t data = {};
+
+    data.pid = bpf_get_current_pid_tgid();
+    data.ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data.comm, sizeof(data.comm));
+
+    events.perf_submit(ctx, &data, sizeof(data));
+
+    return 0;
+}
+"""
+
+# load BPF program
+b = BPF(text=prog)
+b.attach_kprobe(event=b.get_syscall_fnname("clone"), fn_name="hello")
+
+# header
+print("%-18s %-16s %-6s %s" % ("TIME(s)", "COMM", "PID", "MESSAGE"))
+
+# process event
+start = 0
+def print_event(cpu, data, size):
+    global start
+    event = b["events"].event(data)
+    if start == 0:
+            start = event.ts
+    time_s = (float(event.ts - start)) / 1000000000
+    print("%-18.9f %-16s %-6d %s" % (time_s, event.comm, event.pid,
+        "Hello, perf_output!"))
+
+# loop with callback to print_event
+b["events"].open_perf_buffer(print_event)
+while 1:
+    b.perf_buffer_poll()
+
+

Things to learn:

+
    +
  1. struct data_t: This defines the C struct we'll use to pass data from kernel to user space.
  2. +
  3. BPF_PERF_OUTPUT(events): This names our output channel "events".
  4. +
  5. struct data_t data = {};: Create an empty data_t struct that we'll then populate.
  6. +
  7. bpf_get_current_pid_tgid(): Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits. Should you be presenting the PID or the TGID? For a multi-threaded app, the TGID will be the same, so you need the PID to differentiate them, if that's what you want. It's also a question of expectations for the end user.
  8. +
  9. bpf_get_current_comm(): Populates the first argument address with the current process name.
  10. +
  11. events.perf_submit(): Submit the event for user space to read via a perf ring buffer.
  12. +
  13. def print_event(): Define a Python function that will handle reading events from the events stream.
  14. +
  15. b["events"].event(data): Now get the event as a Python object, auto-generated from the C declaration.
  16. +
  17. b["events"].open_perf_buffer(print_event): Associate the Python print_event function with the events stream.
  18. +
  19. while 1: b.perf_buffer_poll(): Block waiting for events.
  20. +
+

Lesson 8. sync_perf_output.py

+

Rewrite sync_timing.py, from a prior lesson, to use BPF_PERF_OUTPUT.

+

Lesson 9. bitehist.py

+

The following tool records a histogram of disk I/O sizes. Sample output:

+
# bitehist.py
+Tracing... Hit Ctrl-C to end.
+^C
+     kbytes          : count     distribution
+       0 -> 1        : 3        |                                      |
+       2 -> 3        : 0        |                                      |
+       4 -> 7        : 211      |**********                            |
+       8 -> 15       : 0        |                                      |
+      16 -> 31       : 0        |                                      |
+      32 -> 63       : 0        |                                      |
+      64 -> 127      : 1        |                                      |
+     128 -> 255      : 800      |**************************************|
+
+

Code is examples/tracing/bitehist.py:

+
from __future__ import print_function
+from bcc import BPF
+from time import sleep
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+#include <linux/blkdev.h>
+
+BPF_HISTOGRAM(dist);
+
+int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)
+{
+	dist.increment(bpf_log2l(req->__data_len / 1024));
+	return 0;
+}
+""")
+
+# header
+print("Tracing... Hit Ctrl-C to end.")
+
+# trace until Ctrl-C
+try:
+	sleep(99999999)
+except KeyboardInterrupt:
+	print()
+
+# output
+b["dist"].print_log2_hist("kbytes")
+
+

A recap from earlier lessons:

+
    +
  • kprobe__: This prefix means the rest will be treated as a kernel function name that will be instrumented using kprobe.
  • +
  • struct pt_regs *ctx, struct request *req: Arguments to kprobe. The ctx is registers and BPF context, the req is the first argument to the instrumented function: blk_account_io_done().
  • +
  • req->__data_len: Dereferencing that member.
  • +
+

New things to learn:

+
    +
  1. BPF_HISTOGRAM(dist): Defines a BPF map object that is a histogram, and names it "dist".
  2. +
  3. dist.increment(): Increments the histogram bucket index provided as first argument by one by default. Optionally, custom increments can be passed as the second argument.
  4. +
  5. bpf_log2l(): Returns the log-2 of the provided value. This becomes the index of our histogram, so that we're constructing a power-of-2 histogram.
  6. +
  7. b["dist"].print_log2_hist("kbytes"): Prints the "dist" histogram as power-of-2, with a column header of "kbytes". The only data transferred from kernel to user space is the bucket counts, making this efficient.
  8. +
+

Lesson 10. disklatency.py

+

Write a program that times disk I/O, and prints a histogram of their latency. Disk I/O instrumentation and timing can be found in the disksnoop.py program from a prior lesson, and histogram code can be found in bitehist.py from a prior lesson.

+

Lesson 11. vfsreadlat.py

+

This example is split into separate Python and C files. Example output:

+
# vfsreadlat.py 1
+Tracing... Hit Ctrl-C to end.
+     usecs               : count     distribution
+         0 -> 1          : 0        |                                        |
+         2 -> 3          : 2        |***********                             |
+         4 -> 7          : 7        |****************************************|
+         8 -> 15         : 4        |**********************                  |
+
+     usecs               : count     distribution
+         0 -> 1          : 29       |****************************************|
+         2 -> 3          : 28       |**************************************  |
+         4 -> 7          : 4        |*****                                   |
+         8 -> 15         : 8        |***********                             |
+        16 -> 31         : 0        |                                        |
+        32 -> 63         : 0        |                                        |
+        64 -> 127        : 0        |                                        |
+       128 -> 255        : 0        |                                        |
+       256 -> 511        : 2        |**                                      |
+       512 -> 1023       : 0        |                                        |
+      1024 -> 2047       : 0        |                                        |
+      2048 -> 4095       : 0        |                                        |
+      4096 -> 8191       : 4        |*****                                   |
+      8192 -> 16383      : 6        |********                                |
+     16384 -> 32767      : 9        |************                            |
+     32768 -> 65535      : 6        |********                                |
+     65536 -> 131071     : 2        |**                                      |
+
+     usecs               : count     distribution
+         0 -> 1          : 11       |****************************************|
+         2 -> 3          : 2        |*******                                 |
+         4 -> 7          : 10       |************************************    |
+         8 -> 15         : 8        |*****************************           |
+        16 -> 31         : 1        |***                                     |
+        32 -> 63         : 2        |*******                                 |
+[...]
+
+

Browse the code in examples/tracing/vfsreadlat.py and examples/tracing/vfsreadlat.c. Things to learn:

+
    +
  1. b = BPF(src_file = "vfsreadlat.c"): Read the BPF C program from a separate source file.
  2. +
  3. b.attach_kretprobe(event="vfs_read", fn_name="do_return"): Attaches the BPF C function do_return() to the return of the kernel function vfs_read(). This is a kretprobe: instrumenting the return from a function, rather than its entry.
  4. +
  5. b["dist"].clear(): Clears the histogram.
  6. +
+

Lesson 12. urandomread.py

+

Tracing while a dd if=/dev/urandom of=/dev/null bs=8k count=5 is run:

+
# urandomread.py
+TIME(s)            COMM             PID    GOTBITS
+24652832.956994001 smtp             24690  384
+24652837.726500999 dd               24692  65536
+24652837.727111001 dd               24692  65536
+24652837.727703001 dd               24692  65536
+24652837.728294998 dd               24692  65536
+24652837.728888001 dd               24692  65536
+
+

Hah! I caught smtp by accident. Code is examples/tracing/urandomread.py:

+
from __future__ import print_function
+from bcc import BPF
+
+# load BPF program
+b = BPF(text="""
+TRACEPOINT_PROBE(random, urandom_read) {
+    // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format
+    bpf_trace_printk("%d\\n", args->got_bits);
+    return 0;
+}
+""")
+
+# header
+print("%-18s %-16s %-6s %s" % ("TIME(s)", "COMM", "PID", "GOTBITS"))
+
+# format output
+while 1:
+    try:
+        (task, pid, cpu, flags, ts, msg) = b.trace_fields()
+    except ValueError:
+        continue
+    print("%-18.9f %-16s %-6d %s" % (ts, task, pid, msg))
+
+

Things to learn:

+
    +
  1. TRACEPOINT_PROBE(random, urandom_read): Instrument the kernel tracepoint random:urandom_read. These have a stable API, and thus are recommend to use instead of kprobes, wherever possible. You can run perf list for a list of tracepoints. Linux >= 4.7 is required to attach BPF programs to tracepoints.
  2. +
  3. args->got_bits: args is auto-populated to be a structure of the tracepoint arguments. The comment above says where you can see that structure. Eg:
  4. +
+
# cat /sys/kernel/debug/tracing/events/random/urandom_read/format
+name: urandom_read
+ID: 972
+format:
+	field:unsigned short common_type;	offset:0;	size:2;	signed:0;
+	field:unsigned char common_flags;	offset:2;	size:1;	signed:0;
+	field:unsigned char common_preempt_count;	offset:3;	size:1;	signed:0;
+	field:int common_pid;	offset:4;	size:4;	signed:1;
+
+	field:int got_bits;	offset:8;	size:4;	signed:1;
+	field:int pool_left;	offset:12;	size:4;	signed:1;
+	field:int input_left;	offset:16;	size:4;	signed:1;
+
+print fmt: "got_bits %d nonblocking_pool_entropy_left %d input_entropy_left %d", REC->got_bits, REC->pool_left, REC->input_left
+
+

In this case, we were printing the got_bits member.

+

Lesson 13. disksnoop.py fixed

+

Convert disksnoop.py from a previous lesson to use the block:block_rq_issue and block:block_rq_complete tracepoints.

+

Lesson 14. strlen_count.py

+

This program instruments a user-level function, the strlen() library function, and frequency counts its string argument. Example output:

+
# strlen_count.py
+Tracing strlen()... Hit Ctrl-C to end.
+^C     COUNT STRING
+         1 " "
+         1 "/bin/ls"
+         1 "."
+         1 "cpudist.py.1"
+         1 ".bashrc"
+         1 "ls --color=auto"
+         1 "key_t"
+[...]
+        10 "a7:~# "
+        10 "/root"
+        12 "LC_ALL"
+        12 "en_US.UTF-8"
+        13 "en_US.UTF-8"
+        20 "~"
+        70 "#%^,~:-=?+/}"
+       340 "\x01\x1b]0;root@bgregg-test: ~\x07\x02root@bgregg-test:~# "
+
+

These are various strings that are being processed by this library function while tracing, along with their frequency counts. strlen() was called on "LC_ALL" 12 times, for example.

+

Code is examples/tracing/strlen_count.py:

+
from __future__ import print_function
+from bcc import BPF
+from time import sleep
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+
+struct key_t {
+    char c[80];
+};
+BPF_HASH(counts, struct key_t);
+
+int count(struct pt_regs *ctx) {
+    if (!PT_REGS_PARM1(ctx))
+        return 0;
+
+    struct key_t key = {};
+    u64 zero = 0, *val;
+
+    bpf_probe_read_user(&key.c, sizeof(key.c), (void *)PT_REGS_PARM1(ctx));
+    // could also use `counts.increment(key)`
+    val = counts.lookup_or_try_init(&key, &zero);
+    if (val) {
+      (*val)++;
+    }
+    return 0;
+};
+""")
+b.attach_uprobe(name="c", sym="strlen", fn_name="count")
+
+# header
+print("Tracing strlen()... Hit Ctrl-C to end.")
+
+# sleep until Ctrl-C
+try:
+    sleep(99999999)
+except KeyboardInterrupt:
+    pass
+
+# print output
+print("%10s %s" % ("COUNT", "STRING"))
+counts = b.get_table("counts")
+for k, v in sorted(counts.items(), key=lambda counts: counts[1].value):
+    print("%10d \"%s\"" % (v.value, k.c.encode('string-escape')))
+
+

Things to learn:

+
    +
  1. PT_REGS_PARM1(ctx): This fetches the first argument to strlen(), which is the string.
  2. +
  3. b.attach_uprobe(name="c", sym="strlen", fn_name="count"): Attach to library "c" (if this is the main program, use its pathname), instrument the user-level function strlen(), and on execution call our C function count().
  4. +
+

Lesson 15. nodejs_http_server.py

+

This program instruments a user statically-defined tracing (USDT) probe, which is the user-level version of a kernel tracepoint. Sample output:

+
# nodejs_http_server.py 24728
+TIME(s)            COMM             PID    ARGS
+24653324.561322998 node             24728  path:/index.html
+24653335.343401998 node             24728  path:/images/welcome.png
+24653340.510164998 node             24728  path:/images/favicon.png
+
+

Relevant code from examples/tracing/nodejs_http_server.py:

+
from __future__ import print_function
+from bcc import BPF, USDT
+import sys
+
+if len(sys.argv) < 2:
+    print("USAGE: nodejs_http_server PID")
+    exit()
+pid = sys.argv[1]
+debug = 0
+
+# load BPF program
+bpf_text = """
+#include <uapi/linux/ptrace.h>
+int do_trace(struct pt_regs *ctx) {
+    uint64_t addr;
+    char path[128]={0};
+    bpf_usdt_readarg(6, ctx, &addr);
+    bpf_probe_read_user(&path, sizeof(path), (void *)addr);
+    bpf_trace_printk("path:%s\\n", path);
+    return 0;
+};
+"""
+
+# enable USDT probe from given PID
+u = USDT(pid=int(pid))
+u.enable_probe(probe="http__server__request", fn_name="do_trace")
+if debug:
+    print(u.get_text())
+    print(bpf_text)
+
+# initialize BPF
+b = BPF(text=bpf_text, usdt_contexts=[u])
+
+

Things to learn:

+
    +
  1. bpf_usdt_readarg(6, ctx, &addr): Read the address of argument 6 from the USDT probe into addr.
  2. +
  3. bpf_probe_read_user(&path, sizeof(path), (void *)addr): Now the string addr points to into our path variable.
  4. +
  5. u = USDT(pid=int(pid)): Initialize USDT tracing for the given PID.
  6. +
  7. u.enable_probe(probe="http__server__request", fn_name="do_trace"): Attach our do_trace() BPF C function to the Node.js http__server__request USDT probe.
  8. +
  9. b = BPF(text=bpf_text, usdt_contexts=[u]): Need to pass in our USDT object, u, to BPF object creation.
  10. +
+

Lesson 16. task_switch.c

+

This is an older tutorial included as a bonus lesson. Use this for recap and to reinforce what you've already learned.

+

This is a slightly more complex tracing example than Hello World. This program +will be invoked for every task change in the kernel, and record in a BPF map +the new and old pids.

+

The C program below introduces a new concept: the prev argument. This +argument is treated specially by the BCC frontend, such that accesses +to this variable are read from the saved context that is passed by the +kprobe infrastructure. The prototype of the args starting from +position 1 should match the prototype of the kernel function being +kprobed. If done so, the program will have seamless access to the +function parameters.

+
#include <uapi/linux/ptrace.h>
+#include <linux/sched.h>
+
+struct key_t {
+    u32 prev_pid;
+    u32 curr_pid;
+};
+
+BPF_HASH(stats, struct key_t, u64, 1024);
+int count_sched(struct pt_regs *ctx, struct task_struct *prev) {
+    struct key_t key = {};
+    u64 zero = 0, *val;
+
+    key.curr_pid = bpf_get_current_pid_tgid();
+    key.prev_pid = prev->pid;
+
+    // could also use `stats.increment(key);`
+    val = stats.lookup_or_try_init(&key, &zero);
+    if (val) {
+      (*val)++;
+    }
+    return 0;
+}
+
+

The userspace component loads the file shown above, and attaches it to the +finish_task_switch kernel function. +The [] operator of the BPF object gives access to each BPF_HASH in the +program, allowing pass-through access to the values residing in the kernel. Use +the object as you would any other python dict object: read, update, and deletes +are all allowed.

+
from bcc import BPF
+from time import sleep
+
+b = BPF(src_file="task_switch.c")
+b.attach_kprobe(event="finish_task_switch", fn_name="count_sched")
+
+# generate many schedule events
+for i in range(0, 100): sleep(0.01)
+
+for k, v in b["stats"].items():
+    print("task_switch[%5d->%5d]=%u" % (k.prev_pid, k.curr_pid, v.value))
+
+

These programs can be found in the files examples/tracing/task_switch.c and examples/tracing/task_switch.py respectively.

+

Lesson 17. Further Study

+

For further study, see Sasha Goldshtein's linux-tracing-workshop, which contains additional labs. There are also many tools in bcc /tools to study.

+

Please read CONTRIBUTING-SCRIPTS.md if you wish to contribute tools to bcc. At the bottom of the main README.md, you'll also find methods for contacting us. Good luck, and happy tracing!

+

Networking

+

To do.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/book.js b/book.js new file mode 100644 index 0000000..e303ebb --- /dev/null +++ b/book.js @@ -0,0 +1,688 @@ +"use strict"; + +// Fix back button cache problem +window.onunload = function () { }; + +// Global variable, shared between modules +function playground_text(playground, hidden = true) { + let code_block = playground.querySelector("code"); + + if (window.ace && code_block.classList.contains("editable")) { + let editor = window.ace.edit(code_block); + return editor.getValue(); + } else if (hidden) { + return code_block.textContent; + } else { + return code_block.innerText; + } +} + +(function codeSnippets() { + function fetch_with_timeout(url, options, timeout = 6000) { + return Promise.race([ + fetch(url, options), + new Promise((_, reject) => setTimeout(() => reject(new Error('timeout')), timeout)) + ]); + } + + var playgrounds = Array.from(document.querySelectorAll(".playground")); + if (playgrounds.length > 0) { + fetch_with_timeout("https://play.rust-lang.org/meta/crates", { + headers: { + 'Content-Type': "application/json", + }, + method: 'POST', + mode: 'cors', + }) + .then(response => response.json()) + .then(response => { + // get list of crates available in the rust playground + let playground_crates = response.crates.map(item => item["id"]); + playgrounds.forEach(block => handle_crate_list_update(block, playground_crates)); + }); + } + + function handle_crate_list_update(playground_block, playground_crates) { + // update the play buttons after receiving the response + update_play_button(playground_block, playground_crates); + + // and install on change listener to dynamically update ACE editors + if (window.ace) { + let code_block = playground_block.querySelector("code"); + if (code_block.classList.contains("editable")) { + let editor = window.ace.edit(code_block); + editor.addEventListener("change", function (e) { + update_play_button(playground_block, playground_crates); + }); + // add Ctrl-Enter command to execute rust code + editor.commands.addCommand({ + name: "run", + bindKey: { + win: "Ctrl-Enter", + mac: "Ctrl-Enter" + }, + exec: _editor => run_rust_code(playground_block) + }); + } + } + } + + // updates the visibility of play button based on `no_run` class and + // used crates vs ones available on http://play.rust-lang.org + function update_play_button(pre_block, playground_crates) { + var play_button = pre_block.querySelector(".play-button"); + + // skip if code is `no_run` + if (pre_block.querySelector('code').classList.contains("no_run")) { + play_button.classList.add("hidden"); + return; + } + + // get list of `extern crate`'s from snippet + var txt = playground_text(pre_block); + var re = /extern\s+crate\s+([a-zA-Z_0-9]+)\s*;/g; + var snippet_crates = []; + var item; + while (item = re.exec(txt)) { + snippet_crates.push(item[1]); + } + + // check if all used crates are available on play.rust-lang.org + var all_available = snippet_crates.every(function (elem) { + return playground_crates.indexOf(elem) > -1; + }); + + if (all_available) { + play_button.classList.remove("hidden"); + } else { + play_button.classList.add("hidden"); + } + } + + function run_rust_code(code_block) { + var result_block = code_block.querySelector(".result"); + if (!result_block) { + result_block = document.createElement('code'); + result_block.className = 'result hljs language-bash'; + + code_block.append(result_block); + } + + let text = playground_text(code_block); + let classes = code_block.querySelector('code').classList; + let edition = "2015"; + if(classes.contains("edition2018")) { + edition = "2018"; + } else if(classes.contains("edition2021")) { + edition = "2021"; + } + var params = { + version: "stable", + optimize: "0", + code: text, + edition: edition + }; + + if (text.indexOf("#![feature") !== -1) { + params.version = "nightly"; + } + + result_block.innerText = "Running..."; + + fetch_with_timeout("https://play.rust-lang.org/evaluate.json", { + headers: { + 'Content-Type': "application/json", + }, + method: 'POST', + mode: 'cors', + body: JSON.stringify(params) + }) + .then(response => response.json()) + .then(response => { + if (response.result.trim() === '') { + result_block.innerText = "No output"; + result_block.classList.add("result-no-output"); + } else { + result_block.innerText = response.result; + result_block.classList.remove("result-no-output"); + } + }) + .catch(error => result_block.innerText = "Playground Communication: " + error.message); + } + + // Syntax highlighting Configuration + hljs.configure({ + tabReplace: ' ', // 4 spaces + languages: [], // Languages used for auto-detection + }); + + let code_nodes = Array + .from(document.querySelectorAll('code')) + // Don't highlight `inline code` blocks in headers. + .filter(function (node) {return !node.parentElement.classList.contains("header"); }); + + if (window.ace) { + // language-rust class needs to be removed for editable + // blocks or highlightjs will capture events + code_nodes + .filter(function (node) {return node.classList.contains("editable"); }) + .forEach(function (block) { block.classList.remove('language-rust'); }); + + code_nodes + .filter(function (node) {return !node.classList.contains("editable"); }) + .forEach(function (block) { hljs.highlightBlock(block); }); + } else { + code_nodes.forEach(function (block) { hljs.highlightBlock(block); }); + } + + // Adding the hljs class gives code blocks the color css + // even if highlighting doesn't apply + code_nodes.forEach(function (block) { block.classList.add('hljs'); }); + + Array.from(document.querySelectorAll("code.language-rust")).forEach(function (block) { + + var lines = Array.from(block.querySelectorAll('.boring')); + // If no lines were hidden, return + if (!lines.length) { return; } + block.classList.add("hide-boring"); + + var buttons = document.createElement('div'); + buttons.className = 'buttons'; + buttons.innerHTML = ""; + + // add expand button + var pre_block = block.parentNode; + pre_block.insertBefore(buttons, pre_block.firstChild); + + pre_block.querySelector('.buttons').addEventListener('click', function (e) { + if (e.target.classList.contains('fa-eye')) { + e.target.classList.remove('fa-eye'); + e.target.classList.add('fa-eye-slash'); + e.target.title = 'Hide lines'; + e.target.setAttribute('aria-label', e.target.title); + + block.classList.remove('hide-boring'); + } else if (e.target.classList.contains('fa-eye-slash')) { + e.target.classList.remove('fa-eye-slash'); + e.target.classList.add('fa-eye'); + e.target.title = 'Show hidden lines'; + e.target.setAttribute('aria-label', e.target.title); + + block.classList.add('hide-boring'); + } + }); + }); + + if (window.playground_copyable) { + Array.from(document.querySelectorAll('pre code')).forEach(function (block) { + var pre_block = block.parentNode; + if (!pre_block.classList.contains('playground')) { + var buttons = pre_block.querySelector(".buttons"); + if (!buttons) { + buttons = document.createElement('div'); + buttons.className = 'buttons'; + pre_block.insertBefore(buttons, pre_block.firstChild); + } + + var clipButton = document.createElement('button'); + clipButton.className = 'fa fa-copy clip-button'; + clipButton.title = 'Copy to clipboard'; + clipButton.setAttribute('aria-label', clipButton.title); + clipButton.innerHTML = ''; + + buttons.insertBefore(clipButton, buttons.firstChild); + } + }); + } + + // Process playground code blocks + Array.from(document.querySelectorAll(".playground")).forEach(function (pre_block) { + // Add play button + var buttons = pre_block.querySelector(".buttons"); + if (!buttons) { + buttons = document.createElement('div'); + buttons.className = 'buttons'; + pre_block.insertBefore(buttons, pre_block.firstChild); + } + + var runCodeButton = document.createElement('button'); + runCodeButton.className = 'fa fa-play play-button'; + runCodeButton.hidden = true; + runCodeButton.title = 'Run this code'; + runCodeButton.setAttribute('aria-label', runCodeButton.title); + + buttons.insertBefore(runCodeButton, buttons.firstChild); + runCodeButton.addEventListener('click', function (e) { + run_rust_code(pre_block); + }); + + if (window.playground_copyable) { + var copyCodeClipboardButton = document.createElement('button'); + copyCodeClipboardButton.className = 'fa fa-copy clip-button'; + copyCodeClipboardButton.innerHTML = ''; + copyCodeClipboardButton.title = 'Copy to clipboard'; + copyCodeClipboardButton.setAttribute('aria-label', copyCodeClipboardButton.title); + + buttons.insertBefore(copyCodeClipboardButton, buttons.firstChild); + } + + let code_block = pre_block.querySelector("code"); + if (window.ace && code_block.classList.contains("editable")) { + var undoChangesButton = document.createElement('button'); + undoChangesButton.className = 'fa fa-history reset-button'; + undoChangesButton.title = 'Undo changes'; + undoChangesButton.setAttribute('aria-label', undoChangesButton.title); + + buttons.insertBefore(undoChangesButton, buttons.firstChild); + + undoChangesButton.addEventListener('click', function () { + let editor = window.ace.edit(code_block); + editor.setValue(editor.originalCode); + editor.clearSelection(); + }); + } + }); +})(); + +(function themes() { + var html = document.querySelector('html'); + var themeToggleButton = document.getElementById('theme-toggle'); + var themePopup = document.getElementById('theme-list'); + var themeColorMetaTag = document.querySelector('meta[name="theme-color"]'); + var stylesheets = { + ayuHighlight: document.querySelector("[href$='ayu-highlight.css']"), + tomorrowNight: document.querySelector("[href$='tomorrow-night.css']"), + highlight: document.querySelector("[href$='highlight.css']"), + }; + + function showThemes() { + themePopup.style.display = 'block'; + themeToggleButton.setAttribute('aria-expanded', true); + themePopup.querySelector("button#" + get_theme()).focus(); + } + + function updateThemeSelected() { + themePopup.querySelectorAll('.theme-selected').forEach(function (el) { + el.classList.remove('theme-selected'); + }); + themePopup.querySelector("button#" + get_theme()).classList.add('theme-selected'); + } + + function hideThemes() { + themePopup.style.display = 'none'; + themeToggleButton.setAttribute('aria-expanded', false); + themeToggleButton.focus(); + } + + function get_theme() { + var theme; + try { theme = localStorage.getItem('mdbook-theme'); } catch (e) { } + if (theme === null || theme === undefined) { + return default_theme; + } else { + return theme; + } + } + + function set_theme(theme, store = true) { + let ace_theme; + + if (theme == 'coal' || theme == 'navy') { + stylesheets.ayuHighlight.disabled = true; + stylesheets.tomorrowNight.disabled = false; + stylesheets.highlight.disabled = true; + + ace_theme = "ace/theme/tomorrow_night"; + } else if (theme == 'ayu') { + stylesheets.ayuHighlight.disabled = false; + stylesheets.tomorrowNight.disabled = true; + stylesheets.highlight.disabled = true; + ace_theme = "ace/theme/tomorrow_night"; + } else { + stylesheets.ayuHighlight.disabled = true; + stylesheets.tomorrowNight.disabled = true; + stylesheets.highlight.disabled = false; + ace_theme = "ace/theme/dawn"; + } + + setTimeout(function () { + themeColorMetaTag.content = getComputedStyle(document.body).backgroundColor; + }, 1); + + if (window.ace && window.editors) { + window.editors.forEach(function (editor) { + editor.setTheme(ace_theme); + }); + } + + var previousTheme = get_theme(); + + if (store) { + try { localStorage.setItem('mdbook-theme', theme); } catch (e) { } + } + + html.classList.remove(previousTheme); + html.classList.add(theme); + updateThemeSelected(); + } + + // Set theme + var theme = get_theme(); + + set_theme(theme, false); + + themeToggleButton.addEventListener('click', function () { + if (themePopup.style.display === 'block') { + hideThemes(); + } else { + showThemes(); + } + }); + + themePopup.addEventListener('click', function (e) { + var theme; + if (e.target.className === "theme") { + theme = e.target.id; + } else if (e.target.parentElement.className === "theme") { + theme = e.target.parentElement.id; + } else { + return; + } + set_theme(theme); + }); + + themePopup.addEventListener('focusout', function(e) { + // e.relatedTarget is null in Safari and Firefox on macOS (see workaround below) + if (!!e.relatedTarget && !themeToggleButton.contains(e.relatedTarget) && !themePopup.contains(e.relatedTarget)) { + hideThemes(); + } + }); + + // Should not be needed, but it works around an issue on macOS & iOS: https://github.com/rust-lang/mdBook/issues/628 + document.addEventListener('click', function(e) { + if (themePopup.style.display === 'block' && !themeToggleButton.contains(e.target) && !themePopup.contains(e.target)) { + hideThemes(); + } + }); + + document.addEventListener('keydown', function (e) { + if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) { return; } + if (!themePopup.contains(e.target)) { return; } + + switch (e.key) { + case 'Escape': + e.preventDefault(); + hideThemes(); + break; + case 'ArrowUp': + e.preventDefault(); + var li = document.activeElement.parentElement; + if (li && li.previousElementSibling) { + li.previousElementSibling.querySelector('button').focus(); + } + break; + case 'ArrowDown': + e.preventDefault(); + var li = document.activeElement.parentElement; + if (li && li.nextElementSibling) { + li.nextElementSibling.querySelector('button').focus(); + } + break; + case 'Home': + e.preventDefault(); + themePopup.querySelector('li:first-child button').focus(); + break; + case 'End': + e.preventDefault(); + themePopup.querySelector('li:last-child button').focus(); + break; + } + }); +})(); + +(function sidebar() { + var html = document.querySelector("html"); + var sidebar = document.getElementById("sidebar"); + var sidebarLinks = document.querySelectorAll('#sidebar a'); + var sidebarToggleButton = document.getElementById("sidebar-toggle"); + var sidebarResizeHandle = document.getElementById("sidebar-resize-handle"); + var firstContact = null; + + function showSidebar() { + html.classList.remove('sidebar-hidden') + html.classList.add('sidebar-visible'); + Array.from(sidebarLinks).forEach(function (link) { + link.setAttribute('tabIndex', 0); + }); + sidebarToggleButton.setAttribute('aria-expanded', true); + sidebar.setAttribute('aria-hidden', false); + try { localStorage.setItem('mdbook-sidebar', 'visible'); } catch (e) { } + } + + + var sidebarAnchorToggles = document.querySelectorAll('#sidebar a.toggle'); + + function toggleSection(ev) { + ev.currentTarget.parentElement.classList.toggle('expanded'); + } + + Array.from(sidebarAnchorToggles).forEach(function (el) { + el.addEventListener('click', toggleSection); + }); + + function hideSidebar() { + html.classList.remove('sidebar-visible') + html.classList.add('sidebar-hidden'); + Array.from(sidebarLinks).forEach(function (link) { + link.setAttribute('tabIndex', -1); + }); + sidebarToggleButton.setAttribute('aria-expanded', false); + sidebar.setAttribute('aria-hidden', true); + try { localStorage.setItem('mdbook-sidebar', 'hidden'); } catch (e) { } + } + + // Toggle sidebar + sidebarToggleButton.addEventListener('click', function sidebarToggle() { + if (html.classList.contains("sidebar-hidden")) { + var current_width = parseInt( + document.documentElement.style.getPropertyValue('--sidebar-width'), 10); + if (current_width < 150) { + document.documentElement.style.setProperty('--sidebar-width', '150px'); + } + showSidebar(); + } else if (html.classList.contains("sidebar-visible")) { + hideSidebar(); + } else { + if (getComputedStyle(sidebar)['transform'] === 'none') { + hideSidebar(); + } else { + showSidebar(); + } + } + }); + + sidebarResizeHandle.addEventListener('mousedown', initResize, false); + + function initResize(e) { + window.addEventListener('mousemove', resize, false); + window.addEventListener('mouseup', stopResize, false); + html.classList.add('sidebar-resizing'); + } + function resize(e) { + var pos = (e.clientX - sidebar.offsetLeft); + if (pos < 20) { + hideSidebar(); + } else { + if (html.classList.contains("sidebar-hidden")) { + showSidebar(); + } + pos = Math.min(pos, window.innerWidth - 100); + document.documentElement.style.setProperty('--sidebar-width', pos + 'px'); + } + } + //on mouseup remove windows functions mousemove & mouseup + function stopResize(e) { + html.classList.remove('sidebar-resizing'); + window.removeEventListener('mousemove', resize, false); + window.removeEventListener('mouseup', stopResize, false); + } + + document.addEventListener('touchstart', function (e) { + firstContact = { + x: e.touches[0].clientX, + time: Date.now() + }; + }, { passive: true }); + + document.addEventListener('touchmove', function (e) { + if (!firstContact) + return; + + var curX = e.touches[0].clientX; + var xDiff = curX - firstContact.x, + tDiff = Date.now() - firstContact.time; + + if (tDiff < 250 && Math.abs(xDiff) >= 150) { + if (xDiff >= 0 && firstContact.x < Math.min(document.body.clientWidth * 0.25, 300)) + showSidebar(); + else if (xDiff < 0 && curX < 300) + hideSidebar(); + + firstContact = null; + } + }, { passive: true }); + + // Scroll sidebar to current active section + var activeSection = document.getElementById("sidebar").querySelector(".active"); + if (activeSection) { + // https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView + activeSection.scrollIntoView({ block: 'center' }); + } +})(); + +(function chapterNavigation() { + document.addEventListener('keydown', function (e) { + if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) { return; } + if (window.search && window.search.hasFocus()) { return; } + + switch (e.key) { + case 'ArrowRight': + e.preventDefault(); + var nextButton = document.querySelector('.nav-chapters.next'); + if (nextButton) { + window.location.href = nextButton.href; + } + break; + case 'ArrowLeft': + e.preventDefault(); + var previousButton = document.querySelector('.nav-chapters.previous'); + if (previousButton) { + window.location.href = previousButton.href; + } + break; + } + }); +})(); + +(function clipboard() { + var clipButtons = document.querySelectorAll('.clip-button'); + + function hideTooltip(elem) { + elem.firstChild.innerText = ""; + elem.className = 'fa fa-copy clip-button'; + } + + function showTooltip(elem, msg) { + elem.firstChild.innerText = msg; + elem.className = 'fa fa-copy tooltipped'; + } + + var clipboardSnippets = new ClipboardJS('.clip-button', { + text: function (trigger) { + hideTooltip(trigger); + let playground = trigger.closest("pre"); + return playground_text(playground, false); + } + }); + + Array.from(clipButtons).forEach(function (clipButton) { + clipButton.addEventListener('mouseout', function (e) { + hideTooltip(e.currentTarget); + }); + }); + + clipboardSnippets.on('success', function (e) { + e.clearSelection(); + showTooltip(e.trigger, "Copied!"); + }); + + clipboardSnippets.on('error', function (e) { + showTooltip(e.trigger, "Clipboard error!"); + }); +})(); + +(function scrollToTop () { + var menuTitle = document.querySelector('.menu-title'); + + menuTitle.addEventListener('click', function () { + document.scrollingElement.scrollTo({ top: 0, behavior: 'smooth' }); + }); +})(); + +(function controllMenu() { + var menu = document.getElementById('menu-bar'); + + (function controllPosition() { + var scrollTop = document.scrollingElement.scrollTop; + var prevScrollTop = scrollTop; + var minMenuY = -menu.clientHeight - 50; + // When the script loads, the page can be at any scroll (e.g. if you reforesh it). + menu.style.top = scrollTop + 'px'; + // Same as parseInt(menu.style.top.slice(0, -2), but faster + var topCache = menu.style.top.slice(0, -2); + menu.classList.remove('sticky'); + var stickyCache = false; // Same as menu.classList.contains('sticky'), but faster + document.addEventListener('scroll', function () { + scrollTop = Math.max(document.scrollingElement.scrollTop, 0); + // `null` means that it doesn't need to be updated + var nextSticky = null; + var nextTop = null; + var scrollDown = scrollTop > prevScrollTop; + var menuPosAbsoluteY = topCache - scrollTop; + if (scrollDown) { + nextSticky = false; + if (menuPosAbsoluteY > 0) { + nextTop = prevScrollTop; + } + } else { + if (menuPosAbsoluteY > 0) { + nextSticky = true; + } else if (menuPosAbsoluteY < minMenuY) { + nextTop = prevScrollTop + minMenuY; + } + } + if (nextSticky === true && stickyCache === false) { + menu.classList.add('sticky'); + stickyCache = true; + } else if (nextSticky === false && stickyCache === true) { + menu.classList.remove('sticky'); + stickyCache = false; + } + if (nextTop !== null) { + menu.style.top = nextTop + 'px'; + topCache = nextTop; + } + prevScrollTop = scrollTop; + }, { passive: true }); + })(); + (function controllBorder() { + menu.classList.remove('bordered'); + document.addEventListener('scroll', function () { + if (menu.offsetTop === 0) { + menu.classList.remove('bordered'); + } else { + menu.classList.add('bordered'); + } + }, { passive: true }); + })(); +})(); diff --git a/clipboard.min.js b/clipboard.min.js new file mode 100644 index 0000000..02c549e --- /dev/null +++ b/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.4 + * https://zenorocha.github.io/clipboard.js + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return function(n){var o={};function r(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}return r.m=n,r.c=o,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=0)}([function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i=function(){function o(t,e){for(var n=0;n .hljs { + color: var(--links); +} + +/* + body-container is necessary because mobile browsers don't seem to like + overflow-x on the body tag when there is a tag. +*/ +#body-container { + /* + This is used when the sidebar pushes the body content off the side of + the screen on small screens. Without it, dragging on mobile Safari + will want to reposition the viewport in a weird way. + */ + overflow-x: clip; +} + +/* Menu Bar */ + +#menu-bar, +#menu-bar-hover-placeholder { + z-index: 101; + margin: auto calc(0px - var(--page-padding)); +} +#menu-bar { + position: relative; + display: flex; + flex-wrap: wrap; + background-color: var(--bg); + border-bottom-color: var(--bg); + border-bottom-width: 1px; + border-bottom-style: solid; +} +#menu-bar.sticky, +.js #menu-bar-hover-placeholder:hover + #menu-bar, +.js #menu-bar:hover, +.js.sidebar-visible #menu-bar { + position: -webkit-sticky; + position: sticky; + top: 0 !important; +} +#menu-bar-hover-placeholder { + position: sticky; + position: -webkit-sticky; + top: 0; + height: var(--menu-bar-height); +} +#menu-bar.bordered { + border-bottom-color: var(--table-border-color); +} +#menu-bar i, #menu-bar .icon-button { + position: relative; + padding: 0 8px; + z-index: 10; + line-height: var(--menu-bar-height); + cursor: pointer; + transition: color 0.5s; +} +@media only screen and (max-width: 420px) { + #menu-bar i, #menu-bar .icon-button { + padding: 0 5px; + } +} + +.icon-button { + border: none; + background: none; + padding: 0; + color: inherit; +} +.icon-button i { + margin: 0; +} + +.right-buttons { + margin: 0 15px; +} +.right-buttons a { + text-decoration: none; +} + +.left-buttons { + display: flex; + margin: 0 5px; +} +.no-js .left-buttons { + display: none; +} + +.menu-title { + display: inline-block; + font-weight: 200; + font-size: 2.4rem; + line-height: var(--menu-bar-height); + text-align: center; + margin: 0; + flex: 1; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.js .menu-title { + cursor: pointer; +} + +.menu-bar, +.menu-bar:visited, +.nav-chapters, +.nav-chapters:visited, +.mobile-nav-chapters, +.mobile-nav-chapters:visited, +.menu-bar .icon-button, +.menu-bar a i { + color: var(--icons); +} + +.menu-bar i:hover, +.menu-bar .icon-button:hover, +.nav-chapters:hover, +.mobile-nav-chapters i:hover { + color: var(--icons-hover); +} + +/* Nav Icons */ + +.nav-chapters { + font-size: 2.5em; + text-align: center; + text-decoration: none; + + position: fixed; + top: 0; + bottom: 0; + margin: 0; + max-width: 150px; + min-width: 90px; + + display: flex; + justify-content: center; + align-content: center; + flex-direction: column; + + transition: color 0.5s, background-color 0.5s; +} + +.nav-chapters:hover { + text-decoration: none; + background-color: var(--theme-hover); + transition: background-color 0.15s, color 0.15s; +} + +.nav-wrapper { + margin-top: 50px; + display: none; +} + +.mobile-nav-chapters { + font-size: 2.5em; + text-align: center; + text-decoration: none; + width: 90px; + border-radius: 5px; + background-color: var(--sidebar-bg); +} + +.previous { + float: left; +} + +.next { + float: right; + right: var(--page-padding); +} + +@media only screen and (max-width: 1080px) { + .nav-wide-wrapper { display: none; } + .nav-wrapper { display: block; } +} + +@media only screen and (max-width: 1380px) { + .sidebar-visible .nav-wide-wrapper { display: none; } + .sidebar-visible .nav-wrapper { display: block; } +} + +/* Inline code */ + +:not(pre) > .hljs { + display: inline; + padding: 0.1em 0.3em; + border-radius: 3px; +} + +:not(pre):not(a) > .hljs { + color: var(--inline-code-color); + overflow-x: initial; +} + +a:hover > .hljs { + text-decoration: underline; +} + +pre { + position: relative; +} +pre > .buttons { + position: absolute; + z-index: 100; + right: 0px; + top: 2px; + margin: 0px; + padding: 2px 0px; + + color: var(--sidebar-fg); + cursor: pointer; + visibility: hidden; + opacity: 0; + transition: visibility 0.1s linear, opacity 0.1s linear; +} +pre:hover > .buttons { + visibility: visible; + opacity: 1 +} +pre > .buttons :hover { + color: var(--sidebar-active); + border-color: var(--icons-hover); + background-color: var(--theme-hover); +} +pre > .buttons i { + margin-left: 8px; +} +pre > .buttons button { + cursor: inherit; + margin: 0px 5px; + padding: 3px 5px; + font-size: 14px; + + border-style: solid; + border-width: 1px; + border-radius: 4px; + border-color: var(--icons); + background-color: var(--theme-popup-bg); + transition: 100ms; + transition-property: color,border-color,background-color; + color: var(--icons); +} +@media (pointer: coarse) { + pre > .buttons button { + /* On mobile, make it easier to tap buttons. */ + padding: 0.3rem 1rem; + } +} +pre > code { + padding: 1rem; +} + +/* FIXME: ACE editors overlap their buttons because ACE does absolute + positioning within the code block which breaks padding. The only solution I + can think of is to move the padding to the outer pre tag (or insert a div + wrapper), but that would require fixing a whole bunch of CSS rules. +*/ +.hljs.ace_editor { + padding: 0rem 0rem; +} + +pre > .result { + margin-top: 10px; +} + +/* Search */ + +#searchresults a { + text-decoration: none; +} + +mark { + border-radius: 2px; + padding: 0 3px 1px 3px; + margin: 0 -3px -1px -3px; + background-color: var(--search-mark-bg); + transition: background-color 300ms linear; + cursor: pointer; +} + +mark.fade-out { + background-color: rgba(0,0,0,0) !important; + cursor: auto; +} + +.searchbar-outer { + margin-left: auto; + margin-right: auto; + max-width: var(--content-max-width); +} + +#searchbar { + width: 100%; + margin: 5px auto 0px auto; + padding: 10px 16px; + transition: box-shadow 300ms ease-in-out; + border: 1px solid var(--searchbar-border-color); + border-radius: 3px; + background-color: var(--searchbar-bg); + color: var(--searchbar-fg); +} +#searchbar:focus, +#searchbar.active { + box-shadow: 0 0 3px var(--searchbar-shadow-color); +} + +.searchresults-header { + font-weight: bold; + font-size: 1em; + padding: 18px 0 0 5px; + color: var(--searchresults-header-fg); +} + +.searchresults-outer { + margin-left: auto; + margin-right: auto; + max-width: var(--content-max-width); + border-bottom: 1px dashed var(--searchresults-border-color); +} + +ul#searchresults { + list-style: none; + padding-left: 20px; +} +ul#searchresults li { + margin: 10px 0px; + padding: 2px; + border-radius: 2px; +} +ul#searchresults li.focus { + background-color: var(--searchresults-li-bg); +} +ul#searchresults span.teaser { + display: block; + clear: both; + margin: 5px 0 0 20px; + font-size: 0.8em; +} +ul#searchresults span.teaser em { + font-weight: bold; + font-style: normal; +} + +/* Sidebar */ + +.sidebar { + position: fixed; + left: 0; + top: 0; + bottom: 0; + width: var(--sidebar-width); + font-size: 0.875em; + box-sizing: border-box; + -webkit-overflow-scrolling: touch; + overscroll-behavior-y: contain; + background-color: var(--sidebar-bg); + color: var(--sidebar-fg); +} +.sidebar-resizing { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} +.js:not(.sidebar-resizing) .sidebar { + transition: transform 0.3s; /* Animation: slide away */ +} +.sidebar code { + line-height: 2em; +} +.sidebar .sidebar-scrollbox { + overflow-y: auto; + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + padding: 10px 10px; +} +.sidebar .sidebar-resize-handle { + position: absolute; + cursor: col-resize; + width: 0; + right: 0; + top: 0; + bottom: 0; +} +.js .sidebar .sidebar-resize-handle { + cursor: col-resize; + width: 5px; +} +.sidebar-hidden .sidebar { + transform: translateX(calc(0px - var(--sidebar-width))); +} +.sidebar::-webkit-scrollbar { + background: var(--sidebar-bg); +} +.sidebar::-webkit-scrollbar-thumb { + background: var(--scrollbar); +} + +.sidebar-visible .page-wrapper { + transform: translateX(var(--sidebar-width)); +} +@media only screen and (min-width: 620px) { + .sidebar-visible .page-wrapper { + transform: none; + margin-left: var(--sidebar-width); + } +} + +.chapter { + list-style: none outside none; + padding-left: 0; + line-height: 2.2em; +} + +.chapter ol { + width: 100%; +} + +.chapter li { + display: flex; + color: var(--sidebar-non-existant); +} +.chapter li a { + display: block; + padding: 0; + text-decoration: none; + color: var(--sidebar-fg); +} + +.chapter li a:hover { + color: var(--sidebar-active); +} + +.chapter li a.active { + color: var(--sidebar-active); +} + +.chapter li > a.toggle { + cursor: pointer; + display: block; + margin-left: auto; + padding: 0 10px; + user-select: none; + opacity: 0.68; +} + +.chapter li > a.toggle div { + transition: transform 0.5s; +} + +/* collapse the section */ +.chapter li:not(.expanded) + li > ol { + display: none; +} + +.chapter li.chapter-item { + line-height: 1.5em; + margin-top: 0.6em; +} + +.chapter li.expanded > a.toggle div { + transform: rotate(90deg); +} + +.spacer { + width: 100%; + height: 3px; + margin: 5px 0px; +} +.chapter .spacer { + background-color: var(--sidebar-spacer); +} + +@media (-moz-touch-enabled: 1), (pointer: coarse) { + .chapter li a { padding: 5px 0; } + .spacer { margin: 10px 0; } +} + +.section { + list-style: none outside none; + padding-left: 20px; + line-height: 1.9em; +} + +/* Theme Menu Popup */ + +.theme-popup { + position: absolute; + left: 10px; + top: var(--menu-bar-height); + z-index: 1000; + border-radius: 4px; + font-size: 0.7em; + color: var(--fg); + background: var(--theme-popup-bg); + border: 1px solid var(--theme-popup-border); + margin: 0; + padding: 0; + list-style: none; + display: none; + /* Don't let the children's background extend past the rounded corners. */ + overflow: hidden; +} +.theme-popup .default { + color: var(--icons); +} +.theme-popup .theme { + width: 100%; + border: 0; + margin: 0; + padding: 2px 20px; + line-height: 25px; + white-space: nowrap; + text-align: left; + cursor: pointer; + color: inherit; + background: inherit; + font-size: inherit; +} +.theme-popup .theme:hover { + background-color: var(--theme-hover); +} + +.theme-selected::before { + display: inline-block; + content: "✓"; + margin-left: -14px; + width: 14px; +} diff --git a/css/general.css b/css/general.css new file mode 100644 index 0000000..344b53e --- /dev/null +++ b/css/general.css @@ -0,0 +1,203 @@ +/* Base styles and content styles */ + +@import 'variables.css'; + +:root { + /* Browser default font-size is 16px, this way 1 rem = 10px */ + font-size: 62.5%; +} + +html { + font-family: "Open Sans", sans-serif; + color: var(--fg); + background-color: var(--bg); + text-size-adjust: none; + -webkit-text-size-adjust: none; +} + +body { + margin: 0; + font-size: 1.6rem; + overflow-x: hidden; +} + +code { + font-family: var(--mono-font) !important; + font-size: var(--code-font-size); +} + +/* make long words/inline code not x overflow */ +main { + overflow-wrap: break-word; +} + +/* make wide tables scroll if they overflow */ +.table-wrapper { + overflow-x: auto; +} + +/* Don't change font size in headers. */ +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + font-size: unset; +} + +.left { float: left; } +.right { float: right; } +.boring { opacity: 0.6; } +.hide-boring .boring { display: none; } +.hidden { display: none !important; } + +h2, h3 { margin-top: 2.5em; } +h4, h5 { margin-top: 2em; } + +.header + .header h3, +.header + .header h4, +.header + .header h5 { + margin-top: 1em; +} + +h1:target::before, +h2:target::before, +h3:target::before, +h4:target::before, +h5:target::before, +h6:target::before { + display: inline-block; + content: "»"; + margin-left: -30px; + width: 30px; +} + +/* This is broken on Safari as of version 14, but is fixed + in Safari Technology Preview 117 which I think will be Safari 14.2. + https://bugs.webkit.org/show_bug.cgi?id=218076 +*/ +:target { + scroll-margin-top: calc(var(--menu-bar-height) + 0.5em); +} + +.page { + outline: 0; + padding: 0 var(--page-padding); + margin-top: calc(0px - var(--menu-bar-height)); /* Compensate for the #menu-bar-hover-placeholder */ +} +.page-wrapper { + box-sizing: border-box; +} +.js:not(.sidebar-resizing) .page-wrapper { + transition: margin-left 0.3s ease, transform 0.3s ease; /* Animation: slide away */ +} + +.content { + overflow-y: auto; + padding: 0 5px 50px 5px; +} +.content main { + margin-left: auto; + margin-right: auto; + max-width: var(--content-max-width); +} +.content p { line-height: 1.45em; } +.content ol { line-height: 1.45em; } +.content ul { line-height: 1.45em; } +.content a { text-decoration: none; } +.content a:hover { text-decoration: underline; } +.content img, .content video { max-width: 100%; } +.content .header:link, +.content .header:visited { + color: var(--fg); +} +.content .header:link, +.content .header:visited:hover { + text-decoration: none; +} + +table { + margin: 0 auto; + border-collapse: collapse; +} +table td { + padding: 3px 20px; + border: 1px var(--table-border-color) solid; +} +table thead { + background: var(--table-header-bg); +} +table thead td { + font-weight: 700; + border: none; +} +table thead th { + padding: 3px 20px; +} +table thead tr { + border: 1px var(--table-header-bg) solid; +} +/* Alternate background colors for rows */ +table tbody tr:nth-child(2n) { + background: var(--table-alternate-bg); +} + + +blockquote { + margin: 20px 0; + padding: 0 20px; + color: var(--fg); + background-color: var(--quote-bg); + border-top: .1em solid var(--quote-border); + border-bottom: .1em solid var(--quote-border); +} + +kbd { + background-color: var(--table-border-color); + border-radius: 4px; + border: solid 1px var(--theme-popup-border); + box-shadow: inset 0 -1px 0 var(--theme-hover); + display: inline-block; + font-size: var(--code-font-size); + font-family: var(--mono-font); + line-height: 10px; + padding: 4px 5px; + vertical-align: middle; +} + +:not(.footnote-definition) + .footnote-definition, +.footnote-definition + :not(.footnote-definition) { + margin-top: 2em; +} +.footnote-definition { + font-size: 0.9em; + margin: 0.5em 0; +} +.footnote-definition p { + display: inline; +} + +.tooltiptext { + position: absolute; + visibility: hidden; + color: #fff; + background-color: #333; + transform: translateX(-50%); /* Center by moving tooltip 50% of its width left */ + left: -8px; /* Half of the width of the icon */ + top: -35px; + font-size: 0.8em; + text-align: center; + border-radius: 6px; + padding: 5px 8px; + margin: 5px; + z-index: 1000; +} +.tooltipped .tooltiptext { + visibility: visible; +} + +.chapter li.part-title { + color: var(--sidebar-fg); + margin: 5px 0px; + font-weight: bold; +} + +.result-no-output { + font-style: italic; +} diff --git a/css/print.css b/css/print.css new file mode 100644 index 0000000..5e690f7 --- /dev/null +++ b/css/print.css @@ -0,0 +1,54 @@ + +#sidebar, +#menu-bar, +.nav-chapters, +.mobile-nav-chapters { + display: none; +} + +#page-wrapper.page-wrapper { + transform: none; + margin-left: 0px; + overflow-y: initial; +} + +#content { + max-width: none; + margin: 0; + padding: 0; +} + +.page { + overflow-y: initial; +} + +code { + background-color: #666666; + border-radius: 5px; + + /* Force background to be printed in Chrome */ + -webkit-print-color-adjust: exact; +} + +pre > .buttons { + z-index: 2; +} + +a, a:visited, a:active, a:hover { + color: #4183c4; + text-decoration: none; +} + +h1, h2, h3, h4, h5, h6 { + page-break-inside: avoid; + page-break-after: avoid; +} + +pre, code { + page-break-inside: avoid; + white-space: pre-wrap; +} + +.fa { + display: none !important; +} diff --git a/css/variables.css b/css/variables.css new file mode 100644 index 0000000..21bf8e5 --- /dev/null +++ b/css/variables.css @@ -0,0 +1,255 @@ + +/* Globals */ + +:root { + --sidebar-width: 300px; + --page-padding: 15px; + --content-max-width: 750px; + --menu-bar-height: 50px; + --mono-font: "Source Code Pro", Consolas, "Ubuntu Mono", Menlo, "DejaVu Sans Mono", monospace, monospace; + --code-font-size: 0.875em /* please adjust the ace font size accordingly in editor.js */ +} + +/* Themes */ + +.ayu { + --bg: hsl(210, 25%, 8%); + --fg: #c5c5c5; + + --sidebar-bg: #14191f; + --sidebar-fg: #c8c9db; + --sidebar-non-existant: #5c6773; + --sidebar-active: #ffb454; + --sidebar-spacer: #2d334f; + + --scrollbar: var(--sidebar-fg); + + --icons: #737480; + --icons-hover: #b7b9cc; + + --links: #0096cf; + + --inline-code-color: #ffb454; + + --theme-popup-bg: #14191f; + --theme-popup-border: #5c6773; + --theme-hover: #191f26; + + --quote-bg: hsl(226, 15%, 17%); + --quote-border: hsl(226, 15%, 22%); + + --table-border-color: hsl(210, 25%, 13%); + --table-header-bg: hsl(210, 25%, 28%); + --table-alternate-bg: hsl(210, 25%, 11%); + + --searchbar-border-color: #848484; + --searchbar-bg: #424242; + --searchbar-fg: #fff; + --searchbar-shadow-color: #d4c89f; + --searchresults-header-fg: #666; + --searchresults-border-color: #888; + --searchresults-li-bg: #252932; + --search-mark-bg: #e3b171; +} + +.coal { + --bg: hsl(200, 7%, 8%); + --fg: #98a3ad; + + --sidebar-bg: #292c2f; + --sidebar-fg: #a1adb8; + --sidebar-non-existant: #505254; + --sidebar-active: #3473ad; + --sidebar-spacer: #393939; + + --scrollbar: var(--sidebar-fg); + + --icons: #43484d; + --icons-hover: #b3c0cc; + + --links: #2b79a2; + + --inline-code-color: #c5c8c6; + + --theme-popup-bg: #141617; + --theme-popup-border: #43484d; + --theme-hover: #1f2124; + + --quote-bg: hsl(234, 21%, 18%); + --quote-border: hsl(234, 21%, 23%); + + --table-border-color: hsl(200, 7%, 13%); + --table-header-bg: hsl(200, 7%, 28%); + --table-alternate-bg: hsl(200, 7%, 11%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #b7b7b7; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #98a3ad; + --searchresults-li-bg: #2b2b2f; + --search-mark-bg: #355c7d; +} + +.light { + --bg: hsl(0, 0%, 100%); + --fg: hsl(0, 0%, 0%); + + --sidebar-bg: #fafafa; + --sidebar-fg: hsl(0, 0%, 0%); + --sidebar-non-existant: #aaaaaa; + --sidebar-active: #1f1fff; + --sidebar-spacer: #f4f4f4; + + --scrollbar: #8F8F8F; + + --icons: #747474; + --icons-hover: #000000; + + --links: #20609f; + + --inline-code-color: #301900; + + --theme-popup-bg: #fafafa; + --theme-popup-border: #cccccc; + --theme-hover: #e6e6e6; + + --quote-bg: hsl(197, 37%, 96%); + --quote-border: hsl(197, 37%, 91%); + + --table-border-color: hsl(0, 0%, 95%); + --table-header-bg: hsl(0, 0%, 80%); + --table-alternate-bg: hsl(0, 0%, 97%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #fafafa; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #888; + --searchresults-li-bg: #e4f2fe; + --search-mark-bg: #a2cff5; +} + +.navy { + --bg: hsl(226, 23%, 11%); + --fg: #bcbdd0; + + --sidebar-bg: #282d3f; + --sidebar-fg: #c8c9db; + --sidebar-non-existant: #505274; + --sidebar-active: #2b79a2; + --sidebar-spacer: #2d334f; + + --scrollbar: var(--sidebar-fg); + + --icons: #737480; + --icons-hover: #b7b9cc; + + --links: #2b79a2; + + --inline-code-color: #c5c8c6; + + --theme-popup-bg: #161923; + --theme-popup-border: #737480; + --theme-hover: #282e40; + + --quote-bg: hsl(226, 15%, 17%); + --quote-border: hsl(226, 15%, 22%); + + --table-border-color: hsl(226, 23%, 16%); + --table-header-bg: hsl(226, 23%, 31%); + --table-alternate-bg: hsl(226, 23%, 14%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #aeaec6; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #5f5f71; + --searchresults-border-color: #5c5c68; + --searchresults-li-bg: #242430; + --search-mark-bg: #a2cff5; +} + +.rust { + --bg: hsl(60, 9%, 87%); + --fg: #262625; + + --sidebar-bg: #3b2e2a; + --sidebar-fg: #c8c9db; + --sidebar-non-existant: #505254; + --sidebar-active: #e69f67; + --sidebar-spacer: #45373a; + + --scrollbar: var(--sidebar-fg); + + --icons: #737480; + --icons-hover: #262625; + + --links: #2b79a2; + + --inline-code-color: #6e6b5e; + + --theme-popup-bg: #e1e1db; + --theme-popup-border: #b38f6b; + --theme-hover: #99908a; + + --quote-bg: hsl(60, 5%, 75%); + --quote-border: hsl(60, 5%, 70%); + + --table-border-color: hsl(60, 9%, 82%); + --table-header-bg: #b3a497; + --table-alternate-bg: hsl(60, 9%, 84%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #fafafa; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #888; + --searchresults-li-bg: #dec2a2; + --search-mark-bg: #e69f67; +} + +@media (prefers-color-scheme: dark) { + .light.no-js { + --bg: hsl(200, 7%, 8%); + --fg: #98a3ad; + + --sidebar-bg: #292c2f; + --sidebar-fg: #a1adb8; + --sidebar-non-existant: #505254; + --sidebar-active: #3473ad; + --sidebar-spacer: #393939; + + --scrollbar: var(--sidebar-fg); + + --icons: #43484d; + --icons-hover: #b3c0cc; + + --links: #2b79a2; + + --inline-code-color: #c5c8c6; + + --theme-popup-bg: #141617; + --theme-popup-border: #43484d; + --theme-hover: #1f2124; + + --quote-bg: hsl(234, 21%, 18%); + --quote-border: hsl(234, 21%, 23%); + + --table-border-color: hsl(200, 7%, 13%); + --table-header-bg: hsl(200, 7%, 28%); + --table-alternate-bg: hsl(200, 7%, 11%); + + --searchbar-border-color: #aaa; + --searchbar-bg: #b7b7b7; + --searchbar-fg: #000; + --searchbar-shadow-color: #aaa; + --searchresults-header-fg: #666; + --searchresults-border-color: #98a3ad; + --searchresults-li-bg: #2b2b2f; + --search-mark-bg: #355c7d; + } +} diff --git a/elasticlunr.min.js b/elasticlunr.min.js new file mode 100644 index 0000000..94b20dd --- /dev/null +++ b/elasticlunr.min.js @@ -0,0 +1,10 @@ +/** + * elasticlunr - http://weixsong.github.io + * Lightweight full-text search engine in Javascript for browser search and offline search. - 0.9.5 + * + * Copyright (C) 2017 Oliver Nightingale + * Copyright (C) 2017 Wei Song + * MIT Licensed + * @license + */ +!function(){function e(e){if(null===e||"object"!=typeof e)return e;var t=e.constructor();for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.9.5",lunr=t,t.utils={},t.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),t.utils.toString=function(e){return void 0===e||null===e?"":e.toString()},t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var e=Array.prototype.slice.call(arguments),t=e.pop(),n=e;if("function"!=typeof t)throw new TypeError("last argument must be a function");n.forEach(function(e){this.hasHandler(e)||(this.events[e]=[]),this.events[e].push(t)},this)},t.EventEmitter.prototype.removeListener=function(e,t){if(this.hasHandler(e)){var n=this.events[e].indexOf(t);-1!==n&&(this.events[e].splice(n,1),0==this.events[e].length&&delete this.events[e])}},t.EventEmitter.prototype.emit=function(e){if(this.hasHandler(e)){var t=Array.prototype.slice.call(arguments,1);this.events[e].forEach(function(e){e.apply(void 0,t)},this)}},t.EventEmitter.prototype.hasHandler=function(e){return e in this.events},t.tokenizer=function(e){if(!arguments.length||null===e||void 0===e)return[];if(Array.isArray(e)){var n=e.filter(function(e){return null===e||void 0===e?!1:!0});n=n.map(function(e){return t.utils.toString(e).toLowerCase()});var i=[];return n.forEach(function(e){var n=e.split(t.tokenizer.seperator);i=i.concat(n)},this),i}return e.toString().trim().toLowerCase().split(t.tokenizer.seperator)},t.tokenizer.defaultSeperator=/[\s\-]+/,t.tokenizer.seperator=t.tokenizer.defaultSeperator,t.tokenizer.setSeperator=function(e){null!==e&&void 0!==e&&"object"==typeof e&&(t.tokenizer.seperator=e)},t.tokenizer.resetSeperator=function(){t.tokenizer.seperator=t.tokenizer.defaultSeperator},t.tokenizer.getSeperator=function(){return t.tokenizer.seperator},t.Pipeline=function(){this._queue=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in t.Pipeline.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[n]=e},t.Pipeline.getRegisteredFunction=function(e){return e in t.Pipeline.registeredFunctions!=!0?null:t.Pipeline.registeredFunctions[e]},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.getRegisteredFunction(e);if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._queue.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i+1,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i,0,n)},t.Pipeline.prototype.remove=function(e){var t=this._queue.indexOf(e);-1!==t&&this._queue.splice(t,1)},t.Pipeline.prototype.run=function(e){for(var t=[],n=e.length,i=this._queue.length,o=0;n>o;o++){for(var r=e[o],s=0;i>s&&(r=this._queue[s](r,o,e),void 0!==r&&null!==r);s++);void 0!==r&&null!==r&&t.push(r)}return t},t.Pipeline.prototype.reset=function(){this._queue=[]},t.Pipeline.prototype.get=function(){return this._queue},t.Pipeline.prototype.toJSON=function(){return this._queue.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.DocumentStore,this.index={},this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var e=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,e)},t.Index.prototype.off=function(e,t){return this.eventEmitter.removeListener(e,t)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;n._fields=e.fields,n._ref=e.ref,n.documentStore=t.DocumentStore.load(e.documentStore),n.pipeline=t.Pipeline.load(e.pipeline),n.index={};for(var i in e.index)n.index[i]=t.InvertedIndex.load(e.index[i]);return n},t.Index.prototype.addField=function(e){return this._fields.push(e),this.index[e]=new t.InvertedIndex,this},t.Index.prototype.setRef=function(e){return this._ref=e,this},t.Index.prototype.saveDocument=function(e){return this.documentStore=new t.DocumentStore(e),this},t.Index.prototype.addDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.addDoc(i,e),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));this.documentStore.addFieldLength(i,n,o.length);var r={};o.forEach(function(e){e in r?r[e]+=1:r[e]=1},this);for(var s in r){var u=r[s];u=Math.sqrt(u),this.index[n].addToken(s,{ref:i,tf:u})}},this),n&&this.eventEmitter.emit("add",e,this)}},t.Index.prototype.removeDocByRef=function(e){if(e&&this.documentStore.isDocStored()!==!1&&this.documentStore.hasDoc(e)){var t=this.documentStore.getDoc(e);this.removeDoc(t,!1)}},t.Index.prototype.removeDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.hasDoc(i)&&(this.documentStore.removeDoc(i),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));o.forEach(function(e){this.index[n].removeToken(e,i)},this)},this),n&&this.eventEmitter.emit("remove",e,this))}},t.Index.prototype.updateDoc=function(e,t){var t=void 0===t?!0:t;this.removeDocByRef(e[this._ref],!1),this.addDoc(e,!1),t&&this.eventEmitter.emit("update",e,this)},t.Index.prototype.idf=function(e,t){var n="@"+t+"/"+e;if(Object.prototype.hasOwnProperty.call(this._idfCache,n))return this._idfCache[n];var i=this.index[t].getDocFreq(e),o=1+Math.log(this.documentStore.length/(i+1));return this._idfCache[n]=o,o},t.Index.prototype.getFields=function(){return this._fields.slice()},t.Index.prototype.search=function(e,n){if(!e)return[];e="string"==typeof e?{any:e}:JSON.parse(JSON.stringify(e));var i=null;null!=n&&(i=JSON.stringify(n));for(var o=new t.Configuration(i,this.getFields()).get(),r={},s=Object.keys(e),u=0;u0&&t.push(e);for(var i in n)"docs"!==i&&"df"!==i&&this.expandToken(e+i,t,n[i]);return t},t.InvertedIndex.prototype.toJSON=function(){return{root:this.root}},t.Configuration=function(e,n){var e=e||"";if(void 0==n||null==n)throw new Error("fields should not be null");this.config={};var i;try{i=JSON.parse(e),this.buildUserConfig(i,n)}catch(o){t.utils.warn("user configuration parse failed, will use default configuration"),this.buildDefaultConfig(n)}},t.Configuration.prototype.buildDefaultConfig=function(e){this.reset(),e.forEach(function(e){this.config[e]={boost:1,bool:"OR",expand:!1}},this)},t.Configuration.prototype.buildUserConfig=function(e,n){var i="OR",o=!1;if(this.reset(),"bool"in e&&(i=e.bool||i),"expand"in e&&(o=e.expand||o),"fields"in e)for(var r in e.fields)if(n.indexOf(r)>-1){var s=e.fields[r],u=o;void 0!=s.expand&&(u=s.expand),this.config[r]={boost:s.boost||0===s.boost?s.boost:1,bool:s.bool||i,expand:u}}else t.utils.warn("field name in user configuration not found in index instance fields");else this.addAllFields2UserConfig(i,o,n)},t.Configuration.prototype.addAllFields2UserConfig=function(e,t,n){n.forEach(function(n){this.config[n]={boost:1,bool:e,expand:t}},this)},t.Configuration.prototype.get=function(){return this.config},t.Configuration.prototype.reset=function(){this.config={}},lunr.SortedSet=function(){this.length=0,this.elements=[]},lunr.SortedSet.load=function(e){var t=new this;return t.elements=e,t.length=e.length,t},lunr.SortedSet.prototype.add=function(){var e,t;for(e=0;e1;){if(r===e)return o;e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o]}return r===e?o:-1},lunr.SortedSet.prototype.locationFor=function(e){for(var t=0,n=this.elements.length,i=n-t,o=t+Math.floor(i/2),r=this.elements[o];i>1;)e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o];return r>e?o:e>r?o+1:void 0},lunr.SortedSet.prototype.intersect=function(e){for(var t=new lunr.SortedSet,n=0,i=0,o=this.length,r=e.length,s=this.elements,u=e.elements;;){if(n>o-1||i>r-1)break;s[n]!==u[i]?s[n]u[i]&&i++:(t.add(s[n]),n++,i++)}return t},lunr.SortedSet.prototype.clone=function(){var e=new lunr.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},lunr.SortedSet.prototype.union=function(e){var t,n,i;this.length>=e.length?(t=this,n=e):(t=e,n=this),i=t.clone();for(var o=0,r=n.toArray();o + + + + diff --git a/fonts/OPEN-SANS-LICENSE.txt b/fonts/OPEN-SANS-LICENSE.txt new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/fonts/OPEN-SANS-LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/fonts/SOURCE-CODE-PRO-LICENSE.txt b/fonts/SOURCE-CODE-PRO-LICENSE.txt new file mode 100644 index 0000000..366206f --- /dev/null +++ b/fonts/SOURCE-CODE-PRO-LICENSE.txt @@ -0,0 +1,93 @@ +Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/fonts/fonts.css b/fonts/fonts.css new file mode 100644 index 0000000..858efa5 --- /dev/null +++ b/fonts/fonts.css @@ -0,0 +1,100 @@ +/* Open Sans is licensed under the Apache License, Version 2.0. See http://www.apache.org/licenses/LICENSE-2.0 */ +/* Source Code Pro is under the Open Font License. See https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL */ + +/* open-sans-300 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 300; + src: local('Open Sans Light'), local('OpenSans-Light'), + url('open-sans-v17-all-charsets-300.woff2') format('woff2'); +} + +/* open-sans-300italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 300; + src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'), + url('open-sans-v17-all-charsets-300italic.woff2') format('woff2'); +} + +/* open-sans-regular - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 400; + src: local('Open Sans Regular'), local('OpenSans-Regular'), + url('open-sans-v17-all-charsets-regular.woff2') format('woff2'); +} + +/* open-sans-italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 400; + src: local('Open Sans Italic'), local('OpenSans-Italic'), + url('open-sans-v17-all-charsets-italic.woff2') format('woff2'); +} + +/* open-sans-600 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 600; + src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'), + url('open-sans-v17-all-charsets-600.woff2') format('woff2'); +} + +/* open-sans-600italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 600; + src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'), + url('open-sans-v17-all-charsets-600italic.woff2') format('woff2'); +} + +/* open-sans-700 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 700; + src: local('Open Sans Bold'), local('OpenSans-Bold'), + url('open-sans-v17-all-charsets-700.woff2') format('woff2'); +} + +/* open-sans-700italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 700; + src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), + url('open-sans-v17-all-charsets-700italic.woff2') format('woff2'); +} + +/* open-sans-800 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: normal; + font-weight: 800; + src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'), + url('open-sans-v17-all-charsets-800.woff2') format('woff2'); +} + +/* open-sans-800italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Open Sans'; + font-style: italic; + font-weight: 800; + src: local('Open Sans ExtraBold Italic'), local('OpenSans-ExtraBoldItalic'), + url('open-sans-v17-all-charsets-800italic.woff2') format('woff2'); +} + +/* source-code-pro-500 - latin_vietnamese_latin-ext_greek_cyrillic-ext_cyrillic */ +@font-face { + font-family: 'Source Code Pro'; + font-style: normal; + font-weight: 500; + src: url('source-code-pro-v11-all-charsets-500.woff2') format('woff2'); +} diff --git a/fonts/open-sans-v17-all-charsets-300.woff2 b/fonts/open-sans-v17-all-charsets-300.woff2 new file mode 100644 index 0000000..9f51be3 Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-300.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-300italic.woff2 b/fonts/open-sans-v17-all-charsets-300italic.woff2 new file mode 100644 index 0000000..2f54544 Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-300italic.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-600.woff2 b/fonts/open-sans-v17-all-charsets-600.woff2 new file mode 100644 index 0000000..f503d55 Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-600.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-600italic.woff2 b/fonts/open-sans-v17-all-charsets-600italic.woff2 new file mode 100644 index 0000000..c99aabe Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-600italic.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-700.woff2 b/fonts/open-sans-v17-all-charsets-700.woff2 new file mode 100644 index 0000000..421a1ab Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-700.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-700italic.woff2 b/fonts/open-sans-v17-all-charsets-700italic.woff2 new file mode 100644 index 0000000..12ce3d2 Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-700italic.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-800.woff2 b/fonts/open-sans-v17-all-charsets-800.woff2 new file mode 100644 index 0000000..c94a223 Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-800.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-800italic.woff2 b/fonts/open-sans-v17-all-charsets-800italic.woff2 new file mode 100644 index 0000000..eed7d3c Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-800italic.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-italic.woff2 b/fonts/open-sans-v17-all-charsets-italic.woff2 new file mode 100644 index 0000000..398b68a Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-italic.woff2 differ diff --git a/fonts/open-sans-v17-all-charsets-regular.woff2 b/fonts/open-sans-v17-all-charsets-regular.woff2 new file mode 100644 index 0000000..8383e94 Binary files /dev/null and b/fonts/open-sans-v17-all-charsets-regular.woff2 differ diff --git a/fonts/source-code-pro-v11-all-charsets-500.woff2 b/fonts/source-code-pro-v11-all-charsets-500.woff2 new file mode 100644 index 0000000..7222456 Binary files /dev/null and b/fonts/source-code-pro-v11-all-charsets-500.woff2 differ diff --git a/highlight.css b/highlight.css new file mode 100644 index 0000000..ba57b82 --- /dev/null +++ b/highlight.css @@ -0,0 +1,82 @@ +/* + * An increased contrast highlighting scheme loosely based on the + * "Base16 Atelier Dune Light" theme by Bram de Haan + * (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/dune) + * Original Base16 color scheme by Chris Kempson + * (https://github.com/chriskempson/base16) + */ + +/* Comment */ +.hljs-comment, +.hljs-quote { + color: #575757; +} + +/* Red */ +.hljs-variable, +.hljs-template-variable, +.hljs-attribute, +.hljs-tag, +.hljs-name, +.hljs-regexp, +.hljs-link, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class { + color: #d70025; +} + +/* Orange */ +.hljs-number, +.hljs-meta, +.hljs-built_in, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params { + color: #b21e00; +} + +/* Green */ +.hljs-string, +.hljs-symbol, +.hljs-bullet { + color: #008200; +} + +/* Blue */ +.hljs-title, +.hljs-section { + color: #0030f2; +} + +/* Purple */ +.hljs-keyword, +.hljs-selector-tag { + color: #9d00ec; +} + +.hljs { + display: block; + overflow-x: auto; + background: #f6f7f6; + color: #000; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-addition { + color: #22863a; + background-color: #f0fff4; +} + +.hljs-deletion { + color: #b31d28; + background-color: #ffeef0; +} diff --git a/highlight.js b/highlight.js new file mode 100644 index 0000000..180385b --- /dev/null +++ b/highlight.js @@ -0,0 +1,6 @@ +/* + Highlight.js 10.1.1 (93fd0d73) + License: BSD-3-Clause + Copyright (c) 2006-2020, Ivan Sagalaev +*/ +var hljs=function(){"use strict";function e(n){Object.freeze(n);var t="function"==typeof n;return Object.getOwnPropertyNames(n).forEach((function(r){!Object.hasOwnProperty.call(n,r)||null===n[r]||"object"!=typeof n[r]&&"function"!=typeof n[r]||t&&("caller"===r||"callee"===r||"arguments"===r)||Object.isFrozen(n[r])||e(n[r])})),n}class n{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data}ignoreMatch(){this.ignore=!0}}function t(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function r(e,...n){var t={};for(const n in e)t[n]=e[n];return n.forEach((function(e){for(const n in e)t[n]=e[n]})),t}function a(e){return e.nodeName.toLowerCase()}var i=Object.freeze({__proto__:null,escapeHTML:t,inherit:r,nodeStream:function(e){var n=[];return function e(t,r){for(var i=t.firstChild;i;i=i.nextSibling)3===i.nodeType?r+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:r,node:i}),r=e(i,r),a(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:r,node:i}));return r}(e,0),n},mergeStreams:function(e,n,r){var i=0,s="",o=[];function l(){return e.length&&n.length?e[0].offset!==n[0].offset?e[0].offset"}function u(e){s+=""}function d(e){("start"===e.event?c:u)(e.node)}for(;e.length||n.length;){var g=l();if(s+=t(r.substring(i,g[0].offset)),i=g[0].offset,g===e){o.reverse().forEach(u);do{d(g.splice(0,1)[0]),g=l()}while(g===e&&g.length&&g[0].offset===i);o.reverse().forEach(c)}else"start"===g[0].event?o.push(g[0].node):o.pop(),d(g.splice(0,1)[0])}return s+t(r.substr(i))}});const s="",o=e=>!!e.kind;class l{constructor(e,n){this.buffer="",this.classPrefix=n.classPrefix,e.walk(this)}addText(e){this.buffer+=t(e)}openNode(e){if(!o(e))return;let n=e.kind;e.sublanguage||(n=`${this.classPrefix}${n}`),this.span(n)}closeNode(e){o(e)&&(this.buffer+=s)}value(){return this.buffer}span(e){this.buffer+=``}}class c{constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const n={kind:e,children:[]};this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,n){return"string"==typeof n?e.addText(n):n.children&&(e.openNode(n),n.children.forEach(n=>this._walk(e,n)),e.closeNode(n)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every(e=>"string"==typeof e)?e.children=[e.children.join("")]:e.children.forEach(e=>{c._collapse(e)}))}}class u extends c{constructor(e){super(),this.options=e}addKeyword(e,n){""!==e&&(this.openNode(n),this.addText(e),this.closeNode())}addText(e){""!==e&&this.add(e)}addSublanguage(e,n){const t=e.root;t.kind=n,t.sublanguage=!0,this.add(t)}toHTML(){return new l(this,this.options).value()}finalize(){return!0}}function d(e){return e?"string"==typeof e?e:e.source:null}const g="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",h={begin:"\\\\[\\s\\S]",relevance:0},f={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[h]},p={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[h]},b={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},m=function(e,n,t={}){var a=r({className:"comment",begin:e,end:n,contains:[]},t);return a.contains.push(b),a.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),a},v=m("//","$"),x=m("/\\*","\\*/"),E=m("#","$");var _=Object.freeze({__proto__:null,IDENT_RE:"[a-zA-Z]\\w*",UNDERSCORE_IDENT_RE:"[a-zA-Z_]\\w*",NUMBER_RE:"\\b\\d+(\\.\\d+)?",C_NUMBER_RE:g,BINARY_NUMBER_RE:"\\b(0b[01]+)",RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const n=/^#![ ]*\//;return e.binary&&(e.begin=function(...e){return e.map(e=>d(e)).join("")}(n,/.*\b/,e.binary,/\b.*/)),r({className:"meta",begin:n,end:/$/,relevance:0,"on:begin":(e,n)=>{0!==e.index&&n.ignoreMatch()}},e)},BACKSLASH_ESCAPE:h,APOS_STRING_MODE:f,QUOTE_STRING_MODE:p,PHRASAL_WORDS_MODE:b,COMMENT:m,C_LINE_COMMENT_MODE:v,C_BLOCK_COMMENT_MODE:x,HASH_COMMENT_MODE:E,NUMBER_MODE:{className:"number",begin:"\\b\\d+(\\.\\d+)?",relevance:0},C_NUMBER_MODE:{className:"number",begin:g,relevance:0},BINARY_NUMBER_MODE:{className:"number",begin:"\\b(0b[01]+)",relevance:0},CSS_NUMBER_MODE:{className:"number",begin:"\\b\\d+(\\.\\d+)?(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[h,{begin:/\[/,end:/\]/,relevance:0,contains:[h]}]}]},TITLE_MODE:{className:"title",begin:"[a-zA-Z]\\w*",relevance:0},UNDERSCORE_TITLE_MODE:{className:"title",begin:"[a-zA-Z_]\\w*",relevance:0},METHOD_GUARD:{begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,n)=>{n.data._beginMatch=e[1]},"on:end":(e,n)=>{n.data._beginMatch!==e[1]&&n.ignoreMatch()}})}}),N="of and for in not or if then".split(" ");function w(e,n){return n?+n:function(e){return N.includes(e.toLowerCase())}(e)?0:1}const R=t,y=r,{nodeStream:k,mergeStreams:O}=i,M=Symbol("nomatch");return function(t){var a=[],i={},s={},o=[],l=!0,c=/(^(<[^>]+>|\t|)+|\n)/gm,g="Could not find the language '{}', did you forget to load/include a language module?";const h={disableAutodetect:!0,name:"Plain text",contains:[]};var f={noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:null,__emitter:u};function p(e){return f.noHighlightRe.test(e)}function b(e,n,t,r){var a={code:n,language:e};S("before:highlight",a);var i=a.result?a.result:m(a.language,a.code,t,r);return i.code=a.code,S("after:highlight",i),i}function m(e,t,a,s){var o=t;function c(e,n){var t=E.case_insensitive?n[0].toLowerCase():n[0];return Object.prototype.hasOwnProperty.call(e.keywords,t)&&e.keywords[t]}function u(){null!=y.subLanguage?function(){if(""!==A){var e=null;if("string"==typeof y.subLanguage){if(!i[y.subLanguage])return void O.addText(A);e=m(y.subLanguage,A,!0,k[y.subLanguage]),k[y.subLanguage]=e.top}else e=v(A,y.subLanguage.length?y.subLanguage:null);y.relevance>0&&(I+=e.relevance),O.addSublanguage(e.emitter,e.language)}}():function(){if(!y.keywords)return void O.addText(A);let e=0;y.keywordPatternRe.lastIndex=0;let n=y.keywordPatternRe.exec(A),t="";for(;n;){t+=A.substring(e,n.index);const r=c(y,n);if(r){const[e,a]=r;O.addText(t),t="",I+=a,O.addKeyword(n[0],e)}else t+=n[0];e=y.keywordPatternRe.lastIndex,n=y.keywordPatternRe.exec(A)}t+=A.substr(e),O.addText(t)}(),A=""}function h(e){return e.className&&O.openNode(e.className),y=Object.create(e,{parent:{value:y}})}function p(e){return 0===y.matcher.regexIndex?(A+=e[0],1):(L=!0,0)}var b={};function x(t,r){var i=r&&r[0];if(A+=t,null==i)return u(),0;if("begin"===b.type&&"end"===r.type&&b.index===r.index&&""===i){if(A+=o.slice(r.index,r.index+1),!l){const n=Error("0 width match regex");throw n.languageName=e,n.badRule=b.rule,n}return 1}if(b=r,"begin"===r.type)return function(e){var t=e[0],r=e.rule;const a=new n(r),i=[r.__beforeBegin,r["on:begin"]];for(const n of i)if(n&&(n(e,a),a.ignore))return p(t);return r&&r.endSameAsBegin&&(r.endRe=RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")),r.skip?A+=t:(r.excludeBegin&&(A+=t),u(),r.returnBegin||r.excludeBegin||(A=t)),h(r),r.returnBegin?0:t.length}(r);if("illegal"===r.type&&!a){const e=Error('Illegal lexeme "'+i+'" for mode "'+(y.className||"")+'"');throw e.mode=y,e}if("end"===r.type){var s=function(e){var t=e[0],r=o.substr(e.index),a=function e(t,r,a){let i=function(e,n){var t=e&&e.exec(n);return t&&0===t.index}(t.endRe,a);if(i){if(t["on:end"]){const e=new n(t);t["on:end"](r,e),e.ignore&&(i=!1)}if(i){for(;t.endsParent&&t.parent;)t=t.parent;return t}}if(t.endsWithParent)return e(t.parent,r,a)}(y,e,r);if(!a)return M;var i=y;i.skip?A+=t:(i.returnEnd||i.excludeEnd||(A+=t),u(),i.excludeEnd&&(A=t));do{y.className&&O.closeNode(),y.skip||y.subLanguage||(I+=y.relevance),y=y.parent}while(y!==a.parent);return a.starts&&(a.endSameAsBegin&&(a.starts.endRe=a.endRe),h(a.starts)),i.returnEnd?0:t.length}(r);if(s!==M)return s}if("illegal"===r.type&&""===i)return 1;if(B>1e5&&B>3*r.index)throw Error("potential infinite loop, way more iterations than matches");return A+=i,i.length}var E=T(e);if(!E)throw console.error(g.replace("{}",e)),Error('Unknown language: "'+e+'"');var _=function(e){function n(n,t){return RegExp(d(n),"m"+(e.case_insensitive?"i":"")+(t?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,n){n.position=this.position++,this.matchIndexes[this.matchAt]=n,this.regexes.push([n,e]),this.matchAt+=function(e){return RegExp(e.toString()+"|").exec("").length-1}(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map(e=>e[1]);this.matcherRe=n(function(e,n="|"){for(var t=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./,r=0,a="",i=0;i0&&(a+=n),a+="(";o.length>0;){var l=t.exec(o);if(null==l){a+=o;break}a+=o.substring(0,l.index),o=o.substring(l.index+l[0].length),"\\"===l[0][0]&&l[1]?a+="\\"+(+l[1]+s):(a+=l[0],"("===l[0]&&r++)}a+=")"}return a}(e),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const n=this.matcherRe.exec(e);if(!n)return null;const t=n.findIndex((e,n)=>n>0&&void 0!==e),r=this.matchIndexes[t];return n.splice(0,t),Object.assign(n,r)}}class a{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const n=new t;return this.rules.slice(e).forEach(([e,t])=>n.addRule(e,t)),n.compile(),this.multiRegexes[e]=n,n}considerAll(){this.regexIndex=0}addRule(e,n){this.rules.push([e,n]),"begin"===n.type&&this.count++}exec(e){const n=this.getMatcher(this.regexIndex);n.lastIndex=this.lastIndex;const t=n.exec(e);return t&&(this.regexIndex+=t.position+1,this.regexIndex===this.count&&(this.regexIndex=0)),t}}function i(e,n){const t=e.input[e.index-1],r=e.input[e.index+e[0].length];"."!==t&&"."!==r||n.ignoreMatch()}if(e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return function t(s,o){const l=s;if(s.compiled)return l;s.compiled=!0,s.__beforeBegin=null,s.keywords=s.keywords||s.beginKeywords;let c=null;if("object"==typeof s.keywords&&(c=s.keywords.$pattern,delete s.keywords.$pattern),s.keywords&&(s.keywords=function(e,n){var t={};return"string"==typeof e?r("keyword",e):Object.keys(e).forEach((function(n){r(n,e[n])})),t;function r(e,r){n&&(r=r.toLowerCase()),r.split(" ").forEach((function(n){var r=n.split("|");t[r[0]]=[e,w(r[0],r[1])]}))}}(s.keywords,e.case_insensitive)),s.lexemes&&c)throw Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");return l.keywordPatternRe=n(s.lexemes||c||/\w+/,!0),o&&(s.beginKeywords&&(s.begin="\\b("+s.beginKeywords.split(" ").join("|")+")(?=\\b|\\s)",s.__beforeBegin=i),s.begin||(s.begin=/\B|\b/),l.beginRe=n(s.begin),s.endSameAsBegin&&(s.end=s.begin),s.end||s.endsWithParent||(s.end=/\B|\b/),s.end&&(l.endRe=n(s.end)),l.terminator_end=d(s.end)||"",s.endsWithParent&&o.terminator_end&&(l.terminator_end+=(s.end?"|":"")+o.terminator_end)),s.illegal&&(l.illegalRe=n(s.illegal)),void 0===s.relevance&&(s.relevance=1),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((function(e){return function(e){return e.variants&&!e.cached_variants&&(e.cached_variants=e.variants.map((function(n){return r(e,{variants:null},n)}))),e.cached_variants?e.cached_variants:function e(n){return!!n&&(n.endsWithParent||e(n.starts))}(e)?r(e,{starts:e.starts?r(e.starts):null}):Object.isFrozen(e)?r(e):e}("self"===e?s:e)}))),s.contains.forEach((function(e){t(e,l)})),s.starts&&t(s.starts,o),l.matcher=function(e){const n=new a;return e.contains.forEach(e=>n.addRule(e.begin,{rule:e,type:"begin"})),e.terminator_end&&n.addRule(e.terminator_end,{type:"end"}),e.illegal&&n.addRule(e.illegal,{type:"illegal"}),n}(l),l}(e)}(E),N="",y=s||_,k={},O=new f.__emitter(f);!function(){for(var e=[],n=y;n!==E;n=n.parent)n.className&&e.unshift(n.className);e.forEach(e=>O.openNode(e))}();var A="",I=0,S=0,B=0,L=!1;try{for(y.matcher.considerAll();;){B++,L?L=!1:(y.matcher.lastIndex=S,y.matcher.considerAll());const e=y.matcher.exec(o);if(!e)break;const n=x(o.substring(S,e.index),e);S=e.index+n}return x(o.substr(S)),O.closeAllNodes(),O.finalize(),N=O.toHTML(),{relevance:I,value:N,language:e,illegal:!1,emitter:O,top:y}}catch(n){if(n.message&&n.message.includes("Illegal"))return{illegal:!0,illegalBy:{msg:n.message,context:o.slice(S-100,S+100),mode:n.mode},sofar:N,relevance:0,value:R(o),emitter:O};if(l)return{illegal:!1,relevance:0,value:R(o),emitter:O,language:e,top:y,errorRaised:n};throw n}}function v(e,n){n=n||f.languages||Object.keys(i);var t=function(e){const n={relevance:0,emitter:new f.__emitter(f),value:R(e),illegal:!1,top:h};return n.emitter.addText(e),n}(e),r=t;return n.filter(T).filter(I).forEach((function(n){var a=m(n,e,!1);a.language=n,a.relevance>r.relevance&&(r=a),a.relevance>t.relevance&&(r=t,t=a)})),r.language&&(t.second_best=r),t}function x(e){return f.tabReplace||f.useBR?e.replace(c,e=>"\n"===e?f.useBR?"
":e:f.tabReplace?e.replace(/\t/g,f.tabReplace):e):e}function E(e){let n=null;const t=function(e){var n=e.className+" ";n+=e.parentNode?e.parentNode.className:"";const t=f.languageDetectRe.exec(n);if(t){var r=T(t[1]);return r||(console.warn(g.replace("{}",t[1])),console.warn("Falling back to no-highlight mode for this block.",e)),r?t[1]:"no-highlight"}return n.split(/\s+/).find(e=>p(e)||T(e))}(e);if(p(t))return;S("before:highlightBlock",{block:e,language:t}),f.useBR?(n=document.createElement("div")).innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n"):n=e;const r=n.textContent,a=t?b(t,r,!0):v(r),i=k(n);if(i.length){const e=document.createElement("div");e.innerHTML=a.value,a.value=O(i,k(e),r)}a.value=x(a.value),S("after:highlightBlock",{block:e,result:a}),e.innerHTML=a.value,e.className=function(e,n,t){var r=n?s[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),e.includes(r)||a.push(r),a.join(" ").trim()}(e.className,t,a.language),e.result={language:a.language,re:a.relevance,relavance:a.relevance},a.second_best&&(e.second_best={language:a.second_best.language,re:a.second_best.relevance,relavance:a.second_best.relevance})}const N=()=>{if(!N.called){N.called=!0;var e=document.querySelectorAll("pre code");a.forEach.call(e,E)}};function T(e){return e=(e||"").toLowerCase(),i[e]||i[s[e]]}function A(e,{languageName:n}){"string"==typeof e&&(e=[e]),e.forEach(e=>{s[e]=n})}function I(e){var n=T(e);return n&&!n.disableAutodetect}function S(e,n){var t=e;o.forEach((function(e){e[t]&&e[t](n)}))}Object.assign(t,{highlight:b,highlightAuto:v,fixMarkup:x,highlightBlock:E,configure:function(e){f=y(f,e)},initHighlighting:N,initHighlightingOnLoad:function(){window.addEventListener("DOMContentLoaded",N,!1)},registerLanguage:function(e,n){var r=null;try{r=n(t)}catch(n){if(console.error("Language definition for '{}' could not be registered.".replace("{}",e)),!l)throw n;console.error(n),r=h}r.name||(r.name=e),i[e]=r,r.rawDefinition=n.bind(null,t),r.aliases&&A(r.aliases,{languageName:e})},listLanguages:function(){return Object.keys(i)},getLanguage:T,registerAliases:A,requireLanguage:function(e){var n=T(e);if(n)return n;throw Error("The '{}' language is required, but not loaded.".replace("{}",e))},autoDetection:I,inherit:y,addPlugin:function(e){o.push(e)}}),t.debugMode=function(){l=!1},t.safeMode=function(){l=!0},t.versionString="10.1.1";for(const n in _)"object"==typeof _[n]&&e(_[n]);return Object.assign(t,_),t}({})}();"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);hljs.registerLanguage("php",function(){"use strict";return function(e){var r={begin:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},t={className:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?[=]?/},{begin:/\?>/}]},a={className:"string",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:'b"',end:'"'},{begin:"b'",end:"'"},e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},n={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]},i={keyword:"__CLASS__ __DIR__ __FILE__ __FUNCTION__ __LINE__ __METHOD__ __NAMESPACE__ __TRAIT__ die echo exit include include_once print require require_once array abstract and as binary bool boolean break callable case catch class clone const continue declare default do double else elseif empty enddeclare endfor endforeach endif endswitch endwhile eval extends final finally float for foreach from global goto if implements instanceof insteadof int integer interface isset iterable list new object or private protected public real return string switch throw trait try unset use var void while xor yield",literal:"false null true",built_in:"Error|0 AppendIterator ArgumentCountError ArithmeticError ArrayIterator ArrayObject AssertionError BadFunctionCallException BadMethodCallException CachingIterator CallbackFilterIterator CompileError Countable DirectoryIterator DivisionByZeroError DomainException EmptyIterator ErrorException Exception FilesystemIterator FilterIterator GlobIterator InfiniteIterator InvalidArgumentException IteratorIterator LengthException LimitIterator LogicException MultipleIterator NoRewindIterator OutOfBoundsException OutOfRangeException OuterIterator OverflowException ParentIterator ParseError RangeException RecursiveArrayIterator RecursiveCachingIterator RecursiveCallbackFilterIterator RecursiveDirectoryIterator RecursiveFilterIterator RecursiveIterator RecursiveIteratorIterator RecursiveRegexIterator RecursiveTreeIterator RegexIterator RuntimeException SeekableIterator SplDoublyLinkedList SplFileInfo SplFileObject SplFixedArray SplHeap SplMaxHeap SplMinHeap SplObjectStorage SplObserver SplObserver SplPriorityQueue SplQueue SplStack SplSubject SplSubject SplTempFileObject TypeError UnderflowException UnexpectedValueException ArrayAccess Closure Generator Iterator IteratorAggregate Serializable Throwable Traversable WeakReference Directory __PHP_Incomplete_Class parent php_user_filter self static stdClass"};return{aliases:["php","php3","php4","php5","php6","php7"],case_insensitive:!0,keywords:i,contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$",{contains:[t]}),e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler"}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;?$/,contains:[e.BACKSLASH_ESCAPE,{className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]}]},t,{className:"keyword",begin:/\$this\b/},r,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",r,e.C_BLOCK_COMMENT_MODE,a,n]}]},{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,illegal:/[:\(\$"]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",end:";",illegal:/[\.']/,contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",end:";",contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"=>"},a,n]}}}());hljs.registerLanguage("nginx",function(){"use strict";return function(e){var n={className:"variable",variants:[{begin:/\$\d+/},{begin:/\$\{/,end:/}/},{begin:"[\\$\\@]"+e.UNDERSCORE_IDENT_RE}]},a={endsWithParent:!0,keywords:{$pattern:"[a-z/_]+",literal:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},relevance:0,illegal:"=>",contains:[e.HASH_COMMENT_MODE,{className:"string",contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/}]},{begin:"([a-z]+):/",end:"\\s",endsWithParent:!0,excludeEnd:!0,contains:[n]},{className:"regexp",contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:"\\s\\^",end:"\\s|{|;",returnEnd:!0},{begin:"~\\*?\\s+",end:"\\s|{|;",returnEnd:!0},{begin:"\\*(\\.[a-z\\-]+)+"},{begin:"([a-z\\-]+\\.)+\\*"}]},{className:"number",begin:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{className:"number",begin:"\\b\\d+[kKmMgGdshdwy]*\\b",relevance:0},n]};return{name:"Nginx config",aliases:["nginxconf"],contains:[e.HASH_COMMENT_MODE,{begin:e.UNDERSCORE_IDENT_RE+"\\s+{",returnBegin:!0,end:"{",contains:[{className:"section",begin:e.UNDERSCORE_IDENT_RE}],relevance:0},{begin:e.UNDERSCORE_IDENT_RE+"\\s",end:";|{",returnBegin:!0,contains:[{className:"attribute",begin:e.UNDERSCORE_IDENT_RE,starts:a}],relevance:0}],illegal:"[^\\s\\}]"}}}());hljs.registerLanguage("csharp",function(){"use strict";return function(e){var n={keyword:"abstract as base bool break byte case catch char checked const continue decimal default delegate do double enum event explicit extern finally fixed float for foreach goto if implicit in int interface internal is lock long object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this try typeof uint ulong unchecked unsafe ushort using virtual void volatile while add alias ascending async await by descending dynamic equals from get global group into join let nameof on orderby partial remove select set value var when where yield",literal:"null false true"},i=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),a={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},s={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},t=e.inherit(s,{illegal:/\n/}),l={className:"subst",begin:"{",end:"}",keywords:n},r=e.inherit(l,{illegal:/\n/}),c={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:"{{"},{begin:"}}"},e.BACKSLASH_ESCAPE,r]},o={className:"string",begin:/\$@"/,end:'"',contains:[{begin:"{{"},{begin:"}}"},{begin:'""'},l]},g=e.inherit(o,{illegal:/\n/,contains:[{begin:"{{"},{begin:"}}"},{begin:'""'},r]});l.contains=[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.C_BLOCK_COMMENT_MODE],r.contains=[g,c,t,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];var d={variants:[o,c,s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},E={begin:"<",end:">",contains:[{beginKeywords:"in out"},i]},_=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",b={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:n,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"\x3c!--|--\x3e"},{begin:""}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum"}},d,a,{beginKeywords:"class interface",end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},i,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",end:/[{;=]/,illegal:/[^\s:]/,contains:[i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"meta-string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+_+"\\s+)+"+e.IDENT_RE+"\\s*(\\<.+\\>)?\\s*\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:n,contains:[{begin:e.IDENT_RE+"\\s*(\\<.+\\>)?\\s*\\(",returnBegin:!0,contains:[e.TITLE_MODE,E],relevance:0},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:n,relevance:0,contains:[d,a,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},b]}}}());hljs.registerLanguage("perl",function(){"use strict";return function(e){var n={$pattern:/[\w.]+/,keyword:"getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qq fileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmget sub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedir ioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when"},t={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:n},s={begin:"->{",end:"}"},r={variants:[{begin:/\$\d/},{begin:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{begin:/[\$%@][^\s\w{]/,relevance:0}]},i=[e.BACKSLASH_ESCAPE,t,r],a=[r,e.HASH_COMMENT_MODE,e.COMMENT("^\\=\\w","\\=cut",{endsWithParent:!0}),s,{className:"string",contains:i,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*\\<",end:"\\>",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:"{\\w+}",contains:[],relevance:0},{begin:"-?\\w+\\s*\\=\\>",contains:[],relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",begin:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",relevance:10},{className:"regexp",begin:"(m|qr)?/",end:"/[a-z]*",contains:[e.BACKSLASH_ESCAPE],relevance:0}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return t.contains=a,s.contains=a,{name:"Perl",aliases:["pl","pm"],keywords:n,contains:a}}}());hljs.registerLanguage("swift",function(){"use strict";return function(e){var i={keyword:"#available #colorLiteral #column #else #elseif #endif #file #fileLiteral #function #if #imageLiteral #line #selector #sourceLocation _ __COLUMN__ __FILE__ __FUNCTION__ __LINE__ Any as as! as? associatedtype associativity break case catch class continue convenience default defer deinit didSet do dynamic dynamicType else enum extension fallthrough false fileprivate final for func get guard if import in indirect infix init inout internal is lazy left let mutating nil none nonmutating open operator optional override postfix precedence prefix private protocol Protocol public repeat required rethrows return right self Self set static struct subscript super switch throw throws true try try! try? Type typealias unowned var weak where while willSet",literal:"true false nil",built_in:"abs advance alignof alignofValue anyGenerator assert assertionFailure bridgeFromObjectiveC bridgeFromObjectiveCUnconditional bridgeToObjectiveC bridgeToObjectiveCUnconditional c compactMap contains count countElements countLeadingZeros debugPrint debugPrintln distance dropFirst dropLast dump encodeBitsAsWords enumerate equal fatalError filter find getBridgedObjectiveCType getVaList indices insertionSort isBridgedToObjectiveC isBridgedVerbatimToObjectiveC isUniquelyReferenced isUniquelyReferencedNonObjC join lazy lexicographicalCompare map max maxElement min minElement numericCast overlaps partition posix precondition preconditionFailure print println quickSort readLine reduce reflect reinterpretCast reverse roundUpToAlignment sizeof sizeofValue sort split startsWith stride strideof strideofValue swap toString transcode underestimateCount unsafeAddressOf unsafeBitCast unsafeDowncast unsafeUnwrap unsafeReflect withExtendedLifetime withObjectAtPlusZero withUnsafePointer withUnsafePointerToObject withUnsafeMutablePointer withUnsafeMutablePointers withUnsafePointer withUnsafePointers withVaList zip"},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),t={className:"subst",begin:/\\\(/,end:"\\)",keywords:i,contains:[]},a={className:"string",contains:[e.BACKSLASH_ESCAPE,t],variants:[{begin:/"""/,end:/"""/},{begin:/"/,end:/"/}]},r={className:"number",begin:"\\b([\\d_]+(\\.[\\deE_]+)?|0x[a-fA-F0-9_]+(\\.[a-fA-F0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\b",relevance:0};return t.contains=[r],{name:"Swift",keywords:i,contains:[a,e.C_LINE_COMMENT_MODE,n,{className:"type",begin:"\\b[A-Z][\\wÀ-ʸ']*[!?]"},{className:"type",begin:"\\b[A-Z][\\wÀ-ʸ']*",relevance:0},r,{className:"function",beginKeywords:"func",end:"{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{begin://},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:i,contains:["self",r,a,e.C_BLOCK_COMMENT_MODE,{begin:":"}],illegal:/["']/}],illegal:/\[|%/},{className:"class",beginKeywords:"struct protocol class extension enum",keywords:i,end:"\\{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/})]},{className:"meta",begin:"(@discardableResult|@warn_unused_result|@exported|@lazy|@noescape|@NSCopying|@NSManaged|@objc|@objcMembers|@convention|@required|@noreturn|@IBAction|@IBDesignable|@IBInspectable|@IBOutlet|@infix|@prefix|@postfix|@autoclosure|@testable|@available|@nonobjc|@NSApplicationMain|@UIApplicationMain|@dynamicMemberLookup|@propertyWrapper)\\b"},{beginKeywords:"import",end:/$/,contains:[e.C_LINE_COMMENT_MODE,n]}]}}}());hljs.registerLanguage("makefile",function(){"use strict";return function(e){var i={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,contains:[{className:"meta",begin:"",relevance:10,contains:[a,i,t,s,{begin:"\\[",end:"\\]",contains:[{className:"meta",begin:"",contains:[a,s,i,t]}]}]},e.COMMENT("\x3c!--","--\x3e",{relevance:10}),{begin:"<\\!\\[CDATA\\[",end:"\\]\\]>",relevance:10},n,{className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag",begin:")",end:">",keywords:{name:"style"},contains:[c],starts:{end:"",returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:")",end:">",keywords:{name:"script"},contains:[c],starts:{end:"<\/script>",returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:"",contains:[{className:"name",begin:/[^\/><\s]+/,relevance:0},c]}]}}}());hljs.registerLanguage("bash",function(){"use strict";return function(e){const s={};Object.assign(s,{className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{begin:/\$\{/,end:/\}/,contains:[{begin:/:-/,contains:[s]}]}]});const t={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},n={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,t]};t.contains.push(n);const a={begin:/\$\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,s]},i=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10}),c={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b-?[a-z\._]+\b/,keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},contains:[i,e.SHEBANG(),c,a,e.HASH_COMMENT_MODE,n,{className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},s]}}}());hljs.registerLanguage("c-like",function(){"use strict";return function(e){function t(e){return"(?:"+e+")?"}var n="(decltype\\(auto\\)|"+t("[a-zA-Z_]\\w*::")+"[a-zA-Z_]\\w*"+t("<.*?>")+")",r={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},a={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},i={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},s={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(a,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},o={className:"title",begin:t("[a-zA-Z_]\\w*::")+e.IDENT_RE,relevance:0},c=t("[a-zA-Z_]\\w*::")+e.IDENT_RE+"\\s*\\(",l={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_t short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary",literal:"true false nullptr NULL"},d=[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,i,a],_={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:l,contains:d.concat([{begin:/\(/,end:/\)/,keywords:l,contains:d.concat(["self"]),relevance:0}]),relevance:0},u={className:"function",begin:"("+n+"[\\*&\\s]+)+"+c,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:l,illegal:/[^\w\s\*&:<>]/,contains:[{begin:"decltype\\(auto\\)",keywords:l,relevance:0},{begin:c,returnBegin:!0,contains:[o],relevance:0},{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,i,r,{begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:["self",e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,i,r]}]},r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s]};return{aliases:["c","cc","h","c++","h++","hpp","hh","hxx","cxx"],keywords:l,disableAutodetect:!0,illegal:"",keywords:l,contains:["self",r]},{begin:e.IDENT_RE+"::",keywords:l},{className:"class",beginKeywords:"class struct",end:/[{;:]/,contains:[{begin://,contains:["self"]},e.TITLE_MODE]}]),exports:{preprocessor:s,strings:a,keywords:l}}}}());hljs.registerLanguage("coffeescript",function(){"use strict";const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);return function(r){var t={keyword:e.concat(["then","unless","until","loop","by","when","and","or","is","isnt","not"]).filter((e=>n=>!e.includes(n))(["var","const","let","function","static"])).join(" "),literal:n.concat(["yes","no","on","off"]).join(" "),built_in:a.concat(["npm","print"]).join(" ")},i="[A-Za-z$_][0-9A-Za-z$_]*",s={className:"subst",begin:/#\{/,end:/}/,keywords:t},o=[r.BINARY_NUMBER_MODE,r.inherit(r.C_NUMBER_MODE,{starts:{end:"(\\s*/)?",relevance:0}}),{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[r.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[r.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[r.BACKSLASH_ESCAPE,s]},{begin:/"/,end:/"/,contains:[r.BACKSLASH_ESCAPE,s]}]},{className:"regexp",variants:[{begin:"///",end:"///",contains:[s,r.HASH_COMMENT_MODE]},{begin:"//[gim]{0,3}(?=\\W)",relevance:0},{begin:/\/(?![ *]).*?(?![\\]).\/[gim]{0,3}(?=\W)/}]},{begin:"@"+i},{subLanguage:"javascript",excludeBegin:!0,excludeEnd:!0,variants:[{begin:"```",end:"```"},{begin:"`",end:"`"}]}];s.contains=o;var c=r.inherit(r.TITLE_MODE,{begin:i}),l={className:"params",begin:"\\([^\\(]",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(o)}]};return{name:"CoffeeScript",aliases:["coffee","cson","iced"],keywords:t,illegal:/\/\*/,contains:o.concat([r.COMMENT("###","###"),r.HASH_COMMENT_MODE,{className:"function",begin:"^\\s*"+i+"\\s*=\\s*(\\(.*\\))?\\s*\\B[-=]>",end:"[-=]>",returnBegin:!0,contains:[c,l]},{begin:/[:\(,=]\s*/,relevance:0,contains:[{className:"function",begin:"(\\(.*\\))?\\s*\\B[-=]>",end:"[-=]>",returnBegin:!0,contains:[l]}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[c]},c]},{begin:i+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}}}());hljs.registerLanguage("ruby",function(){"use strict";return function(e){var n="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",a={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},s={className:"doctag",begin:"@[A-Za-z]+"},i={begin:"#<",end:">"},r=[e.COMMENT("#","$",{contains:[s]}),e.COMMENT("^\\=begin","^\\=end",{contains:[s],relevance:10}),e.COMMENT("^__END__","\\n$")],c={className:"subst",begin:"#\\{",end:"}",keywords:a},t={className:"string",contains:[e.BACKSLASH_ESCAPE,c],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[qQwWx]?\\(",end:"\\)"},{begin:"%[qQwWx]?\\[",end:"\\]"},{begin:"%[qQwWx]?{",end:"}"},{begin:"%[qQwWx]?<",end:">"},{begin:"%[qQwWx]?/",end:"/"},{begin:"%[qQwWx]?%",end:"%"},{begin:"%[qQwWx]?-",end:"-"},{begin:"%[qQwWx]?\\|",end:"\\|"},{begin:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{begin:/<<[-~]?'?(\w+)(?:.|\n)*?\n\s*\1\b/,returnBegin:!0,contains:[{begin:/<<[-~]?'?/},e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,c]})]}]},b={className:"params",begin:"\\(",end:"\\)",endsParent:!0,keywords:a},d=[t,i,{className:"class",beginKeywords:"class module",end:"$|;",illegal:/=/,contains:[e.inherit(e.TITLE_MODE,{begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{begin:"<\\s*",contains:[{begin:"("+e.IDENT_RE+"::)?"+e.IDENT_RE}]}].concat(r)},{className:"function",beginKeywords:"def",end:"$|;",contains:[e.inherit(e.TITLE_MODE,{begin:n}),b].concat(r)},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(\\!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[t,{begin:n}],relevance:0},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{className:"params",begin:/\|/,end:/\|/,keywords:a},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[i,{className:"regexp",contains:[e.BACKSLASH_ESCAPE,c],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r{",end:"}[a-z]*"},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(r),relevance:0}].concat(r);c.contains=d,b.contains=d;var g=[{begin:/^\s*=>/,starts:{end:"$",contains:d}},{className:"meta",begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>)",starts:{end:"$",contains:d}}];return{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:a,illegal:/\/\*/,contains:r.concat(g).concat(d)}}}());hljs.registerLanguage("yaml",function(){"use strict";return function(e){var n="true false yes no null",a="[\\w#;/?:@&=+$,.~*\\'()[\\]]+",s={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:"{{",end:"}}"},{begin:"%{",end:"}"}]}]},i=e.inherit(s,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l={end:",",endsWithParent:!0,excludeEnd:!0,contains:[],keywords:n,relevance:0},t={begin:"{",end:"}",contains:[l],illegal:"\\n",relevance:0},g={begin:"\\[",end:"\\]",contains:[l],illegal:"\\n",relevance:0},b=[{className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---s*$",relevance:10},{className:"string",begin:"[\\|>]([0-9]?[+-])?[ ]*\\n( *)[\\S ]+\\n(\\2[\\S ]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type",begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"\\-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},{className:"number",begin:e.C_NUMBER_RE+"\\b"},t,g,s],c=[...b];return c.pop(),c.push(i),l.contains=c,{name:"YAML",case_insensitive:!0,aliases:["yml","YAML"],contains:b}}}());hljs.registerLanguage("d",function(){"use strict";return function(e){var a={$pattern:e.UNDERSCORE_IDENT_RE,keyword:"abstract alias align asm assert auto body break byte case cast catch class const continue debug default delete deprecated do else enum export extern final finally for foreach foreach_reverse|10 goto if immutable import in inout int interface invariant is lazy macro mixin module new nothrow out override package pragma private protected public pure ref return scope shared static struct super switch synchronized template this throw try typedef typeid typeof union unittest version void volatile while with __FILE__ __LINE__ __gshared|10 __thread __traits __DATE__ __EOF__ __TIME__ __TIMESTAMP__ __VENDOR__ __VERSION__",built_in:"bool cdouble cent cfloat char creal dchar delegate double dstring float function idouble ifloat ireal long real short string ubyte ucent uint ulong ushort wchar wstring",literal:"false null true"},d="((0|[1-9][\\d_]*)|0[bB][01_]+|0[xX]([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))",n="\\\\(['\"\\?\\\\abfnrtv]|u[\\dA-Fa-f]{4}|[0-7]{1,3}|x[\\dA-Fa-f]{2}|U[\\dA-Fa-f]{8})|&[a-zA-Z\\d]{2,};",t={className:"number",begin:"\\b"+d+"(L|u|U|Lu|LU|uL|UL)?",relevance:0},_={className:"number",begin:"\\b(((0[xX](([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)\\.([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)|\\.?([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))[pP][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))|((0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(\\.\\d*|([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)))|\\d+\\.(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)|\\.(0|[1-9][\\d_]*)([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))?))([fF]|L|i|[fF]i|Li)?|"+d+"(i|[fF]i|Li))",relevance:0},r={className:"string",begin:"'("+n+"|.)",end:"'",illegal:"."},i={className:"string",begin:'"',contains:[{begin:n,relevance:0}],end:'"[cwd]?'},s=e.COMMENT("\\/\\+","\\+\\/",{contains:["self"],relevance:10});return{name:"D",keywords:a,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s,{className:"string",begin:'x"[\\da-fA-F\\s\\n\\r]*"[cwd]?',relevance:10},i,{className:"string",begin:'[rq]"',end:'"[cwd]?',relevance:5},{className:"string",begin:"`",end:"`[cwd]?"},{className:"string",begin:'q"\\{',end:'\\}"'},_,t,r,{className:"meta",begin:"^#!",end:"$",relevance:5},{className:"meta",begin:"#(line)",end:"$",relevance:5},{className:"keyword",begin:"@[a-zA-Z_][a-zA-Z_\\d]*"}]}}}());hljs.registerLanguage("properties",function(){"use strict";return function(e){var n="[ \\t\\f]*",t="("+n+"[:=]"+n+"|[ \\t\\f]+)",a="([^\\\\:= \\t\\f\\n]|\\\\.)+",s={end:t,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\n"}]}};return{name:".properties",case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{begin:"([^\\\\\\W:= \\t\\f\\n]|\\\\.)+"+t,returnBegin:!0,contains:[{className:"attr",begin:"([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",endsParent:!0,relevance:0}],starts:s},{begin:a+t,returnBegin:!0,relevance:0,contains:[{className:"meta",begin:a,endsParent:!0,relevance:0}],starts:s},{className:"attr",relevance:0,begin:a+n+"$"}]}}}());hljs.registerLanguage("http",function(){"use strict";return function(e){var n="HTTP/[0-9\\.]+";return{name:"HTTP",aliases:["https"],illegal:"\\S",contains:[{begin:"^"+n,end:"$",contains:[{className:"number",begin:"\\b\\d{3}\\b"}]},{begin:"^[A-Z]+ (.*?) "+n+"$",returnBegin:!0,end:"$",contains:[{className:"string",begin:" ",end:" ",excludeBegin:!0,excludeEnd:!0},{begin:n},{className:"keyword",begin:"[A-Z]+"}]},{className:"attribute",begin:"^\\w",end:": ",excludeEnd:!0,illegal:"\\n|\\s|=",starts:{end:"$",relevance:0}},{begin:"\\n\\n",starts:{subLanguage:[],endsWithParent:!0}}]}}}());hljs.registerLanguage("haskell",function(){"use strict";return function(e){var n={variants:[e.COMMENT("--","$"),e.COMMENT("{-","-}",{contains:["self"]})]},i={className:"meta",begin:"{-#",end:"#-}"},a={className:"meta",begin:"^#",end:"$"},s={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},l={begin:"\\(",end:"\\)",illegal:'"',contains:[i,a,{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TITLE_MODE,{begin:"[_a-z][\\w']*"}),n]};return{name:"Haskell",aliases:["hs"],keywords:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",contains:[{beginKeywords:"module",end:"where",keywords:"module where",contains:[l,n],illegal:"\\W\\.|;"},{begin:"\\bimport\\b",end:"$",keywords:"import qualified as hiding",contains:[l,n],illegal:"\\W\\.|;"},{className:"class",begin:"^(\\s*)?(class|instance)\\b",end:"where",keywords:"class family instance where",contains:[s,l,n]},{className:"class",begin:"\\b(data|(new)?type)\\b",end:"$",keywords:"data family type newtype deriving",contains:[i,s,l,{begin:"{",end:"}",contains:l.contains},n]},{beginKeywords:"default",end:"$",contains:[s,l,n]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,n]},{begin:"\\bforeign\\b",end:"$",keywords:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",contains:[s,e.QUOTE_STRING_MODE,n]},{className:"meta",begin:"#!\\/usr\\/bin\\/env runhaskell",end:"$"},i,a,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,s,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),n,{begin:"->|<-"}]}}}());hljs.registerLanguage("handlebars",function(){"use strict";function e(...e){return e.map(e=>(function(e){return e?"string"==typeof e?e:e.source:null})(e)).join("")}return function(n){const a={"builtin-name":"action bindattr collection component concat debugger each each-in get hash if in input link-to loc log lookup mut outlet partial query-params render template textarea unbound unless view with yield"},t=/\[.*?\]/,s=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,i=e("(",/'.*?'/,"|",/".*?"/,"|",t,"|",s,"|",/\.|\//,")+"),r=e("(",t,"|",s,")(?==)"),l={begin:i,lexemes:/[\w.\/]+/},c=n.inherit(l,{keywords:{literal:"true false undefined null"}}),o={begin:/\(/,end:/\)/},m={className:"attr",begin:r,relevance:0,starts:{begin:/=/,end:/=/,starts:{contains:[n.NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,c,o]}}},d={contains:[n.NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,{begin:/as\s+\|/,keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},m,c,o],returnEnd:!0},g=n.inherit(l,{className:"name",keywords:a,starts:n.inherit(d,{end:/\)/})});o.contains=[g];const u=n.inherit(l,{keywords:a,className:"name",starts:n.inherit(d,{end:/}}/})}),b=n.inherit(l,{keywords:a,className:"name"}),h=n.inherit(l,{className:"name",keywords:a,starts:n.inherit(d,{end:/}}/})});return{name:"Handlebars",aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0,subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/,skip:!0},n.COMMENT(/\{\{!--/,/--\}\}/),n.COMMENT(/\{\{!/,/\}\}/),{className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[u],starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[b]},{className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[u]},{className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[b]},{className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[h]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[h]}]}}}());hljs.registerLanguage("rust",function(){"use strict";return function(e){var n="([ui](8|16|32|64|128|size)|f(32|64))?",t="drop i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize f32 f64 str char bool Box Option Result String Vec Copy Send Sized Sync Drop Fn FnMut FnOnce ToOwned Clone Debug PartialEq PartialOrd Eq Ord AsRef AsMut Into From Default Iterator Extend IntoIterator DoubleEndedIterator ExactSizeIterator SliceConcatExt ToString assert! assert_eq! bitflags! bytes! cfg! col! concat! concat_idents! debug_assert! debug_assert_eq! env! panic! file! format! format_args! include_bin! include_str! line! local_data_key! module_path! option_env! print! println! select! stringify! try! unimplemented! unreachable! vec! write! writeln! macro_rules! assert_ne! debug_assert_ne!";return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",keyword:"abstract as async await become box break const continue crate do dyn else enum extern false final fn for if impl in let loop macro match mod move mut override priv pub ref return self Self static struct super trait true try type typeof unsafe unsized use virtual where while yield",literal:"true false Some None Ok Err",built_in:t},illegal:""}]}}}());hljs.registerLanguage("cpp",function(){"use strict";return function(e){var t=e.getLanguage("c-like").rawDefinition();return t.disableAutodetect=!1,t.name="C++",t.aliases=["cc","c++","h++","hpp","hh","hxx","cxx"],t}}());hljs.registerLanguage("ini",function(){"use strict";function e(e){return e?"string"==typeof e?e:e.source:null}function n(...n){return n.map(n=>e(n)).join("")}return function(a){var s={className:"number",relevance:0,variants:[{begin:/([\+\-]+)?[\d]+_[\d_]+/},{begin:a.NUMBER_RE}]},i=a.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];var t={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)}/}]},r={className:"literal",begin:/\bon|off|true|false|yes|no\b/},l={className:"string",contains:[a.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},c={begin:/\[/,end:/\]/,contains:[i,r,t,l,s,"self"],relevance:0},g="("+[/[A-Za-z0-9_-]+/,/"(\\"|[^"])*"/,/'[^']*'/].map(n=>e(n)).join("|")+")";return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:n(g,"(\\s*\\.\\s*",g,")*",n("(?=",/\s*=\s*[^#\s]/,")")),className:"attr",starts:{end:/$/,contains:[i,c,r,t,l,s]}}]}}}());hljs.registerLanguage("objectivec",function(){"use strict";return function(e){var n=/[a-zA-Z@][a-zA-Z0-9_]*/,_={$pattern:n,keyword:"@interface @class @protocol @implementation"};return{name:"Objective-C",aliases:["mm","objc","obj-c"],keywords:{$pattern:n,keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},illegal:"/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+_.keyword.split(" ").join("|")+")\\b",end:"({|$)",excludeEnd:!0,keywords:_,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}}());hljs.registerLanguage("apache",function(){"use strict";return function(e){var n={className:"number",begin:"\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?"};return{name:"Apache config",aliases:["apacheconf"],case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"section",begin:"",contains:[n,{className:"number",begin:":\\d{1,5}"},e.inherit(e.QUOTE_STRING_MODE,{relevance:0})]},{className:"attribute",begin:/\w+/,relevance:0,keywords:{nomarkup:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{end:/$/,relevance:0,keywords:{literal:"on off all deny allow"},contains:[{className:"meta",begin:"\\s\\[",end:"\\]$"},{className:"variable",begin:"[\\$%]\\{",end:"\\}",contains:["self",{className:"number",begin:"[\\$%]\\d+"}]},n,{className:"number",begin:"\\d+"},e.QUOTE_STRING_MODE]}}],illegal:/\S/}}}());hljs.registerLanguage("java",function(){"use strict";function e(e){return e?"string"==typeof e?e:e.source:null}function n(e){return a("(",e,")?")}function a(...n){return n.map(n=>e(n)).join("")}function s(...n){return"("+n.map(n=>e(n)).join("|")+")"}return function(e){var t="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",i={className:"meta",begin:"@[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},r=e=>a("[",e,"]+([",e,"_]*[",e,"]+)?"),c={className:"number",variants:[{begin:`\\b(0[bB]${r("01")})[lL]?`},{begin:`\\b(0${r("0-7")})[dDfFlL]?`},{begin:a(/\b0[xX]/,s(a(r("a-fA-F0-9"),/\./,r("a-fA-F0-9")),a(r("a-fA-F0-9"),/\.?/),a(/\./,r("a-fA-F0-9"))),/([pP][+-]?(\d+))?/,/[fFdDlL]?/)},{begin:a(/\b/,s(a(/\d*\./,r("\\d")),r("\\d")),/[eE][+-]?[\d]+[dDfF]?/)},{begin:a(/\b/,r(/\d/),n(/\.?/),n(r(/\d/)),/[dDfFlL]?/)}],relevance:0};return{name:"Java",aliases:["jsp"],keywords:t,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"class interface",end:/[{;=]/,excludeEnd:!0,keywords:"class interface",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"new throw return else",relevance:0},{className:"function",begin:"([À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(<[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*(\\s*,\\s*[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*)*>)?\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:t,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:t,relevance:0,contains:[i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},c,i]}}}());hljs.registerLanguage("x86asm",function(){"use strict";return function(s){return{name:"Intel x86 Assembly",case_insensitive:!0,keywords:{$pattern:"[.%]?"+s.IDENT_RE,keyword:"lock rep repe repz repne repnz xaquire xrelease bnd nobnd aaa aad aam aas adc add and arpl bb0_reset bb1_reset bound bsf bsr bswap bt btc btr bts call cbw cdq cdqe clc cld cli clts cmc cmp cmpsb cmpsd cmpsq cmpsw cmpxchg cmpxchg486 cmpxchg8b cmpxchg16b cpuid cpu_read cpu_write cqo cwd cwde daa das dec div dmint emms enter equ f2xm1 fabs fadd faddp fbld fbstp fchs fclex fcmovb fcmovbe fcmove fcmovnb fcmovnbe fcmovne fcmovnu fcmovu fcom fcomi fcomip fcomp fcompp fcos fdecstp fdisi fdiv fdivp fdivr fdivrp femms feni ffree ffreep fiadd ficom ficomp fidiv fidivr fild fimul fincstp finit fist fistp fisttp fisub fisubr fld fld1 fldcw fldenv fldl2e fldl2t fldlg2 fldln2 fldpi fldz fmul fmulp fnclex fndisi fneni fninit fnop fnsave fnstcw fnstenv fnstsw fpatan fprem fprem1 fptan frndint frstor fsave fscale fsetpm fsin fsincos fsqrt fst fstcw fstenv fstp fstsw fsub fsubp fsubr fsubrp ftst fucom fucomi fucomip fucomp fucompp fxam fxch fxtract fyl2x fyl2xp1 hlt ibts icebp idiv imul in inc incbin insb insd insw int int01 int1 int03 int3 into invd invpcid invlpg invlpga iret iretd iretq iretw jcxz jecxz jrcxz jmp jmpe lahf lar lds lea leave les lfence lfs lgdt lgs lidt lldt lmsw loadall loadall286 lodsb lodsd lodsq lodsw loop loope loopne loopnz loopz lsl lss ltr mfence monitor mov movd movq movsb movsd movsq movsw movsx movsxd movzx mul mwait neg nop not or out outsb outsd outsw packssdw packsswb packuswb paddb paddd paddsb paddsiw paddsw paddusb paddusw paddw pand pandn pause paveb pavgusb pcmpeqb pcmpeqd pcmpeqw pcmpgtb pcmpgtd pcmpgtw pdistib pf2id pfacc pfadd pfcmpeq pfcmpge pfcmpgt pfmax pfmin pfmul pfrcp pfrcpit1 pfrcpit2 pfrsqit1 pfrsqrt pfsub pfsubr pi2fd pmachriw pmaddwd pmagw pmulhriw pmulhrwa pmulhrwc pmulhw pmullw pmvgezb pmvlzb pmvnzb pmvzb pop popa popad popaw popf popfd popfq popfw por prefetch prefetchw pslld psllq psllw psrad psraw psrld psrlq psrlw psubb psubd psubsb psubsiw psubsw psubusb psubusw psubw punpckhbw punpckhdq punpckhwd punpcklbw punpckldq punpcklwd push pusha pushad pushaw pushf pushfd pushfq pushfw pxor rcl rcr rdshr rdmsr rdpmc rdtsc rdtscp ret retf retn rol ror rdm rsdc rsldt rsm rsts sahf sal salc sar sbb scasb scasd scasq scasw sfence sgdt shl shld shr shrd sidt sldt skinit smi smint smintold smsw stc std sti stosb stosd stosq stosw str sub svdc svldt svts swapgs syscall sysenter sysexit sysret test ud0 ud1 ud2b ud2 ud2a umov verr verw fwait wbinvd wrshr wrmsr xadd xbts xchg xlatb xlat xor cmove cmovz cmovne cmovnz cmova cmovnbe cmovae cmovnb cmovb cmovnae cmovbe cmovna cmovg cmovnle cmovge cmovnl cmovl cmovnge cmovle cmovng cmovc cmovnc cmovo cmovno cmovs cmovns cmovp cmovpe cmovnp cmovpo je jz jne jnz ja jnbe jae jnb jb jnae jbe jna jg jnle jge jnl jl jnge jle jng jc jnc jo jno js jns jpo jnp jpe jp sete setz setne setnz seta setnbe setae setnb setnc setb setnae setcset setbe setna setg setnle setge setnl setl setnge setle setng sets setns seto setno setpe setp setpo setnp addps addss andnps andps cmpeqps cmpeqss cmpleps cmpless cmpltps cmpltss cmpneqps cmpneqss cmpnleps cmpnless cmpnltps cmpnltss cmpordps cmpordss cmpunordps cmpunordss cmpps cmpss comiss cvtpi2ps cvtps2pi cvtsi2ss cvtss2si cvttps2pi cvttss2si divps divss ldmxcsr maxps maxss minps minss movaps movhps movlhps movlps movhlps movmskps movntps movss movups mulps mulss orps rcpps rcpss rsqrtps rsqrtss shufps sqrtps sqrtss stmxcsr subps subss ucomiss unpckhps unpcklps xorps fxrstor fxrstor64 fxsave fxsave64 xgetbv xsetbv xsave xsave64 xsaveopt xsaveopt64 xrstor xrstor64 prefetchnta prefetcht0 prefetcht1 prefetcht2 maskmovq movntq pavgb pavgw pextrw pinsrw pmaxsw pmaxub pminsw pminub pmovmskb pmulhuw psadbw pshufw pf2iw pfnacc pfpnacc pi2fw pswapd maskmovdqu clflush movntdq movnti movntpd movdqa movdqu movdq2q movq2dq paddq pmuludq pshufd pshufhw pshuflw pslldq psrldq psubq punpckhqdq punpcklqdq addpd addsd andnpd andpd cmpeqpd cmpeqsd cmplepd cmplesd cmpltpd cmpltsd cmpneqpd cmpneqsd cmpnlepd cmpnlesd cmpnltpd cmpnltsd cmpordpd cmpordsd cmpunordpd cmpunordsd cmppd comisd cvtdq2pd cvtdq2ps cvtpd2dq cvtpd2pi cvtpd2ps cvtpi2pd cvtps2dq cvtps2pd cvtsd2si cvtsd2ss cvtsi2sd cvtss2sd cvttpd2pi cvttpd2dq cvttps2dq cvttsd2si divpd divsd maxpd maxsd minpd minsd movapd movhpd movlpd movmskpd movupd mulpd mulsd orpd shufpd sqrtpd sqrtsd subpd subsd ucomisd unpckhpd unpcklpd xorpd addsubpd addsubps haddpd haddps hsubpd hsubps lddqu movddup movshdup movsldup clgi stgi vmcall vmclear vmfunc vmlaunch vmload vmmcall vmptrld vmptrst vmread vmresume vmrun vmsave vmwrite vmxoff vmxon invept invvpid pabsb pabsw pabsd palignr phaddw phaddd phaddsw phsubw phsubd phsubsw pmaddubsw pmulhrsw pshufb psignb psignw psignd extrq insertq movntsd movntss lzcnt blendpd blendps blendvpd blendvps dppd dpps extractps insertps movntdqa mpsadbw packusdw pblendvb pblendw pcmpeqq pextrb pextrd pextrq phminposuw pinsrb pinsrd pinsrq pmaxsb pmaxsd pmaxud pmaxuw pminsb pminsd pminud pminuw pmovsxbw pmovsxbd pmovsxbq pmovsxwd pmovsxwq pmovsxdq pmovzxbw pmovzxbd pmovzxbq pmovzxwd pmovzxwq pmovzxdq pmuldq pmulld ptest roundpd roundps roundsd roundss crc32 pcmpestri pcmpestrm pcmpistri pcmpistrm pcmpgtq popcnt getsec pfrcpv pfrsqrtv movbe aesenc aesenclast aesdec aesdeclast aesimc aeskeygenassist vaesenc vaesenclast vaesdec vaesdeclast vaesimc vaeskeygenassist vaddpd vaddps vaddsd vaddss vaddsubpd vaddsubps vandpd vandps vandnpd vandnps vblendpd vblendps vblendvpd vblendvps vbroadcastss vbroadcastsd vbroadcastf128 vcmpeq_ospd vcmpeqpd vcmplt_ospd vcmpltpd vcmple_ospd vcmplepd vcmpunord_qpd vcmpunordpd vcmpneq_uqpd vcmpneqpd vcmpnlt_uspd vcmpnltpd vcmpnle_uspd vcmpnlepd vcmpord_qpd vcmpordpd vcmpeq_uqpd vcmpnge_uspd vcmpngepd vcmpngt_uspd vcmpngtpd vcmpfalse_oqpd vcmpfalsepd vcmpneq_oqpd vcmpge_ospd vcmpgepd vcmpgt_ospd vcmpgtpd vcmptrue_uqpd vcmptruepd vcmplt_oqpd vcmple_oqpd vcmpunord_spd vcmpneq_uspd vcmpnlt_uqpd vcmpnle_uqpd vcmpord_spd vcmpeq_uspd vcmpnge_uqpd vcmpngt_uqpd vcmpfalse_ospd vcmpneq_ospd vcmpge_oqpd vcmpgt_oqpd vcmptrue_uspd vcmppd vcmpeq_osps vcmpeqps vcmplt_osps vcmpltps vcmple_osps vcmpleps vcmpunord_qps vcmpunordps vcmpneq_uqps vcmpneqps vcmpnlt_usps vcmpnltps vcmpnle_usps vcmpnleps vcmpord_qps vcmpordps vcmpeq_uqps vcmpnge_usps vcmpngeps vcmpngt_usps vcmpngtps vcmpfalse_oqps vcmpfalseps vcmpneq_oqps vcmpge_osps vcmpgeps vcmpgt_osps vcmpgtps vcmptrue_uqps vcmptrueps vcmplt_oqps vcmple_oqps vcmpunord_sps vcmpneq_usps vcmpnlt_uqps vcmpnle_uqps vcmpord_sps vcmpeq_usps vcmpnge_uqps vcmpngt_uqps vcmpfalse_osps vcmpneq_osps vcmpge_oqps vcmpgt_oqps vcmptrue_usps vcmpps vcmpeq_ossd vcmpeqsd vcmplt_ossd vcmpltsd vcmple_ossd vcmplesd vcmpunord_qsd vcmpunordsd vcmpneq_uqsd vcmpneqsd vcmpnlt_ussd vcmpnltsd vcmpnle_ussd vcmpnlesd vcmpord_qsd vcmpordsd vcmpeq_uqsd vcmpnge_ussd vcmpngesd vcmpngt_ussd vcmpngtsd vcmpfalse_oqsd vcmpfalsesd vcmpneq_oqsd vcmpge_ossd vcmpgesd vcmpgt_ossd vcmpgtsd vcmptrue_uqsd vcmptruesd vcmplt_oqsd vcmple_oqsd vcmpunord_ssd vcmpneq_ussd vcmpnlt_uqsd vcmpnle_uqsd vcmpord_ssd vcmpeq_ussd vcmpnge_uqsd vcmpngt_uqsd vcmpfalse_ossd vcmpneq_ossd vcmpge_oqsd vcmpgt_oqsd vcmptrue_ussd vcmpsd vcmpeq_osss vcmpeqss vcmplt_osss vcmpltss vcmple_osss vcmpless vcmpunord_qss vcmpunordss vcmpneq_uqss vcmpneqss vcmpnlt_usss vcmpnltss vcmpnle_usss vcmpnless vcmpord_qss vcmpordss vcmpeq_uqss vcmpnge_usss vcmpngess vcmpngt_usss vcmpngtss vcmpfalse_oqss vcmpfalsess vcmpneq_oqss vcmpge_osss vcmpgess vcmpgt_osss vcmpgtss vcmptrue_uqss vcmptruess vcmplt_oqss vcmple_oqss vcmpunord_sss vcmpneq_usss vcmpnlt_uqss vcmpnle_uqss vcmpord_sss vcmpeq_usss vcmpnge_uqss vcmpngt_uqss vcmpfalse_osss vcmpneq_osss vcmpge_oqss vcmpgt_oqss vcmptrue_usss vcmpss vcomisd vcomiss vcvtdq2pd vcvtdq2ps vcvtpd2dq vcvtpd2ps vcvtps2dq vcvtps2pd vcvtsd2si vcvtsd2ss vcvtsi2sd vcvtsi2ss vcvtss2sd vcvtss2si vcvttpd2dq vcvttps2dq vcvttsd2si vcvttss2si vdivpd vdivps vdivsd vdivss vdppd vdpps vextractf128 vextractps vhaddpd vhaddps vhsubpd vhsubps vinsertf128 vinsertps vlddqu vldqqu vldmxcsr vmaskmovdqu vmaskmovps vmaskmovpd vmaxpd vmaxps vmaxsd vmaxss vminpd vminps vminsd vminss vmovapd vmovaps vmovd vmovq vmovddup vmovdqa vmovqqa vmovdqu vmovqqu vmovhlps vmovhpd vmovhps vmovlhps vmovlpd vmovlps vmovmskpd vmovmskps vmovntdq vmovntqq vmovntdqa vmovntpd vmovntps vmovsd vmovshdup vmovsldup vmovss vmovupd vmovups vmpsadbw vmulpd vmulps vmulsd vmulss vorpd vorps vpabsb vpabsw vpabsd vpacksswb vpackssdw vpackuswb vpackusdw vpaddb vpaddw vpaddd vpaddq vpaddsb vpaddsw vpaddusb vpaddusw vpalignr vpand vpandn vpavgb vpavgw vpblendvb vpblendw vpcmpestri vpcmpestrm vpcmpistri vpcmpistrm vpcmpeqb vpcmpeqw vpcmpeqd vpcmpeqq vpcmpgtb vpcmpgtw vpcmpgtd vpcmpgtq vpermilpd vpermilps vperm2f128 vpextrb vpextrw vpextrd vpextrq vphaddw vphaddd vphaddsw vphminposuw vphsubw vphsubd vphsubsw vpinsrb vpinsrw vpinsrd vpinsrq vpmaddwd vpmaddubsw vpmaxsb vpmaxsw vpmaxsd vpmaxub vpmaxuw vpmaxud vpminsb vpminsw vpminsd vpminub vpminuw vpminud vpmovmskb vpmovsxbw vpmovsxbd vpmovsxbq vpmovsxwd vpmovsxwq vpmovsxdq vpmovzxbw vpmovzxbd vpmovzxbq vpmovzxwd vpmovzxwq vpmovzxdq vpmulhuw vpmulhrsw vpmulhw vpmullw vpmulld vpmuludq vpmuldq vpor vpsadbw vpshufb vpshufd vpshufhw vpshuflw vpsignb vpsignw vpsignd vpslldq vpsrldq vpsllw vpslld vpsllq vpsraw vpsrad vpsrlw vpsrld vpsrlq vptest vpsubb vpsubw vpsubd vpsubq vpsubsb vpsubsw vpsubusb vpsubusw vpunpckhbw vpunpckhwd vpunpckhdq vpunpckhqdq vpunpcklbw vpunpcklwd vpunpckldq vpunpcklqdq vpxor vrcpps vrcpss vrsqrtps vrsqrtss vroundpd vroundps vroundsd vroundss vshufpd vshufps vsqrtpd vsqrtps vsqrtsd vsqrtss vstmxcsr vsubpd vsubps vsubsd vsubss vtestps vtestpd vucomisd vucomiss vunpckhpd vunpckhps vunpcklpd vunpcklps vxorpd vxorps vzeroall vzeroupper pclmullqlqdq pclmulhqlqdq pclmullqhqdq pclmulhqhqdq pclmulqdq vpclmullqlqdq vpclmulhqlqdq vpclmullqhqdq vpclmulhqhqdq vpclmulqdq vfmadd132ps vfmadd132pd vfmadd312ps vfmadd312pd vfmadd213ps vfmadd213pd vfmadd123ps vfmadd123pd vfmadd231ps vfmadd231pd vfmadd321ps vfmadd321pd vfmaddsub132ps vfmaddsub132pd vfmaddsub312ps vfmaddsub312pd vfmaddsub213ps vfmaddsub213pd vfmaddsub123ps vfmaddsub123pd vfmaddsub231ps vfmaddsub231pd vfmaddsub321ps vfmaddsub321pd vfmsub132ps vfmsub132pd vfmsub312ps vfmsub312pd vfmsub213ps vfmsub213pd vfmsub123ps vfmsub123pd vfmsub231ps vfmsub231pd vfmsub321ps vfmsub321pd vfmsubadd132ps vfmsubadd132pd vfmsubadd312ps vfmsubadd312pd vfmsubadd213ps vfmsubadd213pd vfmsubadd123ps vfmsubadd123pd vfmsubadd231ps vfmsubadd231pd vfmsubadd321ps vfmsubadd321pd vfnmadd132ps vfnmadd132pd vfnmadd312ps vfnmadd312pd vfnmadd213ps vfnmadd213pd vfnmadd123ps vfnmadd123pd vfnmadd231ps vfnmadd231pd vfnmadd321ps vfnmadd321pd vfnmsub132ps vfnmsub132pd vfnmsub312ps vfnmsub312pd vfnmsub213ps vfnmsub213pd vfnmsub123ps vfnmsub123pd vfnmsub231ps vfnmsub231pd vfnmsub321ps vfnmsub321pd vfmadd132ss vfmadd132sd vfmadd312ss vfmadd312sd vfmadd213ss vfmadd213sd vfmadd123ss vfmadd123sd vfmadd231ss vfmadd231sd vfmadd321ss vfmadd321sd vfmsub132ss vfmsub132sd vfmsub312ss vfmsub312sd vfmsub213ss vfmsub213sd vfmsub123ss vfmsub123sd vfmsub231ss vfmsub231sd vfmsub321ss vfmsub321sd vfnmadd132ss vfnmadd132sd vfnmadd312ss vfnmadd312sd vfnmadd213ss vfnmadd213sd vfnmadd123ss vfnmadd123sd vfnmadd231ss vfnmadd231sd vfnmadd321ss vfnmadd321sd vfnmsub132ss vfnmsub132sd vfnmsub312ss vfnmsub312sd vfnmsub213ss vfnmsub213sd vfnmsub123ss vfnmsub123sd vfnmsub231ss vfnmsub231sd vfnmsub321ss vfnmsub321sd rdfsbase rdgsbase rdrand wrfsbase wrgsbase vcvtph2ps vcvtps2ph adcx adox rdseed clac stac xstore xcryptecb xcryptcbc xcryptctr xcryptcfb xcryptofb montmul xsha1 xsha256 llwpcb slwpcb lwpval lwpins vfmaddpd vfmaddps vfmaddsd vfmaddss vfmaddsubpd vfmaddsubps vfmsubaddpd vfmsubaddps vfmsubpd vfmsubps vfmsubsd vfmsubss vfnmaddpd vfnmaddps vfnmaddsd vfnmaddss vfnmsubpd vfnmsubps vfnmsubsd vfnmsubss vfrczpd vfrczps vfrczsd vfrczss vpcmov vpcomb vpcomd vpcomq vpcomub vpcomud vpcomuq vpcomuw vpcomw vphaddbd vphaddbq vphaddbw vphadddq vphaddubd vphaddubq vphaddubw vphaddudq vphadduwd vphadduwq vphaddwd vphaddwq vphsubbw vphsubdq vphsubwd vpmacsdd vpmacsdqh vpmacsdql vpmacssdd vpmacssdqh vpmacssdql vpmacsswd vpmacssww vpmacswd vpmacsww vpmadcsswd vpmadcswd vpperm vprotb vprotd vprotq vprotw vpshab vpshad vpshaq vpshaw vpshlb vpshld vpshlq vpshlw vbroadcasti128 vpblendd vpbroadcastb vpbroadcastw vpbroadcastd vpbroadcastq vpermd vpermpd vpermps vpermq vperm2i128 vextracti128 vinserti128 vpmaskmovd vpmaskmovq vpsllvd vpsllvq vpsravd vpsrlvd vpsrlvq vgatherdpd vgatherqpd vgatherdps vgatherqps vpgatherdd vpgatherqd vpgatherdq vpgatherqq xabort xbegin xend xtest andn bextr blci blcic blsi blsic blcfill blsfill blcmsk blsmsk blsr blcs bzhi mulx pdep pext rorx sarx shlx shrx tzcnt tzmsk t1mskc valignd valignq vblendmpd vblendmps vbroadcastf32x4 vbroadcastf64x4 vbroadcasti32x4 vbroadcasti64x4 vcompresspd vcompressps vcvtpd2udq vcvtps2udq vcvtsd2usi vcvtss2usi vcvttpd2udq vcvttps2udq vcvttsd2usi vcvttss2usi vcvtudq2pd vcvtudq2ps vcvtusi2sd vcvtusi2ss vexpandpd vexpandps vextractf32x4 vextractf64x4 vextracti32x4 vextracti64x4 vfixupimmpd vfixupimmps vfixupimmsd vfixupimmss vgetexppd vgetexpps vgetexpsd vgetexpss vgetmantpd vgetmantps vgetmantsd vgetmantss vinsertf32x4 vinsertf64x4 vinserti32x4 vinserti64x4 vmovdqa32 vmovdqa64 vmovdqu32 vmovdqu64 vpabsq vpandd vpandnd vpandnq vpandq vpblendmd vpblendmq vpcmpltd vpcmpled vpcmpneqd vpcmpnltd vpcmpnled vpcmpd vpcmpltq vpcmpleq vpcmpneqq vpcmpnltq vpcmpnleq vpcmpq vpcmpequd vpcmpltud vpcmpleud vpcmpnequd vpcmpnltud vpcmpnleud vpcmpud vpcmpequq vpcmpltuq vpcmpleuq vpcmpnequq vpcmpnltuq vpcmpnleuq vpcmpuq vpcompressd vpcompressq vpermi2d vpermi2pd vpermi2ps vpermi2q vpermt2d vpermt2pd vpermt2ps vpermt2q vpexpandd vpexpandq vpmaxsq vpmaxuq vpminsq vpminuq vpmovdb vpmovdw vpmovqb vpmovqd vpmovqw vpmovsdb vpmovsdw vpmovsqb vpmovsqd vpmovsqw vpmovusdb vpmovusdw vpmovusqb vpmovusqd vpmovusqw vpord vporq vprold vprolq vprolvd vprolvq vprord vprorq vprorvd vprorvq vpscatterdd vpscatterdq vpscatterqd vpscatterqq vpsraq vpsravq vpternlogd vpternlogq vptestmd vptestmq vptestnmd vptestnmq vpxord vpxorq vrcp14pd vrcp14ps vrcp14sd vrcp14ss vrndscalepd vrndscaleps vrndscalesd vrndscaless vrsqrt14pd vrsqrt14ps vrsqrt14sd vrsqrt14ss vscalefpd vscalefps vscalefsd vscalefss vscatterdpd vscatterdps vscatterqpd vscatterqps vshuff32x4 vshuff64x2 vshufi32x4 vshufi64x2 kandnw kandw kmovw knotw kortestw korw kshiftlw kshiftrw kunpckbw kxnorw kxorw vpbroadcastmb2q vpbroadcastmw2d vpconflictd vpconflictq vplzcntd vplzcntq vexp2pd vexp2ps vrcp28pd vrcp28ps vrcp28sd vrcp28ss vrsqrt28pd vrsqrt28ps vrsqrt28sd vrsqrt28ss vgatherpf0dpd vgatherpf0dps vgatherpf0qpd vgatherpf0qps vgatherpf1dpd vgatherpf1dps vgatherpf1qpd vgatherpf1qps vscatterpf0dpd vscatterpf0dps vscatterpf0qpd vscatterpf0qps vscatterpf1dpd vscatterpf1dps vscatterpf1qpd vscatterpf1qps prefetchwt1 bndmk bndcl bndcu bndcn bndmov bndldx bndstx sha1rnds4 sha1nexte sha1msg1 sha1msg2 sha256rnds2 sha256msg1 sha256msg2 hint_nop0 hint_nop1 hint_nop2 hint_nop3 hint_nop4 hint_nop5 hint_nop6 hint_nop7 hint_nop8 hint_nop9 hint_nop10 hint_nop11 hint_nop12 hint_nop13 hint_nop14 hint_nop15 hint_nop16 hint_nop17 hint_nop18 hint_nop19 hint_nop20 hint_nop21 hint_nop22 hint_nop23 hint_nop24 hint_nop25 hint_nop26 hint_nop27 hint_nop28 hint_nop29 hint_nop30 hint_nop31 hint_nop32 hint_nop33 hint_nop34 hint_nop35 hint_nop36 hint_nop37 hint_nop38 hint_nop39 hint_nop40 hint_nop41 hint_nop42 hint_nop43 hint_nop44 hint_nop45 hint_nop46 hint_nop47 hint_nop48 hint_nop49 hint_nop50 hint_nop51 hint_nop52 hint_nop53 hint_nop54 hint_nop55 hint_nop56 hint_nop57 hint_nop58 hint_nop59 hint_nop60 hint_nop61 hint_nop62 hint_nop63",built_in:"ip eip rip al ah bl bh cl ch dl dh sil dil bpl spl r8b r9b r10b r11b r12b r13b r14b r15b ax bx cx dx si di bp sp r8w r9w r10w r11w r12w r13w r14w r15w eax ebx ecx edx esi edi ebp esp eip r8d r9d r10d r11d r12d r13d r14d r15d rax rbx rcx rdx rsi rdi rbp rsp r8 r9 r10 r11 r12 r13 r14 r15 cs ds es fs gs ss st st0 st1 st2 st3 st4 st5 st6 st7 mm0 mm1 mm2 mm3 mm4 mm5 mm6 mm7 xmm0 xmm1 xmm2 xmm3 xmm4 xmm5 xmm6 xmm7 xmm8 xmm9 xmm10 xmm11 xmm12 xmm13 xmm14 xmm15 xmm16 xmm17 xmm18 xmm19 xmm20 xmm21 xmm22 xmm23 xmm24 xmm25 xmm26 xmm27 xmm28 xmm29 xmm30 xmm31 ymm0 ymm1 ymm2 ymm3 ymm4 ymm5 ymm6 ymm7 ymm8 ymm9 ymm10 ymm11 ymm12 ymm13 ymm14 ymm15 ymm16 ymm17 ymm18 ymm19 ymm20 ymm21 ymm22 ymm23 ymm24 ymm25 ymm26 ymm27 ymm28 ymm29 ymm30 ymm31 zmm0 zmm1 zmm2 zmm3 zmm4 zmm5 zmm6 zmm7 zmm8 zmm9 zmm10 zmm11 zmm12 zmm13 zmm14 zmm15 zmm16 zmm17 zmm18 zmm19 zmm20 zmm21 zmm22 zmm23 zmm24 zmm25 zmm26 zmm27 zmm28 zmm29 zmm30 zmm31 k0 k1 k2 k3 k4 k5 k6 k7 bnd0 bnd1 bnd2 bnd3 cr0 cr1 cr2 cr3 cr4 cr8 dr0 dr1 dr2 dr3 dr8 tr3 tr4 tr5 tr6 tr7 r0 r1 r2 r3 r4 r5 r6 r7 r0b r1b r2b r3b r4b r5b r6b r7b r0w r1w r2w r3w r4w r5w r6w r7w r0d r1d r2d r3d r4d r5d r6d r7d r0h r1h r2h r3h r0l r1l r2l r3l r4l r5l r6l r7l r8l r9l r10l r11l r12l r13l r14l r15l db dw dd dq dt ddq do dy dz resb resw resd resq rest resdq reso resy resz incbin equ times byte word dword qword nosplit rel abs seg wrt strict near far a32 ptr",meta:"%define %xdefine %+ %undef %defstr %deftok %assign %strcat %strlen %substr %rotate %elif %else %endif %if %ifmacro %ifctx %ifidn %ifidni %ifid %ifnum %ifstr %iftoken %ifempty %ifenv %error %warning %fatal %rep %endrep %include %push %pop %repl %pathsearch %depend %use %arg %stacksize %local %line %comment %endcomment .nolist __FILE__ __LINE__ __SECT__ __BITS__ __OUTPUT_FORMAT__ __DATE__ __TIME__ __DATE_NUM__ __TIME_NUM__ __UTC_DATE__ __UTC_TIME__ __UTC_DATE_NUM__ __UTC_TIME_NUM__ __PASS__ struc endstruc istruc at iend align alignb sectalign daz nodaz up down zero default option assume public bits use16 use32 use64 default section segment absolute extern global common cpu float __utf16__ __utf16le__ __utf16be__ __utf32__ __utf32le__ __utf32be__ __float8__ __float16__ __float32__ __float64__ __float80m__ __float80e__ __float128l__ __float128h__ __Infinity__ __QNaN__ __SNaN__ Inf NaN QNaN SNaN float8 float16 float32 float64 float80m float80e float128l float128h __FLOAT_DAZ__ __FLOAT_ROUND__ __FLOAT__"},contains:[s.COMMENT(";","$",{relevance:0}),{className:"number",variants:[{begin:"\\b(?:([0-9][0-9_]*)?\\.[0-9_]*(?:[eE][+-]?[0-9_]+)?|(0[Xx])?[0-9][0-9_]*\\.?[0-9_]*(?:[pP](?:[+-]?[0-9_]+)?)?)\\b",relevance:0},{begin:"\\$[0-9][0-9A-Fa-f]*",relevance:0},{begin:"\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\b"},{begin:"\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\b"}]},s.QUOTE_STRING_MODE,{className:"string",variants:[{begin:"'",end:"[^\\\\]'"},{begin:"`",end:"[^\\\\]`"}],relevance:0},{className:"symbol",variants:[{begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)"},{begin:"^\\s*%%[A-Za-z0-9_$#@~.?]*:"}],relevance:0},{className:"subst",begin:"%[0-9]+",relevance:0},{className:"subst",begin:"%!S+",relevance:0},{className:"meta",begin:/^\s*\.[\w_-]+/}]}}}());hljs.registerLanguage("kotlin",function(){"use strict";return function(e){var n={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual trait volatile transient native default",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},a={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},i={className:"subst",begin:"\\${",end:"}",contains:[e.C_NUMBER_MODE]},s={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},t={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[s,i]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,s,i]}]};i.contains.push(t);var r={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(t,{className:"meta-string"})]}]},c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),o={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},d=o;return d.variants[1].contains=[o],o.variants[1].contains=[d],{name:"Kotlin",aliases:["kt"],keywords:n,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,{className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},a,r,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:n,illegal:/fun\s+(<.*>)?[^\s\(]+(\s+[^\s\(]+)\s*=/,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[o,e.C_LINE_COMMENT_MODE,c],relevance:0},e.C_LINE_COMMENT_MODE,c,r,l,t,e.C_NUMBER_MODE]},c]},{className:"class",beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/,excludeBegin:!0,returnEnd:!0},r,l]},t,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},{className:"number",begin:"\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",relevance:0}]}}}());hljs.registerLanguage("armasm",function(){"use strict";return function(s){const e={variants:[s.COMMENT("^[ \\t]*(?=#)","$",{relevance:0,excludeBegin:!0}),s.COMMENT("[;@]","$",{relevance:0}),s.C_LINE_COMMENT_MODE,s.C_BLOCK_COMMENT_MODE]};return{name:"ARM Assembly",case_insensitive:!0,aliases:["arm"],keywords:{$pattern:"\\.?"+s.IDENT_RE,meta:".2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg ALIAS ALIGN ARM AREA ASSERT ATTR CN CODE CODE16 CODE32 COMMON CP DATA DCB DCD DCDU DCDO DCFD DCFDU DCI DCQ DCQU DCW DCWU DN ELIF ELSE END ENDFUNC ENDIF ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FILL FUNCTION GBLA GBLL GBLS GET GLOBAL IF IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS LTORG MACRO MAP MEND MEXIT NOFP OPT PRESERVE8 PROC QN READONLY RELOC REQUIRE REQUIRE8 RLIST FN ROUT SETA SETL SETS SN SPACE SUBT THUMB THUMBX TTL WHILE WEND ",built_in:"r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 pc lr sp ip sl sb fp a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf s0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 s16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16 d17 d18 d19 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d30 d31 {PC} {VAR} {TRUE} {FALSE} {OPT} {CONFIG} {ENDIAN} {CODESIZE} {CPU} {FPU} {ARCHITECTURE} {PCSTOREOFFSET} {ARMASM_VERSION} {INTER} {ROPI} {RWPI} {SWST} {NOSWST} . @"},contains:[{className:"keyword",begin:"\\b(adc|(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|wfe|wfi|yield)(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?[sptrx]?(?=\\s)"},e,s.QUOTE_STRING_MODE,{className:"string",begin:"'",end:"[^\\\\]'",relevance:0},{className:"title",begin:"\\|",end:"\\|",illegal:"\\n",relevance:0},{className:"number",variants:[{begin:"[#$=]?0x[0-9a-f]+"},{begin:"[#$=]?0b[01]+"},{begin:"[#$=]\\d+"},{begin:"\\b\\d+"}],relevance:0},{className:"symbol",variants:[{begin:"^[ \\t]*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"},{begin:"^[a-z_\\.\\$][a-z0-9_\\.\\$]+"},{begin:"[=#]\\w+"}],relevance:0}]}}}());hljs.registerLanguage("go",function(){"use strict";return function(e){var n={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{name:"Go",aliases:["golang"],keywords:n,illegal:">>|\.\.\.) /},i={className:"subst",begin:/\{/,end:/\}/,keywords:n,illegal:/#/},s={begin:/\{\{/,relevance:0},r={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/(u|b)?r?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/(u|b)?r?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/(fr|rf|f)'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,s,i]},{begin:/(fr|rf|f)"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,s,i]},{begin:/(u|r|ur)'/,end:/'/,relevance:10},{begin:/(u|r|ur)"/,end:/"/,relevance:10},{begin:/(b|br)'/,end:/'/},{begin:/(b|br)"/,end:/"/},{begin:/(fr|rf|f)'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,s,i]},{begin:/(fr|rf|f)"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,i]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},l={className:"number",relevance:0,variants:[{begin:e.BINARY_NUMBER_RE+"[lLjJ]?"},{begin:"\\b(0o[0-7]+)[lLjJ]?"},{begin:e.C_NUMBER_RE+"[lLjJ]?"}]},t={className:"params",variants:[{begin:/\(\s*\)/,skip:!0,className:null},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:["self",a,l,r,e.HASH_COMMENT_MODE]}]};return i.contains=[r,l,a],{name:"Python",aliases:["py","gyp","ipython"],keywords:n,illegal:/(<\/|->|\?)|=>/,contains:[a,l,{beginKeywords:"if",relevance:0},r,e.HASH_COMMENT_MODE,{variants:[{className:"function",beginKeywords:"def"},{className:"class",beginKeywords:"class"}],end:/:/,illegal:/[${=;\n,]/,contains:[e.UNDERSCORE_TITLE_MODE,t,{begin:/->/,endsWithParent:!0,keywords:"None"}]},{className:"meta",begin:/^[\t ]*@/,end:/$/},{begin:/\b(print|exec)\(/}]}}}());hljs.registerLanguage("shell",function(){"use strict";return function(s){return{name:"Shell Session",aliases:["console"],contains:[{className:"meta",begin:"^\\s{0,3}[/\\w\\d\\[\\]()@-]*[>%$#]",starts:{end:"$",subLanguage:"bash"}}]}}}());hljs.registerLanguage("scala",function(){"use strict";return function(e){var n={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"},{begin:"\\${",end:"}"}]},a={className:"string",variants:[{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:'"""',end:'"""',relevance:10},{begin:'[a-z]+"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,n]},{className:"string",begin:'[a-z]+"""',end:'"""',contains:[n],relevance:10}]},s={className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},t={className:"title",begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/,relevance:0},i={className:"class",beginKeywords:"class object trait type",end:/[:={\[\n;]/,excludeEnd:!0,contains:[{beginKeywords:"extends with",relevance:10},{begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[s]},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[s]},t]},l={className:"function",beginKeywords:"def",end:/[:={\[(\n;]/,excludeEnd:!0,contains:[t]};return{name:"Scala",keywords:{literal:"true false null",keyword:"type yield lazy override def with val var sealed abstract private trait object if forSome for while throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{className:"symbol",begin:"'\\w[\\w\\d_]*(?!')"},s,l,i,e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"}]}}}());hljs.registerLanguage("julia",function(){"use strict";return function(e){var r="[A-Za-z_\\u00A1-\\uFFFF][A-Za-z_0-9\\u00A1-\\uFFFF]*",t={$pattern:r,keyword:"in isa where baremodule begin break catch ccall const continue do else elseif end export false finally for function global if import importall let local macro module quote return true try using while type immutable abstract bitstype typealias ",literal:"true false ARGS C_NULL DevNull ENDIAN_BOM ENV I Inf Inf16 Inf32 Inf64 InsertionSort JULIA_HOME LOAD_PATH MergeSort NaN NaN16 NaN32 NaN64 PROGRAM_FILE QuickSort RoundDown RoundFromZero RoundNearest RoundNearestTiesAway RoundNearestTiesUp RoundToZero RoundUp STDERR STDIN STDOUT VERSION catalan e|0 eu|0 eulergamma golden im nothing pi γ π φ ",built_in:"ANY AbstractArray AbstractChannel AbstractFloat AbstractMatrix AbstractRNG AbstractSerializer AbstractSet AbstractSparseArray AbstractSparseMatrix AbstractSparseVector AbstractString AbstractUnitRange AbstractVecOrMat AbstractVector Any ArgumentError Array AssertionError Associative Base64DecodePipe Base64EncodePipe Bidiagonal BigFloat BigInt BitArray BitMatrix BitVector Bool BoundsError BufferStream CachingPool CapturedException CartesianIndex CartesianRange Cchar Cdouble Cfloat Channel Char Cint Cintmax_t Clong Clonglong ClusterManager Cmd CodeInfo Colon Complex Complex128 Complex32 Complex64 CompositeException Condition ConjArray ConjMatrix ConjVector Cptrdiff_t Cshort Csize_t Cssize_t Cstring Cuchar Cuint Cuintmax_t Culong Culonglong Cushort Cwchar_t Cwstring DataType Date DateFormat DateTime DenseArray DenseMatrix DenseVecOrMat DenseVector Diagonal Dict DimensionMismatch Dims DirectIndexString Display DivideError DomainError EOFError EachLine Enum Enumerate ErrorException Exception ExponentialBackOff Expr Factorization FileMonitor Float16 Float32 Float64 Function Future GlobalRef GotoNode HTML Hermitian IO IOBuffer IOContext IOStream IPAddr IPv4 IPv6 IndexCartesian IndexLinear IndexStyle InexactError InitError Int Int128 Int16 Int32 Int64 Int8 IntSet Integer InterruptException InvalidStateException Irrational KeyError LabelNode LinSpace LineNumberNode LoadError LowerTriangular MIME Matrix MersenneTwister Method MethodError MethodTable Module NTuple NewvarNode NullException Nullable Number ObjectIdDict OrdinalRange OutOfMemoryError OverflowError Pair ParseError PartialQuickSort PermutedDimsArray Pipe PollingFileWatcher ProcessExitedException Ptr QuoteNode RandomDevice Range RangeIndex Rational RawFD ReadOnlyMemoryError Real ReentrantLock Ref Regex RegexMatch RemoteChannel RemoteException RevString RoundingMode RowVector SSAValue SegmentationFault SerializationState Set SharedArray SharedMatrix SharedVector Signed SimpleVector Slot SlotNumber SparseMatrixCSC SparseVector StackFrame StackOverflowError StackTrace StepRange StepRangeLen StridedArray StridedMatrix StridedVecOrMat StridedVector String SubArray SubString SymTridiagonal Symbol Symmetric SystemError TCPSocket Task Text TextDisplay Timer Tridiagonal Tuple Type TypeError TypeMapEntry TypeMapLevel TypeName TypeVar TypedSlot UDPSocket UInt UInt128 UInt16 UInt32 UInt64 UInt8 UndefRefError UndefVarError UnicodeError UniformScaling Union UnionAll UnitRange Unsigned UpperTriangular Val Vararg VecElement VecOrMat Vector VersionNumber Void WeakKeyDict WeakRef WorkerConfig WorkerPool "},a={keywords:t,illegal:/<\//},n={className:"subst",begin:/\$\(/,end:/\)/,keywords:t},o={className:"variable",begin:"\\$"+r},i={className:"string",contains:[e.BACKSLASH_ESCAPE,n,o],variants:[{begin:/\w*"""/,end:/"""\w*/,relevance:10},{begin:/\w*"/,end:/"\w*/}]},l={className:"string",contains:[e.BACKSLASH_ESCAPE,n,o],begin:"`",end:"`"},s={className:"meta",begin:"@"+r};return a.name="Julia",a.contains=[{className:"number",begin:/(\b0x[\d_]*(\.[\d_]*)?|0x\.\d[\d_]*)p[-+]?\d+|\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\b\d[\d_]*(\.[\d_]*)?|\.\d[\d_]*)([eEfF][-+]?\d+)?/,relevance:0},{className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},i,l,s,{className:"comment",variants:[{begin:"#=",end:"=#",relevance:10},{begin:"#",end:"$"}]},e.HASH_COMMENT_MODE,{className:"keyword",begin:"\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"},{begin:/<:/}],n.contains=a.contains,a}}());hljs.registerLanguage("php-template",function(){"use strict";return function(n){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}}());hljs.registerLanguage("scss",function(){"use strict";return function(e){var t={className:"variable",begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b"},i={className:"number",begin:"#[0-9A-Fa-f]+"};return e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_BLOCK_COMMENT_MODE,{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"\\#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},{className:"selector-attr",begin:"\\[",end:"\\]",illegal:"$"},{className:"selector-tag",begin:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",relevance:0},{className:"selector-pseudo",begin:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{className:"selector-pseudo",begin:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},t,{className:"attribute",begin:"\\b(src|z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",illegal:"[^\\s]"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[t,i,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"meta",begin:"!important"}]},{begin:"@(page|font-face)",lexemes:"@[a-z-]+",keywords:"@page @font-face"},{begin:"@",end:"[{;]",returnBegin:!0,keywords:"and or not only",contains:[{begin:"@[a-z-]+",className:"keyword"},t,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i,e.CSS_NUMBER_MODE]}]}}}());hljs.registerLanguage("r",function(){"use strict";return function(e){var n="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{name:"R",contains:[e.HASH_COMMENT_MODE,{begin:n,keywords:{$pattern:n,keyword:"function if in break next repeat else for return switch while try tryCatch stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10"},relevance:0},{className:"number",begin:"0[xX][0-9a-fA-F]+[Li]?\\b",relevance:0},{className:"number",begin:"\\d+(?:[eE][+\\-]?\\d*)?L\\b",relevance:0},{className:"number",begin:"\\d+\\.(?!\\d)(?:i\\b)?",relevance:0},{className:"number",begin:"\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{className:"number",begin:"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{begin:"`",end:"`",relevance:0},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:'"',end:'"'},{begin:"'",end:"'"}]}]}}}());hljs.registerLanguage("sql",function(){"use strict";return function(e){var t=e.COMMENT("--","$");return{name:"SQL",case_insensitive:!0,illegal:/[<>{}*]/,contains:[{beginKeywords:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment values with",end:/;/,endsWithParent:!0,keywords:{$pattern:/[\w\.]+/,keyword:"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias all allocate allow alter always analyze ancillary and anti any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound bucket buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain explode export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour hours http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lateral lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minutes minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second seconds section securefile security seed segment select self semi sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tablesample tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace window with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null unknown",built_in:"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp tinyint varchar varchar2 varying void"},contains:[{className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},{className:"string",begin:'"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:"`",end:"`"},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]},e.C_BLOCK_COMMENT_MODE,t,e.HASH_COMMENT_MODE]}}}());hljs.registerLanguage("c",function(){"use strict";return function(e){var n=e.getLanguage("c-like").rawDefinition();return n.name="C",n.aliases=["c","h"],n}}());hljs.registerLanguage("json",function(){"use strict";return function(n){var e={literal:"true false null"},i=[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],t=[n.QUOTE_STRING_MODE,n.C_NUMBER_MODE],a={end:",",endsWithParent:!0,excludeEnd:!0,contains:t,keywords:e},l={begin:"{",end:"}",contains:[{className:"attr",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE],illegal:"\\n"},n.inherit(a,{begin:/:/})].concat(i),illegal:"\\S"},s={begin:"\\[",end:"\\]",contains:[n.inherit(a)],illegal:"\\S"};return t.push(l,s),i.forEach((function(n){t.push(n)})),{name:"JSON",contains:t,keywords:e,illegal:"\\S"}}}());hljs.registerLanguage("python-repl",function(){"use strict";return function(n){return{aliases:["pycon"],contains:[{className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}}());hljs.registerLanguage("markdown",function(){"use strict";return function(n){const e={begin:"<",end:">",subLanguage:"xml",relevance:0},a={begin:"\\[.+?\\][\\(\\[].*?[\\)\\]]",returnBegin:!0,contains:[{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0,relevance:0},{className:"link",begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}],relevance:10},i={className:"strong",contains:[],variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},s={className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{begin:/_(?!_)/,end:/_/,relevance:0}]};i.contains.push(s),s.contains.push(i);var c=[e,a];return i.contains=i.contains.concat(c),s.contains=s.contains.concat(c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:c=c.concat(i,s)},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:c}]}]},e,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},i,s,{className:"quote",begin:"^>\\s+",contains:c,end:"$"},{className:"code",variants:[{begin:"(`{3,})(.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})(.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},a,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}}());hljs.registerLanguage("javascript",function(){"use strict";const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);function s(e){return r("(?=",e,")")}function r(...e){return e.map(e=>(function(e){return e?"string"==typeof e?e:e.source:null})(e)).join("")}return function(t){var i="[A-Za-z$_][0-9A-Za-z$_]*",c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/},o={$pattern:"[A-Za-z$_][0-9A-Za-z$_]*",keyword:e.join(" "),literal:n.join(" "),built_in:a.join(" ")},l={className:"number",variants:[{begin:"\\b(0[bB][01]+)n?"},{begin:"\\b(0[oO][0-7]+)n?"},{begin:t.C_NUMBER_RE+"n?"}],relevance:0},E={className:"subst",begin:"\\$\\{",end:"\\}",keywords:o,contains:[]},d={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,E],subLanguage:"xml"}},g={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,E],subLanguage:"css"}},u={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,E]};E.contains=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,g,u,l,t.REGEXP_MODE];var b=E.contains.concat([{begin:/\(/,end:/\)/,contains:["self"].concat(E.contains,[t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE])},t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]),_={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:b};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:o,contains:[t.SHEBANG({binary:"node",relevance:5}),{className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,g,u,t.C_LINE_COMMENT_MODE,t.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,l,{begin:r(/[{,\n]\s*/,s(r(/(((\/\/.*)|(\/\*(.|\n)*\*\/))\s*)*/,i+"\\s*:"))),relevance:0,contains:[{className:"attr",begin:i+s("\\s*:"),relevance:0}]},{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,t.REGEXP_MODE,{className:"function",begin:"(\\([^(]*(\\([^(]*(\\([^(]*\\))?\\))?\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:b}]}]},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:"<>",end:""},{begin:c.begin,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[t.inherit(t.TITLE_MODE,{begin:i}),_],illegal:/\[|%/},{begin:/\$[(.]/},t.METHOD_GUARD,{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends"},t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"constructor",end:/\{/,excludeEnd:!0},{begin:"(get|set)\\s+(?="+i+"\\()",end:/{/,keywords:"get set",contains:[t.inherit(t.TITLE_MODE,{begin:i}),{begin:/\(\)/},_]}],illegal:/#(?!!)/}}}());hljs.registerLanguage("typescript",function(){"use strict";const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],a=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);return function(r){var t={$pattern:"[A-Za-z$_][0-9A-Za-z$_]*",keyword:e.concat(["type","namespace","typedef","interface","public","private","protected","implements","declare","abstract","readonly"]).join(" "),literal:n.join(" "),built_in:a.concat(["any","void","number","boolean","string","object","never","enum"]).join(" ")},s={className:"meta",begin:"@[A-Za-z$_][0-9A-Za-z$_]*"},i={className:"number",variants:[{begin:"\\b(0[bB][01]+)n?"},{begin:"\\b(0[oO][0-7]+)n?"},{begin:r.C_NUMBER_RE+"n?"}],relevance:0},o={className:"subst",begin:"\\$\\{",end:"\\}",keywords:t,contains:[]},c={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[r.BACKSLASH_ESCAPE,o],subLanguage:"xml"}},l={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[r.BACKSLASH_ESCAPE,o],subLanguage:"css"}},E={className:"string",begin:"`",end:"`",contains:[r.BACKSLASH_ESCAPE,o]};o.contains=[r.APOS_STRING_MODE,r.QUOTE_STRING_MODE,c,l,E,i,r.REGEXP_MODE];var d={begin:"\\(",end:/\)/,keywords:t,contains:["self",r.QUOTE_STRING_MODE,r.APOS_STRING_MODE,r.NUMBER_MODE]},u={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,contains:[r.C_LINE_COMMENT_MODE,r.C_BLOCK_COMMENT_MODE,s,d]};return{name:"TypeScript",aliases:["ts"],keywords:t,contains:[r.SHEBANG(),{className:"meta",begin:/^\s*['"]use strict['"]/},r.APOS_STRING_MODE,r.QUOTE_STRING_MODE,c,l,E,r.C_LINE_COMMENT_MODE,r.C_BLOCK_COMMENT_MODE,i,{begin:"("+r.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[r.C_LINE_COMMENT_MODE,r.C_BLOCK_COMMENT_MODE,r.REGEXP_MODE,{className:"function",begin:"(\\([^(]*(\\([^(]*(\\([^(]*\\))?\\))?\\)|"+r.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:r.UNDERSCORE_IDENT_RE},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,contains:d.contains}]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/[\{;]/,excludeEnd:!0,keywords:t,contains:["self",r.inherit(r.TITLE_MODE,{begin:"[A-Za-z$_][0-9A-Za-z$_]*"}),u],illegal:/%/,relevance:0},{beginKeywords:"constructor",end:/[\{;]/,excludeEnd:!0,contains:["self",u]},{begin:/module\./,keywords:{built_in:"module"},relevance:0},{beginKeywords:"module",end:/\{/,excludeEnd:!0},{beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:"interface extends"},{begin:/\$[(.]/},{begin:"\\."+r.IDENT_RE,relevance:0},s,d]}}}());hljs.registerLanguage("plaintext",function(){"use strict";return function(t){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}}());hljs.registerLanguage("less",function(){"use strict";return function(e){var n="([\\w-]+|@{[\\w-]+})",a=[],s=[],t=function(e){return{className:"string",begin:"~?"+e+".*?"+e}},r=function(e,n,a){return{className:e,begin:n,relevance:a}},i={begin:"\\(",end:"\\)",contains:s,relevance:0};s.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t("'"),t('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},r("number","#[0-9A-Fa-f]+\\b"),i,r("variable","@@?[\\w-]+",10),r("variable","@{[\\w-]+}"),r("built_in","~?`[^`]*?`"),{className:"attribute",begin:"[\\w-]+\\s*:",end:":",returnBegin:!0,excludeEnd:!0},{className:"meta",begin:"!important"});var c=s.concat({begin:"{",end:"}",contains:a}),l={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(s)},o={begin:n+"\\s*:",returnBegin:!0,end:"[;}]",relevance:0,contains:[{className:"attribute",begin:n,end:":",excludeEnd:!0,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:s}}]},g={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",returnEnd:!0,contains:s,relevance:0}},d={className:"variable",variants:[{begin:"@[\\w-]+\\s*:",relevance:15},{begin:"@[\\w-]+"}],starts:{end:"[;}]",returnEnd:!0,contains:c}},b={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:n,end:"{"}],returnBegin:!0,returnEnd:!0,illegal:"[<='$\"]",relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,r("keyword","all\\b"),r("variable","@{[\\w-]+}"),r("selector-tag",n+"%?",0),r("selector-id","#"+n),r("selector-class","\\."+n,0),r("selector-tag","&",0),{className:"selector-attr",begin:"\\[",end:"\\]"},{className:"selector-pseudo",begin:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{begin:"\\(",end:"\\)",contains:c},{begin:"!important"}]};return a.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,g,d,o,b),{name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:a}}}());hljs.registerLanguage("lua",function(){"use strict";return function(e){var t={begin:"\\[=*\\[",end:"\\]=*\\]",contains:["self"]},a=[e.COMMENT("--(?!\\[=*\\[)","$"),e.COMMENT("--\\[=*\\[","\\]=*\\]",{contains:[t],relevance:10})];return{name:"Lua",keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:a.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:a}].concat(a)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"\\[=*\\[",end:"\\]=*\\]",contains:[t],relevance:5}])}}}()); diff --git a/index.html b/index.html new file mode 100644 index 0000000..126a303 --- /dev/null +++ b/index.html @@ -0,0 +1,322 @@ + + + + + + eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 - bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具

+

1. eBPF简介:安全和有效地扩展内核

+

eBPF 是一项革命性的技术,起源于 Linux 内核,可以在操作系统的内核中运行沙盒程序。它被用来安全和有效地扩展内核的功能,而不需要改变内核的源代码或加载内核模块。eBPF 通过允许在操作系统内运行沙盒程序,应用程序开发人员可以在运行时,可编程地向操作系统动态添加额外的功能。然后,操作系统保证安全和执行效率,就像在即时编译(JIT)编译器和验证引擎的帮助下进行本地编译一样。eBPF 程序在内核版本之间是可移植的,并且可以自动更新,从而避免了工作负载中断和节点重启。

+

今天,eBPF被广泛用于各类场景:在现代数据中心和云原生环境中,可以提供高性能的网络包处理和负载均衡;以非常低的资源开销,做到对多种细粒度指标的可观测性,帮助应用程序开发人员跟踪应用程序,为性能故障排除提供洞察力;保障应用程序和容器运行时的安全执行,等等。可能性是无穷的,而 eBPF 在操作系统内核中所释放的创新才刚刚开始[3]。

+

eBPF 的未来:内核的 JavaScript 可编程接口

+

对于浏览器而言,JavaScript 的引入带来的可编程性开启了一场巨大的革命,使浏览器发展成为几乎独立的操作系统。现在让我们回到 eBPF:为了理解 eBPF 对 Linux 内核的可编程性影响,对 Linux 内核的结构以及它如何与应用程序和硬件进行交互有一个高层次的理解是有帮助的[4]。

+

kernel-arch

+

Linux 内核的主要目的是抽象出硬件或虚拟硬件,并提供一个一致的API(系统调用),允许应用程序运行和共享资源。为了实现这个目的,我们维护了一系列子系统和层,以分配这些责任[5]。每个子系统通常允许某种程度的配置,以考虑到用户的不同需求。如果不能配置所需的行为,就需要改变内核,从历史上看,改变内核的行为,或者让用户编写的程序能够在内核中运行,就有两种选择:

+
+ +
本地支持内核模块写一个内核模块
改变内核源代码,并说服Linux内核社区相信这种改变是必要的。等待几年,让新的内核版本成为一种商品。定期修复它,因为每个内核版本都可能破坏它。由于缺乏安全边界,冒着破坏你的Linux内核的风险
+
+

实际上,两种方案都不常用,前者成本太高,后者则几乎没有可移植性。

+

有了 eBPF,就有了一个新的选择,可以重新编程 Linux 内核的行为,而不需要改变内核的源代码或加载内核模块,同时保证在不同内核版本之间一定程度上的行为一致性和兼容性、以及安全性[6]。为了实现这个目的,eBPF 程序也需要有一套对应的 API,允许用户定义的应用程序运行和共享资源 --- 换句话说,某种意义上讲 eBPF 虚拟机也提供了一套类似于系统调用的机制,借助 eBPF 和用户态通信的机制,Wasm 虚拟机和用户态应用也可以获得这套“系统调用”的完整使用权,一方面能可编程地扩展传统的系统调用的能力,另一方面能在网络、文件系统等许多层次实现更高效的可编程 IO 处理。

+

new-os

+

正如上图所示,当今的 Linux 内核正在向一个新的内核模型演化:用户定义的应用程序可以在内核态和用户态同时执行,用户态通过传统的系统调用访问系统资源,内核态则通过 BPF Helper Calls 和系统的各个部分完成交互。截止 2023 年初,内核中的 eBPF 虚拟机中已经有 220 多个Helper 系统接口,涵盖了非常多的应用场景。

+

值得注意的是,BPF Helper Call 和系统调用二者并不是竞争关系,它们的编程模型和有性能优势的场景完全不同,也不会完全替代对方。对 Wasm 和 Wasi 相关生态来说,情况也类似,专门设计的 wasi 接口需要经历一个漫长的标准化过程,但可能在特定场景能为用户态应用获取更佳的性能和可移植性保证,而 eBPF 在保证沙箱本质和可移植性的前提下,可以提供一个快速灵活的扩展系统接口的方案。

+

目前的 eBPF 仍然处于早期阶段,但是借助当前 eBPF 提供的内核接口和用户态交互的能力,经由 Wasm-bpf 的系统接口转换,Wasm 虚拟机中的应用已经几乎有能力获取内核以及用户态任意一个函数调用的数据和返回值(kprobe,uprobe...);以很低的代价收集和理解所有系统调用,并获取所有网络操作的数据包和套接字级别的数据(tracepoint,socket...);在网络包处理解决方案中添加额外的协议分析器,并轻松地编程任何转发逻辑(XDP,TC...),以满足不断变化的需求,而无需离开Linux内核的数据包处理环境。

+

不仅如此,eBPF 还有能力往用户空间任意进程的任意地址写入数据(bpf_probe_write_user[7]),有限度地修改内核函数的返回值(bpf_override_return[8]),甚至在内核态直接执行某些系统调用[9];所幸的是,eBPF 在加载进内核之前对字节码会进行严格的安全检查,确保没有内存越界等操作,同时,许多可能会扩大攻击面、带来安全风险的功能都是需要在编译内核时明确选择启用才能使用的;在 Wasm 虚拟机将字节码加载进内核之前,也可以明确选择启用或者禁用某些 eBPF 功能,以确保沙箱的安全性。

+

2. 关于如何学习 eBPF 相关的开发的一些建议

+

本文不会对 eBPF 的原理做更详细的介绍,不过这里有一个学习规划和参考资料,也许会有一些价值:

+

eBPF 入门(5-7h)

+
    +
  • Google 或者其他搜索引擎查找:eBPF
  • +
  • 询问 ChatGPT 之类的东西:eBPF 是什么?
  • +
+

推荐:

+ +

回答三个问题:

+
    +
  1. 了解 eBPF 是什么东西?为啥要有这个玩意,不能用内核模块?
  2. +
  3. 它有什么功能?能在 Linux 内核里面完成哪些事情?有哪些 eBPF 程序的类型和 helper(不需要知道全部,但是需要知道去哪里找)?
  4. +
  5. 能拿来做什么?比如说在哪些场景中进行运用?网络、安全、可观测性?
  6. +
+

了解如何开发 eBPF 程序(10-15h)

+

了解并尝试一下 eBPF 开发框架:

+ +

其他开发框架:Go 语言或者 Rust 语言,请自行搜索并且尝试(0-2h)

+

有任何问题或者想了解的东西,不管是不是和本项目相关,都可以在本项目的 discussions 里面开始讨论。

+

回答一些问题,并且进行一些尝试(2-5h):

+
    +
  1. 如何开发一个最简单的 eBPF 程序?
  2. +
  3. 如何用 eBPF 追踪一个内核功能或函数?有很多种方法,举出对应的代码;
  4. +
  5. 有哪些方案能通过用户态和内核态通信?如何从用户态向内核态传送信息?如何从内核态向用户态传递信息?举出代码示例;
  6. +
  7. 编写一个你自己的 eBPF 程序,实现一个功能;
  8. +
  9. eBPF 程序的整个生命周期里面,分别在用户态和内核态做了哪些事情?
  10. +
+

3. 如何使用eBPF编程

+

原始的eBPF程序编写是非常繁琐和困难的。为了改变这一现状,llvm于2015年推出了可以将由高级语言编写的代码编译为eBPF字节码的功能,同时,eBPF 社区将 bpf() 等原始的系统调用进行了初步地封装,给出了libbpf库。这些库会包含将字节码加载到内核中的函数以及一些其他的关键函数。在Linux的源码包的samples/bpf/目录下,有大量Linux提供的基于libbpf的eBPF样例代码。

+

一个典型的基于 libbpf 的eBPF程序具有*_kern.c*_user.c两个文件,*_kern.c中书写在内核中的挂载点以及处理函数,*_user.c中书写用户态代码,完成内核态代码注入以及与用户交互的各种任务。 更为详细的教程可以参考该视频然而由于该方法仍然较难理解且入门存在一定的难度,因此现阶段的eBPF程序开发大多基于一些工具,比如:

+
    +
  • BCC
  • +
  • BPFtrace
  • +
  • libbpf-bootstrap
  • +
  • Go eBPF library
  • +
+

以及还有比较新的工具,例如 eunomia-bpf.

+

编写 eBPF 程序

+

eBPF 程序由内核态部分和用户态部分构成。内核态部分包含程序的实际逻辑,用户态部分负责加载和管理内核态部分。使用 eunomia-bpf 开发工具,只需编写内核态部分的代码。

+

内核态部分的代码需要符合 eBPF 的语法和指令集。eBPF 程序主要由若干个函数组成,每个函数都有其特定的作用。可以使用的函数类型包括:

+
    +
  • kprobe:插探函数,在指定的内核函数前或后执行。
  • +
  • tracepoint:跟踪点函数,在指定的内核跟踪点处执行。
  • +
  • raw_tracepoint:原始跟踪点函数,在指定的内核原始跟踪点处执行。
  • +
  • xdp:网络数据处理函数,拦截和处理网络数据包。
  • +
  • perf_event:性能事件函数,用于处理内核性能事件。
  • +
  • kretprobe:函数返回插探函数,在指定的内核函数返回时执行。
  • +
  • tracepoint_return:跟踪点函数返回,在指定的内核跟踪点返回时执行。
  • +
  • raw_tracepoint_return:原始跟踪点函数返回,在指定的内核原始跟踪
  • +
+

BCC

+

BCC全称为BPF Compiler Collection,该项目是一个python库, +包含了完整的编写、编译、和加载BPF程序的工具链,以及用于调试和诊断性能问题的工具。

+

自2015年发布以来,BCC经过上百位贡献者地不断完善后,目前已经包含了大量随时可用的跟踪工具。其官方项目库 +提供了一个方便上手的教程,用户可以快速地根据教程完成BCC入门工作。

+

用户可以在BCC上使用Python、Lua等高级语言进行编程。 +相较于使用C语言直接编程,这些高级语言具有极大的便捷性,用户只需要使用C来设计内核中的 +BPF程序,其余包括编译、解析、加载等工作在内,均可由BCC完成。

+

然而使用BCC存在一个缺点便是在于其兼容性并不好。基于BCC的 +eBPF程序每次执行时候都需要进行编译,编译则需要用户配置相关的头文件和对应实现。在实际应用中, +相信大家也会有体会,编译依赖问题是一个很棘手的问题。也正是因此,在本项目的开发中我们放弃了BCC, +选择了可以做到一次编译-多次运行的libbpf-bootstrap工具。

+

eBPF Go library

+

eBPF Go库提供了一个通用的eBPF库,它解耦了获取 eBPF 字节码的过程和 eBPF 程序的加载和管理,并实现了类似 libbpf 一样的 CO- 功能。eBPF程序通常是通过编写高级语言创建的,然后使用clang/LLVM编译器编译为eBPF字节码。

+

libbpf

+

libbpf-bootstrap是一个基于libbpf库的BPF开发脚手架,从其 +github 上可以得到其源码。

+

libbpf-bootstrap综合了BPF社区过去多年的实践,为开发者提了一个现代化的、便捷的工作流,实 +现了一次编译,重复使用的目的。

+

基于libbpf-bootstrap的BPF程序对于源文件有一定的命名规则, +用于生成内核态字节码的bpf文件以.bpf.c结尾,用户态加载字节码的文件以.c结尾,且这两个文件的 +前缀必须相同。

+

基于libbpf-bootstrap的BPF程序在编译时会先将*.bpf.c文件编译为 +对应的.o文件,然后根据此文件生成skeleton文件,即*.skel.h,这个文件会包含内核态中定义的一些 +数据结构,以及用于装载内核态代码的关键函数。在用户态代码include此文件之后调用对应的装载函数即可将 +字节码装载到内核中。同样的,libbpf-bootstrap也有非常完备的入门教程,用户可以在该处 +得到详细的入门操作介绍。

+

eunomia-bpf

+

开发、构建和分发 eBPF 一直以来都是一个高门槛的工作,使用 BCC、bpftrace 等工具开发效率高、可移植性好,但是分发部署时需要安装 LLVM、Clang等编译环境,每次运行的时候执行本地或远程编译过程,资源消耗较大;使用原生的 CO-RE libbpf时又需要编写不少用户态加载代码来帮助 eBPF 程序正确加载和从内核中获取上报的信息,同时对于 eBPF 程序的分发、管理也没有很好地解决方案。

+

eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,是为了简化 eBPF 程序的开发、构建、分发、运行而设计的,基于 libbpf 的 CO-RE 轻量级开发框架。

+

使用 eunomia-bpf ,可以:

+
    +
  • 在编写 eBPF 程序或工具时只编写内核态代码,自动获取内核态导出信息,并作为模块动态加载;
  • +
  • 使用 WASM 进行用户态交互程序的开发,在 WASM 虚拟机内部控制整个 eBPF 程序的加载和执行,以及处理相关数据;
  • +
  • eunomia-bpf 可以将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块,跨架构和内核版本进行分发,无需重新编译即可动态加载运行。
  • +
+

eunomia-bpf 由一个编译工具链和一个运行时库组成, 对比传统的 BCC、原生 libbpf 等框架,大幅简化了 eBPF 程序的开发流程,在大多数时候只需编写内核态代码,即可轻松构建、打包、发布完整的 eBPF 应用,同时内核态 eBPF 代码保证和主流的 libbpf, libbpfgo, libbpf-rs 等开发框架的 100% 兼容性。需要编写用户态代码的时候,也可以借助 Webassembly 实现通过多种语言进行用户态开发。和 bpftrace 等脚本工具相比, eunomia-bpf 保留了类似的便捷性, 同时不仅局限于 trace 方面, 可以用于更多的场景, 如网络、安全等等。

+
+ +
+

参考资料

+ +

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + diff --git a/mark.min.js b/mark.min.js new file mode 100644 index 0000000..1636231 --- /dev/null +++ b/mark.min.js @@ -0,0 +1,7 @@ +/*!*************************************************** +* mark.js v8.11.1 +* https://markjs.io/ +* Copyright (c) 2014–2018, Julian Kühnel +* Released under the MIT license https://git.io/vwTVl +*****************************************************/ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Mark=t()}(this,function(){"use strict";var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},n=function(){function e(e,t){for(var n=0;n1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:5e3;t(this,e),this.ctx=n,this.iframes=r,this.exclude=i,this.iframesTimeout=o}return n(e,[{key:"getContexts",value:function(){var e=[];return(void 0!==this.ctx&&this.ctx?NodeList.prototype.isPrototypeOf(this.ctx)?Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?this.ctx:"string"==typeof this.ctx?Array.prototype.slice.call(document.querySelectorAll(this.ctx)):[this.ctx]:[]).forEach(function(t){var n=e.filter(function(e){return e.contains(t)}).length>0;-1!==e.indexOf(t)||n||e.push(t)}),e}},{key:"getIframeContents",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=void 0;try{var i=e.contentWindow;if(r=i.document,!i||!r)throw new Error("iframe inaccessible")}catch(e){n()}r&&t(r)}},{key:"isIframeBlank",value:function(e){var t="about:blank",n=e.getAttribute("src").trim();return e.contentWindow.location.href===t&&n!==t&&n}},{key:"observeIframeLoad",value:function(e,t,n){var r=this,i=!1,o=null,a=function a(){if(!i){i=!0,clearTimeout(o);try{r.isIframeBlank(e)||(e.removeEventListener("load",a),r.getIframeContents(e,t,n))}catch(e){n()}}};e.addEventListener("load",a),o=setTimeout(a,this.iframesTimeout)}},{key:"onIframeReady",value:function(e,t,n){try{"complete"===e.contentWindow.document.readyState?this.isIframeBlank(e)?this.observeIframeLoad(e,t,n):this.getIframeContents(e,t,n):this.observeIframeLoad(e,t,n)}catch(e){n()}}},{key:"waitForIframes",value:function(e,t){var n=this,r=0;this.forEachIframe(e,function(){return!0},function(e){r++,n.waitForIframes(e.querySelector("html"),function(){--r||t()})},function(e){e||t()})}},{key:"forEachIframe",value:function(t,n,r){var i=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},a=t.querySelectorAll("iframe"),s=a.length,c=0;a=Array.prototype.slice.call(a);var u=function(){--s<=0&&o(c)};s||u(),a.forEach(function(t){e.matches(t,i.exclude)?u():i.onIframeReady(t,function(e){n(t)&&(c++,r(e)),u()},u)})}},{key:"createIterator",value:function(e,t,n){return document.createNodeIterator(e,t,n,!1)}},{key:"createInstanceOnIframe",value:function(t){return new e(t.querySelector("html"),this.iframes)}},{key:"compareNodeIframe",value:function(e,t,n){if(e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_PRECEDING){if(null===t)return!0;if(t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING)return!0}return!1}},{key:"getIteratorNode",value:function(e){var t=e.previousNode();return{prevNode:t,node:null===t?e.nextNode():e.nextNode()&&e.nextNode()}}},{key:"checkIframeFilter",value:function(e,t,n,r){var i=!1,o=!1;return r.forEach(function(e,t){e.val===n&&(i=t,o=e.handled)}),this.compareNodeIframe(e,t,n)?(!1!==i||o?!1===i||o||(r[i].handled=!0):r.push({val:n,handled:!0}),!0):(!1===i&&r.push({val:n,handled:!1}),!1)}},{key:"handleOpenIframes",value:function(e,t,n,r){var i=this;e.forEach(function(e){e.handled||i.getIframeContents(e.val,function(e){i.createInstanceOnIframe(e).forEachNode(t,n,r)})})}},{key:"iterateThroughNodes",value:function(e,t,n,r,i){for(var o,a=this,s=this.createIterator(t,e,r),c=[],u=[],l=void 0,h=void 0;void 0,o=a.getIteratorNode(s),h=o.prevNode,l=o.node;)this.iframes&&this.forEachIframe(t,function(e){return a.checkIframeFilter(l,h,e,c)},function(t){a.createInstanceOnIframe(t).forEachNode(e,function(e){return u.push(e)},r)}),u.push(l);u.forEach(function(e){n(e)}),this.iframes&&this.handleOpenIframes(c,e,n,r),i()}},{key:"forEachNode",value:function(e,t,n){var r=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},o=this.getContexts(),a=o.length;a||i(),o.forEach(function(o){var s=function(){r.iterateThroughNodes(e,o,t,n,function(){--a<=0&&i()})};r.iframes?r.waitForIframes(o,s):s()})}}],[{key:"matches",value:function(e,t){var n="string"==typeof t?[t]:t,r=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;if(r){var i=!1;return n.every(function(t){return!r.call(e,t)||(i=!0,!1)}),i}return!1}}]),e}(),o=function(){function e(n){t(this,e),this.opt=r({},{diacritics:!0,synonyms:{},accuracy:"partially",caseSensitive:!1,ignoreJoiners:!1,ignorePunctuation:[],wildcards:"disabled"},n)}return n(e,[{key:"create",value:function(e){return"disabled"!==this.opt.wildcards&&(e=this.setupWildcardsRegExp(e)),e=this.escapeStr(e),Object.keys(this.opt.synonyms).length&&(e=this.createSynonymsRegExp(e)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),this.opt.diacritics&&(e=this.createDiacriticsRegExp(e)),e=this.createMergedBlanksRegExp(e),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.createJoinersRegExp(e)),"disabled"!==this.opt.wildcards&&(e=this.createWildcardsRegExp(e)),e=this.createAccuracyRegExp(e),new RegExp(e,"gm"+(this.opt.caseSensitive?"":"i"))}},{key:"escapeStr",value:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}},{key:"createSynonymsRegExp",value:function(e){var t=this.opt.synonyms,n=this.opt.caseSensitive?"":"i",r=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(var i in t)if(t.hasOwnProperty(i)){var o=t[i],a="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(i):this.escapeStr(i),s="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(o):this.escapeStr(o);""!==a&&""!==s&&(e=e.replace(new RegExp("("+this.escapeStr(a)+"|"+this.escapeStr(s)+")","gm"+n),r+"("+this.processSynonyms(a)+"|"+this.processSynonyms(s)+")"+r))}return e}},{key:"processSynonyms",value:function(e){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),e}},{key:"setupWildcardsRegExp",value:function(e){return(e=e.replace(/(?:\\)*\?/g,function(e){return"\\"===e.charAt(0)?"?":""})).replace(/(?:\\)*\*/g,function(e){return"\\"===e.charAt(0)?"*":""})}},{key:"createWildcardsRegExp",value:function(e){var t="withSpaces"===this.opt.wildcards;return e.replace(/\u0001/g,t?"[\\S\\s]?":"\\S?").replace(/\u0002/g,t?"[\\S\\s]*?":"\\S*")}},{key:"setupIgnoreJoinersRegExp",value:function(e){return e.replace(/[^(|)\\]/g,function(e,t,n){var r=n.charAt(t+1);return/[(|)\\]/.test(r)||""===r?e:e+"\0"})}},{key:"createJoinersRegExp",value:function(e){var t=[],n=this.opt.ignorePunctuation;return Array.isArray(n)&&n.length&&t.push(this.escapeStr(n.join(""))),this.opt.ignoreJoiners&&t.push("\\u00ad\\u200b\\u200c\\u200d"),t.length?e.split(/\u0000+/).join("["+t.join("")+"]*"):e}},{key:"createDiacriticsRegExp",value:function(e){var t=this.opt.caseSensitive?"":"i",n=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"],r=[];return e.split("").forEach(function(i){n.every(function(n){if(-1!==n.indexOf(i)){if(r.indexOf(n)>-1)return!1;e=e.replace(new RegExp("["+n+"]","gm"+t),"["+n+"]"),r.push(n)}return!0})}),e}},{key:"createMergedBlanksRegExp",value:function(e){return e.replace(/[\s]+/gim,"[\\s]+")}},{key:"createAccuracyRegExp",value:function(e){var t=this,n=this.opt.accuracy,r="string"==typeof n?n:n.value,i="";switch(("string"==typeof n?[]:n.limiters).forEach(function(e){i+="|"+t.escapeStr(e)}),r){case"partially":default:return"()("+e+")";case"complementary":return"()([^"+(i="\\s"+(i||this.escapeStr("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿")))+"]*"+e+"[^"+i+"]*)";case"exactly":return"(^|\\s"+i+")("+e+")(?=$|\\s"+i+")"}}}]),e}(),a=function(){function a(e){t(this,a),this.ctx=e,this.ie=!1;var n=window.navigator.userAgent;(n.indexOf("MSIE")>-1||n.indexOf("Trident")>-1)&&(this.ie=!0)}return n(a,[{key:"log",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"debug",r=this.opt.log;this.opt.debug&&"object"===(void 0===r?"undefined":e(r))&&"function"==typeof r[n]&&r[n]("mark.js: "+t)}},{key:"getSeparatedKeywords",value:function(e){var t=this,n=[];return e.forEach(function(e){t.opt.separateWordSearch?e.split(" ").forEach(function(e){e.trim()&&-1===n.indexOf(e)&&n.push(e)}):e.trim()&&-1===n.indexOf(e)&&n.push(e)}),{keywords:n.sort(function(e,t){return t.length-e.length}),length:n.length}}},{key:"isNumeric",value:function(e){return Number(parseFloat(e))==e}},{key:"checkRanges",value:function(e){var t=this;if(!Array.isArray(e)||"[object Object]"!==Object.prototype.toString.call(e[0]))return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(e),[];var n=[],r=0;return e.sort(function(e,t){return e.start-t.start}).forEach(function(e){var i=t.callNoMatchOnInvalidRanges(e,r),o=i.start,a=i.end;i.valid&&(e.start=o,e.length=a-o,n.push(e),r=a)}),n}},{key:"callNoMatchOnInvalidRanges",value:function(e,t){var n=void 0,r=void 0,i=!1;return e&&void 0!==e.start?(r=(n=parseInt(e.start,10))+parseInt(e.length,10),this.isNumeric(e.start)&&this.isNumeric(e.length)&&r-t>0&&r-n>0?i=!0:(this.log("Ignoring invalid or overlapping range: "+JSON.stringify(e)),this.opt.noMatch(e))):(this.log("Ignoring invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:n,end:r,valid:i}}},{key:"checkWhitespaceRanges",value:function(e,t,n){var r=void 0,i=!0,o=n.length,a=t-o,s=parseInt(e.start,10)-a;return(r=(s=s>o?o:s)+parseInt(e.length,10))>o&&(r=o,this.log("End range automatically set to the max value of "+o)),s<0||r-s<0||s>o||r>o?(i=!1,this.log("Invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)):""===n.substring(s,r).replace(/\s+/g,"")&&(i=!1,this.log("Skipping whitespace only range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:s,end:r,valid:i}}},{key:"getTextNodes",value:function(e){var t=this,n="",r=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,function(e){r.push({start:n.length,end:(n+=e.textContent).length,node:e})},function(e){return t.matchesExclude(e.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},function(){e({value:n,nodes:r})})}},{key:"matchesExclude",value:function(e){return i.matches(e,this.opt.exclude.concat(["script","style","title","head","html"]))}},{key:"wrapRangeInTextNode",value:function(e,t,n){var r=this.opt.element?this.opt.element:"mark",i=e.splitText(t),o=i.splitText(n-t),a=document.createElement(r);return a.setAttribute("data-markjs","true"),this.opt.className&&a.setAttribute("class",this.opt.className),a.textContent=i.textContent,i.parentNode.replaceChild(a,i),o}},{key:"wrapRangeInMappedTextNode",value:function(e,t,n,r,i){var o=this;e.nodes.every(function(a,s){var c=e.nodes[s+1];if(void 0===c||c.start>t){if(!r(a.node))return!1;var u=t-a.start,l=(n>a.end?a.end:n)-a.start,h=e.value.substr(0,a.start),f=e.value.substr(l+a.start);if(a.node=o.wrapRangeInTextNode(a.node,u,l),e.value=h+f,e.nodes.forEach(function(t,n){n>=s&&(e.nodes[n].start>0&&n!==s&&(e.nodes[n].start-=l),e.nodes[n].end-=l)}),n-=l,i(a.node.previousSibling,a.start),!(n>a.end))return!1;t=a.end}return!0})}},{key:"wrapGroups",value:function(e,t,n,r){return r((e=this.wrapRangeInTextNode(e,t,t+n)).previousSibling),e}},{key:"separateGroups",value:function(e,t,n,r,i){for(var o=t.length,a=1;a-1&&r(t[a],e)&&(e=this.wrapGroups(e,s,t[a].length,i))}return e}},{key:"wrapMatches",value:function(e,t,n,r,i){var o=this,a=0===t?0:t+1;this.getTextNodes(function(t){t.nodes.forEach(function(t){t=t.node;for(var i=void 0;null!==(i=e.exec(t.textContent))&&""!==i[a];){if(o.opt.separateGroups)t=o.separateGroups(t,i,a,n,r);else{if(!n(i[a],t))continue;var s=i.index;if(0!==a)for(var c=1;c + + + + + bpf-developer-tutorial + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+
+

eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具

+

1. eBPF简介:安全和有效地扩展内核

+

eBPF 是一项革命性的技术,起源于 Linux 内核,可以在操作系统的内核中运行沙盒程序。它被用来安全和有效地扩展内核的功能,而不需要改变内核的源代码或加载内核模块。eBPF 通过允许在操作系统内运行沙盒程序,应用程序开发人员可以在运行时,可编程地向操作系统动态添加额外的功能。然后,操作系统保证安全和执行效率,就像在即时编译(JIT)编译器和验证引擎的帮助下进行本地编译一样。eBPF 程序在内核版本之间是可移植的,并且可以自动更新,从而避免了工作负载中断和节点重启。

+

今天,eBPF被广泛用于各类场景:在现代数据中心和云原生环境中,可以提供高性能的网络包处理和负载均衡;以非常低的资源开销,做到对多种细粒度指标的可观测性,帮助应用程序开发人员跟踪应用程序,为性能故障排除提供洞察力;保障应用程序和容器运行时的安全执行,等等。可能性是无穷的,而 eBPF 在操作系统内核中所释放的创新才刚刚开始[3]。

+

eBPF 的未来:内核的 JavaScript 可编程接口

+

对于浏览器而言,JavaScript 的引入带来的可编程性开启了一场巨大的革命,使浏览器发展成为几乎独立的操作系统。现在让我们回到 eBPF:为了理解 eBPF 对 Linux 内核的可编程性影响,对 Linux 内核的结构以及它如何与应用程序和硬件进行交互有一个高层次的理解是有帮助的[4]。

+

kernel-arch

+

Linux 内核的主要目的是抽象出硬件或虚拟硬件,并提供一个一致的API(系统调用),允许应用程序运行和共享资源。为了实现这个目的,我们维护了一系列子系统和层,以分配这些责任[5]。每个子系统通常允许某种程度的配置,以考虑到用户的不同需求。如果不能配置所需的行为,就需要改变内核,从历史上看,改变内核的行为,或者让用户编写的程序能够在内核中运行,就有两种选择:

+
+ +
本地支持内核模块写一个内核模块
改变内核源代码,并说服Linux内核社区相信这种改变是必要的。等待几年,让新的内核版本成为一种商品。定期修复它,因为每个内核版本都可能破坏它。由于缺乏安全边界,冒着破坏你的Linux内核的风险
+
+

实际上,两种方案都不常用,前者成本太高,后者则几乎没有可移植性。

+

有了 eBPF,就有了一个新的选择,可以重新编程 Linux 内核的行为,而不需要改变内核的源代码或加载内核模块,同时保证在不同内核版本之间一定程度上的行为一致性和兼容性、以及安全性[6]。为了实现这个目的,eBPF 程序也需要有一套对应的 API,允许用户定义的应用程序运行和共享资源 --- 换句话说,某种意义上讲 eBPF 虚拟机也提供了一套类似于系统调用的机制,借助 eBPF 和用户态通信的机制,Wasm 虚拟机和用户态应用也可以获得这套“系统调用”的完整使用权,一方面能可编程地扩展传统的系统调用的能力,另一方面能在网络、文件系统等许多层次实现更高效的可编程 IO 处理。

+

new-os

+

正如上图所示,当今的 Linux 内核正在向一个新的内核模型演化:用户定义的应用程序可以在内核态和用户态同时执行,用户态通过传统的系统调用访问系统资源,内核态则通过 BPF Helper Calls 和系统的各个部分完成交互。截止 2023 年初,内核中的 eBPF 虚拟机中已经有 220 多个Helper 系统接口,涵盖了非常多的应用场景。

+

值得注意的是,BPF Helper Call 和系统调用二者并不是竞争关系,它们的编程模型和有性能优势的场景完全不同,也不会完全替代对方。对 Wasm 和 Wasi 相关生态来说,情况也类似,专门设计的 wasi 接口需要经历一个漫长的标准化过程,但可能在特定场景能为用户态应用获取更佳的性能和可移植性保证,而 eBPF 在保证沙箱本质和可移植性的前提下,可以提供一个快速灵活的扩展系统接口的方案。

+

目前的 eBPF 仍然处于早期阶段,但是借助当前 eBPF 提供的内核接口和用户态交互的能力,经由 Wasm-bpf 的系统接口转换,Wasm 虚拟机中的应用已经几乎有能力获取内核以及用户态任意一个函数调用的数据和返回值(kprobe,uprobe...);以很低的代价收集和理解所有系统调用,并获取所有网络操作的数据包和套接字级别的数据(tracepoint,socket...);在网络包处理解决方案中添加额外的协议分析器,并轻松地编程任何转发逻辑(XDP,TC...),以满足不断变化的需求,而无需离开Linux内核的数据包处理环境。

+

不仅如此,eBPF 还有能力往用户空间任意进程的任意地址写入数据(bpf_probe_write_user[7]),有限度地修改内核函数的返回值(bpf_override_return[8]),甚至在内核态直接执行某些系统调用[9];所幸的是,eBPF 在加载进内核之前对字节码会进行严格的安全检查,确保没有内存越界等操作,同时,许多可能会扩大攻击面、带来安全风险的功能都是需要在编译内核时明确选择启用才能使用的;在 Wasm 虚拟机将字节码加载进内核之前,也可以明确选择启用或者禁用某些 eBPF 功能,以确保沙箱的安全性。

+

2. 关于如何学习 eBPF 相关的开发的一些建议

+

本文不会对 eBPF 的原理做更详细的介绍,不过这里有一个学习规划和参考资料,也许会有一些价值:

+

eBPF 入门(5-7h)

+
    +
  • Google 或者其他搜索引擎查找:eBPF
  • +
  • 询问 ChatGPT 之类的东西:eBPF 是什么?
  • +
+

推荐:

+ +

回答三个问题:

+
    +
  1. 了解 eBPF 是什么东西?为啥要有这个玩意,不能用内核模块?
  2. +
  3. 它有什么功能?能在 Linux 内核里面完成哪些事情?有哪些 eBPF 程序的类型和 helper(不需要知道全部,但是需要知道去哪里找)?
  4. +
  5. 能拿来做什么?比如说在哪些场景中进行运用?网络、安全、可观测性?
  6. +
+

了解如何开发 eBPF 程序(10-15h)

+

了解并尝试一下 eBPF 开发框架:

+ +

其他开发框架:Go 语言或者 Rust 语言,请自行搜索并且尝试(0-2h)

+

有任何问题或者想了解的东西,不管是不是和本项目相关,都可以在本项目的 discussions 里面开始讨论。

+

回答一些问题,并且进行一些尝试(2-5h):

+
    +
  1. 如何开发一个最简单的 eBPF 程序?
  2. +
  3. 如何用 eBPF 追踪一个内核功能或函数?有很多种方法,举出对应的代码;
  4. +
  5. 有哪些方案能通过用户态和内核态通信?如何从用户态向内核态传送信息?如何从内核态向用户态传递信息?举出代码示例;
  6. +
  7. 编写一个你自己的 eBPF 程序,实现一个功能;
  8. +
  9. eBPF 程序的整个生命周期里面,分别在用户态和内核态做了哪些事情?
  10. +
+

3. 如何使用eBPF编程

+

原始的eBPF程序编写是非常繁琐和困难的。为了改变这一现状,llvm于2015年推出了可以将由高级语言编写的代码编译为eBPF字节码的功能,同时,eBPF 社区将 bpf() 等原始的系统调用进行了初步地封装,给出了libbpf库。这些库会包含将字节码加载到内核中的函数以及一些其他的关键函数。在Linux的源码包的samples/bpf/目录下,有大量Linux提供的基于libbpf的eBPF样例代码。

+

一个典型的基于 libbpf 的eBPF程序具有*_kern.c*_user.c两个文件,*_kern.c中书写在内核中的挂载点以及处理函数,*_user.c中书写用户态代码,完成内核态代码注入以及与用户交互的各种任务。 更为详细的教程可以参考该视频然而由于该方法仍然较难理解且入门存在一定的难度,因此现阶段的eBPF程序开发大多基于一些工具,比如:

+
    +
  • BCC
  • +
  • BPFtrace
  • +
  • libbpf-bootstrap
  • +
  • Go eBPF library
  • +
+

以及还有比较新的工具,例如 eunomia-bpf.

+

编写 eBPF 程序

+

eBPF 程序由内核态部分和用户态部分构成。内核态部分包含程序的实际逻辑,用户态部分负责加载和管理内核态部分。使用 eunomia-bpf 开发工具,只需编写内核态部分的代码。

+

内核态部分的代码需要符合 eBPF 的语法和指令集。eBPF 程序主要由若干个函数组成,每个函数都有其特定的作用。可以使用的函数类型包括:

+
    +
  • kprobe:插探函数,在指定的内核函数前或后执行。
  • +
  • tracepoint:跟踪点函数,在指定的内核跟踪点处执行。
  • +
  • raw_tracepoint:原始跟踪点函数,在指定的内核原始跟踪点处执行。
  • +
  • xdp:网络数据处理函数,拦截和处理网络数据包。
  • +
  • perf_event:性能事件函数,用于处理内核性能事件。
  • +
  • kretprobe:函数返回插探函数,在指定的内核函数返回时执行。
  • +
  • tracepoint_return:跟踪点函数返回,在指定的内核跟踪点返回时执行。
  • +
  • raw_tracepoint_return:原始跟踪点函数返回,在指定的内核原始跟踪
  • +
+

BCC

+

BCC全称为BPF Compiler Collection,该项目是一个python库, +包含了完整的编写、编译、和加载BPF程序的工具链,以及用于调试和诊断性能问题的工具。

+

自2015年发布以来,BCC经过上百位贡献者地不断完善后,目前已经包含了大量随时可用的跟踪工具。其官方项目库 +提供了一个方便上手的教程,用户可以快速地根据教程完成BCC入门工作。

+

用户可以在BCC上使用Python、Lua等高级语言进行编程。 +相较于使用C语言直接编程,这些高级语言具有极大的便捷性,用户只需要使用C来设计内核中的 +BPF程序,其余包括编译、解析、加载等工作在内,均可由BCC完成。

+

然而使用BCC存在一个缺点便是在于其兼容性并不好。基于BCC的 +eBPF程序每次执行时候都需要进行编译,编译则需要用户配置相关的头文件和对应实现。在实际应用中, +相信大家也会有体会,编译依赖问题是一个很棘手的问题。也正是因此,在本项目的开发中我们放弃了BCC, +选择了可以做到一次编译-多次运行的libbpf-bootstrap工具。

+

eBPF Go library

+

eBPF Go库提供了一个通用的eBPF库,它解耦了获取 eBPF 字节码的过程和 eBPF 程序的加载和管理,并实现了类似 libbpf 一样的 CO- 功能。eBPF程序通常是通过编写高级语言创建的,然后使用clang/LLVM编译器编译为eBPF字节码。

+

libbpf

+

libbpf-bootstrap是一个基于libbpf库的BPF开发脚手架,从其 +github 上可以得到其源码。

+

libbpf-bootstrap综合了BPF社区过去多年的实践,为开发者提了一个现代化的、便捷的工作流,实 +现了一次编译,重复使用的目的。

+

基于libbpf-bootstrap的BPF程序对于源文件有一定的命名规则, +用于生成内核态字节码的bpf文件以.bpf.c结尾,用户态加载字节码的文件以.c结尾,且这两个文件的 +前缀必须相同。

+

基于libbpf-bootstrap的BPF程序在编译时会先将*.bpf.c文件编译为 +对应的.o文件,然后根据此文件生成skeleton文件,即*.skel.h,这个文件会包含内核态中定义的一些 +数据结构,以及用于装载内核态代码的关键函数。在用户态代码include此文件之后调用对应的装载函数即可将 +字节码装载到内核中。同样的,libbpf-bootstrap也有非常完备的入门教程,用户可以在该处 +得到详细的入门操作介绍。

+

eunomia-bpf

+

开发、构建和分发 eBPF 一直以来都是一个高门槛的工作,使用 BCC、bpftrace 等工具开发效率高、可移植性好,但是分发部署时需要安装 LLVM、Clang等编译环境,每次运行的时候执行本地或远程编译过程,资源消耗较大;使用原生的 CO-RE libbpf时又需要编写不少用户态加载代码来帮助 eBPF 程序正确加载和从内核中获取上报的信息,同时对于 eBPF 程序的分发、管理也没有很好地解决方案。

+

eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,是为了简化 eBPF 程序的开发、构建、分发、运行而设计的,基于 libbpf 的 CO-RE 轻量级开发框架。

+

使用 eunomia-bpf ,可以:

+
    +
  • 在编写 eBPF 程序或工具时只编写内核态代码,自动获取内核态导出信息,并作为模块动态加载;
  • +
  • 使用 WASM 进行用户态交互程序的开发,在 WASM 虚拟机内部控制整个 eBPF 程序的加载和执行,以及处理相关数据;
  • +
  • eunomia-bpf 可以将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块,跨架构和内核版本进行分发,无需重新编译即可动态加载运行。
  • +
+

eunomia-bpf 由一个编译工具链和一个运行时库组成, 对比传统的 BCC、原生 libbpf 等框架,大幅简化了 eBPF 程序的开发流程,在大多数时候只需编写内核态代码,即可轻松构建、打包、发布完整的 eBPF 应用,同时内核态 eBPF 代码保证和主流的 libbpf, libbpfgo, libbpf-rs 等开发框架的 100% 兼容性。需要编写用户态代码的时候,也可以借助 Webassembly 实现通过多种语言进行用户态开发。和 bpftrace 等脚本工具相比, eunomia-bpf 保留了类似的便捷性, 同时不仅局限于 trace 方面, 可以用于更多的场景, 如网络、安全等等。

+
+ +
+

参考资料

+ +

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程二:Hello World,基本框架和开发流程

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第二篇,主要介绍 eBPF 的基本框架和开发流程。

+

开发 eBPF 程序可以使用多种工具,如 BCC、eunomia-bpf 等。不同的工具有不同的特点,但基本流程大致相同。

+

开发 eBPF 程序的流程

+

下面以 BCC 工具为例,介绍 eBPF 程序的基本开发流程。

+
    +
  1. 安装编译环境和依赖。使用 BCC 开发 eBPF 程序需要安装 LLVM/Clang 和 bcc,以及其它的依赖库。
  2. +
  3. 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。
  4. +
  5. 编译和加载 eBPF 程序。使用 bcc 工具将 eBPF 程序编译成机器码,然后使用用户态代码加载并运行该程序。
  6. +
  7. 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。用户态程序负责处理这些信息并将结果输出。
  8. +
  9. 结束程序。当 eBPF 程序运行完成后,用户态程序可以卸载并结束运行。
  10. +
+

通过这个过程,你可以开发出一个能够在内核中运行的 eBPF 程序。

+

使用 eunomia-bpf 开发 eBPF 程序

+

eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。它基于 libbpf 的 CO-RE 轻量级开发框架,支持通过用户态 WASM 虚拟机控制 eBPF 程序的加载和执行,并将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块进行分发。使用 eunomia-bpf 可以大幅简化 eBPF 程序的开发流程。

+

使用 eunomia-bpf 开发 eBPF 程序的流程也大致相同,只是细节略有不同。

+
    +
  1. 安装编译环境和依赖。使用 eunomia-bpf 开发 eBPF 程序需要安装 eunomia-bpf 工具链和运行时库,以及其它的依赖库。
  2. +
  3. 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。使用 eunomia-bpf,只需编写内核态代码即可,无需编写用户态代码。
  4. +
  5. 编译和加载 eBPF 程序。使用 eunomia-bpf 工具链将 eBPF 程序编译成机器码,并将编译后的代码打包为可以在任何系统上运行的模块。然后使用 eunomia-bpf 运行时库加载并运行该模块。
  6. +
  7. 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。eunomia-bpf 的运行时库负责处理这些信息并将结果输出。
  8. +
  9. 结束程序。当 eBPF 程序运行完成后,eunomia-bpf 的运行时库可以卸载并结束运行
  10. +
+

下载安装 eunomia-bpf 开发工具

+

可以通过以下步骤下载和安装 eunomia-bpf:

+

下载 ecli 工具,用于运行 eBPF 程序:

+
$ wget https://aka.pw/bpf-ecli -O ecli && chmod +x ./ecli
+$ ./ecli -h
+Usage: ecli [--help] [--version] [--json] [--no-cache] url-and-args
+
+

下载编译器工具链,用于将 eBPF 内核代码编译为 config 文件或 WASM 模块:

+
$ wget https://github.com/eunomia-bpf/eunomia-bpf/releases/latest/download/ecc && chmod +x ./ecc
+$ ./ecc -h
+eunomia-bpf compiler
+Usage: ecc [OPTIONS] <SOURCE_PATH> [EXPORT_EVENT_HEADER]
+....
+
+

也可以使用 docker 镜像进行编译:

+
$ docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest # 使用 docker 进行编译。`pwd` 应该包含 *.bpf.c 文件和 *.h 文件。
+export PATH=PATH:~/.eunomia/bin
+Compiling bpf object...
+Packing ebpf object and config into /src/package.json...
+
+

Hello World - minimal eBPF program

+
/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */
+#define BPF_NO_GLOBAL_DATA
+#include <linux/bpf.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+typedef unsigned int u32;
+typedef int pid_t;
+const pid_t pid_filter = 0;
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+SEC("tp/syscalls/sys_enter_write")
+int handle_tp(void *ctx)
+{
+ pid_t pid = bpf_get_current_pid_tgid() >> 32;
+ if (pid_filter && pid != pid_filter)
+  return 0;
+ bpf_printk("BPF triggered from PID %d.\n", pid);
+ return 0;
+}
+
+

这段程序通过定义一个 handle_tp 函数并使用 SEC 宏把它附加到 sys_enter_write tracepoint(即在进入 write 系统调用时执行)。该函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 write 系统调用的进程 ID,并在内核日志中打印出来。

+
    +
  • bpf_trace_printk(): 一种将信息输出到trace_pipe(/sys/kernel/debug/tracing/trace_pipe)简单机制。 在一些简单用例中这样使用没有问题, but它也有一些限制:最多3 参数; 第一个参数必须是%s(即字符串);同时trace_pipe在内核中全局共享,其他并行使用trace_pipe的程序有可能会将 trace_pipe 的输出扰乱。 一个更好的方式是通过 BPF_PERF_OUTPUT(), 稍后将会讲到。
  • +
  • void *ctx:ctx本来是具体类型的参数, 但是由于我们这里没有使用这个参数,因此就将其写成void *类型。
  • +
  • return 0;:必须这样,返回0 (如果要知道why, 参考 #139 https://github.com/iovisor/bcc/issues/139)。
  • +
+

要编译和运行这段程序,可以使用 ecc 工具和 ecli 命令。首先使用 ecc 编译程序:

+
$ ecc hello.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

或使用 docker 镜像进行编译:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

然后使用 ecli 运行编译后的程序:

+
$ sudo ecli ./package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+           <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345.
+           <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345.
+
+

eBPF 程序的基本框架

+

如上所述, eBPF 程序的基本框架包括:

+
    +
  • 包含头文件:需要包含 <linux/bpf.h> 和 <bpf/bpf_helpers.h> 等头文件。
  • +
  • 定义许可证:需要定义许可证,通常使用 "Dual BSD/GPL"。
  • +
  • 定义 BPF 函数:需要定义一个 BPF 函数,例如其名称为 handle_tp,其参数为 void *ctx,返回值为 int。通常用 C 语言编写。
  • +
  • 使用 BPF 助手函数:在例如 BPF 函数中,可以使用 BPF 助手函数 bpf_get_current_pid_tgid() 和 bpf_printk()。
  • +
  • 返回值
  • +
+

tracepoints

+

跟踪点(tracepoints)是内核静态插桩技术,跟踪点在技术上只是放置在内核源代码中的跟踪函数,实际上就是在源码中插入的一些带有控制条件的探测点,这些探测点允许事后再添加处理函数。比如在内核中,最常见的静态跟踪方法就是 printk,即输出日志。又比如:在系统调用、调度程序事件、文件系统操作和磁盘 I/O 的开始和结束时都有跟踪点。 于 2009 年在 Linux 2.6.32 版本中首次提供。跟踪点是一种稳定的 API,数量有限。

+

总结

+

eBPF 程序的开发和使用流程可以概括为如下几个步骤:

+
    +
  • 定义 eBPF 程序的接口和类型:这包括定义 eBPF 程序的接口函数,定义和实现 eBPF 内核映射(maps)和共享内存(perf events),以及定义和使用 eBPF 内核帮助函数(helpers)。
  • +
  • 编写 eBPF 程序的代码:这包括编写 eBPF 程序的主要逻辑,实现 eBPF 内核映射的读写操作,以及使用 eBPF 内核帮助函数。
  • +
  • 编译 eBPF 程序:这包括使用 eBPF 编译器(例如 clang)将 eBPF 程序代码编译为 eBPF 字节码,并生成可执行的 eBPF 内核模块。ecc 本质上也是调用 clang 编译器来编译 eBPF 程序。
  • +
  • 加载 eBPF 程序到内核:这包括将编译好的 eBPF 内核模块加载到 Linux 内核中,并将 eBPF 程序附加到指定的内核事件上。
  • +
  • 使用 eBPF 程序:这包括监测 eBPF 程序的运行情况,并使用 eBPF 内核映射和共享内存进行数据交换和共享。
  • +
  • 在实际开发中,还可能需要进行其他的步骤,例如配置编译和加载参数,管理 eBPF 内核模块和内核映射,以及使用其他高级功能等。
  • +
+

需要注意的是,BPF 程序的执行是在内核空间进行的,因此需要使用特殊的工具和技术来编写、编译和调试 BPF 程序。eunomia-bpf 是一个开源的 BPF 编译器和工具包,它可以帮助开发者快速和简单地编写和运行 BPF 程序。

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第二篇,在 eBPF 中使用 kprobe 捕获 unlink 系统调用。

+

kprobes技术背景

+

开发人员在内核或者模块的调试过程中,往往会需要要知道其中的一些函数有无被调用、何时被调用、执行是否正确以及函数的入参和返回值是什么等等。比较简单的做法是在内核代码对应的函数中添加日志打印信息,但这种方式往往需要重新编译内核或模块,重新启动设备之类的,操作较为复杂甚至可能会破坏原有的代码执行过程。

+

而利用kprobes技术,用户可以定义自己的回调函数,然后在内核或者模块中几乎所有的函数中(有些函数是不可探测的,例如kprobes自身的相关实现函数,后文会有详细说明)动态的插入探测点,当内核执行流程执行到指定的探测函数时,会调用该回调函数,用户即可收集所需的信息了,同时内核最后还会回到原本的正常执行流程。如果用户已经收集足够的信息,不再需要继续探测,则同样可以动态地移除探测点。因此kprobes技术具有对内核执行流程影响小和操作方便的优点。

+

kprobes技术包括的3种探测手段分别时kprobe、jprobe和kretprobe。首先kprobe是最基本的探测方式,是实现后两种的基础,它可以在任意的位置放置探测点(就连函数内部的某条指令处也可以),它提供了探测点的调用前、调用后和内存访问出错3种回调方式,分别是pre_handler、post_handler和fault_handler,其中pre_handler函数将在被探测指令被执行前回调,post_handler会在被探测指令执行完毕后回调(注意不是被探测函数),fault_handler会在内存访问出错时被调用;jprobe基于kprobe实现,它用于获取被探测函数的入参值;最后kretprobe从名字中就可以看出其用途了,它同样基于kprobe实现,用于获取被探测函数的返回值。

+

kprobes的技术原理并不仅仅包含存软件的实现方案,它也需要硬件架构提供支持。其中涉及硬件架构相关的是CPU的异常处理和单步调试技术,前者用于让程序的执行流程陷入到用户注册的回调函数中去,而后者则用于单步执行被探测点指令,因此并不是所有的架构均支持,目前kprobes技术已经支持多种架构,包括i386、x86_64、ppc64、ia64、sparc64、arm、ppc和mips(有些架构实现可能并不完全,具体可参考内核的Documentation/kprobes.txt)。

+

kprobes的特点与使用限制:

+
    +
  1. kprobes允许在同一个被被探测位置注册多个kprobe,但是目前jprobe却不可以;同时也不允许以其他的jprobe回调函数和kprobe的post_handler回调函数作为被探测点。
  2. +
  3. 一般情况下,可以探测内核中的任何函数,包括中断处理函数。不过在kernel/kprobes.c和arch/*/kernel/kprobes.c程序中用于实现kprobes自身的函数是不允许被探测的,另外还有do_page_fault和notifier_call_chain;
  4. +
  5. 如果以一个内联函数为探测点,则kprobes可能无法保证对该函数的所有实例都注册探测点。由于gcc可能会自动将某些函数优化为内联函数,因此可能无法达到用户预期的探测效果;
  6. +
  7. 一个探测点的回调函数可能会修改被探测函数运行的上下文,例如通过修改内核的数据结构或者保存与struct pt_regs结构体中的触发探测器之前寄存器信息。因此kprobes可以被用来安装bug修复代码或者注入故障测试代码;
  8. +
  9. kprobes会避免在处理探测点函数时再次调用另一个探测点的回调函数,例如在printk()函数上注册了探测点,则在它的回调函数中可能再次调用printk函数,此时将不再触发printk探测点的回调,仅仅时增加了kprobe结构体中nmissed字段的数值;
  10. +
  11. 在kprobes的注册和注销过程中不会使用mutex锁和动态的申请内存;
  12. +
  13. kprobes回调函数的运行期间是关闭内核抢占的,同时也可能在关闭中断的情况下执行,具体要视CPU架构而定。因此不论在何种情况下,在回调函数中不要调用会放弃CPU的函数(如信号量、mutex锁等);
  14. +
  15. kretprobe通过替换返回地址为预定义的trampoline的地址来实现,因此栈回溯和gcc内嵌函数__builtin_return_address()调用将返回trampoline的地址而不是真正的被探测函数的返回地址;
  16. +
  17. 如果一个函数的调用次数和返回次数不相等,则在类似这样的函数上注册kretprobe将可能不会达到预期的效果,例如do_exit()函数会存在问题,而do_execve()函数和do_fork()函数不会;
  18. +
  19. 如果当在进入和退出一个函数时,CPU运行在非当前任务所有的栈上,那么往该函数上注册kretprobe可能会导致不可预料的后果,因此,kprobes不支持在X86_64的结构下为__switch_to()函数注册kretprobe,将直接返回-EINVAL。
  20. +
+

kprobe

+
#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include <bpf/bpf_core_read.h>
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+SEC("kprobe/do_unlinkat")
+int BPF_KPROBE(do_unlinkat, int dfd, struct filename *name)
+{
+ pid_t pid;
+ const char *filename;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ filename = BPF_CORE_READ(name, name);
+ bpf_printk("KPROBE ENTRY pid = %d, filename = %s\n", pid, filename);
+ return 0;
+}
+
+SEC("kretprobe/do_unlinkat")
+int BPF_KRETPROBE(do_unlinkat_exit, long ret)
+{
+ pid_t pid;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_printk("KPROBE EXIT: pid = %d, ret = %ld\n", pid, ret);
+ return 0;
+}
+
+

kprobe 是 eBPF 用于处理内核空间入口和出口(返回)探针(kprobe 和 kretprobe)的一个例子。它将 kprobe 和 kretprobe BPF 程序附加到 do_unlinkat() 函数上,并使用 bpf_printk() 宏分别记录 PID、文件名和返回值。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。

+

要编译这个程序,请使用 ecc 工具:

+
$ ecc kprobe-link.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

然后运行:

+
sudo ecli package.json
+
+

在另外一个窗口中:

+
touch test1
+rm test1
+touch test2
+rm test2
+
+

在 /sys/kernel/debug/tracing/trace_pipe 文件中,应该能看到类似下面的 kprobe 演示输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+              rm-9346    [005] d..3  4710.951696: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test1
+              rm-9346    [005] d..4  4710.951819: bpf_trace_printk: KPROBE EXIT: ret = 0
+              rm-9346    [005] d..3  4710.951852: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test2
+              rm-9346    [005] d..4  4710.951895: bpf_trace_printk: KPROBE EXIT: ret = 0
+
+

总结

+

通过本文的示例,我们学习了如何使用 eBPF 的 kprobe 和 kretprobe 捕获 unlink 系统调用。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

本文是 eBPF 入门开发实践教程的第二篇。下一篇文章将介绍如何在 eBPF 中使用 fentry 监测捕获 unlink 系统调用。

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第三篇,在 eBPF 中使用 fentry 捕获 unlink 系统调用。

+

Fentry

+
#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+SEC("fentry/do_unlinkat")
+int BPF_PROG(do_unlinkat, int dfd, struct filename *name)
+{
+ pid_t pid;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_printk("fentry: pid = %d, filename = %s\n", pid, name->name);
+ return 0;
+}
+
+SEC("fexit/do_unlinkat")
+int BPF_PROG(do_unlinkat_exit, int dfd, struct filename *name, long ret)
+{
+ pid_t pid;
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_printk("fexit: pid = %d, filename = %s, ret = %ld\n", pid, name->name, ret);
+ return 0;
+}
+
+

这段程序通过定义两个函数,分别附加到 do_unlinkat 和 do_unlinkat_exit 上。这两个函数分别在进入 do_unlinkat 和离开 do_unlinkat 时执行。这两个函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数来获取调用 do_unlinkat 的进程 ID,文件名和返回值,并在内核日志中打印出来。

+

与 kprobes 相比,fentry 和 fexit 程序有更高的性能和可用性。在这个例子中,我们可以直接访问函数的指针参数,就像在普通的 C 代码中一样,而不需要使用各种读取帮助程序。fexit 和 kretprobe 程序最大的区别在于,fexit 程序可以访问函数的输入参数和返回值,而 kretprobe 只能访问返回值。

+

从 5.5 内核开始,fentry 和 fexit 程序可用。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
$ ecc fentry-link.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

在另外一个窗口中:

+
touch test_file
+rm test_file
+touch test_file2
+rm test_file2
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+              rm-9290    [004] d..2  4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file
+              rm-9290    [004] d..2  4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file, ret = 0
+              rm-9290    [004] d..2  4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file2
+              rm-9290    [004] d..2  4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file2, ret = 0
+
+

总结

+

这段程序是一个 eBPF 程序,通过使用 fentry 和 fexit 捕获 do_unlinkat 和 do_unlinkat_exit 函数,并通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 do_unlinkat 的进程 ID、文件名和返回值,并在内核日志中打印出来。

+

编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令,并通过查看 /sys/kernel/debug/tracing/trace_pipe 文件查看 eBPF 程序的输出。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第四篇,主要介绍如何捕获进程打开文件的系统调用集合,并使用全局变量在 eBPF 中过滤进程 pid。

+

在 eBPF 中捕获进程打开文件的系统调用集合

+

首先,我们需要编写一段 eBPF 程序来捕获进程打开文件的系统调用,具体实现如下:

+
#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+
+/// @description "Process ID to trace"
+const volatile int pid_target = 0;
+
+SEC("tracepoint/syscalls/sys_enter_openat")
+int tracepoint__syscalls__sys_enter_openat(struct trace_event_raw_sys_enter* ctx)
+{
+ u64 id = bpf_get_current_pid_tgid();
+ u32 pid = id;
+
+ if (pid_target && pid_target != pid)
+  return false;
+ // Use bpf_printk to print the process information
+ bpf_printk("Process ID: %d enter sys openat\n", pid);
+ return 0;
+}
+
+/// "Trace open family syscalls."
+char LICENSE[] SEC("license") = "GPL";
+
+
+

上面的 eBPF 程序通过定义函数 tracepoint__syscalls__sys_enter_openat 并使用 SEC 宏把它们附加到 sys_enter_openat 的 tracepoint(即在进入 openat 系统调用时执行)。这个函数通过使用 bpf_get_current_pid_tgid 函数获取调用 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
$ ecc fentry-link.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+           <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 3840345 enter sys openat
+           <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 3840345 enter sys openat
+
+

此时,我们已经能够捕获进程打开文件的系统调用了。

+

使用全局变量在 eBPF 中过滤进程 pid

+

在上面的程序中,我们定义了一个全局变量 pid_target 来指定要捕获的进程的 pid。在 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数中,我们可以使用这个全局变量来过滤输出,只输出指定的进程的信息。

+

可以通过执行 ecli -h 命令来查看 opensnoop 的帮助信息:

+
$ ecli package.json -h
+Usage: opensnoop_bpf [--help] [--version] [--verbose] [--pid_target VAR]
+
+Trace open family syscalls.
+
+Optional arguments:
+  -h, --help    shows help message and exits 
+  -v, --version prints version information and exits 
+  --verbose     prints libbpf debug information 
+  --pid_target  Process ID to trace 
+
+Built with eunomia-bpf framework.
+See https://github.com/eunomia-bpf/eunomia-bpf for more information.
+
+

可以通过 --pid_target 参数来指定要捕获的进程的 pid,例如:

+
$ sudo ./ecli run package.json  --pid_target 618
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+           <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 618 enter sys openat
+           <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 618 enter sys openat
+
+

总结

+

本文介绍了如何使用 eBPF 程序来捕获进程打开文件的系统调用。在 eBPF 程序中,我们可以通过定义 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数并使用 SEC 宏把它们附加到 sys_enter_open 和 sys_enter_openat 两个 tracepoint 来捕获进程打开文件的系统调用。我们可以使用 bpf_get_current_pid_tgid 函数获取调用 open 或 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。在 eBPF 程序中,我们还可以通过定义一个全局变量 pid_target 来指定要捕获的进程的 pid,从而过滤输出,只输出指定的进程的信息。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第五篇,主要介绍如何使用 uprobe 捕获 bash 的 readline 函数调用。

+

什么是uprobe

+

uprobe是一种用户空间探针,uprobe探针允许在用户空间程序中动态插桩,插桩位置包括:函数入口、特定偏移处,以及函数返回处。当我们定义uprobe时,内核会在附加的指令上创建快速断点指令(x86机器上为int3指令),当程序执行到该指令时,内核将触发事件,程序陷入到内核态,并以回调函数的方式调用探针函数,执行完探针函数再返回到用户态继续执行后序的指令。

+

uprobe基于文件,当一个二进制文件中的一个函数被跟踪时,所有使用到这个文件的进程都会被插桩,包括那些尚未启动的进程,这样就可以在全系统范围内跟踪系统调用。

+

uprobe适用于在用户态去解析一些内核态探针无法解析的流量,例如http2流量(报文header被编码,内核无法解码),https流量(加密流量,内核无法解密)。

+

使用 uprobe 捕获 bash 的 readline 函数调用

+

uprobe 是一种用于捕获用户空间函数调用的 eBPF 的探针,我们可以通过它来捕获用户空间程序调用的系统函数。

+

例如,我们可以使用 uprobe 来捕获 bash 的 readline 函数调用,从而获取用户在 bash 中输入的命令行。示例代码如下:

+
#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+#define TASK_COMM_LEN 16
+#define MAX_LINE_SIZE 80
+
+/* Format of u[ret]probe section definition supporting auto-attach:
+ * u[ret]probe/binary:function[+offset]
+ *
+ * binary can be an absolute/relative path or a filename; the latter is resolved to a
+ * full binary path via bpf_program__attach_uprobe_opts.
+ *
+ * Specifying uprobe+ ensures we carry out strict matching; either "uprobe" must be
+ * specified (and auto-attach is not possible) or the above format is specified for
+ * auto-attach.
+ */
+SEC("uretprobe//bin/bash:readline")
+int BPF_KRETPROBE(printret, const void *ret)
+{
+ char str[MAX_LINE_SIZE];
+ char comm[TASK_COMM_LEN];
+ u32 pid;
+
+ if (!ret)
+  return 0;
+
+ bpf_get_current_comm(&comm, sizeof(comm));
+
+ pid = bpf_get_current_pid_tgid() >> 32;
+ bpf_probe_read_user_str(str, sizeof(str), ret);
+
+ bpf_printk("PID %d (%s) read: %s ", pid, comm, str);
+
+ return 0;
+};
+
+char LICENSE[] SEC("license") = "GPL";
+
+

这段代码的作用是在 bash 的 readline 函数返回时执行指定的 BPF_KRETPROBE 函数,即 printret 函数。

+

在 printret 函数中,我们首先获取了调用 readline 函数的进程的进程名称和进程 ID,然后通过 bpf_probe_read_user_str 函数读取了用户输入的命令行字符串,最后通过 bpf_printk 函数打印出进程 ID、进程名称和输入的命令行字符串。

+

除此之外,我们还需要通过 SEC 宏来定义 uprobe 探针,并使用 BPF_KRETPROBE 宏来定义探针函数。

+

在 SEC 宏中,我们需要指定 uprobe 的类型、要捕获的二进制文件的路径和要捕获的函数名称。例如,上面的代码中的 SEC 宏的定义如下:

+
SEC("uprobe//bin/bash:readline")
+
+

这表示我们要捕获的是 /bin/bash 二进制文件中的 readline 函数。

+

接下来,我们需要使用 BPF_KRETPROBE 宏来定义探针函数,例如:

+
BPF_KRETPROBE(printret, const void *ret)
+
+

这里的 printret 是探针函数的名称,const void *ret 是探针函数的参数,它代表被捕获的函数的返回值。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
$ ecc bashreadline.bpf.c bashreadline.h
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+            bash-32969   [000] d..31 64001.375748: bpf_trace_printk: PID 32969 (bash) read: fff 
+            bash-32969   [000] d..31 64002.056951: bpf_trace_printk: PID 32969 (bash) read: fff
+
+

可以看到,我们成功的捕获了 bash 的 readline 函数调用,并获取了用户在 bash 中输入的命令行。

+

总结

+

在上述代码中,我们使用了 SEC 宏来定义了一个 uprobe 探针,它指定了要捕获的用户空间程序 (bin/bash) 和要捕获的函数 (readline)。此外,我们还使用了 BPF_KRETPROBE 宏来定义了一个用于处理 readline 函数返回值的回调函数 (printret)。该函数可以获取到 readline 函数的返回值,并将其打印到内核日志中。通过这样的方式,我们就可以使用 eBPF 来捕获 bash 的 readline 函数调用,并获取用户在 bash 中输入的命令行。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第六篇,主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。

+

sigsnoop

+

示例代码如下:

+
#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+#define MAX_ENTRIES 10240
+#define TASK_COMM_LEN 16
+
+struct event {
+ unsigned int pid;
+ unsigned int tpid;
+ int sig;
+ int ret;
+ char comm[TASK_COMM_LEN];
+};
+
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, __u32);
+ __type(value, struct event);
+} values SEC(".maps");
+
+
+static int probe_entry(pid_t tpid, int sig)
+{
+ struct event event = {};
+ __u64 pid_tgid;
+ __u32 tid;
+
+ pid_tgid = bpf_get_current_pid_tgid();
+ tid = (__u32)pid_tgid;
+ event.pid = pid_tgid >> 32;
+ event.tpid = tpid;
+ event.sig = sig;
+ bpf_get_current_comm(event.comm, sizeof(event.comm));
+ bpf_map_update_elem(&values, &tid, &event, BPF_ANY);
+ return 0;
+}
+
+static int probe_exit(void *ctx, int ret)
+{
+ __u64 pid_tgid = bpf_get_current_pid_tgid();
+ __u32 tid = (__u32)pid_tgid;
+ struct event *eventp;
+
+ eventp = bpf_map_lookup_elem(&values, &tid);
+ if (!eventp)
+  return 0;
+
+ eventp->ret = ret;
+ bpf_printk("PID %d (%s) sent signal %d to PID %d, ret = %d",
+     eventp->pid, eventp->comm, eventp->sig, eventp->tpid, ret);
+
+cleanup:
+ bpf_map_delete_elem(&values, &tid);
+ return 0;
+}
+
+SEC("tracepoint/syscalls/sys_enter_kill")
+int kill_entry(struct trace_event_raw_sys_enter *ctx)
+{
+ pid_t tpid = (pid_t)ctx->args[0];
+ int sig = (int)ctx->args[1];
+
+ return probe_entry(tpid, sig);
+}
+
+SEC("tracepoint/syscalls/sys_exit_kill")
+int kill_exit(struct trace_event_raw_sys_exit *ctx)
+{
+ return probe_exit(ctx, ctx->ret);
+}
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+

上面的代码定义了一个 eBPF 程序,用于捕获进程发送信号的系统调用,包括 kill、tkill 和 tgkill。它通过使用 tracepoint 来捕获系统调用的进入和退出事件,并在这些事件发生时执行指定的探针函数,例如 probe_entry 和 probe_exit。

+

在探针函数中,我们使用 bpf_map 存储捕获的事件信息,包括发送信号的进程 ID、接收信号的进程 ID、信号值和系统调用的返回值。在系统调用退出时,我们将获取存储在 bpf_map 中的事件信息,并使用 bpf_printk 打印进程 ID、进程名称、发送的信号和系统调用的返回值。

+

最后,我们还需要使用 SEC 宏来定义探针,并指定要捕获的系统调用的名称,以及要执行的探针函数。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

编译运行上述代码:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

或者

+
$ ecc sigsnoop.bpf.c sigsnoop.h
+Compiling bpf object...
+Generating export types...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+            node-3517    [003] d..31 82575.798191: bpf_trace_printk: PID 3517 (node) sent signal 0 to PID 3427, ret = 0
+            node-15194   [003] d..31 82575.849227: bpf_trace_printk: PID 15194 (node) sent signal 0 to PID 3427, ret = 0
+            node-30016   [003] d..31 82576.001361: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0
+    cpptools-srv-38617   [002] d..31 82576.461085: bpf_trace_printk: PID 38617 (cpptools-srv) sent signal 0 to PID 30496, ret = 0
+            node-30040   [002] d..31 82576.467720: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0
+
+

总结

+

本文主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。使用 hash map 需要定义一个结构体:

+
struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, __u32);
+ __type(value, struct event);
+} values SEC(".maps");
+
+

并使用一些对应的 API 进行访问,例如 bpf_map_lookup_elem、bpf_map_update_elem、bpf_map_delete_elem 等。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第七篇,主要介绍如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,不需要再通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出。通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。

+

perf buffer

+

eBPF 提供了两个环形缓冲区,可以用来将信息从 eBPF 程序传输到用户区控制器。第一个是perf环形缓冲区,,它至少从内核v4.15开始就存在了。第二个是后来引入的 BPF 环形缓冲区。本文只考虑perf环形缓冲区。

+

execsnoop

+

通过 perf event array 向用户态命令行打印输出,需要编写一个头文件,一个 C 源文件。示例代码如下:

+

头文件:execsnoop.h

+
#ifndef __EXECSNOOP_H
+#define __EXECSNOOP_H
+
+#define TASK_COMM_LEN 16
+
+struct event {
+ int pid;
+ int ppid;
+ int uid;
+ int retval;
+ bool is_exit;
+ char comm[TASK_COMM_LEN];
+};
+
+#endif /* __EXECSNOOP_H */
+
+

源文件:execsnoop.bpf.c

+
// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
+#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_core_read.h>
+#include "execsnoop.h"
+
+struct {
+ __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY);
+ __uint(key_size, sizeof(u32));
+ __uint(value_size, sizeof(u32));
+} events SEC(".maps");
+
+SEC("tracepoint/syscalls/sys_enter_execve")
+int tracepoint__syscalls__sys_enter_execve(struct trace_event_raw_sys_enter* ctx)
+{
+ u64 id;
+ pid_t pid, tgid;
+ struct event event;
+ struct task_struct *task;
+
+ uid_t uid = (u32)bpf_get_current_uid_gid();
+ id = bpf_get_current_pid_tgid();
+ pid = (pid_t)id;
+ tgid = id >> 32;
+
+ event.pid = tgid;
+ event.uid = uid;
+ task = (struct task_struct*)bpf_get_current_task();
+ event.ppid = BPF_CORE_READ(task, real_parent, tgid);
+ bpf_get_current_comm(&event.comm, sizeof(event.comm));
+ bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event));
+ return 0;
+}
+
+char LICENSE[] SEC("license") = "GPL";
+
+

这段代码定义了个 eBPF 程序,用于捕获进程执行 execve 系统调用的入口。

+

在入口程序中,我们首先获取了当前进程的进程 ID 和用户 ID,然后通过 bpf_get_current_task 函数获取了当前进程的 task_struct 结构体,并通过 bpf_probe_read_str 函数读取了进程名称。最后,我们通过 bpf_perf_event_output 函数将进程执行事件输出到 perf buffer。

+

使用这段代码,我们就可以捕获 Linux 内核中进程执行的事件, 并分析进程的执行情况。

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

使用容器编译:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

或者使用 ecc 编译:

+
ecc execsnoop.bpf.c execsnoop.h
+
+

运行

+
$ sudo ./ecli run package.json 
+TIME     PID     PPID    UID     COMM    
+21:28:30  40747  3517    1000    node
+21:28:30  40748  40747   1000    sh
+21:28:30  40749  3517    1000    node
+21:28:30  40750  40749   1000    sh
+21:28:30  40751  3517    1000    node
+21:28:30  40752  40751   1000    sh
+21:28:30  40753  40752   1000    cpuUsage.sh
+
+

总结

+

本文介绍了如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。在 libbpf 对应的内核态代码中,定义这样一个结构体和对应的头文件:

+
struct {
+ __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY);
+ __uint(key_size, sizeof(u32));
+ __uint(value_size, sizeof(u32));
+} events SEC(".maps");
+
+

就可以往用户态直接发送信息。

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件。

+

ring buffer

+

现在有一个新的 BPF 数据结构可用。BPF 环形缓冲区(ring buffer)。它解决了 BPF perf buffer(当今从内核向用户空间发送数据的事实上的标准)的内存效率和事件重排问题,同时达到或超过了它的性能。它既提供了与 perf buffer 兼容以方便迁移,又有新的保留/提交API,具有更好的可用性。另外,合成和真实世界的基准测试表明,在几乎所有的情况下,所以考虑将其作为从BPF程序向用户空间发送数据的默认选择。

+

BPF ringbuf vs BPF perfbuf

+

今天,只要BPF程序需要将收集到的数据发送到用户空间进行后处理和记录,它通常会使用BPF perf buffer(perfbuf)来实现。Perfbuf 是每个CPU循环缓冲区的集合,它允许在内核和用户空间之间有效地交换数据。它在实践中效果很好,但由于其按CPU设计,它有两个主要的缺点,在实践中被证明是不方便的:内存的低效使用和事件的重新排序。

+

为了解决这些问题,从Linux 5.8开始,BPF提供了一个新的BPF数据结构(BPF map)。BPF环形缓冲区(ringbuf)。它是一个多生产者、单消费者(MPSC)队列,可以同时在多个CPU上安全共享。

+

BPF ringbuf 支持来自 BPF perfbuf 的熟悉的功能:

+
    +
  • 变长的数据记录。
  • +
  • 能够通过内存映射区域有效地从用户空间读取数据,而不需要额外的内存拷贝和/或进入内核的系统调用。
  • +
  • 既支持epoll通知,又能以绝对最小的延迟进行忙环操作。
  • +
+

同时,BPF ringbuf解决了BPF perfbuf的以下问题:

+
    +
  • 内存开销。
  • +
  • 数据排序。
  • +
  • 浪费的工作和额外的数据复制。
  • +
+

exitsnoop

+

本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件,并使用 ring buffer 向用户态打印输出。

+

使用 ring buffer 向用户态打印输出的步骤和 perf buffer 类似,首先需要定义一个头文件:

+

头文件:exitsnoop.h

+
#ifndef __BOOTSTRAP_H
+#define __BOOTSTRAP_H
+
+#define TASK_COMM_LEN 16
+#define MAX_FILENAME_LEN 127
+
+struct event {
+	int pid;
+	int ppid;
+	unsigned exit_code;
+	unsigned long long duration_ns;
+	char comm[TASK_COMM_LEN];
+};
+
+#endif /* __BOOTSTRAP_H */
+
+

源文件:exitsnoop.bpf.c

+
#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include <bpf/bpf_core_read.h>
+#include "exitsnoop.h"
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+struct {
+ __uint(type, BPF_MAP_TYPE_RINGBUF);
+ __uint(max_entries, 256 * 1024);
+} rb SEC(".maps");
+
+SEC("tp/sched/sched_process_exit")
+int handle_exit(struct trace_event_raw_sched_process_template* ctx)
+{
+ struct task_struct *task;
+ struct event *e;
+ pid_t pid, tid;
+ u64 id, ts, *start_ts, duration_ns = 0;
+ 
+ /* get PID and TID of exiting thread/process */
+ id = bpf_get_current_pid_tgid();
+ pid = id >> 32;
+ tid = (u32)id;
+
+ /* ignore thread exits */
+ if (pid != tid)
+  return 0;
+
+ /* reserve sample from BPF ringbuf */
+ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0);
+ if (!e)
+  return 0;
+
+ /* fill out the sample with data */
+ task = (struct task_struct *)bpf_get_current_task();
+
+ e->duration_ns = duration_ns;
+ e->pid = pid;
+ e->ppid = BPF_CORE_READ(task, real_parent, tgid);
+ e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff;
+ bpf_get_current_comm(&e->comm, sizeof(e->comm));
+
+ /* send data to user-space for post-processing */
+ bpf_ringbuf_submit(e, 0);
+ return 0;
+}
+
+

这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件。

+

该程序通过注册一个 tracepoint,来监控进程退出事件。Tracepoint 是一种内核特性,允许内核模块获取特定事件的通知。在本程序中,注册的 tracepoint 是“tp/sched/sched_process_exit”,表示该程序监控的是进程退出事件。

+

当系统中发生进程退出事件时,BPF 程序会捕获该事件,并调用“handle_exit”函数来处理它。该函数首先检查当前退出事件是否是进程退出事件(而不是线程退出事件),然后在 BPF 环形缓冲区(“rb”)中保留一个事件结构体,并填充该结构体中的其他信息,例如进程 ID、进程名称、退出代码和退出信号等信息。最后,该函数还会调用 BPF 的“perf_event_output”函数,将捕获的事件发送给用户空间程序。

+

总而言之,这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件.

+

Compile and Run

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

Compile:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

Or

+
$ ecc exitsnoop.bpf.c exitsnoop.h
+Compiling bpf object...
+Generating export types...
+Packing ebpf object and config into package.json...
+
+

Run:

+
$ sudo ./ecli run package.json 
+TIME     PID     PPID    EXIT_CODE  DURATION_NS  COMM    
+21:40:09  42050  42049   0          0            which
+21:40:09  42049  3517    0          0            sh
+21:40:09  42052  42051   0          0            ps
+21:40:09  42051  3517    0          0            sh
+21:40:09  42055  42054   0          0            sed
+21:40:09  42056  42054   0          0            cat
+21:40:09  42057  42054   0          0            cat
+21:40:09  42058  42054   0          0            cat
+21:40:09  42059  42054   0          0            cat
+
+

总结

+

本文介绍了如何使用 eunomia-bpf 开发一个简单的 BPF 程序,该程序可以监控 Linux 系统中的进程退出事件, 并将捕获的事件通过 ring buffer 发送给用户空间程序。在本文中,我们使用 eunomia-bpf 编译运行了这个例子。如果你想了解更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

runqlat是什么?

+

bcc-tools 是一组用于在 Linux 系统上使用 BPF 程序的工具。runqlat 是 bcc-tools 中的一个工具,用于分析 Linux 系统的调度性能。具体来说,runqlat 用于测量一个任务在被调度到 CPU 上运行之前在运行队列中等待的时间。这些信息对于识别性能瓶颈和提高 Linux 内核调度算法的整体效率非常有用。

+

runqlat 原理

+

runqlat 使用内核跟踪点和函数探针的结合来测量进程在运行队列中的时间。当进程被排队时,trace_enqueue 函数会在一个映射中记录时间戳。当进程被调度到 CPU 上运行时,handle_switch 函数会检索时间戳,并计算当前时间与排队时间之间的时间差。这个差值(或 delta)然后用于更新进程的直方图,该直方图记录运行队列延迟的分布。该直方图可用于分析 Linux 内核的调度性能。

+

runqlat 代码实现

+

首先我们需要编写一个源代码文件 runqlat.bpf.c:

+
// SPDX-License-Identifier: GPL-2.0
+// Copyright (c) 2020 Wenbo Zhang
+#include <vmlinux.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_core_read.h>
+#include <bpf/bpf_tracing.h>
+#include "runqlat.h"
+#include "bits.bpf.h"
+#include "maps.bpf.h"
+#include "core_fixes.bpf.h"
+
+#define MAX_ENTRIES 10240
+#define TASK_RUNNING  0
+
+const volatile bool filter_cg = false;
+const volatile bool targ_per_process = false;
+const volatile bool targ_per_thread = false;
+const volatile bool targ_per_pidns = false;
+const volatile bool targ_ms = false;
+const volatile pid_t targ_tgid = 0;
+
+struct {
+ __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY);
+ __type(key, u32);
+ __type(value, u32);
+ __uint(max_entries, 1);
+} cgroup_map SEC(".maps");
+
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, u32);
+ __type(value, u64);
+} start SEC(".maps");
+
+static struct hist zero;
+
+/// @sample {"interval": 1000, "type" : "log2_hist"}
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, u32);
+ __type(value, struct hist);
+} hists SEC(".maps");
+
+static int trace_enqueue(u32 tgid, u32 pid)
+{
+ u64 ts;
+
+ if (!pid)
+  return 0;
+ if (targ_tgid && targ_tgid != tgid)
+  return 0;
+
+ ts = bpf_ktime_get_ns();
+ bpf_map_update_elem(&start, &pid, &ts, BPF_ANY);
+ return 0;
+}
+
+static unsigned int pid_namespace(struct task_struct *task)
+{
+ struct pid *pid;
+ unsigned int level;
+ struct upid upid;
+ unsigned int inum;
+
+ /*  get the pid namespace by following task_active_pid_ns(),
+  *  pid->numbers[pid->level].ns
+  */
+ pid = BPF_CORE_READ(task, thread_pid);
+ level = BPF_CORE_READ(pid, level);
+ bpf_core_read(&upid, sizeof(upid), &pid->numbers[level]);
+ inum = BPF_CORE_READ(upid.ns, ns.inum);
+
+ return inum;
+}
+
+static int handle_switch(bool preempt, struct task_struct *prev, struct task_struct *next)
+{
+ struct hist *histp;
+ u64 *tsp, slot;
+ u32 pid, hkey;
+ s64 delta;
+
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ if (get_task_state(prev) == TASK_RUNNING)
+  trace_enqueue(BPF_CORE_READ(prev, tgid), BPF_CORE_READ(prev, pid));
+
+ pid = BPF_CORE_READ(next, pid);
+
+ tsp = bpf_map_lookup_elem(&start, &pid);
+ if (!tsp)
+  return 0;
+ delta = bpf_ktime_get_ns() - *tsp;
+ if (delta < 0)
+  goto cleanup;
+
+ if (targ_per_process)
+  hkey = BPF_CORE_READ(next, tgid);
+ else if (targ_per_thread)
+  hkey = pid;
+ else if (targ_per_pidns)
+  hkey = pid_namespace(next);
+ else
+  hkey = -1;
+ histp = bpf_map_lookup_or_try_init(&hists, &hkey, &zero);
+ if (!histp)
+  goto cleanup;
+ if (!histp->comm[0])
+  bpf_probe_read_kernel_str(&histp->comm, sizeof(histp->comm),
+     next->comm);
+ if (targ_ms)
+  delta /= 1000000U;
+ else
+  delta /= 1000U;
+ slot = log2l(delta);
+ if (slot >= MAX_SLOTS)
+  slot = MAX_SLOTS - 1;
+ __sync_fetch_and_add(&histp->slots[slot], 1);
+
+cleanup:
+ bpf_map_delete_elem(&start, &pid);
+ return 0;
+}
+
+SEC("raw_tp/sched_wakeup")
+int BPF_PROG(handle_sched_wakeup, struct task_struct *p)
+{
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));
+}
+
+SEC("raw_tp/sched_wakeup_new")
+int BPF_PROG(handle_sched_wakeup_new, struct task_struct *p)
+{
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));
+}
+
+SEC("raw_tp/sched_switch")
+int BPF_PROG(handle_sched_switch, bool preempt, struct task_struct *prev, struct task_struct *next)
+{
+ return handle_switch(preempt, prev, next);
+}
+
+char LICENSE[] SEC("license") = "GPL";
+
+

然后我们需要定义一个头文件runqlat.h,用来给用户态处理从内核态上报的事件:

+
/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */
+#ifndef __RUNQLAT_H
+#define __RUNQLAT_H
+
+#define TASK_COMM_LEN 16
+#define MAX_SLOTS 26
+
+struct hist {
+ __u32 slots[MAX_SLOTS];
+ char comm[TASK_COMM_LEN];
+};
+
+#endif /* __RUNQLAT_H */
+
+

这是一个 Linux 内核 BPF 程序,旨在收集和报告运行队列的延迟。BPF 是 Linux 内核中一项技术,它允许将程序附加到内核中的特定点并进行安全高效的执行。这些程序可用于收集有关内核行为的信息,并实现自定义行为。这个 BPF 程序使用 BPF maps 来收集有关任务何时从内核的运行队列中排队和取消排队的信息,并记录任务在被安排执行之前在运行队列上等待的时间。然后,它使用这些信息生成直方图,显示不同组任务的运行队列延迟分布。这些直方图可用于识别和诊断内核调度行为中的性能问题。

+

编译运行

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

Compile:

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

或者

+
$ ecc runqlat.bpf.c runqlat.h
+Compiling bpf object...
+Generating export types...
+Packing ebpf object and config into package.json...
+
+

Run:

+
$ sudo ecli examples/bpftools/runqlat/package.json -h
+Usage: runqlat_bpf [--help] [--version] [--verbose] [--filter_cg] [--targ_per_process] [--targ_per_thread] [--targ_per_pidns] [--targ_ms] [--targ_tgid VAR]
+
+A simple eBPF program
+
+Optional arguments:
+  -h, --help            shows help message and exits 
+  -v, --version         prints version information and exits 
+  --verbose             prints libbpf debug information 
+  --filter_cg           set value of bool variable filter_cg 
+  --targ_per_process    set value of bool variable targ_per_process 
+  --targ_per_thread     set value of bool variable targ_per_thread 
+  --targ_per_pidns      set value of bool variable targ_per_pidns 
+  --targ_ms             set value of bool variable targ_ms 
+  --targ_tgid           set value of pid_t variable targ_tgid 
+
+Built with eunomia-bpf framework.
+See https://github.com/eunomia-bpf/eunomia-bpf for more information.
+
+$ sudo ecli examples/bpftools/runqlat/package.json
+key =  4294967295
+comm = rcu_preempt
+
+     (unit)              : count    distribution
+         0 -> 1          : 9        |****                                    |
+         2 -> 3          : 6        |**                                      |
+         4 -> 7          : 12       |*****                                   |
+         8 -> 15         : 28       |*************                           |
+        16 -> 31         : 40       |*******************                     |
+        32 -> 63         : 83       |****************************************|
+        64 -> 127        : 57       |***************************             |
+       128 -> 255        : 19       |*********                               |
+       256 -> 511        : 11       |*****                                   |
+       512 -> 1023       : 2        |                                        |
+      1024 -> 2047       : 2        |                                        |
+      2048 -> 4095       : 0        |                                        |
+      4096 -> 8191       : 0        |                                        |
+      8192 -> 16383      : 0        |                                        |
+     16384 -> 32767      : 1        |                                        |
+
+$ sudo ecli examples/bpftools/runqlat/package.json --targ_per_process
+key =  3189
+comm = cpptools
+
+     (unit)              : count    distribution
+         0 -> 1          : 0        |                                        |
+         2 -> 3          : 0        |                                        |
+         4 -> 7          : 0        |                                        |
+         8 -> 15         : 1        |***                                     |
+        16 -> 31         : 2        |*******                                 |
+        32 -> 63         : 11       |****************************************|
+        64 -> 127        : 8        |*****************************           |
+       128 -> 255        : 3        |**********                              |
+
+

总结

+

runqlat 是一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度。编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。

+

runqlat 是一种用于监控Linux内核中进程调度延迟的工具。它可以帮助您了解进程在内核中等待执行的时间,并根据这些信息优化进程调度,提高系统的性能。可以在 libbpf-tools 中找到最初的源代码:https://github.com/iovisor/bcc/blob/master/libbpf-tools/runqlat.bpf.c

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

本文是 eBPF 入门开发实践教程的第十篇,在 eBPF 中。

+

hardirqs是什么?

+

hardirqs 是 bcc-tools 工具包的一部分,该工具包是一组用于在 Linux 系统上执行系统跟踪和分析的实用程序。 +hardirqs 是一种用于跟踪和分析 Linux 内核中的中断处理程序的工具。它使用 BPF(Berkeley Packet Filter)程序来收集有关中断处理程序的数据, +并可用于识别内核中的性能问题和其他与中断处理相关的问题。

+

实现原理

+

在 Linux 内核中,每个中断处理程序都有一个唯一的名称,称为中断向量。hardirqs 通过检查每个中断处理程序的中断向量,来监控内核中的中断处理程序。当内核接收到一个中断时,它会查找与该中断相关的中断处理程序,并执行该程序。hardirqs 通过检查内核中执行的中断处理程序,来监控内核中的中断处理程序。另外,hardirqs 还可以通过注入 BPF 程序到内核中,来捕获内核中的中断处理程序。这样,hardirqs 就可以监控内核中执行的中断处理程序,并收集有关它们的信息。

+

代码实现

+
// SPDX-License-Identifier: GPL-2.0
+// Copyright (c) 2020 Wenbo Zhang
+#include <vmlinux.h>
+#include <bpf/bpf_core_read.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include "hardirqs.h"
+#include "bits.bpf.h"
+#include "maps.bpf.h"
+
+#define MAX_ENTRIES 256
+
+const volatile bool filter_cg = false;
+const volatile bool targ_dist = false;
+const volatile bool targ_ns = false;
+const volatile bool do_count = false;
+
+struct {
+ __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY);
+ __type(key, u32);
+ __type(value, u32);
+ __uint(max_entries, 1);
+} cgroup_map SEC(".maps");
+
+struct {
+ __uint(type, BPF_MAP_TYPE_PERCPU_ARRAY);
+ __uint(max_entries, 1);
+ __type(key, u32);
+ __type(value, u64);
+} start SEC(".maps");
+
+struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, MAX_ENTRIES);
+ __type(key, struct irq_key);
+ __type(value, struct info);
+} infos SEC(".maps");
+
+static struct info zero;
+
+static int handle_entry(int irq, struct irqaction *action)
+{
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ if (do_count) {
+  struct irq_key key = {};
+  struct info *info;
+
+  bpf_probe_read_kernel_str(&key.name, sizeof(key.name), BPF_CORE_READ(action, name));
+  info = bpf_map_lookup_or_try_init(&infos, &key, &zero);
+  if (!info)
+   return 0;
+  info->count += 1;
+  return 0;
+ } else {
+  u64 ts = bpf_ktime_get_ns();
+  u32 key = 0;
+
+  if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+   return 0;
+
+  bpf_map_update_elem(&start, &key, &ts, BPF_ANY);
+  return 0;
+ }
+}
+
+static int handle_exit(int irq, struct irqaction *action)
+{
+ struct irq_key ikey = {};
+ struct info *info;
+ u32 key = 0;
+ u64 delta;
+ u64 *tsp;
+
+ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
+  return 0;
+
+ tsp = bpf_map_lookup_elem(&start, &key);
+ if (!tsp)
+  return 0;
+
+ delta = bpf_ktime_get_ns() - *tsp;
+ if (!targ_ns)
+  delta /= 1000U;
+
+ bpf_probe_read_kernel_str(&ikey.name, sizeof(ikey.name), BPF_CORE_READ(action, name));
+ info = bpf_map_lookup_or_try_init(&infos, &ikey, &zero);
+ if (!info)
+  return 0;
+
+ if (!targ_dist) {
+  info->count += delta;
+ } else {
+  u64 slot;
+
+  slot = log2(delta);
+  if (slot >= MAX_SLOTS)
+   slot = MAX_SLOTS - 1;
+  info->slots[slot]++;
+ }
+
+ return 0;
+}
+
+SEC("tp_btf/irq_handler_entry")
+int BPF_PROG(irq_handler_entry_btf, int irq, struct irqaction *action)
+{
+ return handle_entry(irq, action);
+}
+
+SEC("tp_btf/irq_handler_exit")
+int BPF_PROG(irq_handler_exit_btf, int irq, struct irqaction *action)
+{
+ return handle_exit(irq, action);
+}
+
+SEC("raw_tp/irq_handler_entry")
+int BPF_PROG(irq_handler_entry, int irq, struct irqaction *action)
+{
+ return handle_entry(irq, action);
+}
+
+SEC("raw_tp/irq_handler_exit")
+int BPF_PROG(irq_handler_exit, int irq, struct irqaction *action)
+{
+ return handle_exit(irq, action);
+}
+
+char LICENSE[] SEC("license") = "GPL";
+
+

这是一个 BPF(Berkeley Packet Filter)程序。BPF 程序是小型程序,可以直接在 Linux 内核中运行,用于过滤和操纵网络流量。这个特定的程序似乎旨在收集内核中中断处理程序的统计信息。它定义了一些地图(可以在 BPF 程序和内核的其他部分之间共享的数据结构)和两个函数:handle_entry 和 handle_exit。当内核进入和退出中断处理程序时,分别执行这些函数。handle_entry 函数用于跟踪中断处理程序被执行的次数,而 handle_exit 则用于测量中断处理程序中花费的时间。

+

运行代码

+

eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。

+

要编译这个程序,请使用 ecc 工具:

+
$ ecc hardirqs.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

然后运行:

+
sudo ecli ./package.json
+
+

总结

+

更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。

+

eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用

+

eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。

+

什么是bootstrap?

+

Bootstrap是一个工具,它使用BPF(Berkeley Packet Filter)程序跟踪执行exec()系统调用(使用SEC(“tp/sched/sched_process_exec”)handle_exit BPF程序),这大致对应于新进程的生成(忽略fork()部分)。此外,它还跟踪exit()(使用SEC(“tp/sched/sched_process_exit”)handle_exit BPF程序)以了解每个进程何时退出。这两个BPF程序共同工作,允许捕获有关任何新进程的有趣信息,例如二进制文件的文件名,以及测量进程的生命周期并在进程死亡时收集有趣的统计信息,例如退出代码或消耗的资源量等。我认为这是深入了解内核内部并观察事物如何真正运作的良好起点。

+

Bootstrap还使用argp API(libc的一部分)进行命令行参数解析。

+

Bootstrap

+

TODO: 添加关于用户态的应用部分,以及关于 libbpf-boostrap 的完整介绍。也许可以参考类似:http://cn-sec.com/archives/1267522.html 的文档。

+
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
+/* Copyright (c) 2020 Facebook */
+#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+#include <bpf/bpf_core_read.h>
+#include "bootstrap.h"
+
+char LICENSE[] SEC("license") = "Dual BSD/GPL";
+
+struct {
+	__uint(type, BPF_MAP_TYPE_HASH);
+	__uint(max_entries, 8192);
+	__type(key, pid_t);
+	__type(value, u64);
+} exec_start SEC(".maps");
+
+struct {
+	__uint(type, BPF_MAP_TYPE_RINGBUF);
+	__uint(max_entries, 256 * 1024);
+} rb SEC(".maps");
+
+const volatile unsigned long long min_duration_ns = 0;
+
+SEC("tp/sched/sched_process_exec")
+int handle_exec(struct trace_event_raw_sched_process_exec *ctx)
+{
+	struct task_struct *task;
+	unsigned fname_off;
+	struct event *e;
+	pid_t pid;
+	u64 ts;
+
+	/* remember time exec() was executed for this PID */
+	pid = bpf_get_current_pid_tgid() >> 32;
+	ts = bpf_ktime_get_ns();
+	bpf_map_update_elem(&exec_start, &pid, &ts, BPF_ANY);
+
+	/* don't emit exec events when minimum duration is specified */
+	if (min_duration_ns)
+		return 0;
+
+	/* reserve sample from BPF ringbuf */
+	e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0);
+	if (!e)
+		return 0;
+
+	/* fill out the sample with data */
+	task = (struct task_struct *)bpf_get_current_task();
+
+	e->exit_event = false;
+	e->pid = pid;
+	e->ppid = BPF_CORE_READ(task, real_parent, tgid);
+	bpf_get_current_comm(&e->comm, sizeof(e->comm));
+
+	fname_off = ctx->__data_loc_filename & 0xFFFF;
+	bpf_probe_read_str(&e->filename, sizeof(e->filename), (void *)ctx + fname_off);
+
+	/* successfully submit it to user-space for post-processing */
+	bpf_ringbuf_submit(e, 0);
+	return 0;
+}
+
+SEC("tp/sched/sched_process_exit")
+int handle_exit(struct trace_event_raw_sched_process_template* ctx)
+{
+	struct task_struct *task;
+	struct event *e;
+	pid_t pid, tid;
+	u64 id, ts, *start_ts, duration_ns = 0;
+	
+	/* get PID and TID of exiting thread/process */
+	id = bpf_get_current_pid_tgid();
+	pid = id >> 32;
+	tid = (u32)id;
+
+	/* ignore thread exits */
+	if (pid != tid)
+		return 0;
+
+	/* if we recorded start of the process, calculate lifetime duration */
+	start_ts = bpf_map_lookup_elem(&exec_start, &pid);
+	if (start_ts)
+		duration_ns = bpf_ktime_get_ns() - *start_ts;
+	else if (min_duration_ns)
+		return 0;
+	bpf_map_delete_elem(&exec_start, &pid);
+
+	/* if process didn't live long enough, return early */
+	if (min_duration_ns && duration_ns < min_duration_ns)
+		return 0;
+
+	/* reserve sample from BPF ringbuf */
+	e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0);
+	if (!e)
+		return 0;
+
+	/* fill out the sample with data */
+	task = (struct task_struct *)bpf_get_current_task();
+
+	e->exit_event = true;
+	e->duration_ns = duration_ns;
+	e->pid = pid;
+	e->ppid = BPF_CORE_READ(task, real_parent, tgid);
+	e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff;
+	bpf_get_current_comm(&e->comm, sizeof(e->comm));
+
+	/* send data to user-space for post-processing */
+	bpf_ringbuf_submit(e, 0);
+	return 0;
+}
+
+
+
+

这是一段使用BPF(Berkeley Packet Filter)的C程序,用于跟踪进程启动和退出事件,并显示有关它们的信息。BPF是一种强大的机制,允许您将称为BPF程序的小程序附加到Linux内核的各个部分。这些程序可用于过滤,监视或修改内核的行为。

+

程序首先定义一些常量,并包含一些头文件。然后定义了一个名为env的struct,用于存储一些程序选项,例如详细模式和进程报告的最小持续时间。

+

然后,程序定义了一个名为parse_arg的函数,用于解析传递给程序的命令行参数。它接受三个参数:一个表示正在解析的选项的整数key,一个表示选项参数的字符指针arg和一个表示当前解析状态的struct argp_state指针state。该函数处理选项并在env struct中设置相应的值。

+

然后,程序定义了一个名为sig_handler的函数,当被调用时会将全局标志exiting设置为true。这用于在接收到信号时允许程序干净地退出。

+

接下来,我们将继续描述这段代码中的其他部分。

+

程序定义了一个名为exec_start的BPF map,它的类型为BPF_MAP_TYPE_HASH,最大条目数为8192,键类型为pid_t,值类型为u64。

+

另外,程序还定义了一个名为rb的BPF map,它的类型为BPF_MAP_TYPE_RINGBUF,最大条目数为256 * 1024。

+

程序还定义了一个名为min_duration_ns的常量,其值为0。

+

程序定义了一个名为handle_exec的SEC(static evaluator of code)函数,它被附加到跟踪进程执行的BPF程序上。该函数记录为该PID执行exec()的时间,并在指定了最小持续时间时不发出exec事件。如果未指定最小持续时间,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。

+

程序还定义了一个名为handle_exit的SEC函数,它被附加到跟踪进程退出的BPF程序上。该函数会在确定PID和TID后计算进程的生命周期,然后根据min_duration_ns的值决定是否发出退出事件。如果进程的生命周期足够长,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。

+

最后,主函数调用bpf_ringbuf_poll来轮询BPF ringbuf,并在接收到新的事件时处理该事件。这个函数会持续运行,直到全局标志exiting被设置为true,此时它会清理资源并退出。

+

编译运行上述代码:

+
$ ecc bootstrap.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+$ sudo ecli package.json
+Runing eBPF program...
+
+

总结

+

这是一个使用BPF的C程序,用于跟踪进程的启动和退出事件,并显示有关这些事件的信息。它通过使用argp API来解析命令行参数,并使用BPF地图存储进程的信息,包括进程的PID和执行文件的文件名。程序还使用了SEC函数来附加BPF程序,以监视进程的执行和退出事件。最后,程序在终端中打印出启动和退出的进程信息。

+

编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf

+

eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时

+

背景

+

在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。

+

tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。

+

tcpconnlat 的实现原理

+

tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。

+

tcp 连接原理

+

tcp 连接的整个过程如图所示:

+

tcpconnlate

+

在这个连接过程中,我们来简单分析一下每一步的耗时:

+
    +
  1. 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销
  2. +
  3. SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输
  4. +
  5. 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销
  6. +
  7. SYC/ACK传到客户端:长途网络跋涉
  8. +
  9. 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销
  10. +
  11. ACK传到服务器:长途网络跋涉
  12. +
  13. 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销
  14. +
  15. 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销
  16. +
+

在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。

+

ebpf 实现原理

+

在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是:

+
    +
  • 半连接队列,也称 SYN 队列;
  • +
  • 全连接队列,也称 accepet 队列;
  • +
+

服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。

+

我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中:

+

它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点:

+

+SEC("kprobe/tcp_v4_connect")
+int BPF_KPROBE(tcp_v4_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_v6_connect")
+int BPF_KPROBE(tcp_v6_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_rcv_state_process")
+int BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)
+{
+ return handle_tcp_rcv_state_process(ctx, sk);
+}
+
+

在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中:

+
struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, 4096);
+ __type(key, struct sock *);
+ __type(value, struct piddata);
+} start SEC(".maps");
+
+static int trace_connect(struct sock *sk)
+{
+ u32 tgid = bpf_get_current_pid_tgid() >> 32;
+ struct piddata piddata = {};
+
+ if (targ_tgid && targ_tgid != tgid)
+  return 0;
+
+ bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm));
+ piddata.ts = bpf_ktime_get_ns();
+ piddata.tgid = tgid;
+ bpf_map_update_elem(&start, &sk, &piddata, 0);
+ return 0;
+}
+
+

在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟:

+
static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)
+{
+ struct piddata *piddatap;
+ struct event event = {};
+ s64 delta;
+ u64 ts;
+
+ if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT)
+  return 0;
+
+ piddatap = bpf_map_lookup_elem(&start, &sk);
+ if (!piddatap)
+  return 0;
+
+ ts = bpf_ktime_get_ns();
+ delta = (s64)(ts - piddatap->ts);
+ if (delta < 0)
+  goto cleanup;
+
+ event.delta_us = delta / 1000U;
+ if (targ_min_us && event.delta_us < targ_min_us)
+  goto cleanup;
+ __builtin_memcpy(&event.comm, piddatap->comm,
+   sizeof(event.comm));
+ event.ts_us = ts / 1000;
+ event.tgid = piddatap->tgid;
+ event.lport = BPF_CORE_READ(sk, __sk_common.skc_num);
+ event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport);
+ event.af = BPF_CORE_READ(sk, __sk_common.skc_family);
+ if (event.af == AF_INET) {
+  event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr);
+  event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr);
+ } else {
+  BPF_CORE_READ_INTO(&event.saddr_v6, sk,
+    __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32);
+  BPF_CORE_READ_INTO(&event.daddr_v6, sk,
+    __sk_common.skc_v6_daddr.in6_u.u6_addr32);
+ }
+ bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU,
+   &event, sizeof(event));
+
+cleanup:
+ bpf_map_delete_elem(&start, &sk);
+ return 0;
+}
+
+

编译运行

+
    +
  • git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned
  • +
  • libbpf-bootstrap目录下的文件复制到 libbpf-bootstrap-cloned/examples/c
  • +
  • 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpconnlat
  • +
  • libbpf-bootstrap-cloned/examples/c 下运行 make tcpconnlat
  • +
  • sudo ./tcpconnlat
  • +
+

效果

+
root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpconnlat 
+PID    COMM         IP SADDR            DADDR            DPORT LAT(ms)
+222564 wget         4  192.168.88.15    110.242.68.3     80    25.29
+222684 wget         4  192.168.88.15    167.179.101.42   443   246.76
+222726 ssh          4  192.168.88.15    167.179.101.42   22    241.17
+222774 ssh          4  192.168.88.15    1.15.149.151     22    25.31
+
+

总结

+

通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheusgrafana 等工具进行网络性能分析。

+

来源:https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpconnlat.bpf.c

+

eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时

+

代码解释

+

背景

+

在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。

+

tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。

+

tcpconnlat 的实现原理

+

tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。

+

tcp 连接原理

+

tcp 连接的整个过程如图所示:

+

tcpconnlate

+

在这个连接过程中,我们来简单分析一下每一步的耗时:

+
    +
  1. 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销
  2. +
  3. SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输
  4. +
  5. 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销
  6. +
  7. SYC/ACK传到客户端:长途网络跋涉
  8. +
  9. 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销
  10. +
  11. ACK传到服务器:长途网络跋涉
  12. +
  13. 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销
  14. +
  15. 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销
  16. +
+

在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。

+

ebpf 实现原理

+

在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是:

+
    +
  • 半连接队列,也称 SYN 队列;
  • +
  • 全连接队列,也称 accepet 队列;
  • +
+

服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。

+

我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中:

+

它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点:

+

+SEC("kprobe/tcp_v4_connect")
+int BPF_KPROBE(tcp_v4_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_v6_connect")
+int BPF_KPROBE(tcp_v6_connect, struct sock *sk)
+{
+ return trace_connect(sk);
+}
+
+SEC("kprobe/tcp_rcv_state_process")
+int BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)
+{
+ return handle_tcp_rcv_state_process(ctx, sk);
+}
+
+

在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中:

+
struct {
+ __uint(type, BPF_MAP_TYPE_HASH);
+ __uint(max_entries, 4096);
+ __type(key, struct sock *);
+ __type(value, struct piddata);
+} start SEC(".maps");
+
+static int trace_connect(struct sock *sk)
+{
+ u32 tgid = bpf_get_current_pid_tgid() >> 32;
+ struct piddata piddata = {};
+
+ if (targ_tgid && targ_tgid != tgid)
+  return 0;
+
+ bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm));
+ piddata.ts = bpf_ktime_get_ns();
+ piddata.tgid = tgid;
+ bpf_map_update_elem(&start, &sk, &piddata, 0);
+ return 0;
+}
+
+

在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟:

+
static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)
+{
+ struct piddata *piddatap;
+ struct event event = {};
+ s64 delta;
+ u64 ts;
+
+ if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT)
+  return 0;
+
+ piddatap = bpf_map_lookup_elem(&start, &sk);
+ if (!piddatap)
+  return 0;
+
+ ts = bpf_ktime_get_ns();
+ delta = (s64)(ts - piddatap->ts);
+ if (delta < 0)
+  goto cleanup;
+
+ event.delta_us = delta / 1000U;
+ if (targ_min_us && event.delta_us < targ_min_us)
+  goto cleanup;
+ __builtin_memcpy(&event.comm, piddatap->comm,
+   sizeof(event.comm));
+ event.ts_us = ts / 1000;
+ event.tgid = piddatap->tgid;
+ event.lport = BPF_CORE_READ(sk, __sk_common.skc_num);
+ event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport);
+ event.af = BPF_CORE_READ(sk, __sk_common.skc_family);
+ if (event.af == AF_INET) {
+  event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr);
+  event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr);
+ } else {
+  BPF_CORE_READ_INTO(&event.saddr_v6, sk,
+    __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32);
+  BPF_CORE_READ_INTO(&event.daddr_v6, sk,
+    __sk_common.skc_v6_daddr.in6_u.u6_addr32);
+ }
+ bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU,
+   &event, sizeof(event));
+
+cleanup:
+ bpf_map_delete_elem(&start, &sk);
+ return 0;
+}
+
+

Eunomia 测试 demo

+

使用命令行进行追踪:

+
$ sudo build/bin/Release/eunomia run tcpconnlat
+[sudo] password for yunwei: 
+[2022-08-07 02:13:39.601] [info] eunomia run in cmd...
+[2022-08-07 02:13:40.534] [info] press 'Ctrl C' key to exit...
+PID    COMM        IP  SRC              DEST             PORT  LAT(ms) CONATINER/OS
+3477   openresty    4  172.19.0.7       172.19.0.5       2379  0.05    docker-apisix_apisix_1
+3483   openresty    4  172.19.0.7       172.19.0.5       2379  0.08    docker-apisix_apisix_1
+3477   openresty    4  172.19.0.7       172.19.0.5       2379  0.04    docker-apisix_apisix_1
+3478   openresty    4  172.19.0.7       172.19.0.5       2379  0.05    docker-apisix_apisix_1
+3478   openresty    4  172.19.0.7       172.19.0.5       2379  0.03    docker-apisix_apisix_1
+3478   openresty    4  172.19.0.7       172.19.0.5       2379  0.03    docker-apisix_apisix_1
+
+

还可以使用 eunomia 作为 prometheus exporter,在运行上述命令之后,打开 prometheus 自带的可视化面板:

+

使用下述查询命令即可看到延时的统计图表:

+
  rate(eunomia_observed_tcpconnlat_v4_histogram_sum[5m])
+/
+  rate(eunomia_observed_tcpconnlat_v4_histogram_count[5m])
+
+

结果:

+

result

+

总结

+

通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheusgrafana 等工具进行网络性能分析。

+
+

Eunomia 是一个使用 C/C++ 开发的基于 eBPF的轻量级,高性能云原生监控工具,旨在帮助用户了解容器的各项行为、监控可疑的容器安全事件,力求提供覆盖容器全生命周期的轻量级开源监控解决方案。它使用 Linux eBPF 技术在运行时跟踪您的系统和应用程序,并分析收集的事件以检测可疑的行为模式。目前,它包含性能分析、容器集群网络可视化分析*、容器安全感知告警、一键部署、持久化存储监控等功能,提供了多样化的 ebpf 追踪点。其核心导出器/命令行工具最小仅需要约 4MB 大小的二进制程序,即可在支持的 Linux 内核上启动。

+
+

项目地址:https://github.com/yunwei37/Eunomia

+

参考资料

+
    +
  1. http://kerneltravel.net/blog/2020/tcpconnlat/
  2. +
  3. https://network.51cto.com/article/640631.html
  4. +
+

eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时

+

tcpstates 是一个追踪当前系统上的TCP套接字的TCP状态的程序,主要通过跟踪内核跟踪点 inet_sock_set_state 来实现。统计数据通过 perf_event向用户态传输。

+
SEC("tracepoint/sock/inet_sock_set_state")
+int handle_set_state(struct trace_event_raw_inet_sock_set_state *ctx)
+
+

在套接字改变状态处附加一个eBPF跟踪函数。

+
 if (ctx->protocol != IPPROTO_TCP)
+  return 0;
+
+ if (target_family && target_family != family)
+  return 0;
+
+ if (filter_by_sport && !bpf_map_lookup_elem(&sports, &sport))
+  return 0;
+
+ if (filter_by_dport && !bpf_map_lookup_elem(&dports, &dport))
+  return 0;
+
+

跟踪函数被调用后,先判断当前改变状态的套接字是否满足我们需要的过滤条件,如果不满足则不进行记录。

+
 tsp = bpf_map_lookup_elem(&timestamps, &sk);
+ ts = bpf_ktime_get_ns();
+ if (!tsp)
+  delta_us = 0;
+ else
+  delta_us = (ts - *tsp) / 1000;
+
+ event.skaddr = (__u64)sk;
+ event.ts_us = ts / 1000;
+ event.delta_us = delta_us;
+ event.pid = bpf_get_current_pid_tgid() >> 32;
+ event.oldstate = ctx->oldstate;
+ event.newstate = ctx->newstate;
+ event.family = family;
+ event.sport = sport;
+ event.dport = dport;
+ bpf_get_current_comm(&event.task, sizeof(event.task));
+
+ if (family == AF_INET) {
+  bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_rcv_saddr);
+  bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_daddr);
+ } else { /* family == AF_INET6 */
+  bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32);
+  bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_v6_daddr.in6_u.u6_addr32);
+ }
+
+

使用状态改变相关填充event结构体。

+
    +
  • 此处使用了libbpf 的 CO-RE 支持。
  • +
+
 bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event));
+
+

将事件结构体发送至用户态程序。

+
 if (ctx->newstate == TCP_CLOSE)
+  bpf_map_delete_elem(&timestamps, &sk);
+ else
+  bpf_map_update_elem(&timestamps, &sk, &ts, BPF_ANY);
+
+

根据这个TCP链接的新状态,决定是更新下时间戳记录还是不再记录它的时间戳。

+

用户态程序

+
    while (!exiting) {
+        err = perf_buffer__poll(pb, PERF_POLL_TIMEOUT_MS);
+        if (err < 0 && err != -EINTR) {
+            warn("error polling perf buffer: %s\n", strerror(-err));
+            goto cleanup;
+        }
+        /* reset err to return 0 if exiting */
+        err = 0;
+    }
+
+

不停轮询内核程序所发过来的 perf event

+
static void handle_event(void* ctx, int cpu, void* data, __u32 data_sz) {
+    char ts[32], saddr[26], daddr[26];
+    struct event* e = data;
+    struct tm* tm;
+    int family;
+    time_t t;
+
+    if (emit_timestamp) {
+        time(&t);
+        tm = localtime(&t);
+        strftime(ts, sizeof(ts), "%H:%M:%S", tm);
+        printf("%8s ", ts);
+    }
+
+    inet_ntop(e->family, &e->saddr, saddr, sizeof(saddr));
+    inet_ntop(e->family, &e->daddr, daddr, sizeof(daddr));
+    if (wide_output) {
+        family = e->family == AF_INET ? 4 : 6;
+        printf(
+            "%-16llx %-7d %-16s %-2d %-26s %-5d %-26s %-5d %-11s -> %-11s "
+            "%.3f\n",
+            e->skaddr, e->pid, e->task, family, saddr, e->sport, daddr,
+            e->dport, tcp_states[e->oldstate], tcp_states[e->newstate],
+            (double)e->delta_us / 1000);
+    } else {
+        printf(
+            "%-16llx %-7d %-10.10s %-15s %-5d %-15s %-5d %-11s -> %-11s %.3f\n",
+            e->skaddr, e->pid, e->task, saddr, e->sport, daddr, e->dport,
+            tcp_states[e->oldstate], tcp_states[e->newstate],
+            (double)e->delta_us / 1000);
+    }
+}
+
+static void handle_lost_events(void* ctx, int cpu, __u64 lost_cnt) {
+    warn("lost %llu events on CPU #%d\n", lost_cnt, cpu);
+}
+
+

收到事件后所调用对应的处理函数并进行输出打印。

+

编译运行

+
    +
  • git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned
  • +
  • libbpf-bootstrap目录下的文件复制到 libbpf-bootstrap-cloned/examples/c
  • +
  • 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpstates
  • +
  • libbpf-bootstrap-cloned/examples/c 下运行 make tcpstates
  • +
  • sudo ./tcpstates
  • +
+

效果

+
root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpstates 
+SKADDR           PID     COMM       LADDR           LPORT RADDR           RPORT OLDSTATE    -> NEWSTATE    MS
+ffff9bf61bb62bc0 164978  node       192.168.88.15   0     52.178.17.2     443   CLOSE       -> SYN_SENT    0.000
+ffff9bf61bb62bc0 0       swapper/0  192.168.88.15   41596 52.178.17.2     443   SYN_SENT    -> ESTABLISHED 225.794
+ffff9bf61bb62bc0 0       swapper/0  192.168.88.15   41596 52.178.17.2     443   ESTABLISHED -> CLOSE_WAIT  901.454
+ffff9bf61bb62bc0 164978  node       192.168.88.15   41596 52.178.17.2     443   CLOSE_WAIT  -> LAST_ACK    0.793
+ffff9bf61bb62bc0 164978  node       192.168.88.15   41596 52.178.17.2     443   LAST_ACK    -> LAST_ACK    0.086
+ffff9bf61bb62bc0 228759  kworker/u6 192.168.88.15   41596 52.178.17.2     443   LAST_ACK    -> CLOSE       0.193
+ffff9bf6d8ee88c0 229832  redis-serv 0.0.0.0         6379  0.0.0.0         0     CLOSE       -> LISTEN      0.000
+ffff9bf6d8ee88c0 229832  redis-serv 0.0.0.0         6379  0.0.0.0         0     LISTEN      -> CLOSE       1.763
+ffff9bf7109d6900 88750   node       127.0.0.1       39755 127.0.0.1       50966 ESTABLISHED -> FIN_WAIT1   0.000
+
+

对于输出的详细解释,详见 README.md

+

总结

+

这里的代码修改自 https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpstates.bpf.c

+

eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间

+

背景

+

网络质量在互联网社会中是一个很重要的因素。导致网络质量差的因素有很多,可能是硬件因素导致,也可能是程序 +写的不好导致。为了能更好地定位网络问题,tcprtt 工具被提出。它可以监测TCP链接的往返时间,从而分析 +网络质量,帮助用户定位问题来源。

+

当有tcp链接建立时,该工具会自动根据当前系统的支持情况,选择合适的执行函数。 +在执行函数中,tcprtt会收集tcp链接的各项基本底薪,包括地址,源端口,目标端口,耗时 +等等,并将其更新到直方图的map中。运行结束后通过用户态代码,展现给用户。

+

编写 eBPF 程序

+

TODO

+

编译运行

+

TODO

+

总结

+

TODO

+

eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏

+

背景

+

内存泄漏对于一个程序而言是一个很严重的问题。倘若放任一个存在内存泄漏的程序运行,久而久之 +系统的内存会慢慢被耗尽,导致程序运行速度显著下降。为了避免这一情况,memleak工具被提出。 +它可以跟踪并匹配内存分配和释放的请求,并且打印出已经被分配资源而又尚未释放的堆栈信息。

+

实现原理

+

memleak 的实现逻辑非常直观。它在我们常用的动态分配内存的函数接口路径上挂载了ebpf程序, +同时在free上也挂载了ebpf程序。在调用分配内存相关函数时,memleak 会记录调用者的pid,分配得到 +内存的地址,分配得到的内存大小等基本数据。在free之后,memeleak则会去map中删除记录的对应的分配 +信息。对于用户态常用的分配函数 malloc, calloc 等,memleak使用了 uporbe 技术实现挂载,对于 +内核态的函数,比如 kmalloc 等,memleak 则使用了现有的 tracepoint 来实现。

+

编写 eBPF 程序

+

TODO

+

编译运行

+

TODO

+

总结

+

TODO

+

eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O

+

背景

+

Biopattern 可以统计随机/顺序磁盘I/O次数的比例。

+

TODO

+

实现原理

+

Biopattern 的ebpf代码在 tracepoint/block/block_rq_complete 挂载点下实现。在磁盘完成IO请求 +后,程序会经过此挂载点。Biopattern 内部存有一张以设备号为主键的哈希表,当程序经过挂载点时, Biopattern +会获得操作信息,根据哈希表中该设备的上一次操作记录来判断本次操作是随机IO还是顺序IO,并更新操作计数。

+

编写 eBPF 程序

+

TODO

+

总结

+

Biopattern 可以展现随机/顺序磁盘I/O次数的比例,对于开发者把握整体I/O情况有较大帮助。

+

TODO

+

更多的参考资料

+

TODO

+

eBPF 入门实践教程:使用 LSM 进行安全检测防御

+

背景

+

TODO

+

LSM 概述

+

TODO

+

编写 eBPF 程序

+

TODO

+

编译运行

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

or compile with ecc:

+
$ ecc lsm-connect.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+

Run:

+
sudo ecli  examples/bpftools/lsm-connect/package.json
+
+

总结

+

TODO

+

参考:https://github.com/leodido/demo-cloud-native-ebpf-day

+

eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制

+

tc 程序示例

+
#include <vmlinux.h>
+#include <bpf/bpf_endian.h>
+#include <bpf/bpf_helpers.h>
+#include <bpf/bpf_tracing.h>
+
+#define TC_ACT_OK 0
+#define ETH_P_IP 0x0800 /* Internet Protocol packet */
+
+/// @tchook {"ifindex":1, "attach_point":"BPF_TC_INGRESS"}
+/// @tcopts {"handle":1, "priority":1}
+SEC("tc")
+int tc_ingress(struct __sk_buff *ctx)
+{
+    void *data_end = (void *)(__u64)ctx->data_end;
+    void *data = (void *)(__u64)ctx->data;
+    struct ethhdr *l2;
+    struct iphdr *l3;
+
+    if (ctx->protocol != bpf_htons(ETH_P_IP))
+        return TC_ACT_OK;
+
+    l2 = data;
+    if ((void *)(l2 + 1) > data_end)
+        return TC_ACT_OK;
+
+    l3 = (struct iphdr *)(l2 + 1);
+    if ((void *)(l3 + 1) > data_end)
+        return TC_ACT_OK;
+
+    bpf_printk("Got IP packet: tot_len: %d, ttl: %d", bpf_ntohs(l3->tot_len), l3->ttl);
+    return TC_ACT_OK;
+}
+
+char __license[] SEC("license") = "GPL";
+
+

这段代码定义了一个 eBPF 程序,它可以通过 Linux TC(Transmission Control)来捕获数据包并进行处理。在这个程序中,我们限定了只捕获 IPv4 协议的数据包,然后通过 bpf_printk 函数打印出数据包的总长度和 Time-To-Live(TTL)字段的值。

+

需要注意的是,我们在代码中使用了一些 BPF 库函数,例如 bpf_htons 和 bpf_ntohs 函数,它们用于进行网络字节序和主机字节序之间的转换。此外,我们还使用了一些注释来为 TC 提供附加点和选项信息。例如,在这段代码的开头,我们使用了以下注释:

+
/// @tchook {"ifindex":1, "attach_point":"BPF_TC_INGRESS"}
+/// @tcopts {"handle":1, "priority":1}
+
+

这些注释告诉 TC 将 eBPF 程序附加到网络接口的 ingress 附加点,并指定了 handle 和 priority 选项的值。

+

总之,这段代码实现了一个简单的 eBPF 程序,用于捕获数据包并打印出它们的信息。

+

编译运行

+
docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest
+
+

or compile with ecc:

+
$ ecc tc.bpf.c
+Compiling bpf object...
+Packing ebpf object and config into package.json...
+
+
$ sudo ecli ./package.json
+...
+Successfully started! Please run `sudo cat /sys/kernel/debug/tracing/trace_pipe` to see output of the BPF program.
+......
+
+

The tc output in /sys/kernel/debug/tracing/trace_pipe should look +something like this:

+
$ sudo cat /sys/kernel/debug/tracing/trace_pipe
+            node-1254811 [007] ..s1 8737831.671074: 0: Got IP packet: tot_len: 79, ttl: 64
+            sshd-1254728 [006] ..s1 8737831.674334: 0: Got IP packet: tot_len: 79, ttl: 64
+            sshd-1254728 [006] ..s1 8737831.674349: 0: Got IP packet: tot_len: 72, ttl: 64
+            node-1254811 [007] ..s1 8737831.674550: 0: Got IP packet: tot_len: 71, ttl: 64
+
+

总结

+

TODO

+

BPF Features by Linux Kernel Version

+

eBPF support

+
+ +
Kernel versionCommit
3.15bd4cf0ed331a
+
+

JIT compiling

+

The list of supported architectures for your kernel can be retrieved with:

+
git grep HAVE_EBPF_JIT arch/
+
+
+ + + + + + + + + + + + + + +
Feature / ArchitectureKernel versionCommit
x86_643.16622582786c9e
ARM643.18e54bcde3d69d
s3904.1054623105728
Constant blinding for JIT machines4.74f3446bb809f
PowerPC644.8156d0e290e96
Constant blinding - PowerPC644.9b7b7013cac55
Sparc644.127a12b5031c6b
MIPS4.13f381bf6d82f0
ARM324.1439c13c204bb1
x86_324.1803f5781be2c7
RISC-V RV64G5.12353ecc6f91f
RISC-V RV32G5.75f316b65e99f
PowerPC325.1351c66ad849a7
LoongArch6.15dc615520c4d
+
+

Main features

+

Several (but not all) of these main features translate to an eBPF program type. +The list of such program types supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep -W 'bpf_prog_type {' include/uapi/linux/bpf.h
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureKernel versionCommit
AF_PACKET (libpcap/tcpdump, cls_bpf classifier, netfilter's xt_bpf, team driver's load-balancing mode…)3.15bd4cf0ed331a
Kernel helpers3.15bd4cf0ed331a
bpf() syscall3.1899c55f7d47c0
Maps (a.k.a. Tables; details below)3.1899c55f7d47c0
BPF attached to sockets3.1989aa075832b0
BPF attached to kprobes4.12541517c32be
cls_bpf / act_bpf for tc4.1e2e9b6541dd4
Tail calls4.204fd61ab36ec
Non-root programs on sockets4.41be7f75d1668
Persistent maps and programs (virtual FS)4.4b2197755b263
tc's direct-action (da) mode4.4045efa82ff56
tc's clsact qdisc4.51f211a1b929c
BPF attached to tracepoints4.798b5c2c65c29
Direct packet access4.7969bf05eb3ce
XDP (see below)4.86a773a15a1e8
BPF attached to perf events4.90515e5999a46
Hardware offload for tc's cls_bpf4.9332ae8e2f6ec
Verifier exposure and internal hooks4.913a27dfc6697
BPF attached to cgroups for socket filtering4.100e33661de493
Lightweight tunnel encapsulation4.103a0af8fd61f9
eBPF support for xt_bpf module (iptables)4.102c16d6033264
BPF program tag4.107bd509e311f4
Tracepoints to debug BPF4.11 (removed in 4.18)a67edbf4fb6d 4d220ed0f814
Testing / benchmarking BPF programs4.121cf1cae963c2
BPF programs and maps IDs4.13dc4bb0e23561
BPF support for sock_ops4.1340304b2a1567
BPF support for skbs on sockets4.14b005fd189cec
bpftool utility in kernel sources4.1571bb428fe2c1
BPF attached to cgroups as device controller4.15ebc614f68736
bpf2bpf function calls4.16cc8b0b92a169
BPF used for monitoring socket RX/TX data4.174f738adba30a
BPF attached to raw tracepoints4.17c4f6699dfcb8
BPF attached to bind() system call4.174fbac77d2d09 aac3fc320d94
BPF attached to connect() system call4.17d74bad4e74ee
BPF Type Format (BTF)4.1869b693f0aefa
AF_XDP4.18fbfc504a24f5
bpfilter4.18d2ba09c17a06
End.BPF action for seg6local LWT4.18004d4b274e2a
BPF attached to LIRC devices4.18f4364dcfc86d
Pass map values to map helpers4.18d71962f3e627
BPF socket reuseport4.192dbb9b9e6df6
BPF flow dissector4.20d58e468b1112
BPF 1M insn limit5.2c04c0d2b968a
BPF cgroup sysctl5.27b146cebe30c
BPF raw tracepoint writable5.29df1c28bb752
BPF bounded loop5.32589726d12a1
BPF trampoline5.5fec56f5890d9
BPF LSM hook5.7fc611f47f218 641cd7b06c91
BPF iterator5.8180139dca8b3
BPF socket lookup hook5.9e9ddbb7707ff
Sleepable BPF programs5.101e6c62a88215
+
+

Program types

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Program typeKernel versionCommitEnum
Socket filter3.19ddd872bc3098BPF_PROG_TYPE_SOCKET_FILTER
Kprobe4.12541517c32beBPF_PROG_TYPE_KPROBE
traffic control (TC)4.196be4325f443BPF_PROG_TYPE_SCHED_CLS
traffic control (TC)4.194caee8c312dBPF_PROG_TYPE_SCHED_ACT
Tracepoint4.798b5c2c65c29BPF_PROG_TYPE_TRACEPOINT
XDP4.86a773a15a1e8BPF_PROG_TYPE_XDP
Perf event4.90515e5999a46BPF_PROG_TYPE_PERF_EVENT
cgroup socket filtering4.100e33661de493BPF_PROG_TYPE_CGROUP_SKB
cgroup sock modification4.10610236587600BPF_PROG_TYPE_CGROUP_SOCK
lightweight tunnel (IN)4.103a0af8fd61f9BPF_PROG_TYPE_LWT_IN
lightweight tunnel (OUT)4.103a0af8fd61f9BPF_PROG_TYPE_LWT_OUT
lightweight tunnel (XMIT)4.103a0af8fd61f9BPF_PROG_TYPE_LWT_XMIT
cgroup sock ops (per conn)4.1340304b2a1567BPF_PROG_TYPE_SOCK_OPS
stream parser / stream verdict4.14b005fd189cecBPF_PROG_TYPE_SK_SKB
cgroup device manager4.15ebc614f68736BPF_PROG_TYPE_CGROUP_DEVICE
socket msg verdict4.174f738adba30aBPF_PROG_TYPE_SK_MSG
Raw tracepoint4.17c4f6699dfcb8BPF_PROG_TYPE_RAW_TRACEPOINT
socket binding4.174fbac77d2d09BPF_PROG_TYPE_CGROUP_SOCK_ADDR
LWT seg6local4.18004d4b274e2aBPF_PROG_TYPE_LWT_SEG6LOCAL
lirc devices4.18f4364dcfc86dBPF_PROG_TYPE_LIRC_MODE2
lookup SO_REUSEPORT socket4.192dbb9b9e6df6BPF_PROG_TYPE_SK_REUSEPORT
flow dissector4.20d58e468b1112BPF_PROG_TYPE_FLOW_DISSECTOR
cgroup sysctl5.27b146cebe30cBPF_PROG_TYPE_CGROUP_SYSCTL
writable raw tracepoints5.29df1c28bb752BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE
cgroup getsockopt/setsockopt5.30d01da6afc54BPF_PROG_TYPE_CGROUP_SOCKOPT
Tracing (BTF/BPF trampoline)5.5f1b9509c2fb0BPF_PROG_TYPE_TRACING
struct ops5.627ae7997a661BPF_PROG_TYPE_STRUCT_OPS
extensions5.6be8704ff07d2BPF_PROG_TYPE_EXT
LSM5.7fc611f47f218BPF_PROG_TYPE_LSM
lookup listening socket5.9e9ddbb7707ffBPF_PROG_TYPE_SK_LOOKUP
Allow executing syscalls5.1579a7f8bdb159BPF_PROG_TYPE_SYSCALL
+
+

Maps (a.k.a. Tables, in BCC lingo)

+

Map types

+

The list of map types supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep -W 'bpf_map_type {' include/uapi/linux/bpf.h
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Map typeKernel versionCommitEnum
Hash3.190f8e4bd8a1fcBPF_MAP_TYPE_HASH
Array3.1928fbcfa08d8eBPF_MAP_TYPE_ARRAY
Prog array4.204fd61ab36ecBPF_MAP_TYPE_PROG_ARRAY
Perf events4.3ea317b267e9dBPF_MAP_TYPE_PERF_EVENT_ARRAY
Per-CPU hash4.6824bd0ce6c7cBPF_MAP_TYPE_PERCPU_HASH
Per-CPU array4.6a10423b87a7eBPF_MAP_TYPE_PERCPU_ARRAY
Stack trace4.6d5a3b1f69186BPF_MAP_TYPE_STACK_TRACE
cgroup array4.84ed8ec521ed5BPF_MAP_TYPE_CGROUP_ARRAY
LRU hash4.1029ba732acbee 3a08c2fd7634BPF_MAP_TYPE_LRU_HASH
LRU per-CPU hash4.108f8449384ec3 961578b63474BPF_MAP_TYPE_LRU_PERCPU_HASH
LPM trie (longest-prefix match)4.11b95a5c4db09bBPF_MAP_TYPE_LPM_TRIE
Array of maps4.1256f668dfe00dBPF_MAP_TYPE_ARRAY_OF_MAPS
Hash of maps4.12bcc6b1b7ebf8BPF_MAP_TYPE_HASH_OF_MAPS
Netdevice references (array)4.14546ac1ffb70dBPF_MAP_TYPE_DEVMAP
Socket references (array)4.14174a79ff9515BPF_MAP_TYPE_SOCKMAP
CPU references4.156710e1126934BPF_MAP_TYPE_CPUMAP
AF_XDP socket (XSK) references4.18fbfc504a24f5BPF_MAP_TYPE_XSKMAP
Socket references (hashmap)4.1881110384441aBPF_MAP_TYPE_SOCKHASH
cgroup storage4.19de9cbbaadba5BPF_MAP_TYPE_CGROUP_STORAGE
reuseport sockarray4.195dc4c4b7d4e8BPF_MAP_TYPE_REUSEPORT_SOCKARRAY
precpu cgroup storage4.20b741f1630346BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE
queue4.20f1a2e44a3aecBPF_MAP_TYPE_QUEUE
stack4.20f1a2e44a3aecBPF_MAP_TYPE_STACK
socket local storage5.26ac99e8f23d4BPF_MAP_TYPE_SK_STORAGE
Netdevice references (hashmap)5.46f9d451ab1a3BPF_MAP_TYPE_DEVMAP_HASH
struct ops5.685d33df357b6BPF_MAP_TYPE_STRUCT_OPS
ring buffer5.8457f44363a88BPF_MAP_TYPE_RINGBUF
inode storage5.108ea636848acaBPF_MAP_TYPE_INODE_STORAGE
task storage5.114cf1bc1f1045BPF_MAP_TYPE_TASK_STORAGE
Bloom filter5.169330986c0300BPF_MAP_TYPE_BLOOM_FILTER
user ringbuf6.1583c1f420173BPF_MAP_TYPE_USER_RINGBUF
+
+

Map userspace API

+

Some (but not all) of these API features translate to a subcommand beginning with BPF_MAP_. +The list of subcommands supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep -W 'bpf_cmd {' include/uapi/linux/bpf.h
+
+
+ + + + + + + + + + + + + + + + + +
FeatureKernel versionCommit
Basic operations (lookup, update, delete, GET_NEXT_KEY)3.18db20fd2b0108
Pass flags to UPDATE_ELEM3.193274f52073d8
Pre-alloc map memory by default4.66c9059817432
Pass NULL to GET_NEXT_KEY4.128fe45924387b
Creation: select NUMA node4.1496eabe7a40aa
Restrict access from syscall side4.156e71b04a8224
Creation: specify map name4.15ad5b177bd73f
LOOKUP_AND_DELETE_ELEM4.20bd513cd08f10
Creation: BPF_F_ZERO_SEED5.096b3b6c9091d
BPF_F_LOCK flag for lookup / update5.196049f3afd50
Restrict access from BPF side5.2591fe9888d78
FREEZE5.287df15de441b
mmap() support for array maps5.5fc9702273e2e
LOOKUP_BATCH5.6cb4d03ab499d
UPDATE_BATCH, DELETE_BATCH5.6aa2e93b8e58e
LOOKUP_AND_DELETE_BATCH5.6057996380a42
LOOKUP_AND_DELETE_ELEM support for hash maps5.143e87f192b405
+
+

XDP

+

An approximate list of drivers or components supporting XDP programs for your +kernel can be retrieved with:

+
git grep -l XDP_SETUP_PROG drivers/
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Feature / DriverKernel versionCommit
XDP core architecture4.86a773a15a1e8
Action: drop4.86a773a15a1e8
Action: pass on to stack4.86a773a15a1e8
Action: direct forwarding (on same port)4.86ce96ca348a9
Direct packet data write4.84acf6c0b84c9
Mellanox mlx4 driver4.847a38e155037
Mellanox mlx5 driver4.986994156c736
Netronome nfp driver4.10ecd63a0217d5
QLogic (Cavium) qed* drivers4.10496e05170958
virtio_net driver4.10f600b6905015
Broadcom bnxt_en driver4.11c6d30e8391b8
Intel ixgbe* drivers4.12924708081629
Cavium thunderx driver4.1205c773f52b96
Generic XDP4.12b5cdae3291f7
Intel i40e driver4.130c8493d90b6b
Action: redirect4.146453073987ba
Support for tap4.14761876c857cb
Support for veth4.14d445516966dc
Intel ixgbevf driver4.17c7aec59657b6
Freescale dpaa2 driver5.07e273a8ebdd3
Socionext netsec driver5.3ba2b232108d3
TI cpsw driver5.39ed4050c0d75
Intel ice driver5.5efc2214b6047
Solarflare sfc driver5.5eb9a36be7f3e
Marvell mvneta driver5.50db51da7a8e9
Microsoft hv_netvsc driver5.6351e1581395f
Amazon ena driver5.6838c93dc5449
xen-netfront driver5.96c5aa6fc4def
Intel igb driver5.109cbc948b5a20
+
+

Helpers

+

The list of helpers supported in your kernel can be found in file +include/uapi/linux/bpf.h:

+
git grep '	FN(' include/uapi/linux/bpf.h
+
+

Alphabetical order

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HelperKernel versionLicenseCommit
BPF_FUNC_bind()4.17d74bad4e74ee
BPF_FUNC_bprm_opts_set()5.113f6719c7b62f
BPF_FUNC_btf_find_by_name_kind()5.143d78417b60fb
BPF_FUNC_cgrp_storage_delete()6.2c4bcfb38a95e
BPF_FUNC_cgrp_storage_get()6.2c4bcfb38a95e
BPF_FUNC_check_mtu()5.1234b2021cc616
BPF_FUNC_clone_redirect()4.23896d655f4d4
BPF_FUNC_copy_from_user()5.1007be4c4a3e7a
BPF_FUNC_copy_from_user_task()5.18GPL376040e47334
BPF_FUNC_csum_diff()4.67d672345ed29
BPF_FUNC_csum_level()5.77cdec54f9713
BPF_FUNC_csum_update()4.936bbef52c7eb
BPF_FUNC_current_task_under_cgroup()4.960d20f9195b2
BPF_FUNC_d_path()5.106e22ab9da793
BPF_FUNC_dynptr_data()5.1934d4ef5775f7
BPF_FUNC_dynptr_from_mem()5.19263ae152e962
BPF_FUNC_dynptr_read()5.1913bbbfbea759
BPF_FUNC_dynptr_write()5.1913bbbfbea759
BPF_FUNC_fib_lookup()4.18GPL87f5fc7e48dd
BPF_FUNC_find_vma()5.177c7e3d31e785
BPF_FUNC_for_each_map_elem()5.1369c087ba6225
BPF_FUNC_get_attach_cookie()5.157adfc6c9b315
BPF_FUNC_get_branch_snapshot()5.16GPL856c02dbce4f
BPF_FUNC_get_current_ancestor_cgroup_id()5.6b4490c5c4e02
BPF_FUNC_get_cgroup_classid()4.38d20aabe1c76
BPF_FUNC_get_current_cgroup_id()4.18bf6fa2c893c5
BPF_FUNC_get_current_comm()4.2ffeedafbf023
BPF_FUNC_get_current_pid_tgid()4.2ffeedafbf023
BPF_FUNC_get_current_task()4.8GPL606274c5abd8
BPF_FUNC_get_current_task_btf()5.11GPL3ca1032ab7ab
BPF_FUNC_get_current_uid_gid()4.2ffeedafbf023
BPF_FUNC_get_func_arg()5.17f92c1e183604
BPF_FUNC_get_func_arg_cnt()5.17f92c1e183604
BPF_FUNC_get_func_ip()5.155d8b583d04ae
BPF_FUNC_get_func_ret()5.17f92c1e183604
BPF_FUNC_get_retval()5.18b44123b4a3dc
BPF_FUNC_get_hash_recalc()4.813c5c240f789
BPF_FUNC_get_listener_sock()5.1dbafd7ddd623
BPF_FUNC_get_local_storage()4.19cd3394317653
BPF_FUNC_get_netns_cookie()5.7f318903c0bf4
BPF_FUNC_get_ns_current_pid_tgid()5.7b4490c5c4e02
BPF_FUNC_get_numa_node_id()4.102d0e30c30f84
BPF_FUNC_get_prandom_u32()4.103e69b508b6f
BPF_FUNC_get_route_realm()4.4c46646d0484f
BPF_FUNC_get_smp_processor_id()4.1c04167ce2ca0
BPF_FUNC_get_socket_cookie()4.1291b8270f2a4d
BPF_FUNC_get_socket_uid()4.126acc5c291068
BPF_FUNC_get_stack()4.18GPLde2ff05f48af
BPF_FUNC_get_stackid()4.6GPLd5a3b1f69186
BPF_FUNC_get_task_stack()5.9fa28dcb82a38
BPF_FUNC_getsockopt()4.15cd86d1fd2102
BPF_FUNC_ima_file_hash()5.18174b16946e39
BPF_FUNC_ima_inode_hash()5.1127672f0d280a
BPF_FUNC_inode_storage_delete()5.108ea636848aca
BPF_FUNC_inode_storage_get()5.108ea636848aca
BPF_FUNC_jiffies64()5.55576b991e9c1
BPF_FUNC_kallsyms_lookup_name()5.16d6aef08a872b
BPF_FUNC_kptr_xchg()5.19c0a5a21c25f3
BPF_FUNC_ktime_get_boot_ns()5.871d19214776e
BPF_FUNC_ktime_get_coarse_ns()5.11d05512618056
BPF_FUNC_ktime_get_ns()4.1d9847d310ab4
BPF_FUNC_ktime_get_tai_ns()6.1c8996c98f703
BPF_FUNC_l3_csum_replace()4.191bc4822c3d6
BPF_FUNC_l4_csum_replace()4.191bc4822c3d6
BPF_FUNC_load_hdr_opt()5.100813a841566f
BPF_FUNC_loop()5.17e6f2dd0f8067
BPF_FUNC_lwt_push_encap()4.18fe94cc290f53
BPF_FUNC_lwt_seg6_action()4.18fe94cc290f53
BPF_FUNC_lwt_seg6_adjust_srh()4.18fe94cc290f53
BPF_FUNC_lwt_seg6_store_bytes()4.18fe94cc290f53
BPF_FUNC_map_delete_elem()3.19d0003ec01c66
BPF_FUNC_map_lookup_elem()3.19d0003ec01c66
BPF_FUNC_map_lookup_percpu_elem()5.1907343110b293
BPF_FUNC_map_peek_elem()4.20f1a2e44a3aec
BPF_FUNC_map_pop_elem()4.20f1a2e44a3aec
BPF_FUNC_map_push_elem()4.20f1a2e44a3aec
BPF_FUNC_map_update_elem()3.19d0003ec01c66
BPF_FUNC_msg_apply_bytes()4.172a100317c9eb
BPF_FUNC_msg_cork_bytes()4.1791843d540a13
BPF_FUNC_msg_pop_data()5.07246d8ed4dcc
BPF_FUNC_msg_pull_data()4.17015632bb30da
BPF_FUNC_msg_push_data()4.206fff607e2f14
BPF_FUNC_msg_redirect_hash()4.1881110384441a
BPF_FUNC_msg_redirect_map()4.174f738adba30a
BPF_FUNC_per_cpu_ptr()5.10eaa6bcb71ef6
BPF_FUNC_perf_event_output()4.4GPLa43eec304259
BPF_FUNC_perf_event_read()4.3GPL35578d798400
BPF_FUNC_perf_event_read_value()4.15GPL908432ca84fc
BPF_FUNC_perf_prog_read_value()4.15GPL4bebdc7a85aa
BPF_FUNC_probe_read()4.1GPL2541517c32be
BPF_FUNC_probe_read_kernel()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_kernel_str()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_user()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_user_str()5.5GPL6ae08ae3dea2
BPF_FUNC_probe_read_str()4.11GPLa5e8c07059d0
BPF_FUNC_probe_write_user()4.8GPL96ae52279594
BPF_FUNC_rc_keydown()4.18GPLf4364dcfc86d
BPF_FUNC_rc_pointer_rel()5.0GPL01d3240a04f4
BPF_FUNC_rc_repeat()4.18GPLf4364dcfc86d
BPF_FUNC_read_branch_records()5.6GPLfff7b64355ea
BPF_FUNC_redirect()4.427b29f63058d
BPF_FUNC_redirect_map()4.1497f91a7cf04f
BPF_FUNC_redirect_neigh()5.10b4ab31414970
BPF_FUNC_redirect_peer()5.109aa1206e8f48
BPF_FUNC_reserve_hdr_opt()5.100813a841566f
BPF_FUNC_ringbuf_discard()5.8457f44363a88
BPF_FUNC_ringbuf_discard_dynptr()5.19bc34dee65a65
BPF_FUNC_ringbuf_output()5.8457f44363a88
BPF_FUNC_ringbuf_query()5.8457f44363a88
BPF_FUNC_ringbuf_reserve()5.8457f44363a88
BPF_FUNC_ringbuf_reserve_dynptr()5.19bc34dee65a65
BPF_FUNC_ringbuf_submit()5.8457f44363a88
BPF_FUNC_ringbuf_submit_dynptr()5.19bc34dee65a65
BPF_FUNC_send_signal()5.38b401f9ed244
BPF_FUNC_send_signal_thread()5.58482941f0906
BPF_FUNC_seq_printf()5.7GPL492e639f0c22
BPF_FUNC_seq_printf_btf()5.10eb411377aed9
BPF_FUNC_seq_write()5.7GPL492e639f0c22
BPF_FUNC_set_hash()4.13ded092cd73c2
BPF_FUNC_set_hash_invalid()4.97a4b28c6cc9f
BPF_FUNC_set_retval()5.18b44123b4a3dc
BPF_FUNC_setsockopt()4.138c4b4c7e9ff0
BPF_FUNC_sk_ancestor_cgroup_id()5.7f307fa2cb4c9
BPF_FUNC_sk_assign()5.6cf7fbe660f2d
BPF_FUNC_sk_cgroup_id()5.7f307fa2cb4c9
BPF_FUNC_sk_fullsock()5.146f8bc92758c
BPF_FUNC_sk_lookup_tcp()4.206acc9b432e67
BPF_FUNC_sk_lookup_udp()4.206acc9b432e67
BPF_FUNC_sk_redirect_hash()4.1881110384441a
BPF_FUNC_sk_redirect_map()4.14174a79ff9515
BPF_FUNC_sk_release()4.206acc9b432e67
BPF_FUNC_sk_select_reuseport()4.192dbb9b9e6df6
BPF_FUNC_sk_storage_delete()5.26ac99e8f23d4
BPF_FUNC_sk_storage_get()5.26ac99e8f23d4
BPF_FUNC_skb_adjust_room()4.132be7e212d541
BPF_FUNC_skb_ancestor_cgroup_id()4.197723628101aa
BPF_FUNC_skb_change_head()4.103a0af8fd61f9
BPF_FUNC_skb_change_proto()4.86578171a7ff0
BPF_FUNC_skb_change_tail()4.95293efe62df8
BPF_FUNC_skb_change_type()4.8d2485c4242a8
BPF_FUNC_skb_cgroup_classid()5.10b426ce83baa7
BPF_FUNC_skb_cgroup_id()4.18cb20b08ead40
BPF_FUNC_skb_ecn_set_ce()5.1f7c917ba11a6
BPF_FUNC_skb_get_tunnel_key()4.3d3aa45ce6b94
BPF_FUNC_skb_get_tunnel_opt()4.614ca0751c96f
BPF_FUNC_skb_get_xfrm_state()4.1812bed760a78d
BPF_FUNC_skb_load_bytes()4.505c74e5e53f6
BPF_FUNC_skb_load_bytes_relative()4.184e1ec56cdc59
BPF_FUNC_skb_output()5.5a7658e1a4164
BPF_FUNC_skb_pull_data()4.936bbef52c7eb
BPF_FUNC_skb_set_tstamp()5.189bb984f28d5b
BPF_FUNC_skb_set_tunnel_key()4.3d3aa45ce6b94
BPF_FUNC_skb_set_tunnel_opt()4.614ca0751c96f
BPF_FUNC_skb_store_bytes()4.191bc4822c3d6
BPF_FUNC_skb_under_cgroup()4.84a482f34afcc
BPF_FUNC_skb_vlan_pop()4.34e10df9a60d9
BPF_FUNC_skb_vlan_push()4.34e10df9a60d9
BPF_FUNC_skc_lookup_tcp()5.2edbf8c01de5a
BPF_FUNC_skc_to_mctcp_sock()5.193bc253c2e652
BPF_FUNC_skc_to_tcp_sock()5.9478cfbdf5f13
BPF_FUNC_skc_to_tcp_request_sock()5.9478cfbdf5f13
BPF_FUNC_skc_to_tcp_timewait_sock()5.9478cfbdf5f13
BPF_FUNC_skc_to_tcp6_sock()5.9af7ec1383361
BPF_FUNC_skc_to_udp6_sock()5.90d4fad3e57df
BPF_FUNC_skc_to_unix_sock()5.169eeb3aa33ae0
BPF_FUNC_snprintf()5.137b15523a989b
BPF_FUNC_snprintf_btf()5.10c4d0bfb45068
BPF_FUNC_sock_from_file()5.114f19cab76136
BPF_FUNC_sock_hash_update()4.1881110384441a
BPF_FUNC_sock_map_update()4.14174a79ff9515
BPF_FUNC_spin_lock()5.1d83525ca62cf
BPF_FUNC_spin_unlock()5.1d83525ca62cf
BPF_FUNC_store_hdr_opt()5.100813a841566f
BPF_FUNC_strncmp()5.17c5fb19937455
BPF_FUNC_strtol()5.2d7a4cb9b6705
BPF_FUNC_strtoul()5.2d7a4cb9b6705
BPF_FUNC_sys_bpf()5.1479a7f8bdb159
BPF_FUNC_sys_close()5.143abea089246f
BPF_FUNC_sysctl_get_current_value()5.21d11b3016cec
BPF_FUNC_sysctl_get_name()5.2808649fb787d
BPF_FUNC_sysctl_get_new_value()5.24e63acdff864
BPF_FUNC_sysctl_set_new_value()5.24e63acdff864
BPF_FUNC_tail_call()4.204fd61ab36ec
BPF_FUNC_task_pt_regs()5.15GPLdd6e10fbd9f
BPF_FUNC_task_storage_delete()5.114cf1bc1f1045
BPF_FUNC_task_storage_get()5.114cf1bc1f1045
BPF_FUNC_tcp_check_syncookie()5.2399040847084
BPF_FUNC_tcp_gen_syncookie()5.370d66244317e
BPF_FUNC_tcp_raw_check_syncookie_ipv4()6.033bf9885040c
BPF_FUNC_tcp_raw_check_syncookie_ipv6()6.033bf9885040c
BPF_FUNC_tcp_raw_gen_syncookie_ipv4()6.033bf9885040c
BPF_FUNC_tcp_raw_gen_syncookie_ipv6()6.033bf9885040c
BPF_FUNC_tcp_send_ack()5.5206057fe020a
BPF_FUNC_tcp_sock()5.1655a51e536c0
BPF_FUNC_this_cpu_ptr()5.1063d9b80dcf2c
BPF_FUNC_timer_init()5.15b00628b1c7d5
BPF_FUNC_timer_set_callback()5.15b00628b1c7d5
BPF_FUNC_timer_start()5.15b00628b1c7d5
BPF_FUNC_timer_cancel()5.15b00628b1c7d5
BPF_FUNC_trace_printk()4.1GPL9c959c863f82
BPF_FUNC_trace_vprintk()5.16GPL10aceb629e19
BPF_FUNC_user_ringbuf_drain()6.1205715673844
BPF_FUNC_xdp_adjust_head()4.1017bedab27231
BPF_FUNC_xdp_adjust_meta()4.15de8f3a83b0a0
BPF_FUNC_xdp_adjust_tail()4.18b32cc5b9a346
BPF_FUNC_xdp_get_buff_len()5.180165cc817075
BPF_FUNC_xdp_load_bytes()5.183f364222d032
BPF_FUNC_xdp_store_bytes()5.183f364222d032
BPF_FUNC_xdp_output()5.6GPLd831ee84bfc9
BPF_FUNC_override_return()4.16GPL9802d86585db
BPF_FUNC_sock_ops_cb_flags_set()4.16b13d88072172
+
+

Note: GPL-only BPF helpers require a GPL-compatible license. The current licenses considered GPL-compatible by the kernel are:

+
    +
  • GPL
  • +
  • GPL v2
  • +
  • GPL and additional rights
  • +
  • Dual BSD/GPL
  • +
  • Dual MIT/GPL
  • +
  • Dual MPL/GPL
  • +
+

Check the list of GPL-compatible licenses in your kernel source code.

+

Program Types

+

The list of program types and supported helper functions can be retrieved with:

+
git grep -W 'func_proto(enum bpf_func_id func_id' kernel/ net/ drivers/
+
+
+ + + + + + + + + + + + + + + + + + + + + +
Program TypeHelper Functions
BPF_PROG_TYPE_SOCKET_FILTERBPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_load_bytes_relative()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
BPF_FUNC_perf_event_output()
Base functions
BPF_PROG_TYPE_KPROBEBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_perf_event_read_value()
BPF_FUNC_override_return()
Tracing functions
BPF_PROG_TYPE_SCHED_CLS
BPF_PROG_TYPE_SCHED_ACT
BPF_FUNC_skb_store_bytes()
BPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_load_bytes_relative()
BPF_FUNC_skb_pull_data()
BPF_FUNC_csum_diff()
BPF_FUNC_csum_update()
BPF_FUNC_l3_csum_replace()
BPF_FUNC_l4_csum_replace()
BPF_FUNC_clone_redirect()
BPF_FUNC_get_cgroup_classid()
BPF_FUNC_skb_vlan_push()
BPF_FUNC_skb_vlan_pop()
BPF_FUNC_skb_change_proto()
BPF_FUNC_skb_change_type()
BPF_FUNC_skb_adjust_room()
BPF_FUNC_skb_change_tail()
BPF_FUNC_skb_get_tunnel_key()
BPF_FUNC_skb_set_tunnel_key()
BPF_FUNC_skb_get_tunnel_opt()
BPF_FUNC_skb_set_tunnel_opt()
BPF_FUNC_redirect()
BPF_FUNC_get_route_realm()
BPF_FUNC_get_hash_recalc()
BPF_FUNC_set_hash_invalid()
BPF_FUNC_set_hash()
BPF_FUNC_perf_event_output()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_skb_under_cgroup()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
BPF_FUNC_fib_lookup()
BPF_FUNC_skb_get_xfrm_state()
BPF_FUNC_skb_cgroup_id()
Base functions
BPF_PROG_TYPE_TRACEPOINTBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_d_path()
Tracing functions
BPF_PROG_TYPE_XDPBPF_FUNC_perf_event_output()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_csum_diff()
BPF_FUNC_xdp_adjust_head()
BPF_FUNC_xdp_adjust_meta()
BPF_FUNC_redirect()
BPF_FUNC_redirect_map()
BPF_FUNC_xdp_adjust_tail()
BPF_FUNC_fib_lookup()
Base functions
BPF_PROG_TYPE_PERF_EVENTBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_perf_prog_read_value()
Tracing functions
BPF_PROG_TYPE_CGROUP_SKBBPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_load_bytes_relative()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
Base functions
BPF_PROG_TYPE_CGROUP_SOCKBPF_FUNC_get_current_uid_gid()
Base functions
BPF_PROG_TYPE_LWT_INBPF_FUNC_lwt_push_encap()
LWT functions
Base functions
BPF_PROG_TYPE_LWT_OUTLWT functions
Base functions
BPF_PROG_TYPE_LWT_XMITBPF_FUNC_skb_get_tunnel_key()
BPF_FUNC_skb_set_tunnel_key()
BPF_FUNC_skb_get_tunnel_opt()
BPF_FUNC_skb_set_tunnel_opt()
BPF_FUNC_redirect()
BPF_FUNC_clone_redirect()
BPF_FUNC_skb_change_tail()
BPF_FUNC_skb_change_head()
BPF_FUNC_skb_store_bytes()
BPF_FUNC_csum_update()
BPF_FUNC_l3_csum_replace()
BPF_FUNC_l4_csum_replace()
BPF_FUNC_set_hash_invalid()
LWT functions
BPF_PROG_TYPE_SOCK_OPSBPF_FUNC_setsockopt()
BPF_FUNC_getsockopt()
BPF_FUNC_sock_ops_cb_flags_set()
BPF_FUNC_sock_map_update()
BPF_FUNC_sock_hash_update()
BPF_FUNC_get_socket_cookie()
Base functions
BPF_PROG_TYPE_SK_SKBBPF_FUNC_skb_store_bytes()
BPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_pull_data()
BPF_FUNC_skb_change_tail()
BPF_FUNC_skb_change_head()
BPF_FUNC_get_socket_cookie()
BPF_FUNC_get_socket_uid()
BPF_FUNC_sk_redirect_map()
BPF_FUNC_sk_redirect_hash()
BPF_FUNC_sk_lookup_tcp()
BPF_FUNC_sk_lookup_udp()
BPF_FUNC_sk_release()
Base functions
BPF_PROG_TYPE_CGROUP_DEVICEBPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_get_current_uid_gid()
BPF_FUNC_trace_printk()
BPF_PROG_TYPE_SK_MSGBPF_FUNC_msg_redirect_map()
BPF_FUNC_msg_redirect_hash()
BPF_FUNC_msg_apply_bytes()
BPF_FUNC_msg_cork_bytes()
BPF_FUNC_msg_pull_data()
BPF_FUNC_msg_push_data()
BPF_FUNC_msg_pop_data()
Base functions
BPF_PROG_TYPE_RAW_TRACEPOINTBPF_FUNC_perf_event_output()
BPF_FUNC_get_stackid()
BPF_FUNC_get_stack()
BPF_FUNC_skb_output()
Tracing functions
BPF_PROG_TYPE_CGROUP_SOCK_ADDRBPF_FUNC_get_current_uid_gid()
BPF_FUNC_bind()
BPF_FUNC_get_socket_cookie()
Base functions
BPF_PROG_TYPE_LWT_SEG6LOCALBPF_FUNC_lwt_seg6_store_bytes()
BPF_FUNC_lwt_seg6_action()
BPF_FUNC_lwt_seg6_adjust_srh()
LWT functions
BPF_PROG_TYPE_LIRC_MODE2BPF_FUNC_rc_repeat()
BPF_FUNC_rc_keydown()
BPF_FUNC_rc_pointer_rel()
BPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_ktime_get_ns()
BPF_FUNC_tail_call()
BPF_FUNC_get_prandom_u32()
BPF_FUNC_trace_printk()
BPF_PROG_TYPE_SK_REUSEPORTBPF_FUNC_sk_select_reuseport()
BPF_FUNC_skb_load_bytes()
BPF_FUNC_load_bytes_relative()
Base functions
BPF_PROG_TYPE_FLOW_DISSECTORBPF_FUNC_skb_load_bytes()
Base functions
+
+ + + +
Function GroupFunctions
Base functionsBPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_map_peek_elem()
BPF_FUNC_map_pop_elem()
BPF_FUNC_map_push_elem()
BPF_FUNC_get_prandom_u32()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_get_numa_node_id()
BPF_FUNC_tail_call()
BPF_FUNC_ktime_get_boot_ns()
BPF_FUNC_ktime_get_ns()
BPF_FUNC_trace_printk()
BPF_FUNC_spin_lock()
BPF_FUNC_spin_unlock()
Tracing functionsBPF_FUNC_map_lookup_elem()
BPF_FUNC_map_update_elem()
BPF_FUNC_map_delete_elem()
BPF_FUNC_probe_read()
BPF_FUNC_ktime_get_boot_ns()
BPF_FUNC_ktime_get_ns()
BPF_FUNC_tail_call()
BPF_FUNC_get_current_pid_tgid()
BPF_FUNC_get_current_task()
BPF_FUNC_get_current_uid_gid()
BPF_FUNC_get_current_comm()
BPF_FUNC_trace_printk()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_get_numa_node_id()
BPF_FUNC_perf_event_read()
BPF_FUNC_probe_write_user()
BPF_FUNC_current_task_under_cgroup()
BPF_FUNC_get_prandom_u32()
BPF_FUNC_probe_read_str()
BPF_FUNC_get_current_cgroup_id()
BPF_FUNC_send_signal()
BPF_FUNC_probe_read_kernel()
BPF_FUNC_probe_read_kernel_str()
BPF_FUNC_probe_read_user()
BPF_FUNC_probe_read_user_str()
BPF_FUNC_send_signal_thread()
BPF_FUNC_get_ns_current_pid_tgid()
BPF_FUNC_xdp_output()
BPF_FUNC_get_task_stack()
LWT functionsBPF_FUNC_skb_load_bytes()
BPF_FUNC_skb_pull_data()
BPF_FUNC_csum_diff()
BPF_FUNC_get_cgroup_classid()
BPF_FUNC_get_route_realm()
BPF_FUNC_get_hash_recalc()
BPF_FUNC_perf_event_output()
BPF_FUNC_get_smp_processor_id()
BPF_FUNC_skb_under_cgroup()
+

Kernel Configuration for BPF Features

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FunctionalitiesKernel ConfigurationDescription
BasicCONFIG_BPF_SYSCALLEnable the bpf() system call
CONFIG_BPF_JITBPF programs are normally handled by a BPF interpreter. This option allows the kernel to generate native code when a program is loaded into the kernel. This will significantly speed-up processing of BPF programs
CONFIG_HAVE_BPF_JITEnable BPF Just In Time compiler
CONFIG_HAVE_EBPF_JITExtended BPF JIT (eBPF)
CONFIG_HAVE_CBPF_JITClassic BPF JIT (cBPF)
CONFIG_MODULESEnable to build loadable kernel modules
CONFIG_BPFBPF VM interpreter
CONFIG_BPF_EVENTSAllow the user to attach BPF programs to kprobe, uprobe, and tracepoint events
CONFIG_PERF_EVENTSKernel performance events and counters
CONFIG_HAVE_PERF_EVENTSEnable perf events
CONFIG_PROFILINGEnable the extended profiling support mechanisms used by profilers
BTFCONFIG_DEBUG_INFO_BTFGenerate deduplicated BTF type information from DWARF debug info
CONFIG_PAHOLE_HAS_SPLIT_BTFGenerate BTF for each selected kernel module
CONFIG_DEBUG_INFO_BTF_MODULESGenerate compact split BTF type information for kernel modules
SecurityCONFIG_BPF_JIT_ALWAYS_ONEnable BPF JIT and removes BPF interpreter to avoid speculative execution
CONFIG_BPF_UNPRIV_DEFAULT_OFFDisable unprivileged BPF by default by setting
CgroupCONFIG_CGROUP_BPFSupport for BPF programs attached to cgroups
NetworkCONFIG_BPFILTERBPF based packet filtering framework (BPFILTER)
CONFIG_BPFILTER_UMHThis builds bpfilter kernel module with embedded user mode helper
CONFIG_NET_CLS_BPFBPF-based classifier - to classify packets based on programmable BPF (JIT'ed) filters as an alternative to ematches
CONFIG_NET_ACT_BPFExecute BPF code on packets. The BPF code will decide if the packet should be dropped or not
CONFIG_BPF_STREAM_PARSEREnable this to allow a TCP stream parser to be used with BPF_MAP_TYPE_SOCKMAP
CONFIG_LWTUNNEL_BPFAllow to run BPF programs as a nexthop action following a route lookup for incoming and outgoing packets
CONFIG_NETFILTER_XT_MATCH_BPFBPF matching applies a linux socket filter to each packet and accepts those for which the filter returns non-zero
CONFIG_IPV6_SEG6_BPFTo support BPF seg6local hook. bpf: Add IPv6 Segment Routing helpersy. Reference
kprobesCONFIG_KPROBE_EVENTSThis allows the user to add tracing events (similar to tracepoints) on the fly via the ftrace interface
CONFIG_KPROBESEnable kprobes-based dynamic events
CONFIG_HAVE_KPROBESCheck if krpobes enabled
CONFIG_HAVE_REGS_AND_STACK_ACCESS_APIThis symbol should be selected by an architecture if it supports the API needed to access registers and stack entries from pt_regs. For example the kprobes-based event tracer needs this API.
CONFIG_KPROBES_ON_FTRACEHave kprobes on function tracer if arch supports full passing of pt_regs to function tracing
kprobe multiCONFIG_FPROBEEnable fprobe to attach the probe on multiple functions at once
kprobe overrideCONFIG_BPF_KPROBE_OVERRIDEEnable BPF programs to override a kprobed function
uprobesCONFIG_UPROBE_EVENTSEnable uprobes-based dynamic events
CONFIG_ARCH_SUPPORTS_UPROBESArch specific uprobes support
CONFIG_UPROBESUprobes is the user-space counterpart to kprobes: they enable instrumentation applications (such as 'perf probe') to establish unintrusive probes in user-space binaries and libraries, by executing handler functions when the probes are hit by user-space applications.
CONFIG_MMUMMU-based virtualised addressing space support by paged memory management
TracepointsCONFIG_TRACEPOINTSEnable inserting tracepoints in the kernel and connect to proble functions
CONFIG_HAVE_SYSCALL_TRACEPOINTSEnable syscall enter/exit tracing
Raw TracepointsSame as Tracepoints
LSMCONFIG_BPF_LSMEnable instrumentation of the security hooks with BPF programs for implementing dynamic MAC and Audit Policies
LIRCCONFIG_BPF_LIRC_MODE2Allow attaching BPF programs to a lirc device
+

bcc Reference Guide

+

Intended for search (Ctrl-F) and reference. For tutorials, start with tutorial.md.

+

This guide is incomplete. If something feels missing, check the bcc and kernel source. And if you confirm we're missing something, please send a pull request to fix it, and help out everyone.

+

Contents

+ +

BPF C

+

This section describes the C part of a bcc program.

+

Events & Arguments

+

1. kprobes

+

Syntax: kprobe__kernel_function_name

+

kprobe__ is a special prefix that creates a kprobe (dynamic tracing of a kernel function call) for the kernel function name provided as the remainder. You can also use kprobes by declaring a normal C function, then using the Python BPF.attach_kprobe() (covered later) to associate it with a kernel function.

+

Arguments are specified on the function declaration: kprobe__kernel_function_name(struct pt_regs *ctx [, argument1 ...])

+

For example:

+
int kprobe__tcp_v4_connect(struct pt_regs *ctx, struct sock *sk) {
+    [...]
+}
+
+

This instruments the tcp_v4_connect() kernel function using a kprobe, with the following arguments:

+
    +
  • struct pt_regs *ctx: Registers and BPF context.
  • +
  • struct sock *sk: First argument to tcp_v4_connect().
  • +
+

The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them).

+

Examples in situ: +code (output), +code (output)

+ +

2. kretprobes

+

Syntax: kretprobe__kernel_function_name

+

kretprobe__ is a special prefix that creates a kretprobe (dynamic tracing of a kernel function return) for the kernel function name provided as the remainder. You can also use kretprobes by declaring a normal C function, then using the Python BPF.attach_kretprobe() (covered later) to associate it with a kernel function.

+

Return value is available as PT_REGS_RC(ctx), given a function declaration of: kretprobe__kernel_function_name(struct pt_regs *ctx)

+

For example:

+
int kretprobe__tcp_v4_connect(struct pt_regs *ctx)
+{
+    int ret = PT_REGS_RC(ctx);
+    [...]
+}
+
+

This instruments the return of the tcp_v4_connect() kernel function using a kretprobe, and stores the return value in ret.

+

Examples in situ: +code (output)

+

3. Tracepoints

+

Syntax: TRACEPOINT_PROBE(category, event)

+

This is a macro that instruments the tracepoint defined by category:event.

+

The tracepoint name is <category>:<event>. +The probe function name is tracepoint__<category>__<event>.

+

Arguments are available in an args struct, which are the tracepoint arguments. One way to list these is to cat the relevant format file under /sys/kernel/debug/tracing/events/category/event/format.

+

The args struct can be used in place of ctx in each functions requiring a context as an argument. This includes notably perf_submit().

+

For example:

+
TRACEPOINT_PROBE(random, urandom_read) {
+    // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format
+    bpf_trace_printk("%d\\n", args->got_bits);
+    return 0;
+}
+
+

This instruments the tracepoint random:urandom_read tracepoint, and prints the tracepoint argument got_bits. +When using Python API, this probe is automatically attached to the right tracepoint target. +For C++, this tracepoint probe can be attached by specifying the tracepoint target and function name explicitly: +BPF::attach_tracepoint("random:urandom_read", "tracepoint__random__urandom_read") +Note the name of the probe function defined above is tracepoint__random__urandom_read.

+

Examples in situ: +code (output), +search /examples, +search /tools

+

4. uprobes

+

These are instrumented by declaring a normal function in C, then associating it as a uprobe probe in Python via BPF.attach_uprobe() (covered later).

+

Arguments can be examined using PT_REGS_PARM macros.

+

For example:

+
int count(struct pt_regs *ctx) {
+    char buf[64];
+    bpf_probe_read_user(&buf, sizeof(buf), (void *)PT_REGS_PARM1(ctx));
+    bpf_trace_printk("%s %d", buf, PT_REGS_PARM2(ctx));
+    return(0);
+}
+
+

This reads the first argument as a string, and then prints it with the second argument as an integer.

+

Examples in situ: +code

+

5. uretprobes

+

These are instrumented by declaring a normal function in C, then associating it as a uretprobe probe in Python via BPF.attach_uretprobe() (covered later).

+

Return value is available as PT_REGS_RC(ctx), given a function declaration of: function_name(struct pt_regs *ctx)

+

For example:

+
BPF_HISTOGRAM(dist);
+int count(struct pt_regs *ctx) {
+    dist.increment(PT_REGS_RC(ctx));
+    return 0;
+}
+
+

This increments the bucket in the dist histogram that is indexed by the return value.

+

Examples in situ: +code (output), +code (output)

+

6. USDT probes

+

These are User Statically-Defined Tracing (USDT) probes, which may be placed in some applications or libraries to provide a user-level equivalent of tracepoints. The primary BPF method provided for USDT support method is enable_probe(). USDT probes are instrumented by declaring a normal function in C, then associating it as a USDT probe in Python via USDT.enable_probe().

+

Arguments can be read via: bpf_usdt_readarg(index, ctx, &addr)

+

For example:

+
int do_trace(struct pt_regs *ctx) {
+    uint64_t addr;
+    char path[128];
+    bpf_usdt_readarg(6, ctx, &addr);
+    bpf_probe_read_user(&path, sizeof(path), (void *)addr);
+    bpf_trace_printk("path:%s\\n", path);
+    return 0;
+};
+
+

This reads the sixth USDT argument, and then pulls it in as a string to path.

+

When initializing USDTs via the third argument of BPF::init in the C API, if any USDT fails to init, entire BPF::init will fail. If you're OK with some USDTs failing to init, use BPF::init_usdt before calling BPF::init.

+

Examples in situ: +code, +search /examples, +search /tools

+

7. Raw Tracepoints

+

Syntax: RAW_TRACEPOINT_PROBE(event)

+

This is a macro that instruments the raw tracepoint defined by event.

+

The argument is a pointer to struct bpf_raw_tracepoint_args, which is defined in bpf.h. The struct field args contains all parameters of the raw tracepoint where you can found at linux tree include/trace/events +directory.

+

For example:

+
RAW_TRACEPOINT_PROBE(sched_switch)
+{
+    // TP_PROTO(bool preempt, struct task_struct *prev, struct task_struct *next)
+    struct task_struct *prev = (struct task_struct *)ctx->args[1];
+    struct task_struct *next= (struct task_struct *)ctx->args[2];
+    s32 prev_tgid, next_tgid;
+
+    bpf_probe_read_kernel(&prev_tgid, sizeof(prev->tgid), &prev->tgid);
+    bpf_probe_read_kernel(&next_tgid, sizeof(next->tgid), &next->tgid);
+    bpf_trace_printk("%d -> %d\\n", prev_tgid, next_tgid);
+}
+
+

This instruments the sched:sched_switch tracepoint, and prints the prev and next tgid.

+

Examples in situ: +search /tools

+

8. system call tracepoints

+

Syntax: syscall__SYSCALLNAME

+

syscall__ is a special prefix that creates a kprobe for the system call name provided as the remainder. You can use it by declaring a normal C function, then using the Python BPF.get_syscall_fnname(SYSCALLNAME) and BPF.attach_kprobe() to associate it.

+

Arguments are specified on the function declaration: syscall__SYSCALLNAME(struct pt_regs *ctx, [, argument1 ...]).

+

For example:

+
int syscall__execve(struct pt_regs *ctx,
+    const char __user *filename,
+    const char __user *const __user *__argv,
+    const char __user *const __user *__envp)
+{
+    [...]
+}
+
+

This instruments the execve system call.

+

The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them).

+

Corresponding Python code:

+
b = BPF(text=bpf_text)
+execve_fnname = b.get_syscall_fnname("execve")
+b.attach_kprobe(event=execve_fnname, fn_name="syscall__execve")
+
+

Examples in situ: +code (output)

+

9. kfuncs

+

Syntax: KFUNC_PROBE(function, typeof(arg1) arg1, typeof(arg2) arge ...)

+

This is a macro that instruments the kernel function via trampoline +before the function is executed. It's defined by function name and +the function arguments defined as argX.

+

For example:

+
KFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode)
+{
+    ...
+
+

This instruments the do_sys_open kernel function and make its arguments +accessible as standard argument values.

+

Examples in situ: +search /tools

+

10. kretfuncs

+

Syntax: KRETFUNC_PROBE(event, typeof(arg1) arg1, typeof(arg2) arge ..., int ret)

+

This is a macro that instruments the kernel function via trampoline +after the function is executed. It's defined by function name and +the function arguments defined as argX.

+

The last argument of the probe is the return value of the instrumented function.

+

For example:

+
KRETFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode, int ret)
+{
+    ...
+
+

This instruments the do_sys_open kernel function and make its arguments +accessible as standard argument values together with its return value.

+

Examples in situ: +search /tools

+

11. LSM Probes

+

Syntax: LSM_PROBE(hook, typeof(arg1) arg1, typeof(arg2) arg2 ...)

+

This is a macro that instruments an LSM hook as a BPF program. It can be +used to audit security events and implement MAC security policies in BPF. +It is defined by specifying the hook name followed by its arguments.

+

Hook names can be found in +include/linux/security.h +by taking functions like security_hookname and taking just the hookname part. +For example, security_bpf would simply become bpf.

+

Unlike other BPF program types, the return value specified in an LSM probe +matters. A return value of 0 allows the hook to succeed, whereas +any non-zero return value will cause the hook to fail and deny the +security operation.

+

The following example instruments a hook that denies all future BPF operations:

+
LSM_PROBE(bpf, int cmd, union bpf_attr *attr, unsigned int size)
+{
+    return -EPERM;
+}
+
+

This instruments the security_bpf hook and causes it to return -EPERM. +Changing return -EPERM to return 0 would cause the BPF program +to allow the operation instead.

+

LSM probes require at least a 5.7+ kernel with the following configuation options set:

+
    +
  • CONFIG_BPF_LSM=y
  • +
  • CONFIG_LSM comma separated string must contain "bpf" (for example, +CONFIG_LSM="lockdown,yama,bpf")
  • +
+

Examples in situ: +search /tests

+

12. BPF ITERATORS

+

Syntax: BPF_ITER(target)

+

This is a macro to define a program signature for a bpf iterator program. The argument target specifies what to iterate for the program.

+

Currently, kernel does not have interface to discover what targets are supported. A good place to find what is supported is in tools/testing/selftests/bpf/prog_test/bpf_iter.c and some sample bpf iter programs are in tools/testing/selftests/bpf/progs with file name prefix bpf_iter.

+

The following example defines a program for target task, which traverses all tasks in the kernel.

+
BPF_ITER(task)
+{
+  struct seq_file *seq = ctx->meta->seq;
+  struct task_struct *task = ctx->task;
+
+  if (task == (void *)0)
+    return 0;
+
+  ... task->pid, task->tgid, task->comm, ...
+  return 0;
+}
+
+

BPF iterators are introduced in 5.8 kernel for task, task_file, bpf_map, netlink_sock and ipv6_route . In 5.9, support is added to tcp/udp sockets and bpf map element (hashmap, arraymap and sk_local_storage_map) traversal.

+

Data

+

1. bpf_probe_read_kernel()

+

Syntax: int bpf_probe_read_kernel(void *dst, int size, const void *src)

+

Return: 0 on success

+

This copies size bytes from kernel address space to the BPF stack, so that BPF can later operate on it. For safety, all kernel memory reads must pass through bpf_probe_read_kernel(). This happens automatically in some cases, such as dereferencing kernel variables, as bcc will rewrite the BPF program to include the necessary bpf_probe_read_kernel().

+

Examples in situ: +search /examples, +search /tools

+

2. bpf_probe_read_kernel_str()

+

Syntax: int bpf_probe_read_kernel_str(void *dst, int size, const void *src)

+

Return:

+
    +
  • > 0 length of the string including the trailing NULL on success
  • +
  • < 0 error
  • +
+

This copies a NULL terminated string from kernel address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL.

+

Examples in situ: +search /examples, +search /tools

+

3. bpf_ktime_get_ns()

+

Syntax: u64 bpf_ktime_get_ns(void)

+

Return: u64 number of nanoseconds. Starts at system boot time but stops during suspend.

+

Examples in situ: +search /examples, +search /tools

+

4. bpf_get_current_pid_tgid()

+

Syntax: u64 bpf_get_current_pid_tgid(void)

+

Return: current->tgid << 32 | current->pid

+

Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits.

+

Examples in situ: +search /examples, +search /tools

+

5. bpf_get_current_uid_gid()

+

Syntax: u64 bpf_get_current_uid_gid(void)

+

Return: current_gid << 32 | current_uid

+

Returns the user ID and group IDs.

+

Examples in situ: +search /examples, +search /tools

+

6. bpf_get_current_comm()

+

Syntax: bpf_get_current_comm(char *buf, int size_of_buf)

+

Return: 0 on success

+

Populates the first argument address with the current process name. It should be a pointer to a char array of at least size TASK_COMM_LEN, which is defined in linux/sched.h. For example:

+
#include <linux/sched.h>
+
+int do_trace(struct pt_regs *ctx) {
+    char comm[TASK_COMM_LEN];
+    bpf_get_current_comm(&comm, sizeof(comm));
+[...]
+
+

Examples in situ: +search /examples, +search /tools

+

7. bpf_get_current_task()

+

Syntax: bpf_get_current_task()

+

Return: current task as a pointer to struct task_struct.

+

Returns a pointer to the current task's task_struct object. This helper can be used to compute the on-CPU time for a process, identify kernel threads, get the current CPU's run queue, or retrieve many other pieces of information.

+

With Linux 4.13, due to issues with field randomization, you may need two #define directives before the includes:

+
#define randomized_struct_fields_start  struct {
+#define randomized_struct_fields_end    };
+#include <linux/sched.h>
+
+int do_trace(void *ctx) {
+    struct task_struct *t = (struct task_struct *)bpf_get_current_task();
+[...]
+
+

Examples in situ: +search /examples, +search /tools

+

8. bpf_log2l()

+

Syntax: unsigned int bpf_log2l(unsigned long v)

+

Returns the log-2 of the provided value. This is often used to create indexes for histograms, to construct power-of-2 histograms.

+

Examples in situ: +search /examples, +search /tools

+

9. bpf_get_prandom_u32()

+

Syntax: u32 bpf_get_prandom_u32()

+

Returns a pseudo-random u32.

+

Example in situ: +search /examples, +search /tools

+

10. bpf_probe_read_user()

+

Syntax: int bpf_probe_read_user(void *dst, int size, const void *src)

+

Return: 0 on success

+

This attempts to safely read size bytes from user address space to the BPF stack, so that BPF can later operate on it. For safety, all user address space memory reads must pass through bpf_probe_read_user().

+

Examples in situ: +search /examples, +search /tools

+

11. bpf_probe_read_user_str()

+

Syntax: int bpf_probe_read_user_str(void *dst, int size, const void *src)

+

Return:

+
    +
  • > 0 length of the string including the trailing NULL on success
  • +
  • < 0 error
  • +
+

This copies a NULL terminated string from user address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL.

+

Examples in situ: +search /examples, +search /tools

+

12. bpf_get_ns_current_pid_tgid()

+

Syntax: u32 bpf_get_ns_current_pid_tgid(u64 dev, u64 ino, struct bpf_pidns_info* nsdata, u32 size)

+

Values for pid and tgid as seen from the current namespace will be returned in nsdata.

+

Return 0 on success, or one of the following in case of failure:

+
    +
  • +

    -EINVAL if dev and inum supplied don't match dev_t and inode number with nsfs of current task, or if dev conversion to dev_t lost high bits.

    +
  • +
  • +

    -ENOENT if pidns does not exists for the current task.

    +
  • +
+

Examples in situ: +search /examples, +search /tools

+

Debugging

+

1. bpf_override_return()

+

Syntax: int bpf_override_return(struct pt_regs *, unsigned long rc)

+

Return: 0 on success

+

When used in a program attached to a function entry kprobe, causes the +execution of the function to be skipped, immediately returning rc instead. +This is used for targeted error injection.

+

bpf_override_return will only work when the kprobed function is whitelisted to +allow error injections. Whitelisting entails tagging a function with +ALLOW_ERROR_INJECTION() in the kernel source tree; see io_ctl_init for +an example. If the kprobed function is not whitelisted, the bpf program will +fail to attach with ioctl(PERF_EVENT_IOC_SET_BPF): Invalid argument

+
int kprobe__io_ctl_init(void *ctx) {
+	bpf_override_return(ctx, -ENOMEM);
+	return 0;
+}
+
+

Output

+

1. bpf_trace_printk()

+

Syntax: int bpf_trace_printk(const char *fmt, ...)

+

Return: 0 on success

+

A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(). Note that calling this helper is made simpler than the original kernel version, which has fmt_size as the second parameter.

+

Examples in situ: +search /examples, +search /tools

+

2. BPF_PERF_OUTPUT

+

Syntax: BPF_PERF_OUTPUT(name)

+

Creates a BPF table for pushing out custom event data to user space via a perf ring buffer. This is the preferred method for pushing per-event data to user space.

+

For example:

+
struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_PERF_OUTPUT(events);
+
+int hello(struct pt_regs *ctx) {
+    struct data_t data = {};
+
+    data.pid = bpf_get_current_pid_tgid();
+    data.ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data.comm, sizeof(data.comm));
+
+    events.perf_submit(ctx, &data, sizeof(data));
+
+    return 0;
+}
+
+

The output table is named events, and data is pushed to it via events.perf_submit().

+

Examples in situ: +search /examples, +search /tools

+

3. perf_submit()

+

Syntax: int perf_submit((void *)ctx, (void *)data, u32 data_size)

+

Return: 0 on success

+

A method of a BPF_PERF_OUTPUT table, for submitting custom event data to user space. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().)

+

The ctx parameter is provided in kprobes or kretprobes. For SCHED_CLS or SOCKET_FILTER programs, the struct __sk_buff *skb must be used instead.

+

Examples in situ: +search /examples, +search /tools

+

4. perf_submit_skb()

+

Syntax: int perf_submit_skb((void *)ctx, u32 packet_size, (void *)data, u32 data_size)

+

Return: 0 on success

+

A method of a BPF_PERF_OUTPUT table available in networking program types, for submitting custom event data to user space, along with the first packet_size bytes of the packet buffer. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().)

+

Examples in situ: +search /examples, +search /tools

+

5. BPF_RINGBUF_OUTPUT

+

Syntax: BPF_RINGBUF_OUTPUT(name, page_cnt)

+

Creates a BPF table for pushing out custom event data to user space via a ringbuf ring buffer. +BPF_RINGBUF_OUTPUT has several advantages over BPF_PERF_OUTPUT, summarized as follows:

+
    +
  • Buffer is shared across all CPUs, meaning no per-CPU allocation
  • +
  • Supports two APIs for BPF programs +
      +
    • map.ringbuf_output() works like map.perf_submit() (covered in ringbuf_output)
    • +
    • map.ringbuf_reserve()/map.ringbuf_submit()/map.ringbuf_discard() +split the process of reserving buffer space and submitting events into two steps +(covered in ringbuf_reserve, ringbuf_submit, ringbuf_discard)
    • +
    +
  • +
  • BPF APIs do not require access to a CPU ctx argument
  • +
  • Superior performance and latency in userspace thanks to a shared ring buffer manager
  • +
  • Supports two ways of consuming data in userspace
  • +
+

Starting in Linux 5.8, this should be the preferred method for pushing per-event data to user space.

+

Example of both APIs:

+
struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+
+// Creates a ringbuf called events with 8 pages of space, shared across all CPUs
+BPF_RINGBUF_OUTPUT(events, 8);
+
+int first_api_example(struct pt_regs *ctx) {
+    struct data_t data = {};
+
+    data.pid = bpf_get_current_pid_tgid();
+    data.ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data.comm, sizeof(data.comm));
+
+    events.ringbuf_output(&data, sizeof(data), 0 /* flags */);
+
+    return 0;
+}
+
+int second_api_example(struct pt_regs *ctx) {
+    struct data_t *data = events.ringbuf_reserve(sizeof(struct data_t));
+    if (!data) { // Failed to reserve space
+        return 1;
+    }
+
+    data->pid = bpf_get_current_pid_tgid();
+    data->ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data->comm, sizeof(data->comm));
+
+    events.ringbuf_submit(data, 0 /* flags */);
+
+    return 0;
+}
+
+

The output table is named events. Data is allocated via events.ringbuf_reserve() and pushed to it via events.ringbuf_submit().

+

Examples in situ: +search /examples,

+

6. ringbuf_output()

+

Syntax: int ringbuf_output((void *)data, u64 data_size, u64 flags)

+

Return: 0 on success

+

Flags:

+
    +
  • BPF_RB_NO_WAKEUP: Do not sent notification of new data availability
  • +
  • BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally
  • +
+

A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. This method works like perf_submit(), +although it does not require a ctx argument.

+

Examples in situ: +search /examples,

+

7. ringbuf_reserve()

+

Syntax: void* ringbuf_reserve(u64 data_size)

+

Return: Pointer to data struct on success, NULL on failure

+

A method of the BPF_RINGBUF_OUTPUT table, for reserving space in the ring buffer and simultaenously +allocating a data struct for output. Must be used with one of ringbuf_submit or ringbuf_discard.

+

Examples in situ: +search /examples,

+

8. ringbuf_submit()

+

Syntax: void ringbuf_submit((void *)data, u64 flags)

+

Return: Nothing, always succeeds

+

Flags:

+
    +
  • BPF_RB_NO_WAKEUP: Do not sent notification of new data availability
  • +
  • BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally
  • +
+

A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. Must be preceded by a call to +ringbuf_reserve() to reserve space for the data.

+

Examples in situ: +search /examples,

+

9. ringbuf_discard()

+

Syntax: void ringbuf_discard((void *)data, u64 flags)

+

Return: Nothing, always succeeds

+

Flags:

+
    +
  • BPF_RB_NO_WAKEUP: Do not sent notification of new data availability
  • +
  • BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally
  • +
+

A method of the BPF_RINGBUF_OUTPUT table, for discarding custom event data; userspace +ignores the data associated with the discarded event. Must be preceded by a call to +ringbuf_reserve() to reserve space for the data.

+

Examples in situ: +search /examples,

+

Maps

+

Maps are BPF data stores, and are the basis for higher level object types including tables, hashes, and histograms.

+

1. BPF_TABLE

+

Syntax: BPF_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries)

+

Creates a map named _name. Most of the time this will be used via higher-level macros, like BPF_HASH, BPF_ARRAY, BPF_HISTOGRAM, etc.

+

BPF_F_TABLE is a variant that takes a flag in the last parameter. BPF_TABLE(https://github.com/iovisor/bcc/tree/master.) is actually a wrapper to BPF_F_TABLE(https://github.com/iovisor/bcc/tree/master., 0 /* flag */).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

Pinned Maps

+

Syntax: BPF_TABLE_PINNED(_table_type, _key_type, _leaf_type, _name, _max_entries, "/sys/fs/bpf/xyz")

+

Create a new map if it doesn't exist and pin it to the bpffs as a FILE, otherwise use the map that was pinned to the bpffs. The type information is not enforced and the actual map type depends on the map that got pinned to the location.

+

For example:

+
BPF_TABLE_PINNED("hash", u64, u64, ids, 1024, "/sys/fs/bpf/ids");
+
+

2. BPF_HASH

+

Syntax: BPF_HASH(name [, key_type [, leaf_type [, size]]])

+

Creates a hash map (associative array) named name, with optional parameters.

+

Defaults: BPF_HASH(name, key_type=u64, leaf_type=u64, size=10240)

+

For example:

+
BPF_HASH(start, struct request *);
+
+

This creates a hash named start where the key is a struct request *, and the value defaults to u64. This hash is used by the disksnoop.py example for saving timestamps for each I/O request, where the key is the pointer to struct request, and the value is the timestamp.

+

This is a wrapper macro for BPF_TABLE("hash", ...).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

3. BPF_ARRAY

+

Syntax: BPF_ARRAY(name [, leaf_type [, size]])

+

Creates an int-indexed array which is optimized for fastest lookup and update, named name, with optional parameters.

+

Defaults: BPF_ARRAY(name, leaf_type=u64, size=10240)

+

For example:

+
BPF_ARRAY(counts, u64, 32);
+
+

This creates an array named counts where with 32 buckets and 64-bit integer values. This array is used by the funccount.py example for saving call count of each function.

+

This is a wrapper macro for BPF_TABLE("array", ...).

+

Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted.

+

Examples in situ: +search /examples, +search /tools

+

4. BPF_HISTOGRAM

+

Syntax: BPF_HISTOGRAM(name [, key_type [, size ]])

+

Creates a histogram map named name, with optional parameters.

+

Defaults: BPF_HISTOGRAM(name, key_type=int, size=64)

+

For example:

+
BPF_HISTOGRAM(dist);
+
+

This creates a histogram named dist, which defaults to 64 buckets indexed by keys of type int.

+

This is a wrapper macro for BPF_TABLE("histgram", ...).

+

Methods (covered later): map.increment().

+

Examples in situ: +search /examples, +search /tools

+

5. BPF_STACK_TRACE

+

Syntax: BPF_STACK_TRACE(name, max_entries)

+

Creates stack trace map named name, with a maximum entry count provided. These maps are used to store stack traces.

+

For example:

+
BPF_STACK_TRACE(stack_traces, 1024);
+
+

This creates stack trace map named stack_traces, with a maximum number of stack trace entries of 1024.

+

This is a wrapper macro for BPF_TABLE("stacktrace", ...).

+

Methods (covered later): map.get_stackid().

+

Examples in situ: +search /examples, +search /tools

+

6. BPF_PERF_ARRAY

+

Syntax: BPF_PERF_ARRAY(name, max_entries)

+

Creates perf array named name, with a maximum entry count provided, which must be equal to the number of system cpus. These maps are used to fetch hardware performance counters.

+

For example:

+
text="""
+BPF_PERF_ARRAY(cpu_cycles, NUM_CPUS);
+"""
+b = bcc.BPF(text=text, cflags=["-DNUM_CPUS=%d" % multiprocessing.cpu_count()])
+b["cpu_cycles"].open_perf_event(b["cpu_cycles"].HW_CPU_CYCLES)
+
+

This creates a perf array named cpu_cycles, with number of entries equal to the number of cpus/cores. The array is configured so that later calling map.perf_read() will return a hardware-calculated counter of the number of cycles elapsed from some point in the past. Only one type of hardware counter may be configured per table at a time.

+

Methods (covered later): map.perf_read().

+

Examples in situ: +search /tests

+

7. BPF_PERCPU_HASH

+

Syntax: BPF_PERCPU_HASH(name [, key_type [, leaf_type [, size]]])

+

Creates NUM_CPU int-indexed hash maps (associative arrays) named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way.

+

Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. +In other words, BPF_PERCPU_HASH elements cannot be larger than 32KB in size.

+

Defaults: BPF_PERCPU_HASH(name, key_type=u64, leaf_type=u64, size=10240)

+

For example:

+
BPF_PERCPU_HASH(start, struct request *);
+
+

This creates NUM_CPU hashes named start where the key is a struct request *, and the value defaults to u64.

+

This is a wrapper macro for BPF_TABLE("percpu_hash", ...).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

8. BPF_PERCPU_ARRAY

+

Syntax: BPF_PERCPU_ARRAY(name [, leaf_type [, size]])

+

Creates NUM_CPU int-indexed arrays which are optimized for fastest lookup and update, named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way.

+

Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. +In other words, BPF_PERCPU_ARRAY elements cannot be larger than 32KB in size.

+

Defaults: BPF_PERCPU_ARRAY(name, leaf_type=u64, size=10240)

+

For example:

+
BPF_PERCPU_ARRAY(counts, u64, 32);
+
+

This creates NUM_CPU arrays named counts where with 32 buckets and 64-bit integer values.

+

This is a wrapper macro for BPF_TABLE("percpu_array", ...).

+

Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted.

+

Examples in situ: +search /examples, +search /tools

+

9. BPF_LPM_TRIE

+

Syntax: BPF_LPM_TRIE(name [, key_type [, leaf_type [, size]]])

+

Creates a longest prefix match trie map named name, with optional parameters.

+

Defaults: BPF_LPM_TRIE(name, key_type=u64, leaf_type=u64, size=10240)

+

For example:

+
BPF_LPM_TRIE(trie, struct key_v6);
+
+

This creates an LPM trie map named trie where the key is a struct key_v6, and the value defaults to u64.

+

This is a wrapper macro to BPF_F_TABLE("lpm_trie", ..., BPF_F_NO_PREALLOC).

+

Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment().

+

Examples in situ: +search /examples, +search /tools

+

10. BPF_PROG_ARRAY

+

Syntax: BPF_PROG_ARRAY(name, size)

+

This creates a program array named name with size entries. Each entry of the array is either a file descriptor to a bpf program or NULL. The array acts as a jump table so that bpf programs can "tail-call" other bpf programs.

+

This is a wrapper macro for BPF_TABLE("prog", ...).

+

Methods (covered later): map.call().

+

Examples in situ: +search /examples, +search /tests, +assign fd

+

11. BPF_DEVMAP

+

Syntax: BPF_DEVMAP(name, size)

+

This creates a device map named name with size entries. Each entry of the map is an ifindex to a network interface. This map is only used in XDP.

+

For example:

+
BPF_DEVMAP(devmap, 10);
+
+

Methods (covered later): map.redirect_map().

+

Examples in situ: +search /examples,

+

12. BPF_CPUMAP

+

Syntax: BPF_CPUMAP(name, size)

+

This creates a cpu map named name with size entries. The index of the map represents the CPU id and each entry is the size of the ring buffer allocated for the CPU. This map is only used in XDP.

+

For example:

+
BPF_CPUMAP(cpumap, 16);
+
+

Methods (covered later): map.redirect_map().

+

Examples in situ: +search /examples,

+

13. BPF_XSKMAP

+

Syntax: BPF_XSKMAP(name, size [, "/sys/fs/bpf/xyz"])

+

This creates a xsk map named name with size entries and pin it to the bpffs as a FILE. Each entry represents one NIC's queue id. This map is only used in XDP to redirect packet to an AF_XDP socket. If the AF_XDP socket is binded to a queue which is different than the current packet's queue id, the packet will be dropped. For kernel v5.3 and latter, lookup method is available and can be used to check whether and AF_XDP socket is available for the current packet's queue id. More details at AF_XDP.

+

For example:

+
BPF_XSKMAP(xsks_map, 8);
+
+

Methods (covered later): map.redirect_map(). map.lookup()

+

Examples in situ: +search /examples,

+

14. BPF_ARRAY_OF_MAPS

+

Syntax: BPF_ARRAY_OF_MAPS(name, inner_map_name, size)

+

This creates an array map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE.

+

For example:

+
BPF_TABLE("hash", int, int, ex1, 1024);
+BPF_TABLE("hash", int, int, ex2, 1024);
+BPF_ARRAY_OF_MAPS(maps_array, "ex1", 10);
+
+

15. BPF_HASH_OF_MAPS

+

Syntax: BPF_HASH_OF_MAPS(name, key_type, inner_map_name, size)

+

This creates a hash map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE.

+

For example:

+
BPF_ARRAY(ex1, int, 1024);
+BPF_ARRAY(ex2, int, 1024);
+BPF_HASH_OF_MAPS(maps_hash, struct custom_key, "ex1", 10);
+
+

16. BPF_STACK

+

Syntax: BPF_STACK(name, leaf_type, max_entries[, flags])

+

Creates a stack named name with value type leaf_type and max entries max_entries. +Stack and Queue maps are only available from Linux 4.20+.

+

For example:

+
BPF_STACK(stack, struct event, 10240);
+
+

This creates a stack named stack where the value type is struct event, that holds up to 10240 entries.

+

Methods (covered later): map.push(), map.pop(), map.peek().

+

Examples in situ: +search /tests,

+

17. BPF_QUEUE

+

Syntax: BPF_QUEUE(name, leaf_type, max_entries[, flags])

+

Creates a queue named name with value type leaf_type and max entries max_entries. +Stack and Queue maps are only available from Linux 4.20+.

+

For example:

+
BPF_QUEUE(queue, struct event, 10240);
+
+

This creates a queue named queue where the value type is struct event, that holds up to 10240 entries.

+

Methods (covered later): map.push(), map.pop(), map.peek().

+

Examples in situ: +search /tests,

+

18. BPF_SOCKHASH

+

Syntax: BPF_SOCKHASH(name[, key_type [, max_entries)

+

Creates a hash named name, with optional parameters. sockhash is only available from Linux 4.18+.

+

Default: BPF_SOCKHASH(name, key_type=u32, max_entries=10240)

+

For example:

+
struct sock_key {
+  u32 remote_ip4;
+  u32 local_ip4;
+  u32 remote_port;
+  u32 local_port;
+};
+BPF_HASH(skh, struct sock_key, 65535);
+
+

This creates a hash named skh where the key is a struct sock_key.

+

A sockhash is a BPF map type that holds references to sock structs. Then with a new sk/msg redirect bpf helper BPF programs can use the map to redirect skbs/msgs between sockets (map.sk_redirect_hash()/map.msg_redirect_hash()).

+

The difference between BPF_SOCKHASH and BPF_SOCKMAP is that BPF_SOCKMAP is implemented based on an array, and enforces keys to be four bytes. While BPF_SOCKHASH is implemented based on hash table, and the type of key can be specified freely.

+

Methods (covered later): map.sock_hash_update(), map.msg_redirect_hash(), map.sk_redirect_hash().

+

search /tests

+

19. map.lookup()

+

Syntax: *val map.lookup(&key)

+

Lookup the key in the map, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer.

+

Examples in situ: +search /examples, +search /tools

+

20. map.lookup_or_try_init()

+

Syntax: *val map.lookup_or_try_init(&key, &zero)

+

Lookup the key in the map, and return a pointer to its value if it exists, else initialize the key's value to the second argument. This is often used to initialize values to zero. If the key cannot be inserted (e.g. the map is full) then NULL is returned.

+

Examples in situ: +search /examples, +search /tools

+

Note: The old map.lookup_or_init() may cause return from the function, so lookup_or_try_init() is recommended as it +does not have this side effect.

+

21. map.delete()

+

Syntax: map.delete(&key)

+

Delete the key from the hash.

+

Examples in situ: +search /examples, +search /tools

+

22. map.update()

+

Syntax: map.update(&key, &val)

+

Associate the value in the second argument to the key, overwriting any previous value.

+

Examples in situ: +search /examples, +search /tools

+

23. map.insert()

+

Syntax: map.insert(&key, &val)

+

Associate the value in the second argument to the key, only if there was no previous value.

+

Examples in situ: +search /examples, +search /tools

+

24. map.increment()

+

Syntax: map.increment(key[, increment_amount])

+

Increments the key's value by increment_amount, which defaults to 1. Used for histograms.

+

map.increment() are not atomic. In the concurrency case. If you want more accurate results, use map.atomic_increment() instead of map.increment(). The overhead of map.increment() and map.atomic_increment() is similar.

+

Note. When using map.atomic_increment() to operate on a BPF map of type BPF_MAP_TYPE_HASH, map.atomic_increment() does not guarantee the atomicity of the operation when the specified key does not exist.

+

Examples in situ: +search /examples, +search /tools

+

25. map.get_stackid()

+

Syntax: int map.get_stackid(void *ctx, u64 flags)

+

This walks the stack found via the struct pt_regs in ctx, saves it in the stack trace map, and returns a unique ID for the stack trace.

+

Examples in situ: +search /examples, +search /tools

+

26. map.perf_read()

+

Syntax: u64 map.perf_read(u32 cpu)

+

This returns the hardware performance counter as configured in 5. BPF_PERF_ARRAY

+

Examples in situ: +search /tests

+

27. map.call()

+

Syntax: void map.call(void *ctx, int index)

+

This invokes bpf_tail_call() to tail-call the bpf program which the index entry in BPF_PROG_ARRAY points to. A tail-call is different from the normal call. It reuses the current stack frame after jumping to another bpf program and never goes back. If the index entry is empty, it won't jump anywhere and the program execution continues as normal.

+

For example:

+
BPF_PROG_ARRAY(prog_array, 10);
+
+int tail_call(void *ctx) {
+    bpf_trace_printk("Tail-call\n");
+    return 0;
+}
+
+int do_tail_call(void *ctx) {
+    bpf_trace_printk("Original program\n");
+    prog_array.call(ctx, 2);
+    return 0;
+}
+
+
b = BPF(src_file="example.c")
+tail_fn = b.load_func("tail_call", BPF.KPROBE)
+prog_array = b.get_table("prog_array")
+prog_array[c_int(2)] = c_int(tail_fn.fd)
+b.attach_kprobe(event="some_kprobe_event", fn_name="do_tail_call")
+
+

This assigns tail_call() to prog_array[2]. In the end of do_tail_call(), prog_array.call(ctx, 2) tail-calls tail_call() and executes it.

+

NOTE: To prevent infinite loop, the maximum number of tail-calls is 32 (MAX_TAIL_CALL_CNT).

+

Examples in situ: +search /examples, +search /tests

+

28. map.redirect_map()

+

Syntax: int map.redirect_map(int index, int flags)

+

This redirects the incoming packets based on the index entry. If the map is BPF_DEVMAP, the packet will be sent to the transmit queue of the network interface that the entry points to. If the map is BPF_CPUMAP, the packet will be sent to the ring buffer of the index CPU and be processed by the CPU later. If the map is BPF_XSKMAP, the packet will be sent to the AF_XDP socket attached to the queue.

+

If the packet is redirected successfully, the function will return XDP_REDIRECT. Otherwise, it will return XDP_ABORTED to discard the packet.

+

For example:

+
BPF_DEVMAP(devmap, 1);
+
+int redirect_example(struct xdp_md *ctx) {
+    return devmap.redirect_map(0, 0);
+}
+int xdp_dummy(struct xdp_md *ctx) {
+    return XDP_PASS;
+}
+
+
ip = pyroute2.IPRoute()
+idx = ip.link_lookup(ifname="eth1")[0]
+
+b = bcc.BPF(src_file="example.c")
+
+devmap = b.get_table("devmap")
+devmap[c_uint32(0)] = c_int(idx)
+
+in_fn = b.load_func("redirect_example", BPF.XDP)
+out_fn = b.load_func("xdp_dummy", BPF.XDP)
+b.attach_xdp("eth0", in_fn, 0)
+b.attach_xdp("eth1", out_fn, 0)
+
+

Examples in situ: +search /examples,

+

29. map.push()

+

Syntax: int map.push(&val, int flags)

+

Push an element onto a Stack or Queue table. +Passing BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full. +Returns 0 on success, negative error on failure.

+

Examples in situ: +search /tests,

+

30. map.pop()

+

Syntax: int map.pop(&val)

+

Pop an element from a Stack or Queue table. *val is populated with the result. +Unlike peeking, popping removes the element. +Returns 0 on success, negative error on failure.

+

Examples in situ: +search /tests,

+

31. map.peek()

+

Syntax: int map.peek(&val)

+

Peek an element at the head of a Stack or Queue table. *val is populated with the result. +Unlike popping, peeking does not remove the element. +Returns 0 on success, negative error on failure.

+

Examples in situ: +search /tests,

+

32. map.sock_hash_update()

+

Syntax: int map.sock_hash_update(struct bpf_sock_ops *skops, &key, int flags)

+

Add an entry to, or update a sockhash map referencing sockets. The skops is used as a new value for the entry associated to key. flags is one of:

+
BPF_NOEXIST: The entry for key must not exist in the map.
+BPF_EXIST: The entry for key must already exist in the map.
+BPF_ANY: No condition on the existence of the entry for key.
+
+

If the map has eBPF programs (parser and verdict), those will be inherited by the socket being added. If the socket is already attached to eBPF programs, this results in an error.

+

Return 0 on success, or a negative error in case of failure.

+

Examples in situ: +search /tests,

+

33. map.msg_redirect_hash()

+

Syntax: int map.msg_redirect_hash(struct sk_msg_buff *msg, void *key, u64 flags)

+

This helper is used in programs implementing policies at the socket level. If the message msg is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress path otherwise). This is the only flag supported for now.

+

Return SK_PASS on success, or SK_DROP on error.

+

Examples in situ: +search /tests,

+

34. map.sk_redirect_hash()

+

Syntax: int map.sk_redirect_hash(struct sk_buff *skb, void *key, u64 flags)

+

This helper is used in programs implementing policies at the skb socket level. If the sk_buff skb is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress otherwise). This is the only flag supported for now.

+

Return SK_PASS on success, or SK_DROP on error.

+

Examples in situ: +search /tests,

+

Licensing

+

Depending on which BPF helpers are used, a GPL-compatible license is required.

+

The special BCC macro BPF_LICENSE specifies the license of the BPF program. You can set the license as a comment in your source code, but the kernel has a special interface to specify it programmatically. If you need to use GPL-only helpers, it is recommended to specify the macro in your C code so that the kernel can understand it:

+
// SPDX-License-Identifier: GPL-2.0+
+#define BPF_LICENSE GPL
+
+

Otherwise, the kernel may reject loading your program (see the error description below). Note that it supports multiple words and quotes are not necessary:

+
// SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause
+#define BPF_LICENSE Dual BSD/GPL
+
+

Check the BPF helpers reference to see which helpers are GPL-only and what the kernel understands as GPL-compatible.

+

If the macro is not specified, BCC will automatically define the license of the program as GPL.

+

Rewriter

+

One of jobs for rewriter is to turn implicit memory accesses to explicit ones using kernel helpers. Recent kernel introduced a config option ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE which will be set for architectures who user address space and kernel address are disjoint. x86 and arm has this config option set while s390 does not. If ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE is not set, the bpf old helper bpf_probe_read() will not be available. Some existing users may have implicit memory accesses to access user memory, so using bpf_probe_read_kernel() will cause their application to fail. Therefore, for non-s390, the rewriter will use bpf_probe_read() for these implicit memory accesses. For s390, bpf_probe_read_kernel() is used as default and users should use bpf_probe_read_user() explicitly when accessing user memories.

+

bcc Python

+

Initialization

+

Constructors.

+

1. BPF

+

Syntax: BPF({text=BPF_program | src_file=filename} [, usdt_contexts=[USDT_object, ...]] [, cflags=[arg1, ...]] [, debug=int])

+

Creates a BPF object. This is the main object for defining a BPF program, and interacting with its output.

+

Exactly one of text or src_file must be supplied (not both).

+

The cflags specifies additional arguments to be passed to the compiler, for example -DMACRO_NAME=value or -I/include/path. The arguments are passed as an array, with each element being an additional argument. Note that strings are not split on whitespace, so each argument must be a different element of the array, e.g. ["-include", "header.h"].

+

The debug flags control debug output, and can be or'ed together:

+
    +
  • DEBUG_LLVM_IR = 0x1 compiled LLVM IR
  • +
  • DEBUG_BPF = 0x2 loaded BPF bytecode and register state on branches
  • +
  • DEBUG_PREPROCESSOR = 0x4 pre-processor result
  • +
  • DEBUG_SOURCE = 0x8 ASM instructions embedded with source
  • +
  • DEBUG_BPF_REGISTER_STATE = 0x10 register state on all instructions in addition to DEBUG_BPF
  • +
  • DEBUG_BTF = 0x20 print the messages from the libbpf library.
  • +
+

Examples:

+
# define entire BPF program in one line:
+BPF(text='int do_trace(void *ctx) { bpf_trace_printk("hit!\\n"); return 0; }');
+
+# define program as a variable:
+prog = """
+int hello(void *ctx) {
+    bpf_trace_printk("Hello, World!\\n");
+    return 0;
+}
+"""
+b = BPF(text=prog)
+
+# source a file:
+b = BPF(src_file = "vfsreadlat.c")
+
+# include a USDT object:
+u = USDT(pid=int(pid))
+[...]
+b = BPF(text=bpf_text, usdt_contexts=[u])
+
+# add include paths:
+u = BPF(text=prog, cflags=["-I/path/to/include"])
+
+

Examples in situ: +search /examples, +search /tools

+

2. USDT

+

Syntax: USDT({pid=pid | path=path})

+

Creates an object to instrument User Statically-Defined Tracing (USDT) probes. Its primary method is enable_probe().

+

Arguments:

+
    +
  • pid: attach to this process ID.
  • +
  • path: instrument USDT probes from this binary path.
  • +
+

Examples:

+
# include a USDT object:
+u = USDT(pid=int(pid))
+[...]
+b = BPF(text=bpf_text, usdt_contexts=[u])
+
+

Examples in situ: +search /examples, +search /tools

+

Events

+

1. attach_kprobe()

+

Syntax: BPF.attach_kprobe(event="event", fn_name="name")

+

Instruments the kernel function event() using kernel dynamic tracing of the function entry, and attaches our C defined function name() to be called when the kernel function is called.

+

For example:

+
b.attach_kprobe(event="sys_clone", fn_name="do_trace")
+
+

This will instrument the kernel sys_clone() function, which will then run our BPF defined do_trace() function each time it is called.

+

You can call attach_kprobe() more than once, and attach your BPF function to multiple kernel functions. +You can also call attach_kprobe() more than once to attach multiple BPF functions to the same kernel function.

+

See the previous kprobes section for how to instrument arguments from BPF.

+

Examples in situ: +search /examples, +search /tools

+

2. attach_kretprobe()

+

Syntax: BPF.attach_kretprobe(event="event", fn_name="name" [, maxactive=int])

+

Instruments the return of the kernel function event() using kernel dynamic tracing of the function return, and attaches our C defined function name() to be called when the kernel function returns.

+

For example:

+
b.attach_kretprobe(event="vfs_read", fn_name="do_return")
+
+

This will instrument the kernel vfs_read() function, which will then run our BPF defined do_return() function each time it is called.

+

You can call attach_kretprobe() more than once, and attach your BPF function to multiple kernel function returns. +You can also call attach_kretprobe() more than once to attach multiple BPF functions to the same kernel function return.

+

When a kretprobe is installed on a kernel function, there is a limit on how many parallel calls it can catch. You can change that limit with maxactive. See the kprobes documentation for its default value.

+

See the previous kretprobes section for how to instrument the return value from BPF.

+

Examples in situ: +search /examples, +search /tools

+

3. attach_tracepoint()

+

Syntax: BPF.attach_tracepoint(tp="tracepoint", fn_name="name")

+

Instruments the kernel tracepoint described by tracepoint, and when hit, runs the BPF function name().

+

This is an explicit way to instrument tracepoints. The TRACEPOINT_PROBE syntax, covered in the earlier tracepoints section, is an alternate method with the advantage of auto-declaring an args struct containing the tracepoint arguments. With attach_tracepoint(), the tracepoint arguments need to be declared in the BPF program.

+

For example:

+
# define BPF program
+bpf_text = """
+#include <uapi/linux/ptrace.h>
+
+struct urandom_read_args {
+    // from /sys/kernel/debug/tracing/events/random/urandom_read/format
+    u64 __unused__;
+    u32 got_bits;
+    u32 pool_left;
+    u32 input_left;
+};
+
+int printarg(struct urandom_read_args *args) {
+    bpf_trace_printk("%d\\n", args->got_bits);
+    return 0;
+};
+"""
+
+# load BPF program
+b = BPF(text=bpf_text)
+b.attach_tracepoint("random:urandom_read", "printarg")
+
+

Notice how the first argument to printarg() is now our defined struct.

+

Examples in situ: +code, +search /examples, +search /tools

+

4. attach_uprobe()

+

Syntax: BPF.attach_uprobe(name="location", sym="symbol", fn_name="name" [, sym_off=int]), BPF.attach_uprobe(name="location", sym_re="regex", fn_name="name"), BPF.attach_uprobe(name="location", addr=int, fn_name="name")

+

Instruments the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function entry, and attach our C defined function name() to be called whenever the user-level function is called. If sym_off is given, the function is attached to the offset within the symbol.

+

The real address addr may be supplied in place of sym, in which case sym must be set to its default value. If the file is a non-PIE executable, addr must be a virtual address, otherwise it must be an offset relative to the file load address.

+

Instead of a symbol name, a regular expression can be provided in sym_re. The uprobe will then attach to symbols that match the provided regular expression.

+

Libraries can be given in the name argument without the lib prefix, or with the full path (/usr/lib/...). Binaries can be given only with the full path (/bin/sh).

+

For example:

+
b.attach_uprobe(name="c", sym="strlen", fn_name="count")
+
+

This will instrument strlen() function from libc, and call our BPF function count() when it is called. Note how the "lib" in "libc" is not necessary to specify.

+

Other examples:

+
b.attach_uprobe(name="c", sym="getaddrinfo", fn_name="do_entry")
+b.attach_uprobe(name="/usr/bin/python", sym="main", fn_name="do_main")
+
+

You can call attach_uprobe() more than once, and attach your BPF function to multiple user-level functions.

+

See the previous uprobes section for how to instrument arguments from BPF.

+

Examples in situ: +search /examples, +search /tools

+

5. attach_uretprobe()

+

Syntax: BPF.attach_uretprobe(name="location", sym="symbol", fn_name="name")

+

Instruments the return of the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function return, and attach our C defined function name() to be called whenever the user-level function returns.

+

For example:

+
b.attach_uretprobe(name="c", sym="strlen", fn_name="count")
+
+

This will instrument strlen() function from libc, and call our BPF function count() when it returns.

+

Other examples:

+
b.attach_uretprobe(name="c", sym="getaddrinfo", fn_name="do_return")
+b.attach_uretprobe(name="/usr/bin/python", sym="main", fn_name="do_main")
+
+

You can call attach_uretprobe() more than once, and attach your BPF function to multiple user-level functions.

+

See the previous uretprobes section for how to instrument the return value from BPF.

+

Examples in situ: +search /examples, +search /tools

+

6. USDT.enable_probe()

+

Syntax: USDT.enable_probe(probe=probe, fn_name=name)

+

Attaches a BPF C function name to the USDT probe probe.

+

Example:

+
# enable USDT probe from given PID
+u = USDT(pid=int(pid))
+u.enable_probe(probe="http__server__request", fn_name="do_trace")
+
+

To check if your binary has USDT probes, and what they are, you can run readelf -n binary and check the stap debug section.

+

Examples in situ: +search /examples, +search /tools

+

7. attach_raw_tracepoint()

+

Syntax: BPF.attach_raw_tracepoint(tp="tracepoint", fn_name="name")

+

Instruments the kernel raw tracepoint described by tracepoint (event only, no category), and when hit, runs the BPF function name().

+

This is an explicit way to instrument tracepoints. The RAW_TRACEPOINT_PROBE syntax, covered in the earlier raw tracepoints section, is an alternate method.

+

For example:

+
b.attach_raw_tracepoint("sched_switch", "do_trace")
+
+

Examples in situ: +search /tools

+

8. attach_raw_socket()

+

Syntax: BPF.attach_raw_socket(fn, dev)

+

Attaches a BPF function to the specified network interface.

+

The fn must be the type of BPF.function and the bpf_prog type needs to be BPF_PROG_TYPE_SOCKET_FILTER (fn=BPF.load_func(func_name, BPF.SOCKET_FILTER))

+

fn.sock is a non-blocking raw socket that was created and bound to dev.

+

All network packets processed by dev are copied to the recv-q of fn.sock after being processed by bpf_prog. Try to recv packet form fn.sock with rev/recvfrom/recvmsg. Note that if the recv-q is not read in time after the recv-q is full, the copied packets will be discarded.

+

We can use this feature to capture network packets just like tcpdump.

+

We can use ss --bpf --packet -p to observe fn.sock.

+

Example:

+
BPF.attach_raw_socket(bpf_func, ifname)
+
+

Examples in situ: +search /examples

+

9. attach_xdp()

+

Syntax: BPF.attach_xdp(dev="device", fn=b.load_func("fn_name",BPF.XDP), flags)

+

Instruments the network driver described by dev , and then receives the packet, run the BPF function fn_name() with flags.

+

Here is a list of optional flags.

+
# from xdp_flags uapi/linux/if_link.h
+XDP_FLAGS_UPDATE_IF_NOEXIST = (1 << 0)
+XDP_FLAGS_SKB_MODE = (1 << 1)
+XDP_FLAGS_DRV_MODE = (1 << 2)
+XDP_FLAGS_HW_MODE = (1 << 3)
+XDP_FLAGS_REPLACE = (1 << 4)
+
+

You can use flags like this BPF.attach_xdp(dev="device", fn=b.load_func("fn_name",BPF.XDP), flags=BPF.XDP_FLAGS_UPDATE_IF_NOEXIST)

+

The default value of flags is 0. This means if there is no xdp program with device, the fn will run with that device. If there is an xdp program running with device, the old program will be replaced with new fn program.

+

Currently, bcc does not support XDP_FLAGS_REPLACE flag. The following are the descriptions of other flags.

+

1. XDP_FLAGS_UPDATE_IF_NOEXIST

+

If an XDP program is already attached to the specified driver, attaching the XDP program again will fail.

+

2. XDP_FLAGS_SKB_MODE

+

Driver doesn’t have support for XDP, but the kernel fakes it. +XDP program works, but there’s no real performance benefit because packets are handed to kernel stack anyways which then emulates XDP – this is usually supported with generic network drivers used in home computers, laptops, and virtualized HW.

+

3. XDP_FLAGS_DRV_MODE

+

A driver has XDP support and can hand then to XDP without kernel stack interaction – Few drivers can support it and those are usually for enterprise HW.

+

4. XDP_FLAGS_HW_MODE

+

XDP can be loaded and executed directly on the NIC – just a handful of NICs can do that.

+

For example:

+
b.attach_xdp(dev="ens1", fn=b.load_func("do_xdp", BPF.XDP))
+
+

This will instrument the network device ens1 , which will then run our BPF defined do_xdp() function each time it receives packets.

+

Don't forget to call b.remove_xdp("ens1") at the end!

+

Examples in situ: +search /examples, +search /tools

+

10. attach_func()

+

Syntax: BPF.attach_func(fn, attachable_fd, attach_type [, flags])

+

Attaches a BPF function of the specified type to a particular attachable_fd. if the attach_type is BPF_FLOW_DISSECTOR, the function is expected to attach to current net namespace and attachable_fd must be 0.

+

For example:

+
b.attach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)
+b.attach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT)
+
+

Note. When attached to "global" hooks (xdp, tc, lwt, cgroup). If the "BPF function" is no longer needed after the program terminates, be sure to call detach_func when the program exits.

+

Examples in situ:

+

search /examples,

+

11. detach_func()

+

Syntax: BPF.detach_func(fn, attachable_fd, attach_type)

+

Detaches a BPF function of the specified type.

+

For example:

+
b.detach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)
+b.detach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT)
+
+

Examples in situ:

+

search /examples,

+

12. detach_kprobe()

+

Syntax: BPF.detach_kprobe(event="event", fn_name="name")

+

Detach a kprobe handler function of the specified event.

+

For example:

+
b.detach_kprobe(event="__page_cache_alloc", fn_name="trace_func_entry")
+
+

13. detach_kretprobe()

+

Syntax: BPF.detach_kretprobe(event="event", fn_name="name")

+

Detach a kretprobe handler function of the specified event.

+

For example:

+
b.detach_kretprobe(event="__page_cache_alloc", fn_name="trace_func_return")
+
+

Debug Output

+

1. trace_print()

+

Syntax: BPF.trace_print(fmt="fields")

+

This method continually reads the globally shared /sys/kernel/debug/tracing/trace_pipe file and prints its contents. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred.

+

Arguments:

+
    +
  • fmt: optional, and can contain a field formatting string. It defaults to None.
  • +
+

Examples:

+
# print trace_pipe output as-is:
+b.trace_print()
+
+# print PID and message:
+b.trace_print(fmt="{1} {5}")
+
+

Examples in situ: +search /examples, +search /tools

+

2. trace_fields()

+

Syntax: BPF.trace_fields(nonblocking=False)

+

This method reads one line from the globally shared /sys/kernel/debug/tracing/trace_pipe file and returns it as fields. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred.

+

Arguments:

+
    +
  • nonblocking: optional, defaults to False. When set to True, the program will not block waiting for input.
  • +
+

Examples:

+
while 1:
+    try:
+        (task, pid, cpu, flags, ts, msg) = b.trace_fields()
+    except ValueError:
+        continue
+    [...]
+
+

Examples in situ: +search /examples, +search /tools

+

Output APIs

+

Normal output from a BPF program is either:

+
    +
  • per-event: using PERF_EVENT_OUTPUT, open_perf_buffer(), and perf_buffer_poll().
  • +
  • map summary: using items(), or print_log2_hist(), covered in the Maps section.
  • +
+

1. perf_buffer_poll()

+

Syntax: BPF.perf_buffer_poll(timeout=T)

+

This polls from all open perf ring buffers, calling the callback function that was provided when calling open_perf_buffer for each entry.

+

The timeout parameter is optional and measured in milliseconds. In its absence, polling continues indefinitely.

+

Example:

+
# loop with callback to print_event
+b["events"].open_perf_buffer(print_event)
+while 1:
+    try:
+        b.perf_buffer_poll()
+    except KeyboardInterrupt:
+        exit();
+
+

Examples in situ: +code, +search /examples, +search /tools

+

2. ring_buffer_poll()

+

Syntax: BPF.ring_buffer_poll(timeout=T)

+

This polls from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry.

+

The timeout parameter is optional and measured in milliseconds. In its absence, polling continues until +there is no more data or the callback returns a negative value.

+

Example:

+
# loop with callback to print_event
+b["events"].open_ring_buffer(print_event)
+while 1:
+    try:
+        b.ring_buffer_poll(30)
+    except KeyboardInterrupt:
+        exit();
+
+

Examples in situ: +search /examples,

+

3. ring_buffer_consume()

+

Syntax: BPF.ring_buffer_consume()

+

This consumes from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry.

+

Unlike ring_buffer_poll, this method does not poll for data before attempting to consume. +This reduces latency at the expense of higher CPU consumption. If you are unsure which to use, +use ring_buffer_poll.

+

Example:

+
# loop with callback to print_event
+b["events"].open_ring_buffer(print_event)
+while 1:
+    try:
+        b.ring_buffer_consume()
+    except KeyboardInterrupt:
+        exit();
+
+

Examples in situ: +search /examples,

+

Map APIs

+

Maps are BPF data stores, and are used in bcc to implement a table, and then higher level objects on top of tables, including hashes and histograms.

+

1. get_table()

+

Syntax: BPF.get_table(name)

+

Returns a table object. This is no longer used, as tables can now be read as items from BPF. Eg: BPF[name].

+

Examples:

+
counts = b.get_table("counts")
+
+counts = b["counts"]
+
+

These are equivalent.

+

2. open_perf_buffer()

+

Syntax: table.open_perf_buffers(callback, page_cnt=N, lost_cb=None)

+

This operates on a table as defined in BPF as BPF_PERF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the perf ring buffer. This is part of the recommended mechanism for transferring per-event data from kernel to user space. The size of the perf ring buffer can be specified via the page_cnt parameter, which must be a power of two number of pages and defaults to 8. If the callback is not processing data fast enough, some submitted data may be lost. lost_cb will be called to log / monitor the lost count. If lost_cb is the default None value, it will just print a line of message to stderr.

+

Example:

+
# process event
+def print_event(cpu, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+    [...]
+
+# loop with callback to print_event
+b["events"].open_perf_buffer(print_event)
+while 1:
+    try:
+        b.perf_buffer_poll()
+    except KeyboardInterrupt:
+        exit()
+
+

Note that the data structure transferred will need to be declared in C in the BPF program. For example:

+
// define output data structure in C
+struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_PERF_OUTPUT(events);
+[...]
+
+

In Python, you can either let bcc generate the data structure from C declaration automatically (recommended):

+
def print_event(cpu, data, size):
+    event = b["events"].event(data)
+[...]
+
+

or define it manually:

+
# define output data structure in Python
+TASK_COMM_LEN = 16    # linux/sched.h
+class Data(ct.Structure):
+    _fields_ = [("pid", ct.c_ulonglong),
+                ("ts", ct.c_ulonglong),
+                ("comm", ct.c_char * TASK_COMM_LEN)]
+
+def print_event(cpu, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+[...]
+
+

Examples in situ: +code, +search /examples, +search /tools

+

3. items()

+

Syntax: table.items()

+

Returns an array of the keys in a table. This can be used with BPF_HASH maps to fetch, and iterate, over the keys.

+

Example:

+
# print output
+print("%10s %s" % ("COUNT", "STRING"))
+counts = b.get_table("counts")
+for k, v in sorted(counts.items(), key=lambda counts: counts[1].value):
+    print("%10d \"%s\"" % (v.value, k.c.encode('string-escape')))
+
+

This example also uses the sorted() method to sort by value.

+

Examples in situ: +search /examples, +search /tools

+

4. values()

+

Syntax: table.values()

+

Returns an array of the values in a table.

+

5. clear()

+

Syntax: table.clear()

+

Clears the table: deletes all entries.

+

Example:

+
# print map summary every second:
+while True:
+    time.sleep(1)
+    print("%-8s\n" % time.strftime("%H:%M:%S"), end="")
+    dist.print_log2_hist(sym + " return:")
+    dist.clear()
+
+

Examples in situ: +search /examples, +search /tools

+

6. items_lookup_and_delete_batch()

+

Syntax: table.items_lookup_and_delete_batch()

+

Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. It also clears the table: deletes all entries. +You should rather use table.items_lookup_and_delete_batch() than table.items() followed by table.clear(). It requires kernel v5.6.

+

Example:

+
# print call rate per second:
+print("%9s-%9s-%8s-%9s" % ("PID", "COMM", "fname", "counter"))
+while True:
+    for k, v in sorted(b['map'].items_lookup_and_delete_batch(), key=lambda kv: (kv[0]).pid):
+        print("%9s-%9s-%8s-%9d" % (k.pid, k.comm, k.fname, v.counter))
+    sleep(1)
+
+

7. items_lookup_batch()

+

Syntax: table.items_lookup_batch()

+

Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. +You should rather use table.items_lookup_batch() than table.items(). It requires kernel v5.6.

+

Example:

+
# print current value of map:
+print("%9s-%9s-%8s-%9s" % ("PID", "COMM", "fname", "counter"))
+while True:
+    for k, v in sorted(b['map'].items_lookup_batch(), key=lambda kv: (kv[0]).pid):
+        print("%9s-%9s-%8s-%9d" % (k.pid, k.comm, k.fname, v.counter))
+
+

8. items_delete_batch()

+

Syntax: table.items_delete_batch(keys)

+

It clears all entries of a BPF_HASH map when keys is None. It is more efficient than table.clear() since it generates only one system call. You can delete a subset of a map by giving an array of keys as parameter. Those keys and their associated values will be deleted. It requires kernel v5.6.

+

Arguments:

+
    +
  • keys is optional and by default is None.
  • +
+

9. items_update_batch()

+

Syntax: table.items_update_batch(keys, values)

+

Update all the provided keys with new values. The two arguments must be the same length and within the map limits (between 1 and the maximum entries). It requires kernel v5.6.

+

Arguments:

+
    +
  • keys is the list of keys to be updated
  • +
  • values is the list containing the new values.
  • +
+

10. print_log2_hist()

+

Syntax: table.print_log2_hist(val_type="value", section_header="Bucket ptr", section_print_fn=None)

+

Prints a table as a log2 histogram in ASCII. The table must be stored as log2, which can be done using the BPF function bpf_log2l().

+

Arguments:

+
    +
  • val_type: optional, column header.
  • +
  • section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each.
  • +
  • section_print_fn: if section_print_fn is not None, it will be passed the bucket value.
  • +
+

Example:

+
b = BPF(text="""
+BPF_HISTOGRAM(dist);
+
+int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)
+{
+	dist.increment(bpf_log2l(req->__data_len / 1024));
+	return 0;
+}
+""")
+[...]
+
+b["dist"].print_log2_hist("kbytes")
+
+

Output:

+
     kbytes          : count     distribution
+       0 -> 1        : 3        |                                      |
+       2 -> 3        : 0        |                                      |
+       4 -> 7        : 211      |**********                            |
+       8 -> 15       : 0        |                                      |
+      16 -> 31       : 0        |                                      |
+      32 -> 63       : 0        |                                      |
+      64 -> 127      : 1        |                                      |
+     128 -> 255      : 800      |**************************************|
+
+

This output shows a multi-modal distribution, with the largest mode of 128->255 kbytes and a count of 800.

+

This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the count column is passed to user space.

+

Examples in situ: +search /examples, +search /tools

+

11. print_linear_hist()

+

Syntax: table.print_linear_hist(val_type="value", section_header="Bucket ptr", section_print_fn=None)

+

Prints a table as a linear histogram in ASCII. This is intended to visualize small integer ranges, eg, 0 to 100.

+

Arguments:

+
    +
  • val_type: optional, column header.
  • +
  • section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each.
  • +
  • section_print_fn: if section_print_fn is not None, it will be passed the bucket value.
  • +
+

Example:

+
b = BPF(text="""
+BPF_HISTOGRAM(dist);
+
+int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)
+{
+	dist.increment(req->__data_len / 1024);
+	return 0;
+}
+""")
+[...]
+
+b["dist"].print_linear_hist("kbytes")
+
+

Output:

+
     kbytes        : count     distribution
+        0          : 3        |******                                  |
+        1          : 0        |                                        |
+        2          : 0        |                                        |
+        3          : 0        |                                        |
+        4          : 19       |****************************************|
+        5          : 0        |                                        |
+        6          : 0        |                                        |
+        7          : 0        |                                        |
+        8          : 4        |********                                |
+        9          : 0        |                                        |
+        10         : 0        |                                        |
+        11         : 0        |                                        |
+        12         : 0        |                                        |
+        13         : 0        |                                        |
+        14         : 0        |                                        |
+        15         : 0        |                                        |
+        16         : 2        |****                                    |
+[...]
+
+

This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the values in the count column are passed to user space.

+

Examples in situ: +search /examples, +search /tools

+

12. open_ring_buffer()

+

Syntax: table.open_ring_buffer(callback, ctx=None)

+

This operates on a table as defined in BPF as BPF_RINGBUF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the ringbuf ring buffer. This is part of the new (Linux 5.8+) recommended mechanism for transferring per-event data from kernel to user space. Unlike perf buffers, ringbuf sizes are specified within the BPF program, as part of the BPF_RINGBUF_OUTPUT macro. If the callback is not processing data fast enough, some submitted data may be lost. In this case, the events should be polled more frequently and/or the size of the ring buffer should be increased.

+

Example:

+
# process event
+def print_event(ctx, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+    [...]
+
+# loop with callback to print_event
+b["events"].open_ring_buffer(print_event)
+while 1:
+    try:
+        b.ring_buffer_poll()
+    except KeyboardInterrupt:
+        exit()
+
+

Note that the data structure transferred will need to be declared in C in the BPF program. For example:

+
// define output data structure in C
+struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_RINGBUF_OUTPUT(events, 8);
+[...]
+
+

In Python, you can either let bcc generate the data structure from C declaration automatically (recommended):

+
def print_event(ctx, data, size):
+    event = b["events"].event(data)
+[...]
+
+

or define it manually:

+
# define output data structure in Python
+TASK_COMM_LEN = 16    # linux/sched.h
+class Data(ct.Structure):
+    _fields_ = [("pid", ct.c_ulonglong),
+                ("ts", ct.c_ulonglong),
+                ("comm", ct.c_char * TASK_COMM_LEN)]
+
+def print_event(ctx, data, size):
+    event = ct.cast(data, ct.POINTER(Data)).contents
+[...]
+
+

Examples in situ: +search /examples,

+

13. push()

+

Syntax: table.push(leaf, flags=0)

+

Push an element onto a Stack or Queue table. Raises an exception if the operation does not succeed. +Passing QueueStack.BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full.

+

Examples in situ: +search /tests,

+

14. pop()

+

Syntax: leaf = table.pop()

+

Pop an element from a Stack or Queue table. Unlike peek(), pop() +removes the element from the table before returning it. +Raises a KeyError exception if the operation does not succeed.

+

Examples in situ: +search /tests,

+

15. peek()

+

Syntax: leaf = table.peek()

+

Peek the element at the head of a Stack or Queue table. Unlike pop(), peek() +does not remove the element from the table. Raises an exception if the operation does not succeed.

+

Examples in situ: +search /tests,

+

Helpers

+

Some helper methods provided by bcc. Note that since we're in Python, we can import any Python library and their methods, including, for example, the libraries: argparse, collections, ctypes, datetime, re, socket, struct, subprocess, sys, and time.

+

1. ksym()

+

Syntax: BPF.ksym(addr)

+

Translate a kernel memory address into a kernel function name, which is returned.

+

Example:

+
print("kernel function: " + b.ksym(addr))
+
+

Examples in situ: +search /examples, +search /tools

+

2. ksymname()

+

Syntax: BPF.ksymname(name)

+

Translate a kernel name into an address. This is the reverse of ksym. Returns -1 when the function name is unknown.

+

Example:

+
print("kernel address: %x" % b.ksymname("vfs_read"))
+
+

Examples in situ: +search /examples, +search /tools

+

3. sym()

+

Syntax: BPF.sym(addr, pid, show_module=False, show_offset=False)

+

Translate a memory address into a function name for a pid, which is returned. A pid of less than zero will access the kernel symbol cache. The show_module and show_offset parameters control whether the module in which the symbol lies should be displayed, and whether the instruction offset from the beginning of the symbol should be displayed. These extra parameters default to False.

+

Example:

+
print("function: " + b.sym(addr, pid))
+
+

Examples in situ: +search /examples, +search /tools

+

4. num_open_kprobes()

+

Syntax: BPF.num_open_kprobes()

+

Returns the number of open k[ret]probes. Can be useful for scenarios where event_re is used while attaching and detaching probes. Excludes perf_events readers.

+

Example:

+
b.attach_kprobe(event_re=pattern, fn_name="trace_count")
+matched = b.num_open_kprobes()
+if matched == 0:
+    print("0 functions matched by \"%s\". Exiting." % args.pattern)
+    exit()
+
+

Examples in situ: +search /examples, +search /tools

+

5. get_syscall_fnname()

+

Syntax: BPF.get_syscall_fnname(name : str)

+

Return the corresponding kernel function name of the syscall. This helper function will try different prefixes and use the right one to concatenate with the syscall name. Note that the return value may vary in different versions of linux kernel and sometimes it will causing trouble. (see #2590)

+

Example:

+
print("The function name of %s in kernel is %s" % ("clone", b.get_syscall_fnname("clone")))
+# sys_clone or __x64_sys_clone or ...
+
+

Examples in situ: +search /examples, +search /tools

+

BPF Errors

+

See the "Understanding eBPF verifier messages" section in the kernel source under Documentation/networking/filter.txt.

+

1. Invalid mem access

+

This can be due to trying to read memory directly, instead of operating on memory on the BPF stack. All kernel memory reads must be passed via bpf_probe_read_kernel() to copy kernel memory into the BPF stack, which can be automatic by the bcc rewriter in some cases of simple dereferencing. bpf_probe_read_kernel() does all the required checks.

+

Example:

+
bpf: Permission denied
+0: (bf) r6 = r1
+1: (79) r7 = *(u64 *)(r6 +80)
+2: (85) call 14
+3: (bf) r8 = r0
+[...]
+23: (69) r1 = *(u16 *)(r7 +16)
+R7 invalid mem access 'inv'
+
+Traceback (most recent call last):
+  File "./tcpaccept", line 179, in <module>
+    b = BPF(text=bpf_text)
+  File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 172, in __init__
+    self._trace_autoload()
+  File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 612, in _trace_autoload
+    fn = self.load_func(func_name, BPF.KPROBE)
+  File "/usr/lib/python2.7/dist-packages/bcc/__init__.py", line 212, in load_func
+    raise Exception("Failed to load BPF program %s" % func_name)
+Exception: Failed to load BPF program kretprobe__inet_csk_accept
+
+

2. Cannot call GPL only function from proprietary program

+

This error happens when a GPL-only helper is called from a non-GPL BPF program. To fix this error, do not use GPL-only helpers from a proprietary BPF program, or relicense the BPF program under a GPL-compatible license. Check which BPF helpers are GPL-only, and what licenses are considered GPL-compatible.

+

Example calling bpf_get_stackid(), a GPL-only BPF helper, from a proprietary program (#define BPF_LICENSE Proprietary):

+
bpf: Failed to load program: Invalid argument
+[...]
+8: (85) call bpf_get_stackid#27
+cannot call GPL only function from proprietary program
+
+

Environment Variables

+

1. Kernel source directory

+

eBPF program compilation needs kernel sources or kernel headers with headers +compiled. In case your kernel sources are at a non-standard location where BCC +cannot find then, its possible to provide BCC the absolute path of the location +by setting BCC_KERNEL_SOURCE to it.

+

2. Kernel version overriding

+

By default, BCC stores the LINUX_VERSION_CODE in the generated eBPF object +which is then passed along to the kernel when the eBPF program is loaded. +Sometimes this is quite inconvenient especially when the kernel is slightly +updated such as an LTS kernel release. Its extremely unlikely the slight +mismatch would cause any issues with the loaded eBPF program. By setting +BCC_LINUX_VERSION_CODE to the version of the kernel that's running, the check +for verifying the kernel version can be bypassed. This is needed for programs +that use kprobes. This needs to be encoded in the format: (VERSION * 65536) + (PATCHLEVEL * 256) + SUBLEVEL. For example, if the running kernel is 4.9.10, +then can set export BCC_LINUX_VERSION_CODE=264458 to override the kernel +version check successfully.

+

Special Filtering

+

Some tools have special filtering capabitilies, the main use case is to trace +processes running in containers, but those mechanisms are generic and could +be used in other cases as well.

+

Filtering by cgroups

+

Some tools have an option to filter by cgroup by referencing a pinned BPF hash +map managed externally.

+

Examples of commands:

+
# ./opensnoop --cgroupmap /sys/fs/bpf/test01
+# ./execsnoop --cgroupmap /sys/fs/bpf/test01
+# ./tcpconnect --cgroupmap /sys/fs/bpf/test01
+# ./tcpaccept --cgroupmap /sys/fs/bpf/test01
+# ./tcptracer --cgroupmap /sys/fs/bpf/test01
+
+

The commands above will only display results from processes that belong to one +of the cgroups whose id, returned by bpf_get_current_cgroup_id(), is in the +pinned BPF hash map.

+

The BPF hash map can be created by:

+
# bpftool map create /sys/fs/bpf/test01 type hash key 8 value 8 entries 128 \
+        name cgroupset flags 0
+
+

To get a shell in a new cgroup, you can use:

+
# systemd-run --pty --unit test bash
+
+

The shell will be running in the cgroup +/sys/fs/cgroup/unified/system.slice/test.service.

+

The cgroup id can be discovered using the name_to_handle_at() system call. In +the examples/cgroupid, you will find an example of program to get the cgroup +id.

+
# cd examples/cgroupid
+# make
+# ./cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service
+
+

or, using Docker:

+
# cd examples/cgroupid
+# docker build -t cgroupid .
+# docker run --rm --privileged -v /sys/fs/cgroup:/sys/fs/cgroup \
+	cgroupid cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service
+
+

This prints the cgroup id as a hexadecimal string in the host endianness such +as 77 16 00 00 01 00 00 00.

+
# FILE=/sys/fs/bpf/test01
+# CGROUPID_HEX="77 16 00 00 01 00 00 00"
+# bpftool map update pinned $FILE key hex $CGROUPID_HEX value hex 00 00 00 00 00 00 00 00 any
+
+

Now that the shell started by systemd-run has its cgroup id in the BPF hash +map, bcc tools will display results from this shell. Cgroups can be added and +removed from the BPF hash map without restarting the bcc tool.

+

This feature is useful for integrating bcc tools in external projects.

+

Filtering by mount by namespace

+

The BPF hash map can be created by:

+
# bpftool map create /sys/fs/bpf/mnt_ns_set type hash key 8 value 4 entries 128 \
+        name mnt_ns_set flags 0
+
+

Execute the execsnoop tool filtering only the mount namespaces +in /sys/fs/bpf/mnt_ns_set:

+
# tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set
+
+

Start a terminal in a new mount namespace:

+
# unshare -m bash
+
+

Update the hash map with the mount namespace ID of the terminal above:

+
FILE=/sys/fs/bpf/mnt_ns_set
+if [ $(printf '\1' | od -dAn) -eq 1 ]; then
+ HOST_ENDIAN_CMD=tac
+else
+  HOST_ENDIAN_CMD=cat
+fi
+
+NS_ID_HEX="$(printf '%016x' $(stat -Lc '%i' /proc/self/ns/mnt) | sed 's/.\{2\}/&\n/g' | $HOST_ENDIAN_CMD)"
+bpftool map update pinned $FILE key hex $NS_ID_HEX value hex 00 00 00 00 any
+
+

Execute a command in this terminal:

+
# ping kinvolk.io
+
+

You'll see how on the execsnoop terminal you started above the call is logged:

+
# tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set
+[sudo] password for mvb:
+PCOMM            PID    PPID   RET ARGS
+ping             8096   7970     0 /bin/ping kinvolk.io
+
+

bcc Tutorial

+

This tutorial covers how to use bcc tools to quickly solve performance, troubleshooting, and networking issues. If you want to develop new bcc tools, see tutorial_bcc_python_developer.md for that tutorial.

+

It is assumed for this tutorial that bcc is already installed, and you can run tools like execsnoop successfully. See INSTALL.md. This uses enhancements added to the Linux 4.x series.

+

Observability

+

Some quick wins.

+

0. Before bcc

+

Before using bcc, you should start with the Linux basics. One reference is the Linux Performance Analysis in 60,000 Milliseconds post, which covers these commands:

+
    +
  1. uptime
  2. +
  3. dmesg | tail
  4. +
  5. vmstat 1
  6. +
  7. mpstat -P ALL 1
  8. +
  9. pidstat 1
  10. +
  11. iostat -xz 1
  12. +
  13. free -m
  14. +
  15. sar -n DEV 1
  16. +
  17. sar -n TCP,ETCP 1
  18. +
  19. top
  20. +
+

1. General Performance

+

Here is a generic checklist for performance investigations with bcc, first as a list, then in detail:

+
    +
  1. execsnoop
  2. +
  3. opensnoop
  4. +
  5. ext4slower (or btrfs*, xfs*, zfs*)
  6. +
  7. biolatency
  8. +
  9. biosnoop
  10. +
  11. cachestat
  12. +
  13. tcpconnect
  14. +
  15. tcpaccept
  16. +
  17. tcpretrans
  18. +
  19. runqlat
  20. +
  21. profile
  22. +
+

These tools may be installed on your system under /usr/share/bcc/tools, or you can run them from the bcc github repo under /tools where they have a .py extension. Browse the 50+ tools available for more analysis options.

+

1.1 execsnoop

+
# ./execsnoop
+PCOMM            PID    RET ARGS
+supervise        9660     0 ./run
+supervise        9661     0 ./run
+mkdir            9662     0 /bin/mkdir -p ./main
+run              9663     0 ./run
+[...]
+
+

execsnoop prints one line of output for each new process. Check for short-lived processes. These can consume CPU resources, but not show up in most monitoring tools that periodically take snapshots of which processes are running.

+

It works by tracing exec(), not the fork(), so it will catch many types of new processes but not all (eg, it won't see an application launching working processes, that doesn't exec() anything else).

+

More examples.

+

1.2. opensnoop

+
# ./opensnoop
+PID    COMM               FD ERR PATH
+1565   redis-server        5   0 /proc/1565/stat
+1565   redis-server        5   0 /proc/1565/stat
+1565   redis-server        5   0 /proc/1565/stat
+1603   snmpd               9   0 /proc/net/dev
+1603   snmpd              11   0 /proc/net/if_inet6
+1603   snmpd              -1   2 /sys/class/net/eth0/device/vendor
+1603   snmpd              11   0 /proc/sys/net/ipv4/neigh/eth0/retrans_time_ms
+1603   snmpd              11   0 /proc/sys/net/ipv6/neigh/eth0/retrans_time_ms
+1603   snmpd              11   0 /proc/sys/net/ipv6/conf/eth0/forwarding
+[...]
+
+

opensnoop prints one line of output for each open() syscall, including details.

+

Files that are opened can tell you a lot about how applications work: identifying their data files, config files, and log files. Sometimes applications can misbehave, and perform poorly, when they are constantly attempting to read files that do not exist. opensnoop gives you a quick look.

+

More examples.

+

1.3. ext4slower (or btrfs*, xfs*, zfs*)

+
# ./ext4slower
+Tracing ext4 operations slower than 10 ms
+TIME     COMM           PID    T BYTES   OFF_KB   LAT(ms) FILENAME
+06:35:01 cron           16464  R 1249    0          16.05 common-auth
+06:35:01 cron           16463  R 1249    0          16.04 common-auth
+06:35:01 cron           16465  R 1249    0          16.03 common-auth
+06:35:01 cron           16465  R 4096    0          10.62 login.defs
+06:35:01 cron           16464  R 4096    0          10.61 login.defs
+
+

ext4slower traces the ext4 file system and times common operations, and then only prints those that exceed a threshold.

+

This is great for identifying or exonerating one type of performance issue: show individually slow disk i/O via the file system. Disks process I/O asynchronously, and it can be difficult to associate latency at that layer with the latency applications experience. Tracing higher up in the kernel stack, at the VFS -> file system interface, will more closely match what an application suffers. Use this tool to identify if file system latency exceeds a given threshold.

+

Similar tools exist in bcc for other file systems: btrfsslower, xfsslower, and zfsslower. There is also fileslower, which works at the VFS layer and traces everything (although at some higher overhead).

+

More examples.

+

1.4. biolatency

+
# ./biolatency
+Tracing block device I/O... Hit Ctrl-C to end.
+^C
+     usecs           : count     distribution
+       0 -> 1        : 0        |                                      |
+       2 -> 3        : 0        |                                      |
+       4 -> 7        : 0        |                                      |
+       8 -> 15       : 0        |                                      |
+      16 -> 31       : 0        |                                      |
+      32 -> 63       : 0        |                                      |
+      64 -> 127      : 1        |                                      |
+     128 -> 255      : 12       |********                              |
+     256 -> 511      : 15       |**********                            |
+     512 -> 1023     : 43       |*******************************       |
+    1024 -> 2047     : 52       |**************************************|
+    2048 -> 4095     : 47       |**********************************    |
+    4096 -> 8191     : 52       |**************************************|
+    8192 -> 16383    : 36       |**************************            |
+   16384 -> 32767    : 15       |**********                            |
+   32768 -> 65535    : 2        |*                                     |
+   65536 -> 131071   : 2        |*                                     |
+
+

biolatency traces disk I/O latency (time from device issue to completion), and when the tool ends (Ctrl-C, or a given interval), it prints a histogram summary of the latency.

+

This is great for understanding disk I/O latency beyond the average times given by tools like iostat. I/O latency outliers will be visible at the end of the distribution, as well as multi-mode distributions.

+

More examples.

+

1.5. biosnoop

+
# ./biosnoop
+TIME(s)        COMM           PID    DISK    T  SECTOR    BYTES   LAT(ms)
+0.000004001    supervise      1950   xvda1   W  13092560  4096       0.74
+0.000178002    supervise      1950   xvda1   W  13092432  4096       0.61
+0.001469001    supervise      1956   xvda1   W  13092440  4096       1.24
+0.001588002    supervise      1956   xvda1   W  13115128  4096       1.09
+1.022346001    supervise      1950   xvda1   W  13115272  4096       0.98
+1.022568002    supervise      1950   xvda1   W  13188496  4096       0.93
+[...]
+
+

biosnoop prints a line of output for each disk I/O, with details including latency (time from device issue to completion).

+

This allows you to examine disk I/O in more detail, and look for time-ordered patterns (eg, reads queueing behind writes). Note that the output will be verbose if your system performs disk I/O at a high rate.

+

More examples.

+

1.6. cachestat

+
# ./cachestat
+    HITS   MISSES  DIRTIES  READ_HIT% WRITE_HIT%   BUFFERS_MB  CACHED_MB
+    1074       44       13      94.9%       2.9%            1        223
+    2195      170        8      92.5%       6.8%            1        143
+     182       53       56      53.6%       1.3%            1        143
+   62480    40960    20480      40.6%      19.8%            1        223
+       7        2        5      22.2%      22.2%            1        223
+     348        0        0     100.0%       0.0%            1        223
+[...]
+
+

cachestat prints a one line summary every second (or every custom interval) showing statistics from the file system cache.

+

Use this to identify a low cache hit ratio, and a high rate of misses: which gives one lead for performance tuning.

+

More examples.

+

1.7. tcpconnect

+
# ./tcpconnect
+PID    COMM         IP SADDR            DADDR            DPORT
+1479   telnet       4  127.0.0.1        127.0.0.1        23
+1469   curl         4  10.201.219.236   54.245.105.25    80
+1469   curl         4  10.201.219.236   54.67.101.145    80
+1991   telnet       6  ::1              ::1              23
+2015   ssh          6  fe80::2000:bff:fe82:3ac fe80::2000:bff:fe82:3ac 22
+[...]
+
+

tcpconnect prints one line of output for every active TCP connection (eg, via connect()), with details including source and destination addresses.

+

Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder.

+

More examples.

+

1.8. tcpaccept

+
# ./tcpaccept
+PID    COMM         IP RADDR            LADDR            LPORT
+907    sshd         4  192.168.56.1     192.168.56.102   22
+907    sshd         4  127.0.0.1        127.0.0.1        22
+5389   perl         6  1234:ab12:2040:5020:2299:0:5:0 1234:ab12:2040:5020:2299:0:5:0 7001
+[...]
+
+

tcpaccept prints one line of output for every passive TCP connection (eg, via accept()), with details including source and destination addresses.

+

Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder.

+

More examples.

+

1.9. tcpretrans

+
# ./tcpretrans
+TIME     PID    IP LADDR:LPORT          T> RADDR:RPORT          STATE
+01:55:05 0      4  10.153.223.157:22    R> 69.53.245.40:34619   ESTABLISHED
+01:55:05 0      4  10.153.223.157:22    R> 69.53.245.40:34619   ESTABLISHED
+01:55:17 0      4  10.153.223.157:22    R> 69.53.245.40:22957   ESTABLISHED
+[...]
+
+

tcprerans prints one line of output for every TCP retransmit packet, with details including source and destination addresses, and kernel state of the TCP connection.

+

TCP retransmissions cause latency and throughput issues. For ESTABLISHED retransmits, look for patterns with networks. For SYN_SENT, this may point to target kernel CPU saturation and kernel packet drops.

+

More examples.

+

1.10. runqlat

+
# ./runqlat
+Tracing run queue latency... Hit Ctrl-C to end.
+^C
+     usecs               : count     distribution
+         0 -> 1          : 233      |***********                             |
+         2 -> 3          : 742      |************************************    |
+         4 -> 7          : 203      |**********                              |
+         8 -> 15         : 173      |********                                |
+        16 -> 31         : 24       |*                                       |
+        32 -> 63         : 0        |                                        |
+        64 -> 127        : 30       |*                                       |
+       128 -> 255        : 6        |                                        |
+       256 -> 511        : 3        |                                        |
+       512 -> 1023       : 5        |                                        |
+      1024 -> 2047       : 27       |*                                       |
+      2048 -> 4095       : 30       |*                                       |
+      4096 -> 8191       : 20       |                                        |
+      8192 -> 16383      : 29       |*                                       |
+     16384 -> 32767      : 809      |****************************************|
+     32768 -> 65535      : 64       |***                                     |
+
+

runqlat times how long threads were waiting on the CPU run queues, and prints this as a histogram.

+

This can help quantify time lost waiting for a turn on CPU, during periods of CPU saturation.

+

More examples.

+

1.11. profile

+
# ./profile
+Sampling at 49 Hertz of all threads by user + kernel stack... Hit Ctrl-C to end.
+^C
+    00007f31d76c3251 [unknown]
+    47a2c1e752bf47f7 [unknown]
+    -                sign-file (8877)
+        1
+
+    ffffffff813d0af8 __clear_user
+    ffffffff813d5277 iov_iter_zero
+    ffffffff814ec5f2 read_iter_zero
+    ffffffff8120be9d __vfs_read
+    ffffffff8120c385 vfs_read
+    ffffffff8120d786 sys_read
+    ffffffff817cc076 entry_SYSCALL_64_fastpath
+    00007fc5652ad9b0 read
+    -                dd (25036)
+        4
+
+    0000000000400542 func_a
+    0000000000400598 main
+    00007f12a133e830 __libc_start_main
+    083e258d4c544155 [unknown]
+    -                func_ab (13549)
+        5
+
+[...]
+
+    ffffffff8105eb66 native_safe_halt
+    ffffffff8103659e default_idle
+    ffffffff81036d1f arch_cpu_idle
+    ffffffff810bba5a default_idle_call
+    ffffffff810bbd07 cpu_startup_entry
+    ffffffff8104df55 start_secondary
+    -                swapper/1 (0)
+        75
+
+

profile is a CPU profiler, which takes samples of stack traces at timed intervals, and prints a summary of unique stack traces and a count of their occurrence.

+

Use this tool to understand the code paths that are consuming CPU resources.

+

More examples.

+

2. Observability with Generic Tools

+

In addition to the above tools for performance tuning, below is a checklist for bcc generic tools, first as a list, and in detail:

+
    +
  1. trace
  2. +
  3. argdist
  4. +
  5. funccount
  6. +
+

These generic tools may be useful to provide visibility to solve your specific problems.

+

2.1. trace

+
Example 1
+

Suppose you want to track file ownership change. There are three syscalls, chown, fchown and lchown which users can use to change file ownership. The corresponding syscall entry is SyS_[f|l]chown. The following command can be used to print out syscall parameters and the calling process user id. You can use id command to find the uid of a particular user.

+
$ trace.py \
+  'p::SyS_chown "file = %s, to_uid = %d, to_gid = %d, from_uid = %d", arg1, arg2, arg3, $uid' \
+  'p::SyS_fchown "fd = %d, to_uid = %d, to_gid = %d, from_uid = %d", arg1, arg2, arg3, $uid' \
+  'p::SyS_lchown "file = %s, to_uid = %d, to_gid = %d, from_uid = %d", arg1, arg2, arg3, $uid'
+PID    TID    COMM         FUNC             -
+1269255 1269255 python3.6    SyS_lchown       file = /tmp/dotsync-usisgezu/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269441 1269441 zstd         SyS_chown        file = /tmp/dotsync-vic7ygj0/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269255 1269255 python3.6    SyS_lchown       file = /tmp/dotsync-a40zd7ev/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269442 1269442 zstd         SyS_chown        file = /tmp/dotsync-gzp413o_/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203
+1269255 1269255 python3.6    SyS_lchown       file = /tmp/dotsync-whx4fivm/tmp/.bash_profile, to_uid = 128203, to_gid = 100, from_uid = 128203
+
+
Example 2
+

Suppose you want to count nonvoluntary context switches (nvcsw) in your bpf based performance monitoring tools and you do not know what is the proper method. /proc/<pid>/status already tells you the number (nonvoluntary_ctxt_switches) for a pid and you can use trace.py to do a quick experiment to verify your method. With kernel source code, the nvcsw is counted at file linux/kernel/sched/core.c function __schedule and under condition

+
!(!preempt && prev->state) // i.e., preempt || !prev->state
+
+

The __schedule function is marked as notrace, and the best place to evaluate the above condition seems in sched/sched_switch tracepoint called inside function __schedule and defined in linux/include/trace/events/sched.h. trace.py already has args being the pointer to the tracepoint TP_STRUCT__entry. The above condition in function __schedule can be represented as

+
args->prev_state == TASK_STATE_MAX || args->prev_state == 0
+
+

The below command can be used to count the involuntary context switches (per process or per pid) and compare to /proc/<pid>/status or /proc/<pid>/task/<task_id>/status for correctness, as in typical cases, involuntary context switches are not very common.

+
$ trace.py -p 1134138 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'
+PID    TID    COMM         FUNC
+1134138 1134140 contention_test sched_switch
+1134138 1134142 contention_test sched_switch
+...
+$ trace.py -L 1134140 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'
+PID    TID    COMM         FUNC
+1134138 1134140 contention_test sched_switch
+1134138 1134140 contention_test sched_switch
+...
+
+
Example 3
+

This example is related to issue 1231 and 1516 where uprobe does not work at all in certain cases. First, you can do a strace as below

+
$ strace trace.py 'r:bash:readline "%s", retval'
+...
+perf_event_open(0x7ffd968212f0, -1, 0, -1, 0x8 /* PERF_FLAG_??? */) = -1 EIO (Input/output error)
+...
+
+

The perf_event_open syscall returns -EIO. Digging into kernel uprobe related codes in /kernel/trace and /kernel/events directories to search EIO, the function uprobe_register is the most suspicious. Let us find whether this function is called or not and what is the return value if it is called. In one terminal using the following command to print out the return value of uprobe_register,

+
$ trace.py 'r::uprobe_register "ret = %d", retval'
+
+

In another terminal run the same bash uretprobe tracing example, and you should get

+
$ trace.py 'r::uprobe_register "ret = %d", retval'
+PID    TID    COMM         FUNC             -
+1041401 1041401 python2.7    uprobe_register  ret = -5
+
+

The -5 error code is EIO. This confirms that the following code in function uprobe_register is the most suspicious culprit.

+
 if (!inode->i_mapping->a_ops->readpage && !shmem_mapping(inode->i_mapping))
+        return -EIO;
+
+

The shmem_mapping function is defined as

+
bool shmem_mapping(struct address_space *mapping)
+{
+        return mapping->a_ops == &shmem_aops;
+}
+
+

To confirm the theory, find what is inode->i_mapping->a_ops with the following command

+
$ trace.py -I 'linux/fs.h' 'p::uprobe_register(struct inode *inode) "a_ops = %llx", inode->i_mapping->a_ops'
+PID    TID    COMM         FUNC             -
+814288 814288 python2.7    uprobe_register  a_ops = ffffffff81a2adc0
+^C$ grep ffffffff81a2adc0 /proc/kallsyms
+ffffffff81a2adc0 R empty_aops
+
+

The kernel symbol empty_aops does not have readpage defined and hence the above suspicious condition is true. Further examining the kernel source code shows that overlayfs does not provide its own a_ops while some other file systems (e.g., ext4) define their own a_ops (e.g., ext4_da_aops), and ext4_da_aops defines readpage. Hence, uprobe works fine on ext4 while not on overlayfs.

+

More examples.

+

2.2. argdist

+

More examples.

+

2.3. funccount

+

More examples.

+

Networking

+

To do.

+

bcc Python Developer Tutorial

+

This tutorial is about developing bcc tools and programs using the Python interface. There are two parts: observability then networking. Snippets are taken from various programs in bcc: see their files for licences.

+

Also see the bcc developer's reference_guide.md, and a tutorial for end-users of tools: tutorial.md. There is also a lua interface for bcc.

+

Observability

+

This observability tutorial contains 17 lessons, and 46 enumerated things to learn.

+

Lesson 1. Hello World

+

Start by running examples/hello_world.py, while running some commands (eg, "ls") in another session. It should print "Hello, World!" for new processes. If not, start by fixing bcc: see INSTALL.md.

+
# ./examples/hello_world.py
+            bash-13364 [002] d... 24573433.052937: : Hello, World!
+            bash-13364 [003] d... 24573436.642808: : Hello, World!
+[...]
+
+

Here's the code for hello_world.py:

+
from bcc import BPF
+BPF(text='int kprobe__sys_clone(void *ctx) { bpf_trace_printk("Hello, World!\\n"); return 0; }').trace_print()
+
+

There are six things to learn from this:

+
    +
  1. +

    text='...': This defines a BPF program inline. The program is written in C.

    +
  2. +
  3. +

    kprobe__sys_clone(): This is a short-cut for kernel dynamic tracing via kprobes. If the C function begins with kprobe__, the rest is treated as a kernel function name to instrument, in this case, sys_clone().

    +
  4. +
  5. +

    void *ctx: ctx has arguments, but since we aren't using them here, we'll just cast it to void *.

    +
  6. +
  7. +

    bpf_trace_printk(): A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(), covered later.

    +
  8. +
  9. +

    return 0;: Necessary formality (if you want to know why, see #139).

    +
  10. +
  11. +

    .trace_print(): A bcc routine that reads trace_pipe and prints the output.

    +
  12. +
+

Lesson 2. sys_sync()

+

Write a program that traces the sys_sync() kernel function. Print "sys_sync() called" when it runs. Test by running sync in another session while tracing. The hello_world.py program has everything you need for this.

+

Improve it by printing "Tracing sys_sync()... Ctrl-C to end." when the program first starts. Hint: it's just Python.

+

Lesson 3. hello_fields.py

+

This program is in examples/tracing/hello_fields.py. Sample output (run commands in another session):

+
# examples/tracing/hello_fields.py
+TIME(s)            COMM             PID    MESSAGE
+24585001.174885999 sshd             1432   Hello, World!
+24585001.195710000 sshd             15780  Hello, World!
+24585001.991976000 systemd-udevd    484    Hello, World!
+24585002.276147000 bash             15787  Hello, World!
+
+

Code:

+
from bcc import BPF
+
+# define BPF program
+prog = """
+int hello(void *ctx) {
+    bpf_trace_printk("Hello, World!\\n");
+    return 0;
+}
+"""
+
+# load BPF program
+b = BPF(text=prog)
+b.attach_kprobe(event=b.get_syscall_fnname("clone"), fn_name="hello")
+
+# header
+print("%-18s %-16s %-6s %s" % ("TIME(s)", "COMM", "PID", "MESSAGE"))
+
+# format output
+while 1:
+    try:
+        (task, pid, cpu, flags, ts, msg) = b.trace_fields()
+    except ValueError:
+        continue
+    print("%-18.9f %-16s %-6d %s" % (ts, task, pid, msg))
+
+

This is similar to hello_world.py, and traces new processes via sys_clone() again, but has a few more things to learn:

+
    +
  1. +

    prog =: This time we declare the C program as a variable, and later refer to it. This is useful if you want to add some string substitutions based on command line arguments.

    +
  2. +
  3. +

    hello(): Now we're just declaring a C function, instead of the kprobe__ shortcut. We'll refer to this later. All C functions declared in the BPF program are expected to be executed on a probe, hence they all need to take a pt_reg* ctx as first argument. If you need to define some helper function that will not be executed on a probe, they need to be defined as static inline in order to be inlined by the compiler. Sometimes you would also need to add _always_inline function attribute to it.

    +
  4. +
  5. +

    b.attach_kprobe(event=b.get_syscall_fnname("clone"), fn_name="hello"): Creates a kprobe for the kernel clone system call function, which will execute our defined hello() function. You can call attach_kprobe() more than once, and attach your C function to multiple kernel functions.

    +
  6. +
  7. +

    b.trace_fields(): Returns a fixed set of fields from trace_pipe. Similar to trace_print(), this is handy for hacking, but for real tooling we should switch to BPF_PERF_OUTPUT().

    +
  8. +
+

Lesson 4. sync_timing.py

+

Remember the days of sysadmins typing sync three times on a slow console before reboot, to give the first asynchronous sync time to complete? Then someone thought sync;sync;sync was clever, to run them all on one line, which became industry practice despite defeating the original purpose! And then sync became synchronous, so more reasons it was silly. Anyway.

+

The following example times how quickly the do_sync function is called, and prints output if it has been called more recently than one second ago. A sync;sync;sync will print output for the 2nd and 3rd sync's:

+
# examples/tracing/sync_timing.py
+Tracing for quick sync's... Ctrl-C to end
+At time 0.00 s: multiple syncs detected, last 95 ms ago
+At time 0.10 s: multiple syncs detected, last 96 ms ago
+
+

This program is examples/tracing/sync_timing.py:

+
from __future__ import print_function
+from bcc import BPF
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+
+BPF_HASH(last);
+
+int do_trace(struct pt_regs *ctx) {
+    u64 ts, *tsp, delta, key = 0;
+
+    // attempt to read stored timestamp
+    tsp = last.lookup(&key);
+    if (tsp != NULL) {
+        delta = bpf_ktime_get_ns() - *tsp;
+        if (delta < 1000000000) {
+            // output if time is less than 1 second
+            bpf_trace_printk("%d\\n", delta / 1000000);
+        }
+        last.delete(&key);
+    }
+
+    // update stored timestamp
+    ts = bpf_ktime_get_ns();
+    last.update(&key, &ts);
+    return 0;
+}
+""")
+
+b.attach_kprobe(event=b.get_syscall_fnname("sync"), fn_name="do_trace")
+print("Tracing for quick sync's... Ctrl-C to end")
+
+# format output
+start = 0
+while 1:
+    (task, pid, cpu, flags, ts, ms) = b.trace_fields()
+    if start == 0:
+        start = ts
+    ts = ts - start
+    print("At time %.2f s: multiple syncs detected, last %s ms ago" % (ts, ms))
+
+

Things to learn:

+
    +
  1. bpf_ktime_get_ns(): Returns the time as nanoseconds.
  2. +
  3. BPF_HASH(last): Creates a BPF map object that is a hash (associative array), called "last". We didn't specify any further arguments, so it defaults to key and value types of u64.
  4. +
  5. key = 0: We'll only store one key/value pair in this hash, where the key is hardwired to zero.
  6. +
  7. last.lookup(&key): Lookup the key in the hash, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer.
  8. +
  9. if (tsp != NULL) {: The verifier requires that pointer values derived from a map lookup must be checked for a null value before they can be dereferenced and used.
  10. +
  11. last.delete(&key): Delete the key from the hash. This is currently required because of a kernel bug in .update() (fixed in 4.8.10).
  12. +
  13. last.update(&key, &ts): Associate the value in the 2nd argument to the key, overwriting any previous value. This records the timestamp.
  14. +
+

Lesson 5. sync_count.py

+

Modify the sync_timing.py program (prior lesson) to store the count of all kernel sync system calls (both fast and slow), and print it with the output. This count can be recorded in the BPF program by adding a new key index to the existing hash.

+

Lesson 6. disksnoop.py

+

Browse the examples/tracing/disksnoop.py program to see what is new. Here is some sample output:

+
# disksnoop.py
+TIME(s)            T  BYTES    LAT(ms)
+16458043.436012    W  4096        3.13
+16458043.437326    W  4096        4.44
+16458044.126545    R  4096       42.82
+16458044.129872    R  4096        3.24
+[...]
+
+

And a code snippet:

+
[...]
+REQ_WRITE = 1		# from include/linux/blk_types.h
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+#include <linux/blk-mq.h>
+
+BPF_HASH(start, struct request *);
+
+void trace_start(struct pt_regs *ctx, struct request *req) {
+	// stash start timestamp by request ptr
+	u64 ts = bpf_ktime_get_ns();
+
+	start.update(&req, &ts);
+}
+
+void trace_completion(struct pt_regs *ctx, struct request *req) {
+	u64 *tsp, delta;
+
+	tsp = start.lookup(&req);
+	if (tsp != 0) {
+		delta = bpf_ktime_get_ns() - *tsp;
+		bpf_trace_printk("%d %x %d\\n", req->__data_len,
+		    req->cmd_flags, delta / 1000);
+		start.delete(&req);
+	}
+}
+""")
+if BPF.get_kprobe_functions(b'blk_start_request'):
+        b.attach_kprobe(event="blk_start_request", fn_name="trace_start")
+b.attach_kprobe(event="blk_mq_start_request", fn_name="trace_start")
+if BPF.get_kprobe_functions(b'__blk_account_io_done'):
+    b.attach_kprobe(event="__blk_account_io_done", fn_name="trace_completion")
+else:
+    b.attach_kprobe(event="blk_account_io_done", fn_name="trace_completion")
+[...]
+
+

Things to learn:

+
    +
  1. REQ_WRITE: We're defining a kernel constant in the Python program because we'll use it there later. If we were using REQ_WRITE in the BPF program, it should just work (without needing to be defined) with the appropriate #includes.
  2. +
  3. trace_start(struct pt_regs *ctx, struct request *req): This function will later be attached to kprobes. The arguments to kprobe functions are struct pt_regs *ctx, for registers and BPF context, and then the actual arguments to the function. We'll attach this to blk_start_request(), where the first argument is struct request *.
  4. +
  5. start.update(&req, &ts): We're using the pointer to the request struct as a key in our hash. What? This is commonplace in tracing. Pointers to structs turn out to be great keys, as they are unique: two structs can't have the same pointer address. (Just be careful about when it gets free'd and reused.) So what we're really doing is tagging the request struct, which describes the disk I/O, with our own timestamp, so that we can time it. There's two common keys used for storing timestamps: pointers to structs, and, thread IDs (for timing function entry to return).
  6. +
  7. req->__data_len: We're dereferencing members of struct request. See its definition in the kernel source for what members are there. bcc actually rewrites these expressions to be a series of bpf_probe_read_kernel() calls. Sometimes bcc can't handle a complex dereference, and you need to call bpf_probe_read_kernel() directly.
  8. +
+

This is a pretty interesting program, and if you can understand all the code, you'll understand many important basics. We're still using the bpf_trace_printk() hack, so let's fix that next.

+

Lesson 7. hello_perf_output.py

+

Let's finally stop using bpf_trace_printk() and use the proper BPF_PERF_OUTPUT() interface. This will also mean we stop getting the free trace_field() members like PID and timestamp, and will need to fetch them directly. Sample output while commands are run in another session:

+
# hello_perf_output.py
+TIME(s)            COMM             PID    MESSAGE
+0.000000000        bash             22986  Hello, perf_output!
+0.021080275        systemd-udevd    484    Hello, perf_output!
+0.021359520        systemd-udevd    484    Hello, perf_output!
+0.021590610        systemd-udevd    484    Hello, perf_output!
+[...]
+
+

Code is examples/tracing/hello_perf_output.py:

+
from bcc import BPF
+
+# define BPF program
+prog = """
+#include <linux/sched.h>
+
+// define output data structure in C
+struct data_t {
+    u32 pid;
+    u64 ts;
+    char comm[TASK_COMM_LEN];
+};
+BPF_PERF_OUTPUT(events);
+
+int hello(struct pt_regs *ctx) {
+    struct data_t data = {};
+
+    data.pid = bpf_get_current_pid_tgid();
+    data.ts = bpf_ktime_get_ns();
+    bpf_get_current_comm(&data.comm, sizeof(data.comm));
+
+    events.perf_submit(ctx, &data, sizeof(data));
+
+    return 0;
+}
+"""
+
+# load BPF program
+b = BPF(text=prog)
+b.attach_kprobe(event=b.get_syscall_fnname("clone"), fn_name="hello")
+
+# header
+print("%-18s %-16s %-6s %s" % ("TIME(s)", "COMM", "PID", "MESSAGE"))
+
+# process event
+start = 0
+def print_event(cpu, data, size):
+    global start
+    event = b["events"].event(data)
+    if start == 0:
+            start = event.ts
+    time_s = (float(event.ts - start)) / 1000000000
+    print("%-18.9f %-16s %-6d %s" % (time_s, event.comm, event.pid,
+        "Hello, perf_output!"))
+
+# loop with callback to print_event
+b["events"].open_perf_buffer(print_event)
+while 1:
+    b.perf_buffer_poll()
+
+

Things to learn:

+
    +
  1. struct data_t: This defines the C struct we'll use to pass data from kernel to user space.
  2. +
  3. BPF_PERF_OUTPUT(events): This names our output channel "events".
  4. +
  5. struct data_t data = {};: Create an empty data_t struct that we'll then populate.
  6. +
  7. bpf_get_current_pid_tgid(): Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits. Should you be presenting the PID or the TGID? For a multi-threaded app, the TGID will be the same, so you need the PID to differentiate them, if that's what you want. It's also a question of expectations for the end user.
  8. +
  9. bpf_get_current_comm(): Populates the first argument address with the current process name.
  10. +
  11. events.perf_submit(): Submit the event for user space to read via a perf ring buffer.
  12. +
  13. def print_event(): Define a Python function that will handle reading events from the events stream.
  14. +
  15. b["events"].event(data): Now get the event as a Python object, auto-generated from the C declaration.
  16. +
  17. b["events"].open_perf_buffer(print_event): Associate the Python print_event function with the events stream.
  18. +
  19. while 1: b.perf_buffer_poll(): Block waiting for events.
  20. +
+

Lesson 8. sync_perf_output.py

+

Rewrite sync_timing.py, from a prior lesson, to use BPF_PERF_OUTPUT.

+

Lesson 9. bitehist.py

+

The following tool records a histogram of disk I/O sizes. Sample output:

+
# bitehist.py
+Tracing... Hit Ctrl-C to end.
+^C
+     kbytes          : count     distribution
+       0 -> 1        : 3        |                                      |
+       2 -> 3        : 0        |                                      |
+       4 -> 7        : 211      |**********                            |
+       8 -> 15       : 0        |                                      |
+      16 -> 31       : 0        |                                      |
+      32 -> 63       : 0        |                                      |
+      64 -> 127      : 1        |                                      |
+     128 -> 255      : 800      |**************************************|
+
+

Code is examples/tracing/bitehist.py:

+
from __future__ import print_function
+from bcc import BPF
+from time import sleep
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+#include <linux/blkdev.h>
+
+BPF_HISTOGRAM(dist);
+
+int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)
+{
+	dist.increment(bpf_log2l(req->__data_len / 1024));
+	return 0;
+}
+""")
+
+# header
+print("Tracing... Hit Ctrl-C to end.")
+
+# trace until Ctrl-C
+try:
+	sleep(99999999)
+except KeyboardInterrupt:
+	print()
+
+# output
+b["dist"].print_log2_hist("kbytes")
+
+

A recap from earlier lessons:

+
    +
  • kprobe__: This prefix means the rest will be treated as a kernel function name that will be instrumented using kprobe.
  • +
  • struct pt_regs *ctx, struct request *req: Arguments to kprobe. The ctx is registers and BPF context, the req is the first argument to the instrumented function: blk_account_io_done().
  • +
  • req->__data_len: Dereferencing that member.
  • +
+

New things to learn:

+
    +
  1. BPF_HISTOGRAM(dist): Defines a BPF map object that is a histogram, and names it "dist".
  2. +
  3. dist.increment(): Increments the histogram bucket index provided as first argument by one by default. Optionally, custom increments can be passed as the second argument.
  4. +
  5. bpf_log2l(): Returns the log-2 of the provided value. This becomes the index of our histogram, so that we're constructing a power-of-2 histogram.
  6. +
  7. b["dist"].print_log2_hist("kbytes"): Prints the "dist" histogram as power-of-2, with a column header of "kbytes". The only data transferred from kernel to user space is the bucket counts, making this efficient.
  8. +
+

Lesson 10. disklatency.py

+

Write a program that times disk I/O, and prints a histogram of their latency. Disk I/O instrumentation and timing can be found in the disksnoop.py program from a prior lesson, and histogram code can be found in bitehist.py from a prior lesson.

+

Lesson 11. vfsreadlat.py

+

This example is split into separate Python and C files. Example output:

+
# vfsreadlat.py 1
+Tracing... Hit Ctrl-C to end.
+     usecs               : count     distribution
+         0 -> 1          : 0        |                                        |
+         2 -> 3          : 2        |***********                             |
+         4 -> 7          : 7        |****************************************|
+         8 -> 15         : 4        |**********************                  |
+
+     usecs               : count     distribution
+         0 -> 1          : 29       |****************************************|
+         2 -> 3          : 28       |**************************************  |
+         4 -> 7          : 4        |*****                                   |
+         8 -> 15         : 8        |***********                             |
+        16 -> 31         : 0        |                                        |
+        32 -> 63         : 0        |                                        |
+        64 -> 127        : 0        |                                        |
+       128 -> 255        : 0        |                                        |
+       256 -> 511        : 2        |**                                      |
+       512 -> 1023       : 0        |                                        |
+      1024 -> 2047       : 0        |                                        |
+      2048 -> 4095       : 0        |                                        |
+      4096 -> 8191       : 4        |*****                                   |
+      8192 -> 16383      : 6        |********                                |
+     16384 -> 32767      : 9        |************                            |
+     32768 -> 65535      : 6        |********                                |
+     65536 -> 131071     : 2        |**                                      |
+
+     usecs               : count     distribution
+         0 -> 1          : 11       |****************************************|
+         2 -> 3          : 2        |*******                                 |
+         4 -> 7          : 10       |************************************    |
+         8 -> 15         : 8        |*****************************           |
+        16 -> 31         : 1        |***                                     |
+        32 -> 63         : 2        |*******                                 |
+[...]
+
+

Browse the code in examples/tracing/vfsreadlat.py and examples/tracing/vfsreadlat.c. Things to learn:

+
    +
  1. b = BPF(src_file = "vfsreadlat.c"): Read the BPF C program from a separate source file.
  2. +
  3. b.attach_kretprobe(event="vfs_read", fn_name="do_return"): Attaches the BPF C function do_return() to the return of the kernel function vfs_read(). This is a kretprobe: instrumenting the return from a function, rather than its entry.
  4. +
  5. b["dist"].clear(): Clears the histogram.
  6. +
+

Lesson 12. urandomread.py

+

Tracing while a dd if=/dev/urandom of=/dev/null bs=8k count=5 is run:

+
# urandomread.py
+TIME(s)            COMM             PID    GOTBITS
+24652832.956994001 smtp             24690  384
+24652837.726500999 dd               24692  65536
+24652837.727111001 dd               24692  65536
+24652837.727703001 dd               24692  65536
+24652837.728294998 dd               24692  65536
+24652837.728888001 dd               24692  65536
+
+

Hah! I caught smtp by accident. Code is examples/tracing/urandomread.py:

+
from __future__ import print_function
+from bcc import BPF
+
+# load BPF program
+b = BPF(text="""
+TRACEPOINT_PROBE(random, urandom_read) {
+    // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format
+    bpf_trace_printk("%d\\n", args->got_bits);
+    return 0;
+}
+""")
+
+# header
+print("%-18s %-16s %-6s %s" % ("TIME(s)", "COMM", "PID", "GOTBITS"))
+
+# format output
+while 1:
+    try:
+        (task, pid, cpu, flags, ts, msg) = b.trace_fields()
+    except ValueError:
+        continue
+    print("%-18.9f %-16s %-6d %s" % (ts, task, pid, msg))
+
+

Things to learn:

+
    +
  1. TRACEPOINT_PROBE(random, urandom_read): Instrument the kernel tracepoint random:urandom_read. These have a stable API, and thus are recommend to use instead of kprobes, wherever possible. You can run perf list for a list of tracepoints. Linux >= 4.7 is required to attach BPF programs to tracepoints.
  2. +
  3. args->got_bits: args is auto-populated to be a structure of the tracepoint arguments. The comment above says where you can see that structure. Eg:
  4. +
+
# cat /sys/kernel/debug/tracing/events/random/urandom_read/format
+name: urandom_read
+ID: 972
+format:
+	field:unsigned short common_type;	offset:0;	size:2;	signed:0;
+	field:unsigned char common_flags;	offset:2;	size:1;	signed:0;
+	field:unsigned char common_preempt_count;	offset:3;	size:1;	signed:0;
+	field:int common_pid;	offset:4;	size:4;	signed:1;
+
+	field:int got_bits;	offset:8;	size:4;	signed:1;
+	field:int pool_left;	offset:12;	size:4;	signed:1;
+	field:int input_left;	offset:16;	size:4;	signed:1;
+
+print fmt: "got_bits %d nonblocking_pool_entropy_left %d input_entropy_left %d", REC->got_bits, REC->pool_left, REC->input_left
+
+

In this case, we were printing the got_bits member.

+

Lesson 13. disksnoop.py fixed

+

Convert disksnoop.py from a previous lesson to use the block:block_rq_issue and block:block_rq_complete tracepoints.

+

Lesson 14. strlen_count.py

+

This program instruments a user-level function, the strlen() library function, and frequency counts its string argument. Example output:

+
# strlen_count.py
+Tracing strlen()... Hit Ctrl-C to end.
+^C     COUNT STRING
+         1 " "
+         1 "/bin/ls"
+         1 "."
+         1 "cpudist.py.1"
+         1 ".bashrc"
+         1 "ls --color=auto"
+         1 "key_t"
+[...]
+        10 "a7:~# "
+        10 "/root"
+        12 "LC_ALL"
+        12 "en_US.UTF-8"
+        13 "en_US.UTF-8"
+        20 "~"
+        70 "#%^,~:-=?+/}"
+       340 "\x01\x1b]0;root@bgregg-test: ~\x07\x02root@bgregg-test:~# "
+
+

These are various strings that are being processed by this library function while tracing, along with their frequency counts. strlen() was called on "LC_ALL" 12 times, for example.

+

Code is examples/tracing/strlen_count.py:

+
from __future__ import print_function
+from bcc import BPF
+from time import sleep
+
+# load BPF program
+b = BPF(text="""
+#include <uapi/linux/ptrace.h>
+
+struct key_t {
+    char c[80];
+};
+BPF_HASH(counts, struct key_t);
+
+int count(struct pt_regs *ctx) {
+    if (!PT_REGS_PARM1(ctx))
+        return 0;
+
+    struct key_t key = {};
+    u64 zero = 0, *val;
+
+    bpf_probe_read_user(&key.c, sizeof(key.c), (void *)PT_REGS_PARM1(ctx));
+    // could also use `counts.increment(key)`
+    val = counts.lookup_or_try_init(&key, &zero);
+    if (val) {
+      (*val)++;
+    }
+    return 0;
+};
+""")
+b.attach_uprobe(name="c", sym="strlen", fn_name="count")
+
+# header
+print("Tracing strlen()... Hit Ctrl-C to end.")
+
+# sleep until Ctrl-C
+try:
+    sleep(99999999)
+except KeyboardInterrupt:
+    pass
+
+# print output
+print("%10s %s" % ("COUNT", "STRING"))
+counts = b.get_table("counts")
+for k, v in sorted(counts.items(), key=lambda counts: counts[1].value):
+    print("%10d \"%s\"" % (v.value, k.c.encode('string-escape')))
+
+

Things to learn:

+
    +
  1. PT_REGS_PARM1(ctx): This fetches the first argument to strlen(), which is the string.
  2. +
  3. b.attach_uprobe(name="c", sym="strlen", fn_name="count"): Attach to library "c" (if this is the main program, use its pathname), instrument the user-level function strlen(), and on execution call our C function count().
  4. +
+

Lesson 15. nodejs_http_server.py

+

This program instruments a user statically-defined tracing (USDT) probe, which is the user-level version of a kernel tracepoint. Sample output:

+
# nodejs_http_server.py 24728
+TIME(s)            COMM             PID    ARGS
+24653324.561322998 node             24728  path:/index.html
+24653335.343401998 node             24728  path:/images/welcome.png
+24653340.510164998 node             24728  path:/images/favicon.png
+
+

Relevant code from examples/tracing/nodejs_http_server.py:

+
from __future__ import print_function
+from bcc import BPF, USDT
+import sys
+
+if len(sys.argv) < 2:
+    print("USAGE: nodejs_http_server PID")
+    exit()
+pid = sys.argv[1]
+debug = 0
+
+# load BPF program
+bpf_text = """
+#include <uapi/linux/ptrace.h>
+int do_trace(struct pt_regs *ctx) {
+    uint64_t addr;
+    char path[128]={0};
+    bpf_usdt_readarg(6, ctx, &addr);
+    bpf_probe_read_user(&path, sizeof(path), (void *)addr);
+    bpf_trace_printk("path:%s\\n", path);
+    return 0;
+};
+"""
+
+# enable USDT probe from given PID
+u = USDT(pid=int(pid))
+u.enable_probe(probe="http__server__request", fn_name="do_trace")
+if debug:
+    print(u.get_text())
+    print(bpf_text)
+
+# initialize BPF
+b = BPF(text=bpf_text, usdt_contexts=[u])
+
+

Things to learn:

+
    +
  1. bpf_usdt_readarg(6, ctx, &addr): Read the address of argument 6 from the USDT probe into addr.
  2. +
  3. bpf_probe_read_user(&path, sizeof(path), (void *)addr): Now the string addr points to into our path variable.
  4. +
  5. u = USDT(pid=int(pid)): Initialize USDT tracing for the given PID.
  6. +
  7. u.enable_probe(probe="http__server__request", fn_name="do_trace"): Attach our do_trace() BPF C function to the Node.js http__server__request USDT probe.
  8. +
  9. b = BPF(text=bpf_text, usdt_contexts=[u]): Need to pass in our USDT object, u, to BPF object creation.
  10. +
+

Lesson 16. task_switch.c

+

This is an older tutorial included as a bonus lesson. Use this for recap and to reinforce what you've already learned.

+

This is a slightly more complex tracing example than Hello World. This program +will be invoked for every task change in the kernel, and record in a BPF map +the new and old pids.

+

The C program below introduces a new concept: the prev argument. This +argument is treated specially by the BCC frontend, such that accesses +to this variable are read from the saved context that is passed by the +kprobe infrastructure. The prototype of the args starting from +position 1 should match the prototype of the kernel function being +kprobed. If done so, the program will have seamless access to the +function parameters.

+
#include <uapi/linux/ptrace.h>
+#include <linux/sched.h>
+
+struct key_t {
+    u32 prev_pid;
+    u32 curr_pid;
+};
+
+BPF_HASH(stats, struct key_t, u64, 1024);
+int count_sched(struct pt_regs *ctx, struct task_struct *prev) {
+    struct key_t key = {};
+    u64 zero = 0, *val;
+
+    key.curr_pid = bpf_get_current_pid_tgid();
+    key.prev_pid = prev->pid;
+
+    // could also use `stats.increment(key);`
+    val = stats.lookup_or_try_init(&key, &zero);
+    if (val) {
+      (*val)++;
+    }
+    return 0;
+}
+
+

The userspace component loads the file shown above, and attaches it to the +finish_task_switch kernel function. +The [] operator of the BPF object gives access to each BPF_HASH in the +program, allowing pass-through access to the values residing in the kernel. Use +the object as you would any other python dict object: read, update, and deletes +are all allowed.

+
from bcc import BPF
+from time import sleep
+
+b = BPF(src_file="task_switch.c")
+b.attach_kprobe(event="finish_task_switch", fn_name="count_sched")
+
+# generate many schedule events
+for i in range(0, 100): sleep(0.01)
+
+for k, v in b["stats"].items():
+    print("task_switch[%5d->%5d]=%u" % (k.prev_pid, k.curr_pid, v.value))
+
+

These programs can be found in the files examples/tracing/task_switch.c and examples/tracing/task_switch.py respectively.

+

Lesson 17. Further Study

+

For further study, see Sasha Goldshtein's linux-tracing-workshop, which contains additional labs. There are also many tools in bcc /tools to study.

+

Please read CONTRIBUTING-SCRIPTS.md if you wish to contribute tools to bcc. At the bottom of the main README.md, you'll also find methods for contacting us. Good luck, and happy tracing!

+

Networking

+

To do.

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
+ + diff --git a/searcher.js b/searcher.js new file mode 100644 index 0000000..d2b0aee --- /dev/null +++ b/searcher.js @@ -0,0 +1,483 @@ +"use strict"; +window.search = window.search || {}; +(function search(search) { + // Search functionality + // + // You can use !hasFocus() to prevent keyhandling in your key + // event handlers while the user is typing their search. + + if (!Mark || !elasticlunr) { + return; + } + + //IE 11 Compatibility from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith + if (!String.prototype.startsWith) { + String.prototype.startsWith = function(search, pos) { + return this.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search; + }; + } + + var search_wrap = document.getElementById('search-wrapper'), + searchbar = document.getElementById('searchbar'), + searchbar_outer = document.getElementById('searchbar-outer'), + searchresults = document.getElementById('searchresults'), + searchresults_outer = document.getElementById('searchresults-outer'), + searchresults_header = document.getElementById('searchresults-header'), + searchicon = document.getElementById('search-toggle'), + content = document.getElementById('content'), + + searchindex = null, + doc_urls = [], + results_options = { + teaser_word_count: 30, + limit_results: 30, + }, + search_options = { + bool: "AND", + expand: true, + fields: { + title: {boost: 1}, + body: {boost: 1}, + breadcrumbs: {boost: 0} + } + }, + mark_exclude = [], + marker = new Mark(content), + current_searchterm = "", + URL_SEARCH_PARAM = 'search', + URL_MARK_PARAM = 'highlight', + teaser_count = 0, + + SEARCH_HOTKEY_KEYCODE = 83, + ESCAPE_KEYCODE = 27, + DOWN_KEYCODE = 40, + UP_KEYCODE = 38, + SELECT_KEYCODE = 13; + + function hasFocus() { + return searchbar === document.activeElement; + } + + function removeChildren(elem) { + while (elem.firstChild) { + elem.removeChild(elem.firstChild); + } + } + + // Helper to parse a url into its building blocks. + function parseURL(url) { + var a = document.createElement('a'); + a.href = url; + return { + source: url, + protocol: a.protocol.replace(':',''), + host: a.hostname, + port: a.port, + params: (function(){ + var ret = {}; + var seg = a.search.replace(/^\?/,'').split('&'); + var len = seg.length, i = 0, s; + for (;i': '>', + '"': '"', + "'": ''' + }; + var repl = function(c) { return MAP[c]; }; + return function(s) { + return s.replace(/[&<>'"]/g, repl); + }; + })(); + + function formatSearchMetric(count, searchterm) { + if (count == 1) { + return count + " search result for '" + searchterm + "':"; + } else if (count == 0) { + return "No search results for '" + searchterm + "'."; + } else { + return count + " search results for '" + searchterm + "':"; + } + } + + function formatSearchResult(result, searchterms) { + var teaser = makeTeaser(escapeHTML(result.doc.body), searchterms); + teaser_count++; + + // The ?URL_MARK_PARAM= parameter belongs inbetween the page and the #heading-anchor + var url = doc_urls[result.ref].split("#"); + if (url.length == 1) { // no anchor found + url.push(""); + } + + // encodeURIComponent escapes all chars that could allow an XSS except + // for '. Due to that we also manually replace ' with its url-encoded + // representation (%27). + var searchterms = encodeURIComponent(searchterms.join(" ")).replace(/\'/g, "%27"); + + return '' + result.doc.breadcrumbs + '' + + '' + + teaser + ''; + } + + function makeTeaser(body, searchterms) { + // The strategy is as follows: + // First, assign a value to each word in the document: + // Words that correspond to search terms (stemmer aware): 40 + // Normal words: 2 + // First word in a sentence: 8 + // Then use a sliding window with a constant number of words and count the + // sum of the values of the words within the window. Then use the window that got the + // maximum sum. If there are multiple maximas, then get the last one. + // Enclose the terms in . + var stemmed_searchterms = searchterms.map(function(w) { + return elasticlunr.stemmer(w.toLowerCase()); + }); + var searchterm_weight = 40; + var weighted = []; // contains elements of ["word", weight, index_in_document] + // split in sentences, then words + var sentences = body.toLowerCase().split('. '); + var index = 0; + var value = 0; + var searchterm_found = false; + for (var sentenceindex in sentences) { + var words = sentences[sentenceindex].split(' '); + value = 8; + for (var wordindex in words) { + var word = words[wordindex]; + if (word.length > 0) { + for (var searchtermindex in stemmed_searchterms) { + if (elasticlunr.stemmer(word).startsWith(stemmed_searchterms[searchtermindex])) { + value = searchterm_weight; + searchterm_found = true; + } + }; + weighted.push([word, value, index]); + value = 2; + } + index += word.length; + index += 1; // ' ' or '.' if last word in sentence + }; + index += 1; // because we split at a two-char boundary '. ' + }; + + if (weighted.length == 0) { + return body; + } + + var window_weight = []; + var window_size = Math.min(weighted.length, results_options.teaser_word_count); + + var cur_sum = 0; + for (var wordindex = 0; wordindex < window_size; wordindex++) { + cur_sum += weighted[wordindex][1]; + }; + window_weight.push(cur_sum); + for (var wordindex = 0; wordindex < weighted.length - window_size; wordindex++) { + cur_sum -= weighted[wordindex][1]; + cur_sum += weighted[wordindex + window_size][1]; + window_weight.push(cur_sum); + }; + + if (searchterm_found) { + var max_sum = 0; + var max_sum_window_index = 0; + // backwards + for (var i = window_weight.length - 1; i >= 0; i--) { + if (window_weight[i] > max_sum) { + max_sum = window_weight[i]; + max_sum_window_index = i; + } + }; + } else { + max_sum_window_index = 0; + } + + // add around searchterms + var teaser_split = []; + var index = weighted[max_sum_window_index][2]; + for (var i = max_sum_window_index; i < max_sum_window_index+window_size; i++) { + var word = weighted[i]; + if (index < word[2]) { + // missing text from index to start of `word` + teaser_split.push(body.substring(index, word[2])); + index = word[2]; + } + if (word[1] == searchterm_weight) { + teaser_split.push("") + } + index = word[2] + word[0].length; + teaser_split.push(body.substring(word[2], index)); + if (word[1] == searchterm_weight) { + teaser_split.push("") + } + }; + + return teaser_split.join(''); + } + + function init(config) { + results_options = config.results_options; + search_options = config.search_options; + searchbar_outer = config.searchbar_outer; + doc_urls = config.doc_urls; + searchindex = elasticlunr.Index.load(config.index); + + // Set up events + searchicon.addEventListener('click', function(e) { searchIconClickHandler(); }, false); + searchbar.addEventListener('keyup', function(e) { searchbarKeyUpHandler(); }, false); + document.addEventListener('keydown', function(e) { globalKeyHandler(e); }, false); + // If the user uses the browser buttons, do the same as if a reload happened + window.onpopstate = function(e) { doSearchOrMarkFromUrl(); }; + // Suppress "submit" events so the page doesn't reload when the user presses Enter + document.addEventListener('submit', function(e) { e.preventDefault(); }, false); + + // If reloaded, do the search or mark again, depending on the current url parameters + doSearchOrMarkFromUrl(); + } + + function unfocusSearchbar() { + // hacky, but just focusing a div only works once + var tmp = document.createElement('input'); + tmp.setAttribute('style', 'position: absolute; opacity: 0;'); + searchicon.appendChild(tmp); + tmp.focus(); + tmp.remove(); + } + + // On reload or browser history backwards/forwards events, parse the url and do search or mark + function doSearchOrMarkFromUrl() { + // Check current URL for search request + var url = parseURL(window.location.href); + if (url.params.hasOwnProperty(URL_SEARCH_PARAM) + && url.params[URL_SEARCH_PARAM] != "") { + showSearch(true); + searchbar.value = decodeURIComponent( + (url.params[URL_SEARCH_PARAM]+'').replace(/\+/g, '%20')); + searchbarKeyUpHandler(); // -> doSearch() + } else { + showSearch(false); + } + + if (url.params.hasOwnProperty(URL_MARK_PARAM)) { + var words = decodeURIComponent(url.params[URL_MARK_PARAM]).split(' '); + marker.mark(words, { + exclude: mark_exclude + }); + + var markers = document.querySelectorAll("mark"); + function hide() { + for (var i = 0; i < markers.length; i++) { + markers[i].classList.add("fade-out"); + window.setTimeout(function(e) { marker.unmark(); }, 300); + } + } + for (var i = 0; i < markers.length; i++) { + markers[i].addEventListener('click', hide); + } + } + } + + // Eventhandler for keyevents on `document` + function globalKeyHandler(e) { + if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || e.target.type === 'textarea' || e.target.type === 'text') { return; } + + if (e.keyCode === ESCAPE_KEYCODE) { + e.preventDefault(); + searchbar.classList.remove("active"); + setSearchUrlParameters("", + (searchbar.value.trim() !== "") ? "push" : "replace"); + if (hasFocus()) { + unfocusSearchbar(); + } + showSearch(false); + marker.unmark(); + } else if (!hasFocus() && e.keyCode === SEARCH_HOTKEY_KEYCODE) { + e.preventDefault(); + showSearch(true); + window.scrollTo(0, 0); + searchbar.select(); + } else if (hasFocus() && e.keyCode === DOWN_KEYCODE) { + e.preventDefault(); + unfocusSearchbar(); + searchresults.firstElementChild.classList.add("focus"); + } else if (!hasFocus() && (e.keyCode === DOWN_KEYCODE + || e.keyCode === UP_KEYCODE + || e.keyCode === SELECT_KEYCODE)) { + // not `:focus` because browser does annoying scrolling + var focused = searchresults.querySelector("li.focus"); + if (!focused) return; + e.preventDefault(); + if (e.keyCode === DOWN_KEYCODE) { + var next = focused.nextElementSibling; + if (next) { + focused.classList.remove("focus"); + next.classList.add("focus"); + } + } else if (e.keyCode === UP_KEYCODE) { + focused.classList.remove("focus"); + var prev = focused.previousElementSibling; + if (prev) { + prev.classList.add("focus"); + } else { + searchbar.select(); + } + } else { // SELECT_KEYCODE + window.location.assign(focused.querySelector('a')); + } + } + } + + function showSearch(yes) { + if (yes) { + search_wrap.classList.remove('hidden'); + searchicon.setAttribute('aria-expanded', 'true'); + } else { + search_wrap.classList.add('hidden'); + searchicon.setAttribute('aria-expanded', 'false'); + var results = searchresults.children; + for (var i = 0; i < results.length; i++) { + results[i].classList.remove("focus"); + } + } + } + + function showResults(yes) { + if (yes) { + searchresults_outer.classList.remove('hidden'); + } else { + searchresults_outer.classList.add('hidden'); + } + } + + // Eventhandler for search icon + function searchIconClickHandler() { + if (search_wrap.classList.contains('hidden')) { + showSearch(true); + window.scrollTo(0, 0); + searchbar.select(); + } else { + showSearch(false); + } + } + + // Eventhandler for keyevents while the searchbar is focused + function searchbarKeyUpHandler() { + var searchterm = searchbar.value.trim(); + if (searchterm != "") { + searchbar.classList.add("active"); + doSearch(searchterm); + } else { + searchbar.classList.remove("active"); + showResults(false); + removeChildren(searchresults); + } + + setSearchUrlParameters(searchterm, "push_if_new_search_else_replace"); + + // Remove marks + marker.unmark(); + } + + // Update current url with ?URL_SEARCH_PARAM= parameter, remove ?URL_MARK_PARAM and #heading-anchor . + // `action` can be one of "push", "replace", "push_if_new_search_else_replace" + // and replaces or pushes a new browser history item. + // "push_if_new_search_else_replace" pushes if there is no `?URL_SEARCH_PARAM=abc` yet. + function setSearchUrlParameters(searchterm, action) { + var url = parseURL(window.location.href); + var first_search = ! url.params.hasOwnProperty(URL_SEARCH_PARAM); + if (searchterm != "" || action == "push_if_new_search_else_replace") { + url.params[URL_SEARCH_PARAM] = searchterm; + delete url.params[URL_MARK_PARAM]; + url.hash = ""; + } else { + delete url.params[URL_MARK_PARAM]; + delete url.params[URL_SEARCH_PARAM]; + } + // A new search will also add a new history item, so the user can go back + // to the page prior to searching. A updated search term will only replace + // the url. + if (action == "push" || (action == "push_if_new_search_else_replace" && first_search) ) { + history.pushState({}, document.title, renderURL(url)); + } else if (action == "replace" || (action == "push_if_new_search_else_replace" && !first_search) ) { + history.replaceState({}, document.title, renderURL(url)); + } + } + + function doSearch(searchterm) { + + // Don't search the same twice + if (current_searchterm == searchterm) { return; } + else { current_searchterm = searchterm; } + + if (searchindex == null) { return; } + + // Do the actual search + var results = searchindex.search(searchterm, search_options); + var resultcount = Math.min(results.length, results_options.limit_results); + + // Display search metrics + searchresults_header.innerText = formatSearchMetric(resultcount, searchterm); + + // Clear and insert results + var searchterms = searchterm.split(' '); + removeChildren(searchresults); + for(var i = 0; i < resultcount ; i++){ + var resultElem = document.createElement('li'); + resultElem.innerHTML = formatSearchResult(results[i], searchterms); + searchresults.appendChild(resultElem); + } + + // Display results + showResults(true); + } + + fetch(path_to_root + 'searchindex.json') + .then(response => response.json()) + .then(json => init(json)) + .catch(error => { // Try to load searchindex.js if fetch failed + var script = document.createElement('script'); + script.src = path_to_root + 'searchindex.js'; + script.onload = () => init(window.search); + document.head.appendChild(script); + }); + + // Exported functions + search.hasFocus = hasFocus; +})(window.search); diff --git a/searchindex.js b/searchindex.js new file mode 100644 index 0000000..34bc266 --- /dev/null +++ b/searchindex.js @@ -0,0 +1 @@ +Object.assign(window.search, {"doc_urls":["0-introduce/index.html#ebpf-入门开发实践教程一介绍-ebpf-的基本概念常见的开发工具","0-introduce/index.html#1-ebpf简介安全和有效地扩展内核","0-introduce/index.html#ebpf-的未来内核的-javascript-可编程接口","0-introduce/index.html#2-关于如何学习-ebpf-相关的开发的一些建议","0-introduce/index.html#ebpf-入门5-7h","0-introduce/index.html#了解如何开发-ebpf-程序10-15h","0-introduce/index.html#3-如何使用ebpf编程","0-introduce/index.html#编写-ebpf-程序","0-introduce/index.html#bcc","0-introduce/index.html#ebpf-go-library","0-introduce/index.html#libbpf","0-introduce/index.html#eunomia-bpf","0-introduce/index.html#参考资料","1-helloworld/index.html#ebpf-入门开发实践教程二hello-world基本框架和开发流程","1-helloworld/index.html#开发-ebpf-程序的流程","1-helloworld/index.html#使用-eunomia-bpf-开发-ebpf-程序","1-helloworld/index.html#下载安装-eunomia-bpf-开发工具","1-helloworld/index.html#hello-world---minimal-ebpf-program","1-helloworld/index.html#ebpf-程序的基本框架","1-helloworld/index.html#tracepoints","1-helloworld/index.html#总结","2-kprobe-unlink/index.html#ebpf-入门开发实践教程二在-ebpf-中使用-kprobe-监测捕获-unlink-系统调用","2-kprobe-unlink/index.html#kprobes技术背景","2-kprobe-unlink/index.html#kprobe","2-kprobe-unlink/index.html#总结","3-fentry-unlink/index.html#ebpf-入门开发实践教程三在-ebpf-中使用-fentry-监测捕获-unlink-系统调用","3-fentry-unlink/index.html#fentry","3-fentry-unlink/index.html#总结","4-opensnoop/index.html#ebpf-入门开发实践教程四在-ebpf-中捕获进程打开文件的系统调用集合使用全局变量过滤进程-pid","4-opensnoop/index.html#在-ebpf-中捕获进程打开文件的系统调用集合","4-opensnoop/index.html#使用全局变量在-ebpf-中过滤进程-pid","4-opensnoop/index.html#总结","5-uprobe-bashreadline/index.html#ebpf-入门开发实践教程五在-ebpf-中使用--uprobe-捕获-bash-的-readline-函数调用","5-uprobe-bashreadline/index.html#什么是uprobe","5-uprobe-bashreadline/index.html#使用-uprobe-捕获-bash-的-readline-函数调用","5-uprobe-bashreadline/index.html#总结","6-sigsnoop/index.html#ebpf-入门开发实践教程六捕获进程发送信号的系统调用集合使用-hash-map-保存状态","6-sigsnoop/index.html#sigsnoop","6-sigsnoop/index.html#总结","7-execsnoop/index.html#ebpf-入门实践教程七捕获进程执行退出时间通过-perf-event-array-向用户态打印输出","7-execsnoop/index.html#perf-buffer","7-execsnoop/index.html#execsnoop","7-execsnoop/index.html#总结","8-exitsnoop/index.html#ebpf-入门开发实践教程八在-ebpf-中使用-exitsnoop-监控进程退出事件使用-ring-buffer-向用户态打印输出","8-exitsnoop/index.html#ring-buffer","8-exitsnoop/index.html#bpf-ringbuf-vs-bpf-perfbuf","8-exitsnoop/index.html#exitsnoop","8-exitsnoop/index.html#compile-and-run","8-exitsnoop/index.html#总结","9-runqlat/index.html#ebpf-入门开发实践教程九一个-linux-内核-bpf-程序通过柱状图来总结调度程序运行队列延迟显示任务等待运行在-cpu-上的时间长度","9-runqlat/index.html#runqlat是什么","9-runqlat/index.html#runqlat-原理","9-runqlat/index.html#runqlat-代码实现","9-runqlat/index.html#编译运行","9-runqlat/index.html#总结","10-hardirqs/index.html#ebpf-入门开发实践教程十在-ebpf-中使用-hardirqs-或-softirqs-捕获中断事件","10-hardirqs/index.html#hardirqs是什么","10-hardirqs/index.html#实现原理","10-hardirqs/index.html#代码实现","10-hardirqs/index.html#运行代码","10-hardirqs/index.html#总结","11-bootstrap/index.html#ebpf-入门开发实践教程十一在-ebpf-中使用-bootstrap-开发用户态程序并跟踪-exec-和-exit-系统调用","11-bootstrap/index.html#什么是bootstrap","11-bootstrap/index.html#bootstrap","11-bootstrap/index.html#总结","13-tcpconnlat/index.html#ebpf入门实践教程使用-libbpf-bootstrap-开发程序统计-tcp-连接延时","13-tcpconnlat/index.html#背景","13-tcpconnlat/index.html#tcpconnlat-的实现原理","13-tcpconnlat/index.html#tcp-连接原理","13-tcpconnlat/index.html#ebpf-实现原理","13-tcpconnlat/index.html#编译运行","13-tcpconnlat/index.html#效果","13-tcpconnlat/index.html#总结","13-tcpconnlat/tcpconnlat.html#ebpf-入门实践教程编写-ebpf-程序-tcpconnlat-测量-tcp-连接延时","13-tcpconnlat/tcpconnlat.html#代码解释","13-tcpconnlat/tcpconnlat.html#背景","13-tcpconnlat/tcpconnlat.html#tcpconnlat-的实现原理","13-tcpconnlat/tcpconnlat.html#tcp-连接原理","13-tcpconnlat/tcpconnlat.html#ebpf-实现原理","13-tcpconnlat/tcpconnlat.html#eunomia-测试-demo","13-tcpconnlat/tcpconnlat.html#总结","13-tcpconnlat/tcpconnlat.html#参考资料","14-tcpstates/index.html#ebpf入门实践教程使用-libbpf-bootstrap-开发程序统计-tcp-连接延时","14-tcpstates/index.html#用户态程序","14-tcpstates/index.html#编译运行","14-tcpstates/index.html#效果","14-tcpstates/index.html#总结","15-tcprtt/index.html#ebpf-入门实践教程编写-ebpf-程序-tcprtt-测量-tcp-连接的往返时间","15-tcprtt/index.html#背景","15-tcprtt/index.html#编写-ebpf-程序","15-tcprtt/index.html#编译运行","15-tcprtt/index.html#总结","16-memleak/index.html#ebpf-入门实践教程编写-ebpf-程序-memleak-监控内存泄漏","16-memleak/index.html#背景","16-memleak/index.html#实现原理","16-memleak/index.html#编写-ebpf-程序","16-memleak/index.html#编译运行","16-memleak/index.html#总结","17-biopattern/index.html#ebpf-入门实践教程编写-ebpf-程序-biopattern-统计随机顺序磁盘-io","17-biopattern/index.html#背景","17-biopattern/index.html#实现原理","17-biopattern/index.html#编写-ebpf-程序","17-biopattern/index.html#总结","18-further-reading/index.html#更多的参考资料","19-lsm-connect/index.html#ebpf-入门实践教程使用-lsm-进行安全检测防御","19-lsm-connect/index.html#背景","19-lsm-connect/index.html#lsm-概述","19-lsm-connect/index.html#编写-ebpf-程序","19-lsm-connect/index.html#编译运行","19-lsm-connect/index.html#总结","20-tc/index.html#ebpf-入门实践教程使用-ebpf-进行-tc-流量控制","20-tc/index.html#tc-程序示例","20-tc/index.html#编译运行","20-tc/index.html#总结","bcc-documents/kernel-versions.html#bpf-features-by-linux-kernel-version","bcc-documents/kernel-versions.html#ebpf-support","bcc-documents/kernel-versions.html#jit-compiling","bcc-documents/kernel-versions.html#main-features","bcc-documents/kernel-versions.html#program-types","bcc-documents/kernel-versions.html#maps--aka--tables-in-bcc-lingo","bcc-documents/kernel-versions.html#map-types","bcc-documents/kernel-versions.html#map-userspace-api","bcc-documents/kernel-versions.html#xdp","bcc-documents/kernel-versions.html#helpers","bcc-documents/kernel-versions.html#program-types-1","bcc-documents/kernel_config.html#kernel-configuration-for-bpf-features","bcc-documents/kernel_config.html#bpf-related-kernel-configurations","bcc-documents/reference_guide.html#bcc-reference-guide","bcc-documents/reference_guide.html#contents","bcc-documents/reference_guide.html#bpf-c","bcc-documents/reference_guide.html#events--arguments","bcc-documents/reference_guide.html#1-kprobes","bcc-documents/reference_guide.html#2-kretprobes","bcc-documents/reference_guide.html#3-tracepoints","bcc-documents/reference_guide.html#4-uprobes","bcc-documents/reference_guide.html#5-uretprobes","bcc-documents/reference_guide.html#6-usdt-probes","bcc-documents/reference_guide.html#7-raw-tracepoints","bcc-documents/reference_guide.html#8-system-call-tracepoints","bcc-documents/reference_guide.html#9-kfuncs","bcc-documents/reference_guide.html#10-kretfuncs","bcc-documents/reference_guide.html#11-lsm-probes","bcc-documents/reference_guide.html#12-bpf-iterators","bcc-documents/reference_guide.html#data","bcc-documents/reference_guide.html#1-bpf_probe_read_kernel","bcc-documents/reference_guide.html#2-bpf_probe_read_kernel_str","bcc-documents/reference_guide.html#3-bpf_ktime_get_ns","bcc-documents/reference_guide.html#4-bpf_get_current_pid_tgid","bcc-documents/reference_guide.html#5-bpf_get_current_uid_gid","bcc-documents/reference_guide.html#6-bpf_get_current_comm","bcc-documents/reference_guide.html#7-bpf_get_current_task","bcc-documents/reference_guide.html#8-bpf_log2l","bcc-documents/reference_guide.html#9-bpf_get_prandom_u32","bcc-documents/reference_guide.html#10-bpf_probe_read_user","bcc-documents/reference_guide.html#11-bpf_probe_read_user_str","bcc-documents/reference_guide.html#12-bpf_get_ns_current_pid_tgid","bcc-documents/reference_guide.html#debugging","bcc-documents/reference_guide.html#1-bpf_override_return","bcc-documents/reference_guide.html#output","bcc-documents/reference_guide.html#1-bpf_trace_printk","bcc-documents/reference_guide.html#2-bpf_perf_output","bcc-documents/reference_guide.html#3-perf_submit","bcc-documents/reference_guide.html#4-perf_submit_skb","bcc-documents/reference_guide.html#5-bpf_ringbuf_output","bcc-documents/reference_guide.html#6-ringbuf_output","bcc-documents/reference_guide.html#7-ringbuf_reserve","bcc-documents/reference_guide.html#8-ringbuf_submit","bcc-documents/reference_guide.html#9-ringbuf_discard","bcc-documents/reference_guide.html#maps","bcc-documents/reference_guide.html#1-bpf_table","bcc-documents/reference_guide.html#2-bpf_hash","bcc-documents/reference_guide.html#3-bpf_array","bcc-documents/reference_guide.html#4-bpf_histogram","bcc-documents/reference_guide.html#5-bpf_stack_trace","bcc-documents/reference_guide.html#6-bpf_perf_array","bcc-documents/reference_guide.html#7-bpf_percpu_hash","bcc-documents/reference_guide.html#8-bpf_percpu_array","bcc-documents/reference_guide.html#9-bpf_lpm_trie","bcc-documents/reference_guide.html#10-bpf_prog_array","bcc-documents/reference_guide.html#11-bpf_devmap","bcc-documents/reference_guide.html#12-bpf_cpumap","bcc-documents/reference_guide.html#13-bpf_xskmap","bcc-documents/reference_guide.html#14-bpf_array_of_maps","bcc-documents/reference_guide.html#15-bpf_hash_of_maps","bcc-documents/reference_guide.html#16-bpf_stack","bcc-documents/reference_guide.html#17-bpf_queue","bcc-documents/reference_guide.html#18-bpf_sockhash","bcc-documents/reference_guide.html#19-maplookup","bcc-documents/reference_guide.html#20-maplookup_or_try_init","bcc-documents/reference_guide.html#21-mapdelete","bcc-documents/reference_guide.html#22-mapupdate","bcc-documents/reference_guide.html#23-mapinsert","bcc-documents/reference_guide.html#24-mapincrement","bcc-documents/reference_guide.html#25-mapget_stackid","bcc-documents/reference_guide.html#26-mapperf_read","bcc-documents/reference_guide.html#27-mapcall","bcc-documents/reference_guide.html#28-mapredirect_map","bcc-documents/reference_guide.html#29-mappush","bcc-documents/reference_guide.html#30-mappop","bcc-documents/reference_guide.html#31-mappeek","bcc-documents/reference_guide.html#32-mapsock_hash_update","bcc-documents/reference_guide.html#33-mapmsg_redirect_hash","bcc-documents/reference_guide.html#34-mapsk_redirect_hash","bcc-documents/reference_guide.html#licensing","bcc-documents/reference_guide.html#rewriter","bcc-documents/reference_guide.html#bcc-python","bcc-documents/reference_guide.html#initialization","bcc-documents/reference_guide.html#1-bpf","bcc-documents/reference_guide.html#2-usdt","bcc-documents/reference_guide.html#events","bcc-documents/reference_guide.html#1-attach_kprobe","bcc-documents/reference_guide.html#2-attach_kretprobe","bcc-documents/reference_guide.html#3-attach_tracepoint","bcc-documents/reference_guide.html#4-attach_uprobe","bcc-documents/reference_guide.html#5-attach_uretprobe","bcc-documents/reference_guide.html#6-usdtenable_probe","bcc-documents/reference_guide.html#7-attach_raw_tracepoint","bcc-documents/reference_guide.html#8-attach_raw_socket","bcc-documents/reference_guide.html#9-attach_xdp","bcc-documents/reference_guide.html#10-attach_func","bcc-documents/reference_guide.html#11-detach_func","bcc-documents/reference_guide.html#12-detach_kprobe","bcc-documents/reference_guide.html#13-detach_kretprobe","bcc-documents/reference_guide.html#debug-output","bcc-documents/reference_guide.html#1-trace_print","bcc-documents/reference_guide.html#2-trace_fields","bcc-documents/reference_guide.html#output-apis","bcc-documents/reference_guide.html#1-perf_buffer_poll","bcc-documents/reference_guide.html#2-ring_buffer_poll","bcc-documents/reference_guide.html#3-ring_buffer_consume","bcc-documents/reference_guide.html#map-apis","bcc-documents/reference_guide.html#1-get_table","bcc-documents/reference_guide.html#2-open_perf_buffer","bcc-documents/reference_guide.html#3-items","bcc-documents/reference_guide.html#4-values","bcc-documents/reference_guide.html#5-clear","bcc-documents/reference_guide.html#6-items_lookup_and_delete_batch","bcc-documents/reference_guide.html#7-items_lookup_batch","bcc-documents/reference_guide.html#8-items_delete_batch","bcc-documents/reference_guide.html#9-items_update_batch","bcc-documents/reference_guide.html#10-print_log2_hist","bcc-documents/reference_guide.html#11-print_linear_hist","bcc-documents/reference_guide.html#12-open_ring_buffer","bcc-documents/reference_guide.html#13-push","bcc-documents/reference_guide.html#14-pop","bcc-documents/reference_guide.html#15-peek","bcc-documents/reference_guide.html#helpers","bcc-documents/reference_guide.html#1-ksym","bcc-documents/reference_guide.html#2-ksymname","bcc-documents/reference_guide.html#3-sym","bcc-documents/reference_guide.html#4-num_open_kprobes","bcc-documents/reference_guide.html#5-get_syscall_fnname","bcc-documents/reference_guide.html#bpf-errors","bcc-documents/reference_guide.html#1-invalid-mem-access","bcc-documents/reference_guide.html#2-cannot-call-gpl-only-function-from-proprietary-program","bcc-documents/reference_guide.html#environment-variables","bcc-documents/reference_guide.html#1-kernel-source-directory","bcc-documents/reference_guide.html#2-kernel-version-overriding","bcc-documents/special_filtering.html#special-filtering","bcc-documents/special_filtering.html#filtering-by-cgroups","bcc-documents/special_filtering.html#filtering-by-mount-by-namespace","bcc-documents/tutorial.html#bcc-tutorial","bcc-documents/tutorial.html#observability","bcc-documents/tutorial.html#0-before-bcc","bcc-documents/tutorial.html#1-general-performance","bcc-documents/tutorial.html#2-observability-with-generic-tools","bcc-documents/tutorial.html#networking","bcc-documents/tutorial_bcc_python_developer.html#bcc-python-developer-tutorial","bcc-documents/tutorial_bcc_python_developer.html#observability","bcc-documents/tutorial_bcc_python_developer.html#lesson-1-hello-world","bcc-documents/tutorial_bcc_python_developer.html#lesson-2-sys_sync","bcc-documents/tutorial_bcc_python_developer.html#lesson-3-hello_fieldspy","bcc-documents/tutorial_bcc_python_developer.html#lesson-4-sync_timingpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-5-sync_countpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-6-disksnooppy","bcc-documents/tutorial_bcc_python_developer.html#lesson-7-hello_perf_outputpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-8-sync_perf_outputpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-9-bitehistpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-10-disklatencypy","bcc-documents/tutorial_bcc_python_developer.html#lesson-11-vfsreadlatpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-12-urandomreadpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-13-disksnooppy-fixed","bcc-documents/tutorial_bcc_python_developer.html#lesson-14-strlen_countpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-15-nodejs_http_serverpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-16-task_switchc","bcc-documents/tutorial_bcc_python_developer.html#lesson-17-further-study","bcc-documents/tutorial_bcc_python_developer.html#networking"],"index":{"documentStore":{"docInfo":{"0":{"body":0,"breadcrumbs":4,"title":2},"1":{"body":4,"breadcrumbs":4,"title":2},"10":{"body":10,"breadcrumbs":3,"title":1},"100":{"body":6,"breadcrumbs":4,"title":0},"101":{"body":1,"breadcrumbs":5,"title":1},"102":{"body":2,"breadcrumbs":4,"title":0},"103":{"body":1,"breadcrumbs":0,"title":0},"104":{"body":0,"breadcrumbs":4,"title":2},"105":{"body":1,"breadcrumbs":2,"title":0},"106":{"body":1,"breadcrumbs":3,"title":1},"107":{"body":1,"breadcrumbs":3,"title":1},"108":{"body":23,"breadcrumbs":2,"title":0},"109":{"body":6,"breadcrumbs":2,"title":0},"11":{"body":50,"breadcrumbs":4,"title":2},"110":{"body":0,"breadcrumbs":6,"title":3},"111":{"body":108,"breadcrumbs":4,"title":1},"112":{"body":87,"breadcrumbs":3,"title":0},"113":{"body":1,"breadcrumbs":3,"title":0},"114":{"body":0,"breadcrumbs":10,"title":5},"115":{"body":5,"breadcrumbs":7,"title":2},"116":{"body":65,"breadcrumbs":7,"title":2},"117":{"body":321,"breadcrumbs":7,"title":2},"118":{"body":174,"breadcrumbs":7,"title":2},"119":{"body":0,"breadcrumbs":10,"title":5},"12":{"body":16,"breadcrumbs":2,"title":0},"120":{"body":187,"breadcrumbs":7,"title":2},"121":{"body":109,"breadcrumbs":8,"title":3},"122":{"body":162,"breadcrumbs":6,"title":1},"123":{"body":714,"breadcrumbs":6,"title":1},"124":{"body":279,"breadcrumbs":7,"title":2},"125":{"body":0,"breadcrumbs":8,"title":4},"126":{"body":382,"breadcrumbs":8,"title":4},"127":{"body":29,"breadcrumbs":6,"title":3},"128":{"body":265,"breadcrumbs":4,"title":1},"129":{"body":6,"breadcrumbs":5,"title":2},"13":{"body":11,"breadcrumbs":6,"title":3},"130":{"body":0,"breadcrumbs":5,"title":2},"131":{"body":90,"breadcrumbs":5,"title":2},"132":{"body":67,"breadcrumbs":5,"title":2},"133":{"body":102,"breadcrumbs":5,"title":2},"134":{"body":45,"breadcrumbs":5,"title":2},"135":{"body":46,"breadcrumbs":5,"title":2},"136":{"body":100,"breadcrumbs":6,"title":3},"137":{"body":79,"breadcrumbs":6,"title":3},"138":{"body":82,"breadcrumbs":7,"title":4},"139":{"body":49,"breadcrumbs":5,"title":2},"14":{"body":15,"breadcrumbs":4,"title":1},"140":{"body":62,"breadcrumbs":5,"title":2},"141":{"body":128,"breadcrumbs":6,"title":3},"142":{"body":90,"breadcrumbs":6,"title":3},"143":{"body":0,"breadcrumbs":4,"title":1},"144":{"body":50,"breadcrumbs":5,"title":2},"145":{"body":60,"breadcrumbs":5,"title":2},"146":{"body":20,"breadcrumbs":5,"title":2},"147":{"body":47,"breadcrumbs":5,"title":2},"148":{"body":18,"breadcrumbs":5,"title":2},"149":{"body":39,"breadcrumbs":5,"title":2},"15":{"body":39,"breadcrumbs":6,"title":3},"150":{"body":65,"breadcrumbs":5,"title":2},"151":{"body":25,"breadcrumbs":5,"title":2},"152":{"body":13,"breadcrumbs":5,"title":2},"153":{"body":40,"breadcrumbs":5,"title":2},"154":{"body":60,"breadcrumbs":5,"title":2},"155":{"body":55,"breadcrumbs":5,"title":2},"156":{"body":0,"breadcrumbs":4,"title":1},"157":{"body":64,"breadcrumbs":5,"title":2},"158":{"body":0,"breadcrumbs":4,"title":1},"159":{"body":52,"breadcrumbs":5,"title":2},"16":{"body":62,"breadcrumbs":5,"title":2},"160":{"body":66,"breadcrumbs":5,"title":2},"161":{"body":45,"breadcrumbs":5,"title":2},"162":{"body":44,"breadcrumbs":5,"title":2},"163":{"body":174,"breadcrumbs":5,"title":2},"164":{"body":45,"breadcrumbs":5,"title":2},"165":{"body":31,"breadcrumbs":5,"title":2},"166":{"body":43,"breadcrumbs":5,"title":2},"167":{"body":47,"breadcrumbs":5,"title":2},"168":{"body":13,"breadcrumbs":4,"title":1},"169":{"body":86,"breadcrumbs":5,"title":2},"17":{"body":123,"breadcrumbs":8,"title":5},"170":{"body":66,"breadcrumbs":5,"title":2},"171":{"body":66,"breadcrumbs":5,"title":2},"172":{"body":41,"breadcrumbs":5,"title":2},"173":{"body":46,"breadcrumbs":5,"title":2},"174":{"body":72,"breadcrumbs":5,"title":2},"175":{"body":80,"breadcrumbs":5,"title":2},"176":{"body":84,"breadcrumbs":5,"title":2},"177":{"body":55,"breadcrumbs":5,"title":2},"178":{"body":43,"breadcrumbs":5,"title":2},"179":{"body":30,"breadcrumbs":5,"title":2},"18":{"body":17,"breadcrumbs":4,"title":1},"180":{"body":36,"breadcrumbs":5,"title":2},"181":{"body":70,"breadcrumbs":5,"title":2},"182":{"body":44,"breadcrumbs":5,"title":2},"183":{"body":43,"breadcrumbs":5,"title":2},"184":{"body":48,"breadcrumbs":5,"title":2},"185":{"body":48,"breadcrumbs":5,"title":2},"186":{"body":91,"breadcrumbs":5,"title":2},"187":{"body":21,"breadcrumbs":5,"title":2},"188":{"body":43,"breadcrumbs":5,"title":2},"189":{"body":11,"breadcrumbs":5,"title":2},"19":{"body":5,"breadcrumbs":4,"title":1},"190":{"body":17,"breadcrumbs":5,"title":2},"191":{"body":16,"breadcrumbs":5,"title":2},"192":{"body":48,"breadcrumbs":5,"title":2},"193":{"body":28,"breadcrumbs":5,"title":2},"194":{"body":15,"breadcrumbs":5,"title":2},"195":{"body":99,"breadcrumbs":5,"title":2},"196":{"body":94,"breadcrumbs":5,"title":2},"197":{"body":31,"breadcrumbs":5,"title":2},"198":{"body":26,"breadcrumbs":5,"title":2},"199":{"body":27,"breadcrumbs":5,"title":2},"2":{"body":40,"breadcrumbs":4,"title":2},"20":{"body":39,"breadcrumbs":3,"title":0},"200":{"body":68,"breadcrumbs":5,"title":2},"201":{"body":67,"breadcrumbs":5,"title":2},"202":{"body":67,"breadcrumbs":5,"title":2},"203":{"body":91,"breadcrumbs":4,"title":1},"204":{"body":72,"breadcrumbs":4,"title":1},"205":{"body":0,"breadcrumbs":5,"title":2},"206":{"body":1,"breadcrumbs":4,"title":1},"207":{"body":147,"breadcrumbs":5,"title":2},"208":{"body":41,"breadcrumbs":5,"title":2},"209":{"body":0,"breadcrumbs":4,"title":1},"21":{"body":10,"breadcrumbs":8,"title":4},"210":{"body":71,"breadcrumbs":5,"title":2},"211":{"body":93,"breadcrumbs":5,"title":2},"212":{"body":88,"breadcrumbs":5,"title":2},"213":{"body":147,"breadcrumbs":5,"title":2},"214":{"body":77,"breadcrumbs":5,"title":2},"215":{"body":39,"breadcrumbs":5,"title":2},"216":{"body":36,"breadcrumbs":5,"title":2},"217":{"body":74,"breadcrumbs":5,"title":2},"218":{"body":172,"breadcrumbs":5,"title":2},"219":{"body":52,"breadcrumbs":5,"title":2},"22":{"body":2,"breadcrumbs":5,"title":1},"220":{"body":20,"breadcrumbs":5,"title":2},"221":{"body":12,"breadcrumbs":5,"title":2},"222":{"body":12,"breadcrumbs":5,"title":2},"223":{"body":0,"breadcrumbs":5,"title":2},"224":{"body":54,"breadcrumbs":5,"title":2},"225":{"body":60,"breadcrumbs":5,"title":2},"226":{"body":18,"breadcrumbs":5,"title":2},"227":{"body":42,"breadcrumbs":5,"title":2},"228":{"body":45,"breadcrumbs":5,"title":2},"229":{"body":48,"breadcrumbs":5,"title":2},"23":{"body":154,"breadcrumbs":5,"title":1},"230":{"body":16,"breadcrumbs":5,"title":2},"231":{"body":20,"breadcrumbs":5,"title":2},"232":{"body":159,"breadcrumbs":5,"title":2},"233":{"body":45,"breadcrumbs":5,"title":2},"234":{"body":6,"breadcrumbs":5,"title":2},"235":{"body":26,"breadcrumbs":5,"title":2},"236":{"body":59,"breadcrumbs":5,"title":2},"237":{"body":51,"breadcrumbs":5,"title":2},"238":{"body":35,"breadcrumbs":5,"title":2},"239":{"body":32,"breadcrumbs":5,"title":2},"24":{"body":17,"breadcrumbs":4,"title":0},"240":{"body":116,"breadcrumbs":5,"title":2},"241":{"body":115,"breadcrumbs":5,"title":2},"242":{"body":153,"breadcrumbs":5,"title":2},"243":{"body":27,"breadcrumbs":5,"title":2},"244":{"body":25,"breadcrumbs":5,"title":2},"245":{"body":23,"breadcrumbs":5,"title":2},"246":{"body":24,"breadcrumbs":4,"title":1},"247":{"body":20,"breadcrumbs":5,"title":2},"248":{"body":24,"breadcrumbs":5,"title":2},"249":{"body":48,"breadcrumbs":5,"title":2},"25":{"body":10,"breadcrumbs":8,"title":4},"250":{"body":36,"breadcrumbs":5,"title":2},"251":{"body":50,"breadcrumbs":5,"title":2},"252":{"body":10,"breadcrumbs":5,"title":2},"253":{"body":109,"breadcrumbs":7,"title":4},"254":{"body":58,"breadcrumbs":9,"title":6},"255":{"body":0,"breadcrumbs":5,"title":2},"256":{"body":26,"breadcrumbs":7,"title":4},"257":{"body":68,"breadcrumbs":7,"title":4},"258":{"body":17,"breadcrumbs":4,"title":2},"259":{"body":190,"breadcrumbs":4,"title":2},"26":{"body":171,"breadcrumbs":5,"title":1},"260":{"body":108,"breadcrumbs":5,"title":3},"261":{"body":36,"breadcrumbs":4,"title":2},"262":{"body":2,"breadcrumbs":3,"title":1},"263":{"body":40,"breadcrumbs":5,"title":3},"264":{"body":1008,"breadcrumbs":5,"title":3},"265":{"body":528,"breadcrumbs":6,"title":4},"266":{"body":0,"breadcrumbs":3,"title":1},"267":{"body":32,"breadcrumbs":8,"title":4},"268":{"body":9,"breadcrumbs":5,"title":1},"269":{"body":134,"breadcrumbs":8,"title":4},"27":{"body":22,"breadcrumbs":4,"title":0},"270":{"body":33,"breadcrumbs":7,"title":3},"271":{"body":201,"breadcrumbs":7,"title":3},"272":{"body":270,"breadcrumbs":7,"title":3},"273":{"body":26,"breadcrumbs":7,"title":3},"274":{"body":253,"breadcrumbs":7,"title":3},"275":{"body":278,"breadcrumbs":7,"title":3},"276":{"body":6,"breadcrumbs":7,"title":3},"277":{"body":188,"breadcrumbs":7,"title":3},"278":{"body":23,"breadcrumbs":7,"title":3},"279":{"body":140,"breadcrumbs":7,"title":3},"28":{"body":9,"breadcrumbs":6,"title":3},"280":{"body":200,"breadcrumbs":7,"title":3},"281":{"body":8,"breadcrumbs":8,"title":4},"282":{"body":190,"breadcrumbs":7,"title":3},"283":{"body":148,"breadcrumbs":7,"title":3},"284":{"body":176,"breadcrumbs":7,"title":3},"285":{"body":35,"breadcrumbs":8,"title":4},"286":{"body":0,"breadcrumbs":5,"title":1},"29":{"body":118,"breadcrumbs":4,"title":1},"3":{"body":1,"breadcrumbs":4,"title":2},"30":{"body":92,"breadcrumbs":5,"title":2},"31":{"body":25,"breadcrumbs":3,"title":0},"32":{"body":10,"breadcrumbs":10,"title":5},"33":{"body":0,"breadcrumbs":6,"title":1},"34":{"body":178,"breadcrumbs":8,"title":3},"35":{"body":21,"breadcrumbs":5,"title":0},"36":{"body":10,"breadcrumbs":6,"title":3},"37":{"body":284,"breadcrumbs":4,"title":1},"38":{"body":28,"breadcrumbs":3,"title":0},"39":{"body":16,"breadcrumbs":8,"title":4},"4":{"body":23,"breadcrumbs":5,"title":3},"40":{"body":4,"breadcrumbs":6,"title":2},"41":{"body":180,"breadcrumbs":5,"title":1},"42":{"body":26,"breadcrumbs":4,"title":0},"43":{"body":9,"breadcrumbs":10,"title":5},"44":{"body":8,"breadcrumbs":7,"title":2},"45":{"body":12,"breadcrumbs":10,"title":5},"46":{"body":157,"breadcrumbs":6,"title":1},"47":{"body":96,"breadcrumbs":7,"title":2},"48":{"body":17,"breadcrumbs":5,"title":0},"49":{"body":6,"breadcrumbs":8,"title":4},"5":{"body":28,"breadcrumbs":5,"title":3},"50":{"body":11,"breadcrumbs":5,"title":1},"51":{"body":4,"breadcrumbs":5,"title":1},"52":{"body":349,"breadcrumbs":5,"title":1},"53":{"body":207,"breadcrumbs":4,"title":0},"54":{"body":20,"breadcrumbs":4,"title":0},"55":{"body":8,"breadcrumbs":8,"title":4},"56":{"body":9,"breadcrumbs":5,"title":1},"57":{"body":3,"breadcrumbs":4,"title":0},"58":{"body":257,"breadcrumbs":4,"title":0},"59":{"body":26,"breadcrumbs":4,"title":0},"6":{"body":11,"breadcrumbs":4,"title":2},"60":{"body":9,"breadcrumbs":4,"title":0},"61":{"body":6,"breadcrumbs":10,"title":5},"62":{"body":4,"breadcrumbs":6,"title":1},"63":{"body":303,"breadcrumbs":6,"title":1},"64":{"body":7,"breadcrumbs":5,"title":0},"65":{"body":0,"breadcrumbs":8,"title":4},"66":{"body":8,"breadcrumbs":4,"title":0},"67":{"body":3,"breadcrumbs":5,"title":1},"68":{"body":9,"breadcrumbs":5,"title":1},"69":{"body":176,"breadcrumbs":5,"title":1},"7":{"body":9,"breadcrumbs":3,"title":1},"70":{"body":24,"breadcrumbs":4,"title":0},"71":{"body":39,"breadcrumbs":4,"title":0},"72":{"body":6,"breadcrumbs":4,"title":0},"73":{"body":0,"breadcrumbs":8,"title":4},"74":{"body":0,"breadcrumbs":4,"title":0},"75":{"body":8,"breadcrumbs":4,"title":0},"76":{"body":3,"breadcrumbs":5,"title":1},"77":{"body":9,"breadcrumbs":5,"title":1},"78":{"body":176,"breadcrumbs":5,"title":1},"79":{"body":94,"breadcrumbs":6,"title":2},"8":{"body":6,"breadcrumbs":3,"title":1},"80":{"body":12,"breadcrumbs":4,"title":0},"81":{"body":2,"breadcrumbs":4,"title":0},"82":{"body":103,"breadcrumbs":8,"title":4},"83":{"body":157,"breadcrumbs":4,"title":0},"84":{"body":24,"breadcrumbs":4,"title":0},"85":{"body":107,"breadcrumbs":4,"title":0},"86":{"body":2,"breadcrumbs":4,"title":0},"87":{"body":0,"breadcrumbs":8,"title":4},"88":{"body":2,"breadcrumbs":4,"title":0},"89":{"body":1,"breadcrumbs":5,"title":1},"9":{"body":6,"breadcrumbs":5,"title":3},"90":{"body":1,"breadcrumbs":4,"title":0},"91":{"body":1,"breadcrumbs":4,"title":0},"92":{"body":0,"breadcrumbs":6,"title":3},"93":{"body":0,"breadcrumbs":3,"title":0},"94":{"body":9,"breadcrumbs":3,"title":0},"95":{"body":1,"breadcrumbs":4,"title":1},"96":{"body":1,"breadcrumbs":3,"title":0},"97":{"body":1,"breadcrumbs":3,"title":0},"98":{"body":0,"breadcrumbs":8,"title":4},"99":{"body":3,"breadcrumbs":4,"title":0}},"docs":{"0":{"body":"","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具","id":"0","title":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具"},"1":{"body":"eBPF 是一项革命性的技术,起源于 Linux 内核,可以在操作系统的内核中运行沙盒程序。它被用来安全和有效地扩展内核的功能,而不需要改变内核的源代码或加载内核模块。eBPF 通过允许在操作系统内运行沙盒程序,应用程序开发人员可以在运行时,可编程地向操作系统动态添加额外的功能。然后,操作系统保证安全和执行效率,就像在即时编译(JIT)编译器和验证引擎的帮助下进行本地编译一样。eBPF 程序在内核版本之间是可移植的,并且可以自动更新,从而避免了工作负载中断和节点重启。 今天,eBPF被广泛用于各类场景:在现代数据中心和云原生环境中,可以提供高性能的网络包处理和负载均衡;以非常低的资源开销,做到对多种细粒度指标的可观测性,帮助应用程序开发人员跟踪应用程序,为性能故障排除提供洞察力;保障应用程序和容器运行时的安全执行,等等。可能性是无穷的,而 eBPF 在操作系统内核中所释放的创新才刚刚开始[3]。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 1. eBPF简介:安全和有效地扩展内核","id":"1","title":"1. eBPF简介:安全和有效地扩展内核"},"10":{"body":"libbpf-bootstrap是一个基于libbpf库的BPF开发脚手架,从其 github 上可以得到其源码。 libbpf-bootstrap综合了BPF社区过去多年的实践,为开发者提了一个现代化的、便捷的工作流,实 现了一次编译,重复使用的目的。 基于libbpf-bootstrap的BPF程序对于源文件有一定的命名规则, 用于生成内核态字节码的bpf文件以.bpf.c结尾,用户态加载字节码的文件以.c结尾,且这两个文件的 前缀必须相同。 基于libbpf-bootstrap的BPF程序在编译时会先将*.bpf.c文件编译为 对应的.o文件,然后根据此文件生成skeleton文件,即*.skel.h,这个文件会包含内核态中定义的一些 数据结构,以及用于装载内核态代码的关键函数。在用户态代码include此文件之后调用对应的装载函数即可将 字节码装载到内核中。同样的,libbpf-bootstrap也有非常完备的入门教程,用户可以在 该处 得到详细的入门操作介绍。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » libbpf","id":"10","title":"libbpf"},"100":{"body":"Biopattern 的ebpf代码在 tracepoint/block/block_rq_complete 挂载点下实现。在磁盘完成IO请求 后,程序会经过此挂载点。Biopattern 内部存有一张以设备号为主键的哈希表,当程序经过挂载点时, Biopattern 会获得操作信息,根据哈希表中该设备的上一次操作记录来判断本次操作是随机IO还是顺序IO,并更新操作计数。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 实现原理","id":"100","title":"实现原理"},"101":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 编写 eBPF 程序","id":"101","title":"编写 eBPF 程序"},"102":{"body":"Biopattern 可以展现随机/顺序磁盘I/O次数的比例,对于开发者把握整体I/O情况有较大帮助。 TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 总结","id":"102","title":"总结"},"103":{"body":"TODO","breadcrumbs":"更多的参考资料 » 更多的参考资料","id":"103","title":"更多的参考资料"},"104":{"body":"","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » eBPF 入门实践教程:使用 LSM 进行安全检测防御","id":"104","title":"eBPF 入门实践教程:使用 LSM 进行安全检测防御"},"105":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 背景","id":"105","title":"背景"},"106":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » LSM 概述","id":"106","title":"LSM 概述"},"107":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 编写 eBPF 程序","id":"107","title":"编写 eBPF 程序"},"108":{"body":"docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest or compile with ecc: $ ecc lsm-connect.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... Run: sudo ecli examples/bpftools/lsm-connect/package.json","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 编译运行","id":"108","title":"编译运行"},"109":{"body":"TODO 参考: https://github.com/leodido/demo-cloud-native-ebpf-day","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 总结","id":"109","title":"总结"},"11":{"body":"开发、构建和分发 eBPF 一直以来都是一个高门槛的工作,使用 BCC、bpftrace 等工具开发效率高、可移植性好,但是分发部署时需要安装 LLVM、Clang等编译环境,每次运行的时候执行本地或远程编译过程,资源消耗较大;使用原生的 CO-RE libbpf时又需要编写不少用户态加载代码来帮助 eBPF 程序正确加载和从内核中获取上报的信息,同时对于 eBPF 程序的分发、管理也没有很好地解决方案。 eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,是为了简化 eBPF 程序的开发、构建、分发、运行而设计的,基于 libbpf 的 CO-RE 轻量级开发框架。 使用 eunomia-bpf ,可以: 在编写 eBPF 程序或工具时只编写内核态代码,自动获取内核态导出信息,并作为模块动态加载; 使用 WASM 进行用户态交互程序的开发,在 WASM 虚拟机内部控制整个 eBPF 程序的加载和执行,以及处理相关数据; eunomia-bpf 可以将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块,跨架构和内核版本进行分发,无需重新编译即可动态加载运行。 eunomia-bpf 由一个编译工具链和一个运行时库组成, 对比传统的 BCC、原生 libbpf 等框架,大幅简化了 eBPF 程序的开发流程,在大多数时候只需编写内核态代码,即可轻松构建、打包、发布完整的 eBPF 应用,同时内核态 eBPF 代码保证和主流的 libbpf, libbpfgo, libbpf-rs 等开发框架的 100% 兼容性。需要编写用户态代码的时候,也可以借助 Webassembly 实现通过多种语言进行用户态开发。和 bpftrace 等脚本工具相比, eunomia-bpf 保留了类似的便捷性, 同时不仅局限于 trace 方面, 可以用于更多的场景, 如网络、安全等等。 eunomia-bpf 项目 Github 地址: https://github.com/eunomia-bpf/eunomia-bpf gitee 镜像: https://gitee.com/anolis/eunomia","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eunomia-bpf","id":"11","title":"eunomia-bpf"},"110":{"body":"","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制","id":"110","title":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制"},"111":{"body":"#include \n#include \n#include \n#include #define TC_ACT_OK 0\n#define ETH_P_IP 0x0800 /* Internet Protocol packet */ /// @tchook {\"ifindex\":1, \"attach_point\":\"BPF_TC_INGRESS\"}\n/// @tcopts {\"handle\":1, \"priority\":1}\nSEC(\"tc\")\nint tc_ingress(struct __sk_buff *ctx)\n{ void *data_end = (void *)(__u64)ctx->data_end; void *data = (void *)(__u64)ctx->data; struct ethhdr *l2; struct iphdr *l3; if (ctx->protocol != bpf_htons(ETH_P_IP)) return TC_ACT_OK; l2 = data; if ((void *)(l2 + 1) > data_end) return TC_ACT_OK; l3 = (struct iphdr *)(l2 + 1); if ((void *)(l3 + 1) > data_end) return TC_ACT_OK; bpf_printk(\"Got IP packet: tot_len: %d, ttl: %d\", bpf_ntohs(l3->tot_len), l3->ttl); return TC_ACT_OK;\n} char __license[] SEC(\"license\") = \"GPL\"; 这段代码定义了一个 eBPF 程序,它可以通过 Linux TC(Transmission Control)来捕获数据包并进行处理。在这个程序中,我们限定了只捕获 IPv4 协议的数据包,然后通过 bpf_printk 函数打印出数据包的总长度和 Time-To-Live(TTL)字段的值。 需要注意的是,我们在代码中使用了一些 BPF 库函数,例如 bpf_htons 和 bpf_ntohs 函数,它们用于进行网络字节序和主机字节序之间的转换。此外,我们还使用了一些注释来为 TC 提供附加点和选项信息。例如,在这段代码的开头,我们使用了以下注释: /// @tchook {\"ifindex\":1, \"attach_point\":\"BPF_TC_INGRESS\"}\n/// @tcopts {\"handle\":1, \"priority\":1} 这些注释告诉 TC 将 eBPF 程序附加到网络接口的 ingress 附加点,并指定了 handle 和 priority 选项的值。 总之,这段代码实现了一个简单的 eBPF 程序,用于捕获数据包并打印出它们的信息。","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » tc 程序示例","id":"111","title":"tc 程序示例"},"112":{"body":"docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest or compile with ecc: $ ecc tc.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... $ sudo ecli ./package.json\n...\nSuccessfully started! Please run `sudo cat /sys/kernel/debug/tracing/trace_pipe` to see output of the BPF program.\n...... The tc output in /sys/kernel/debug/tracing/trace_pipe should look something like this: $ sudo cat /sys/kernel/debug/tracing/trace_pipe node-1254811 [007] ..s1 8737831.671074: 0: Got IP packet: tot_len: 79, ttl: 64 sshd-1254728 [006] ..s1 8737831.674334: 0: Got IP packet: tot_len: 79, ttl: 64 sshd-1254728 [006] ..s1 8737831.674349: 0: Got IP packet: tot_len: 72, ttl: 64 node-1254811 [007] ..s1 8737831.674550: 0: Got IP packet: tot_len: 71, ttl: 64","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » 编译运行","id":"112","title":"编译运行"},"113":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » 总结","id":"113","title":"总结"},"114":{"body":"","breadcrumbs":"BPF Features by Linux Kernel Version » BPF Features by Linux Kernel Version","id":"114","title":"BPF Features by Linux Kernel Version"},"115":{"body":"Kernel version Commit 3.15 bd4cf0ed331a","breadcrumbs":"BPF Features by Linux Kernel Version » eBPF support","id":"115","title":"eBPF support"},"116":{"body":"The list of supported architectures for your kernel can be retrieved with: git grep HAVE_EBPF_JIT arch/ Feature / Architecture Kernel version Commit x86_64 3.16 622582786c9e ARM64 3.18 e54bcde3d69d s390 4.1 054623105728 Constant blinding for JIT machines 4.7 4f3446bb809f PowerPC64 4.8 156d0e290e96 Constant blinding - PowerPC64 4.9 b7b7013cac55 Sparc64 4.12 7a12b5031c6b MIPS 4.13 f381bf6d82f0 ARM32 4.14 39c13c204bb1 x86_32 4.18 03f5781be2c7 RISC-V RV64G 5.1 2353ecc6f91f RISC-V RV32G 5.7 5f316b65e99f PowerPC32 5.13 51c66ad849a7 LoongArch 6.1 5dc615520c4d","breadcrumbs":"BPF Features by Linux Kernel Version » JIT compiling","id":"116","title":"JIT compiling"},"117":{"body":"Several (but not all) of these main features translate to an eBPF program type. The list of such program types supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep -W 'bpf_prog_type {' include/uapi/linux/bpf.h Feature Kernel version Commit AF_PACKET (libpcap/tcpdump, cls_bpf classifier, netfilter's xt_bpf, team driver's load-balancing mode…) 3.15 bd4cf0ed331a Kernel helpers 3.15 bd4cf0ed331a bpf() syscall 3.18 99c55f7d47c0 Maps ( a.k.a. Tables; details below) 3.18 99c55f7d47c0 BPF attached to sockets 3.19 89aa075832b0 BPF attached to kprobes 4.1 2541517c32be cls_bpf / act_bpf for tc 4.1 e2e9b6541dd4 Tail calls 4.2 04fd61ab36ec Non-root programs on sockets 4.4 1be7f75d1668 Persistent maps and programs (virtual FS) 4.4 b2197755b263 tc's direct-action (da) mode 4.4 045efa82ff56 tc's clsact qdisc 4.5 1f211a1b929c BPF attached to tracepoints 4.7 98b5c2c65c29 Direct packet access 4.7 969bf05eb3ce XDP (see below) 4.8 6a773a15a1e8 BPF attached to perf events 4.9 0515e5999a46 Hardware offload for tc's cls_bpf 4.9 332ae8e2f6ec Verifier exposure and internal hooks 4.9 13a27dfc6697 BPF attached to cgroups for socket filtering 4.10 0e33661de493 Lightweight tunnel encapsulation 4.10 3a0af8fd61f9 e BPF support for xt_bpf module (iptables) 4.10 2c16d6033264 BPF program tag 4.10 7bd509e311f4 Tracepoints to debug BPF 4.11 (removed in 4.18) a67edbf4fb6d 4d220ed0f814 Testing / benchmarking BPF programs 4.12 1cf1cae963c2 BPF programs and maps IDs 4.13 dc4bb0e23561 BPF support for sock_ops 4.13 40304b2a1567 BPF support for skbs on sockets 4.14 b005fd189cec bpftool utility in kernel sources 4.15 71bb428fe2c1 BPF attached to cgroups as device controller 4.15 ebc614f68736 bpf2bpf function calls 4.16 cc8b0b92a169 BPF used for monitoring socket RX/TX data 4.17 4f738adba30a BPF attached to raw tracepoints 4.17 c4f6699dfcb8 BPF attached to bind() system call 4.17 4fbac77d2d09 aac3fc320d94 BPF attached to connect() system call 4.17 d74bad4e74ee BPF Type Format (BTF) 4.18 69b693f0aefa AF_XDP 4.18 fbfc504a24f5 bpfilter 4.18 d2ba09c17a06 End.BPF action for seg6local LWT 4.18 004d4b274e2a BPF attached to LIRC devices 4.18 f4364dcfc86d Pass map values to map helpers 4.18 d71962f3e627 BPF socket reuseport 4.19 2dbb9b9e6df6 BPF flow dissector 4.20 d58e468b1112 BPF 1M insn limit 5.2 c04c0d2b968a BPF cgroup sysctl 5.2 7b146cebe30c BPF raw tracepoint writable 5.2 9df1c28bb752 BPF bounded loop 5.3 2589726d12a1 BPF trampoline 5.5 fec56f5890d9 BPF LSM hook 5.7 fc611f47f218 641cd7b06c91 BPF iterator 5.8 180139dca8b3 BPF socket lookup hook 5.9 e9ddbb7707ff Sleepable BPF programs 5.10 1e6c62a88215","breadcrumbs":"BPF Features by Linux Kernel Version » Main features","id":"117","title":"Main features"},"118":{"body":"Program type Kernel version Commit Enum Socket filter 3.19 ddd872bc3098 BPF_PROG_TYPE_SOCKET_FILTER Kprobe 4.1 2541517c32be BPF_PROG_TYPE_KPROBE traffic control (TC) 4.1 96be4325f443 BPF_PROG_TYPE_SCHED_CLS traffic control (TC) 4.1 94caee8c312d BPF_PROG_TYPE_SCHED_ACT Tracepoint 4.7 98b5c2c65c29 BPF_PROG_TYPE_TRACEPOINT XDP 4.8 6a773a15a1e8 BPF_PROG_TYPE_XDP Perf event 4.9 0515e5999a46 BPF_PROG_TYPE_PERF_EVENT cgroup socket filtering 4.10 0e33661de493 BPF_PROG_TYPE_CGROUP_SKB cgroup sock modification 4.10 610236587600 BPF_PROG_TYPE_CGROUP_SOCK lightweight tunnel (IN) 4.10 3a0af8fd61f9 BPF_PROG_TYPE_LWT_IN lightweight tunnel (OUT) 4.10 3a0af8fd61f9 BPF_PROG_TYPE_LWT_OUT lightweight tunnel (XMIT) 4.10 3a0af8fd61f9 BPF_PROG_TYPE_LWT_XMIT cgroup sock ops (per conn) 4.13 40304b2a1567 BPF_PROG_TYPE_SOCK_OPS stream parser / stream verdict 4.14 b005fd189cec BPF_PROG_TYPE_SK_SKB cgroup device manager 4.15 ebc614f68736 BPF_PROG_TYPE_CGROUP_DEVICE socket msg verdict 4.17 4f738adba30a BPF_PROG_TYPE_SK_MSG Raw tracepoint 4.17 c4f6699dfcb8 BPF_PROG_TYPE_RAW_TRACEPOINT socket binding 4.17 4fbac77d2d09 BPF_PROG_TYPE_CGROUP_SOCK_ADDR LWT seg6local 4.18 004d4b274e2a BPF_PROG_TYPE_LWT_SEG6LOCAL lirc devices 4.18 f4364dcfc86d BPF_PROG_TYPE_LIRC_MODE2 lookup SO_REUSEPORT socket 4.19 2dbb9b9e6df6 BPF_PROG_TYPE_SK_REUSEPORT flow dissector 4.20 d58e468b1112 BPF_PROG_TYPE_FLOW_DISSECTOR cgroup sysctl 5.2 7b146cebe30c BPF_PROG_TYPE_CGROUP_SYSCTL writable raw tracepoints 5.2 9df1c28bb752 BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE cgroup getsockopt/setsockopt 5.3 0d01da6afc54 BPF_PROG_TYPE_CGROUP_SOCKOPT Tracing (BTF/BPF trampoline) 5.5 f1b9509c2fb0 BPF_PROG_TYPE_TRACING struct ops 5.6 27ae7997a661 BPF_PROG_TYPE_STRUCT_OPS extensions 5.6 be8704ff07d2 BPF_PROG_TYPE_EXT LSM 5.7 fc611f47f218 BPF_PROG_TYPE_LSM lookup listening socket 5.9 e9ddbb7707ff BPF_PROG_TYPE_SK_LOOKUP Allow executing syscalls 5.15 79a7f8bdb159 BPF_PROG_TYPE_SYSCALL","breadcrumbs":"BPF Features by Linux Kernel Version » Program types","id":"118","title":"Program types"},"119":{"body":"","breadcrumbs":"BPF Features by Linux Kernel Version » Maps ( a.k.a. Tables, in BCC lingo)","id":"119","title":"Maps ( a.k.a. Tables, in BCC lingo)"},"12":{"body":"eBPF 介绍: https://ebpf.io/ BPF Compiler Collection (BCC): https://github.com/iovisor/bcc eunomia-bpf: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 参考资料","id":"12","title":"参考资料"},"120":{"body":"The list of map types supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep -W 'bpf_map_type {' include/uapi/linux/bpf.h Map type Kernel version Commit Enum Hash 3.19 0f8e4bd8a1fc BPF_MAP_TYPE_HASH Array 3.19 28fbcfa08d8e BPF_MAP_TYPE_ARRAY Prog array 4.2 04fd61ab36ec BPF_MAP_TYPE_PROG_ARRAY Perf events 4.3 ea317b267e9d BPF_MAP_TYPE_PERF_EVENT_ARRAY Per-CPU hash 4.6 824bd0ce6c7c BPF_MAP_TYPE_PERCPU_HASH Per-CPU array 4.6 a10423b87a7e BPF_MAP_TYPE_PERCPU_ARRAY Stack trace 4.6 d5a3b1f69186 BPF_MAP_TYPE_STACK_TRACE cgroup array 4.8 4ed8ec521ed5 BPF_MAP_TYPE_CGROUP_ARRAY LRU hash 4.10 29ba732acbee 3a08c2fd7634 BPF_MAP_TYPE_LRU_HASH LRU per-CPU hash 4.10 8f8449384ec3 961578b63474 BPF_MAP_TYPE_LRU_PERCPU_HASH LPM trie (longest-prefix match) 4.11 b95a5c4db09b BPF_MAP_TYPE_LPM_TRIE Array of maps 4.12 56f668dfe00d BPF_MAP_TYPE_ARRAY_OF_MAPS Hash of maps 4.12 bcc6b1b7ebf8 BPF_MAP_TYPE_HASH_OF_MAPS Netdevice references (array) 4.14 546ac1ffb70d BPF_MAP_TYPE_DEVMAP Socket references (array) 4.14 174a79ff9515 BPF_MAP_TYPE_SOCKMAP CPU references 4.15 6710e1126934 BPF_MAP_TYPE_CPUMAP AF_XDP socket (XSK) references 4.18 fbfc504a24f5 BPF_MAP_TYPE_XSKMAP Socket references (hashmap) 4.18 81110384441a BPF_MAP_TYPE_SOCKHASH cgroup storage 4.19 de9cbbaadba5 BPF_MAP_TYPE_CGROUP_STORAGE reuseport sockarray 4.19 5dc4c4b7d4e8 BPF_MAP_TYPE_REUSEPORT_SOCKARRAY precpu cgroup storage 4.20 b741f1630346 BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE queue 4.20 f1a2e44a3aec BPF_MAP_TYPE_QUEUE stack 4.20 f1a2e44a3aec BPF_MAP_TYPE_STACK socket local storage 5.2 6ac99e8f23d4 BPF_MAP_TYPE_SK_STORAGE Netdevice references (hashmap) 5.4 6f9d451ab1a3 BPF_MAP_TYPE_DEVMAP_HASH struct ops 5.6 85d33df357b6 BPF_MAP_TYPE_STRUCT_OPS ring buffer 5.8 457f44363a88 BPF_MAP_TYPE_RINGBUF inode storage 5.10 8ea636848aca BPF_MAP_TYPE_INODE_STORAGE task storage 5.11 4cf1bc1f1045 BPF_MAP_TYPE_TASK_STORAGE Bloom filter 5.16 9330986c0300 BPF_MAP_TYPE_BLOOM_FILTER user ringbuf 6.1 583c1f420173 BPF_MAP_TYPE_USER_RINGBUF","breadcrumbs":"BPF Features by Linux Kernel Version » Map types","id":"120","title":"Map types"},"121":{"body":"Some (but not all) of these API features translate to a subcommand beginning with BPF_MAP_. The list of subcommands supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep -W 'bpf_cmd {' include/uapi/linux/bpf.h Feature Kernel version Commit Basic operations (lookup, update, delete, GET_NEXT_KEY) 3.18 db20fd2b0108 Pass flags to UPDATE_ELEM 3.19 3274f52073d8 Pre-alloc map memory by default 4.6 6c9059817432 Pass NULL to GET_NEXT_KEY 4.12 8fe45924387b Creation: select NUMA node 4.14 96eabe7a40aa Restrict access from syscall side 4.15 6e71b04a8224 Creation: specify map name 4.15 ad5b177bd73f LOOKUP_AND_DELETE_ELEM 4.20 bd513cd08f10 Creation: BPF_F_ZERO_SEED 5.0 96b3b6c9091d BPF_F_LOCK flag for lookup / update 5.1 96049f3afd50 Restrict access from BPF side 5.2 591fe9888d78 FREEZE 5.2 87df15de441b mmap() support for array maps 5.5 fc9702273e2e LOOKUP_BATCH 5.6 cb4d03ab499d UPDATE_BATCH, DELETE_BATCH 5.6 aa2e93b8e58e LOOKUP_AND_DELETE_BATCH 5.6 057996380a42 LOOKUP_AND_DELETE_ELEM support for hash maps 5.14 3e87f192b405","breadcrumbs":"BPF Features by Linux Kernel Version » Map userspace API","id":"121","title":"Map userspace API"},"122":{"body":"An approximate list of drivers or components supporting XDP programs for your kernel can be retrieved with: git grep -l XDP_SETUP_PROG drivers/ Feature / Driver Kernel version Commit XDP core architecture 4.8 6a773a15a1e8 Action: drop 4.8 6a773a15a1e8 Action: pass on to stack 4.8 6a773a15a1e8 Action: direct forwarding (on same port) 4.8 6ce96ca348a9 Direct packet data write 4.8 4acf6c0b84c9 Mellanox mlx4 driver 4.8 47a38e155037 Mellanox mlx5 driver 4.9 86994156c736 Netronome nfp driver 4.10 ecd63a0217d5 QLogic (Cavium) qed* drivers 4.10 496e05170958 virtio_net driver 4.10 f600b6905015 Broadcom bnxt_en driver 4.11 c6d30e8391b8 Intel ixgbe* drivers 4.12 924708081629 Cavium thunderx driver 4.12 05c773f52b96 Generic XDP 4.12 b5cdae3291f7 Intel i40e driver 4.13 0c8493d90b6b Action: redirect 4.14 6453073987ba Support for tap 4.14 761876c857cb Support for veth 4.14 d445516966dc Intel ixgbevf driver 4.17 c7aec59657b6 Freescale dpaa2 driver 5.0 7e273a8ebdd3 Socionext netsec driver 5.3 ba2b232108d3 TI cpsw driver 5.3 9ed4050c0d75 Intel ice driver 5.5 efc2214b6047 Solarflare sfc driver 5.5 eb9a36be7f3e Marvell mvneta driver 5.5 0db51da7a8e9 Microsoft hv_netvsc driver 5.6 351e1581395f Amazon ena driver 5.6 838c93dc5449 xen-netfront driver 5.9 6c5aa6fc4def Intel igb driver 5.10 9cbc948b5a20","breadcrumbs":"BPF Features by Linux Kernel Version » XDP","id":"122","title":"XDP"},"123":{"body":"The list of helpers supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep '\tFN(' include/uapi/linux/bpf.h Alphabetical order Helper Kernel version License Commit BPF_FUNC_bind() 4.17 d74bad4e74ee BPF_FUNC_bprm_opts_set() 5.11 3f6719c7b62f BPF_FUNC_btf_find_by_name_kind() 5.14 3d78417b60fb BPF_FUNC_cgrp_storage_delete() 6.2 c4bcfb38a95e BPF_FUNC_cgrp_storage_get() 6.2 c4bcfb38a95e BPF_FUNC_check_mtu() 5.12 34b2021cc616 BPF_FUNC_clone_redirect() 4.2 3896d655f4d4 BPF_FUNC_copy_from_user() 5.10 07be4c4a3e7a BPF_FUNC_copy_from_user_task() 5.18 GPL 376040e47334 BPF_FUNC_csum_diff() 4.6 7d672345ed29 BPF_FUNC_csum_level() 5.7 7cdec54f9713 BPF_FUNC_csum_update() 4.9 36bbef52c7eb BPF_FUNC_current_task_under_cgroup() 4.9 60d20f9195b2 BPF_FUNC_d_path() 5.10 6e22ab9da793 BPF_FUNC_dynptr_data() 5.19 34d4ef5775f7 BPF_FUNC_dynptr_from_mem() 5.19 263ae152e962 BPF_FUNC_dynptr_read() 5.19 13bbbfbea759 BPF_FUNC_dynptr_write() 5.19 13bbbfbea759 BPF_FUNC_fib_lookup() 4.18 GPL 87f5fc7e48dd BPF_FUNC_find_vma() 5.17 7c7e3d31e785 BPF_FUNC_for_each_map_elem() 5.13 69c087ba6225 BPF_FUNC_get_attach_cookie() 5.15 7adfc6c9b315 BPF_FUNC_get_branch_snapshot() 5.16 GPL 856c02dbce4f BPF_FUNC_get_current_ancestor_cgroup_id() 5.6 b4490c5c4e02 BPF_FUNC_get_cgroup_classid() 4.3 8d20aabe1c76 BPF_FUNC_get_current_cgroup_id() 4.18 bf6fa2c893c5 BPF_FUNC_get_current_comm() 4.2 ffeedafbf023 BPF_FUNC_get_current_pid_tgid() 4.2 ffeedafbf023 BPF_FUNC_get_current_task() 4.8 GPL 606274c5abd8 BPF_FUNC_get_current_task_btf() 5.11 GPL 3ca1032ab7ab BPF_FUNC_get_current_uid_gid() 4.2 ffeedafbf023 BPF_FUNC_get_func_arg() 5.17 f92c1e183604 BPF_FUNC_get_func_arg_cnt() 5.17 f92c1e183604 BPF_FUNC_get_func_ip() 5.15 5d8b583d04ae BPF_FUNC_get_func_ret() 5.17 f92c1e183604 BPF_FUNC_get_retval() 5.18 b44123b4a3dc BPF_FUNC_get_hash_recalc() 4.8 13c5c240f789 BPF_FUNC_get_listener_sock() 5.1 dbafd7ddd623 BPF_FUNC_get_local_storage() 4.19 cd3394317653 BPF_FUNC_get_netns_cookie() 5.7 f318903c0bf4 BPF_FUNC_get_ns_current_pid_tgid() 5.7 b4490c5c4e02 BPF_FUNC_get_numa_node_id() 4.10 2d0e30c30f84 BPF_FUNC_get_prandom_u32() 4.1 03e69b508b6f BPF_FUNC_get_route_realm() 4.4 c46646d0484f BPF_FUNC_get_smp_processor_id() 4.1 c04167ce2ca0 BPF_FUNC_get_socket_cookie() 4.12 91b8270f2a4d BPF_FUNC_get_socket_uid() 4.12 6acc5c291068 BPF_FUNC_get_stack() 4.18 GPL de2ff05f48af BPF_FUNC_get_stackid() 4.6 GPL d5a3b1f69186 BPF_FUNC_get_task_stack() 5.9 fa28dcb82a38 BPF_FUNC_getsockopt() 4.15 cd86d1fd2102 BPF_FUNC_ima_file_hash() 5.18 174b16946e39 BPF_FUNC_ima_inode_hash() 5.11 27672f0d280a BPF_FUNC_inode_storage_delete() 5.10 8ea636848aca BPF_FUNC_inode_storage_get() 5.10 8ea636848aca BPF_FUNC_jiffies64() 5.5 5576b991e9c1 BPF_FUNC_kallsyms_lookup_name() 5.16 d6aef08a872b BPF_FUNC_kptr_xchg() 5.19 c0a5a21c25f3 BPF_FUNC_ktime_get_boot_ns() 5.8 71d19214776e BPF_FUNC_ktime_get_coarse_ns() 5.11 d05512618056 BPF_FUNC_ktime_get_ns() 4.1 d9847d310ab4 BPF_FUNC_ktime_get_tai_ns() 6.1 c8996c98f703 BPF_FUNC_l3_csum_replace() 4.1 91bc4822c3d6 BPF_FUNC_l4_csum_replace() 4.1 91bc4822c3d6 BPF_FUNC_load_hdr_opt() 5.10 0813a841566f BPF_FUNC_loop() 5.17 e6f2dd0f8067 BPF_FUNC_lwt_push_encap() 4.18 fe94cc290f53 BPF_FUNC_lwt_seg6_action() 4.18 fe94cc290f53 BPF_FUNC_lwt_seg6_adjust_srh() 4.18 fe94cc290f53 BPF_FUNC_lwt_seg6_store_bytes() 4.18 fe94cc290f53 BPF_FUNC_map_delete_elem() 3.19 d0003ec01c66 BPF_FUNC_map_lookup_elem() 3.19 d0003ec01c66 BPF_FUNC_map_lookup_percpu_elem() 5.19 07343110b293 BPF_FUNC_map_peek_elem() 4.20 f1a2e44a3aec BPF_FUNC_map_pop_elem() 4.20 f1a2e44a3aec BPF_FUNC_map_push_elem() 4.20 f1a2e44a3aec BPF_FUNC_map_update_elem() 3.19 d0003ec01c66 BPF_FUNC_msg_apply_bytes() 4.17 2a100317c9eb BPF_FUNC_msg_cork_bytes() 4.17 91843d540a13 BPF_FUNC_msg_pop_data() 5.0 7246d8ed4dcc BPF_FUNC_msg_pull_data() 4.17 015632bb30da BPF_FUNC_msg_push_data() 4.20 6fff607e2f14 BPF_FUNC_msg_redirect_hash() 4.18 81110384441a BPF_FUNC_msg_redirect_map() 4.17 4f738adba30a BPF_FUNC_per_cpu_ptr() 5.10 eaa6bcb71ef6 BPF_FUNC_perf_event_output() 4.4 GPL a43eec304259 BPF_FUNC_perf_event_read() 4.3 GPL 35578d798400 BPF_FUNC_perf_event_read_value() 4.15 GPL 908432ca84fc BPF_FUNC_perf_prog_read_value() 4.15 GPL 4bebdc7a85aa BPF_FUNC_probe_read() 4.1 GPL 2541517c32be BPF_FUNC_probe_read_kernel() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_kernel_str() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_user() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_user_str() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_str() 4.11 GPL a5e8c07059d0 BPF_FUNC_probe_write_user() 4.8 GPL 96ae52279594 BPF_FUNC_rc_keydown() 4.18 GPL f4364dcfc86d BPF_FUNC_rc_pointer_rel() 5.0 GPL 01d3240a04f4 BPF_FUNC_rc_repeat() 4.18 GPL f4364dcfc86d BPF_FUNC_read_branch_records() 5.6 GPL fff7b64355ea BPF_FUNC_redirect() 4.4 27b29f63058d BPF_FUNC_redirect_map() 4.14 97f91a7cf04f BPF_FUNC_redirect_neigh() 5.10 b4ab31414970 BPF_FUNC_redirect_peer() 5.10 9aa1206e8f48 BPF_FUNC_reserve_hdr_opt() 5.10 0813a841566f BPF_FUNC_ringbuf_discard() 5.8 457f44363a88 BPF_FUNC_ringbuf_discard_dynptr() 5.19 bc34dee65a65 BPF_FUNC_ringbuf_output() 5.8 457f44363a88 BPF_FUNC_ringbuf_query() 5.8 457f44363a88 BPF_FUNC_ringbuf_reserve() 5.8 457f44363a88 BPF_FUNC_ringbuf_reserve_dynptr() 5.19 bc34dee65a65 BPF_FUNC_ringbuf_submit() 5.8 457f44363a88 BPF_FUNC_ringbuf_submit_dynptr() 5.19 bc34dee65a65 BPF_FUNC_send_signal() 5.3 8b401f9ed244 BPF_FUNC_send_signal_thread() 5.5 8482941f0906 BPF_FUNC_seq_printf() 5.7 GPL 492e639f0c22 BPF_FUNC_seq_printf_btf() 5.10 eb411377aed9 BPF_FUNC_seq_write() 5.7 GPL 492e639f0c22 BPF_FUNC_set_hash() 4.13 ded092cd73c2 BPF_FUNC_set_hash_invalid() 4.9 7a4b28c6cc9f BPF_FUNC_set_retval() 5.18 b44123b4a3dc BPF_FUNC_setsockopt() 4.13 8c4b4c7e9ff0 BPF_FUNC_sk_ancestor_cgroup_id() 5.7 f307fa2cb4c9 BPF_FUNC_sk_assign() 5.6 cf7fbe660f2d BPF_FUNC_sk_cgroup_id() 5.7 f307fa2cb4c9 BPF_FUNC_sk_fullsock() 5.1 46f8bc92758c BPF_FUNC_sk_lookup_tcp() 4.20 6acc9b432e67 BPF_FUNC_sk_lookup_udp() 4.20 6acc9b432e67 BPF_FUNC_sk_redirect_hash() 4.18 81110384441a BPF_FUNC_sk_redirect_map() 4.14 174a79ff9515 BPF_FUNC_sk_release() 4.20 6acc9b432e67 BPF_FUNC_sk_select_reuseport() 4.19 2dbb9b9e6df6 BPF_FUNC_sk_storage_delete() 5.2 6ac99e8f23d4 BPF_FUNC_sk_storage_get() 5.2 6ac99e8f23d4 BPF_FUNC_skb_adjust_room() 4.13 2be7e212d541 BPF_FUNC_skb_ancestor_cgroup_id() 4.19 7723628101aa BPF_FUNC_skb_change_head() 4.10 3a0af8fd61f9 BPF_FUNC_skb_change_proto() 4.8 6578171a7ff0 BPF_FUNC_skb_change_tail() 4.9 5293efe62df8 BPF_FUNC_skb_change_type() 4.8 d2485c4242a8 BPF_FUNC_skb_cgroup_classid() 5.10 b426ce83baa7 BPF_FUNC_skb_cgroup_id() 4.18 cb20b08ead40 BPF_FUNC_skb_ecn_set_ce() 5.1 f7c917ba11a6 BPF_FUNC_skb_get_tunnel_key() 4.3 d3aa45ce6b94 BPF_FUNC_skb_get_tunnel_opt() 4.6 14ca0751c96f BPF_FUNC_skb_get_xfrm_state() 4.18 12bed760a78d BPF_FUNC_skb_load_bytes() 4.5 05c74e5e53f6 BPF_FUNC_skb_load_bytes_relative() 4.18 4e1ec56cdc59 BPF_FUNC_skb_output() 5.5 a7658e1a4164 BPF_FUNC_skb_pull_data() 4.9 36bbef52c7eb BPF_FUNC_skb_set_tstamp() 5.18 9bb984f28d5b BPF_FUNC_skb_set_tunnel_key() 4.3 d3aa45ce6b94 BPF_FUNC_skb_set_tunnel_opt() 4.6 14ca0751c96f BPF_FUNC_skb_store_bytes() 4.1 91bc4822c3d6 BPF_FUNC_skb_under_cgroup() 4.8 4a482f34afcc BPF_FUNC_skb_vlan_pop() 4.3 4e10df9a60d9 BPF_FUNC_skb_vlan_push() 4.3 4e10df9a60d9 BPF_FUNC_skc_lookup_tcp() 5.2 edbf8c01de5a BPF_FUNC_skc_to_mctcp_sock() 5.19 3bc253c2e652 BPF_FUNC_skc_to_tcp_sock() 5.9 478cfbdf5f13 BPF_FUNC_skc_to_tcp_request_sock() 5.9 478cfbdf5f13 BPF_FUNC_skc_to_tcp_timewait_sock() 5.9 478cfbdf5f13 BPF_FUNC_skc_to_tcp6_sock() 5.9 af7ec1383361 BPF_FUNC_skc_to_udp6_sock() 5.9 0d4fad3e57df BPF_FUNC_skc_to_unix_sock() 5.16 9eeb3aa33ae0 BPF_FUNC_snprintf() 5.13 7b15523a989b BPF_FUNC_snprintf_btf() 5.10 c4d0bfb45068 BPF_FUNC_sock_from_file() 5.11 4f19cab76136 BPF_FUNC_sock_hash_update() 4.18 81110384441a BPF_FUNC_sock_map_update() 4.14 174a79ff9515 BPF_FUNC_spin_lock() 5.1 d83525ca62cf BPF_FUNC_spin_unlock() 5.1 d83525ca62cf BPF_FUNC_store_hdr_opt() 5.10 0813a841566f BPF_FUNC_strncmp() 5.17 c5fb19937455 BPF_FUNC_strtol() 5.2 d7a4cb9b6705 BPF_FUNC_strtoul() 5.2 d7a4cb9b6705 BPF_FUNC_sys_bpf() 5.14 79a7f8bdb159 BPF_FUNC_sys_close() 5.14 3abea089246f BPF_FUNC_sysctl_get_current_value() 5.2 1d11b3016cec BPF_FUNC_sysctl_get_name() 5.2 808649fb787d BPF_FUNC_sysctl_get_new_value() 5.2 4e63acdff864 BPF_FUNC_sysctl_set_new_value() 5.2 4e63acdff864 BPF_FUNC_tail_call() 4.2 04fd61ab36ec BPF_FUNC_task_pt_regs() 5.15 GPL dd6e10fbd9f BPF_FUNC_task_storage_delete() 5.11 4cf1bc1f1045 BPF_FUNC_task_storage_get() 5.11 4cf1bc1f1045 BPF_FUNC_tcp_check_syncookie() 5.2 399040847084 BPF_FUNC_tcp_gen_syncookie() 5.3 70d66244317e BPF_FUNC_tcp_raw_check_syncookie_ipv4() 6.0 33bf9885040c BPF_FUNC_tcp_raw_check_syncookie_ipv6() 6.0 33bf9885040c BPF_FUNC_tcp_raw_gen_syncookie_ipv4() 6.0 33bf9885040c BPF_FUNC_tcp_raw_gen_syncookie_ipv6() 6.0 33bf9885040c BPF_FUNC_tcp_send_ack() 5.5 206057fe020a BPF_FUNC_tcp_sock() 5.1 655a51e536c0 BPF_FUNC_this_cpu_ptr() 5.10 63d9b80dcf2c BPF_FUNC_timer_init() 5.15 b00628b1c7d5 BPF_FUNC_timer_set_callback() 5.15 b00628b1c7d5 BPF_FUNC_timer_start() 5.15 b00628b1c7d5 BPF_FUNC_timer_cancel() 5.15 b00628b1c7d5 BPF_FUNC_trace_printk() 4.1 GPL 9c959c863f82 BPF_FUNC_trace_vprintk() 5.16 GPL 10aceb629e19 BPF_FUNC_user_ringbuf_drain() 6.1 205715673844 BPF_FUNC_xdp_adjust_head() 4.10 17bedab27231 BPF_FUNC_xdp_adjust_meta() 4.15 de8f3a83b0a0 BPF_FUNC_xdp_adjust_tail() 4.18 b32cc5b9a346 BPF_FUNC_xdp_get_buff_len() 5.18 0165cc817075 BPF_FUNC_xdp_load_bytes() 5.18 3f364222d032 BPF_FUNC_xdp_store_bytes() 5.18 3f364222d032 BPF_FUNC_xdp_output() 5.6 GPL d831ee84bfc9 BPF_FUNC_override_return() 4.16 GPL 9802d86585db BPF_FUNC_sock_ops_cb_flags_set() 4.16 b13d88072172 Note: GPL-only BPF helpers require a GPL-compatible license. The current licenses considered GPL-compatible by the kernel are: GPL GPL v2 GPL and additional rights Dual BSD/GPL Dual MIT/GPL Dual MPL/GPL Check the list of GPL-compatible licenses in your kernel source code .","breadcrumbs":"BPF Features by Linux Kernel Version » Helpers","id":"123","title":"Helpers"},"124":{"body":"The list of program types and supported helper functions can be retrieved with: git grep -W 'func_proto(enum bpf_func_id func_id' kernel/ net/ drivers/ Program Type Helper Functions BPF_PROG_TYPE_SOCKET_FILTER BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_load_bytes_relative() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() BPF_FUNC_perf_event_output() Base functions BPF_PROG_TYPE_KPROBE BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_perf_event_read_value() BPF_FUNC_override_return() Tracing functions BPF_PROG_TYPE_SCHED_CLS BPF_PROG_TYPE_SCHED_ACT BPF_FUNC_skb_store_bytes() BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_load_bytes_relative() BPF_FUNC_skb_pull_data() BPF_FUNC_csum_diff() BPF_FUNC_csum_update() BPF_FUNC_l3_csum_replace() BPF_FUNC_l4_csum_replace() BPF_FUNC_clone_redirect() BPF_FUNC_get_cgroup_classid() BPF_FUNC_skb_vlan_push() BPF_FUNC_skb_vlan_pop() BPF_FUNC_skb_change_proto() BPF_FUNC_skb_change_type() BPF_FUNC_skb_adjust_room() BPF_FUNC_skb_change_tail() BPF_FUNC_skb_get_tunnel_key() BPF_FUNC_skb_set_tunnel_key() BPF_FUNC_skb_get_tunnel_opt() BPF_FUNC_skb_set_tunnel_opt() BPF_FUNC_redirect() BPF_FUNC_get_route_realm() BPF_FUNC_get_hash_recalc() BPF_FUNC_set_hash_invalid() BPF_FUNC_set_hash() BPF_FUNC_perf_event_output() BPF_FUNC_get_smp_processor_id() BPF_FUNC_skb_under_cgroup() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() BPF_FUNC_fib_lookup() BPF_FUNC_skb_get_xfrm_state() BPF_FUNC_skb_cgroup_id() Base functions BPF_PROG_TYPE_TRACEPOINT BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_d_path() Tracing functions BPF_PROG_TYPE_XDP BPF_FUNC_perf_event_output() BPF_FUNC_get_smp_processor_id() BPF_FUNC_csum_diff() BPF_FUNC_xdp_adjust_head() BPF_FUNC_xdp_adjust_meta() BPF_FUNC_redirect() BPF_FUNC_redirect_map() BPF_FUNC_xdp_adjust_tail() BPF_FUNC_fib_lookup() Base functions BPF_PROG_TYPE_PERF_EVENT BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_perf_prog_read_value() Tracing functions BPF_PROG_TYPE_CGROUP_SKB BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_load_bytes_relative() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() Base functions BPF_PROG_TYPE_CGROUP_SOCK BPF_FUNC_get_current_uid_gid() Base functions BPF_PROG_TYPE_LWT_IN BPF_FUNC_lwt_push_encap() LWT functions Base functions BPF_PROG_TYPE_LWT_OUT LWT functions Base functions BPF_PROG_TYPE_LWT_XMIT BPF_FUNC_skb_get_tunnel_key() BPF_FUNC_skb_set_tunnel_key() BPF_FUNC_skb_get_tunnel_opt() BPF_FUNC_skb_set_tunnel_opt() BPF_FUNC_redirect() BPF_FUNC_clone_redirect() BPF_FUNC_skb_change_tail() BPF_FUNC_skb_change_head() BPF_FUNC_skb_store_bytes() BPF_FUNC_csum_update() BPF_FUNC_l3_csum_replace() BPF_FUNC_l4_csum_replace() BPF_FUNC_set_hash_invalid() LWT functions BPF_PROG_TYPE_SOCK_OPS BPF_FUNC_setsockopt() BPF_FUNC_getsockopt() BPF_FUNC_sock_ops_cb_flags_set() BPF_FUNC_sock_map_update() BPF_FUNC_sock_hash_update() BPF_FUNC_get_socket_cookie() Base functions BPF_PROG_TYPE_SK_SKB BPF_FUNC_skb_store_bytes() BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_pull_data() BPF_FUNC_skb_change_tail() BPF_FUNC_skb_change_head() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() BPF_FUNC_sk_redirect_map() BPF_FUNC_sk_redirect_hash() BPF_FUNC_sk_lookup_tcp() BPF_FUNC_sk_lookup_udp() BPF_FUNC_sk_release() Base functions BPF_PROG_TYPE_CGROUP_DEVICE BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_get_current_uid_gid() BPF_FUNC_trace_printk() BPF_PROG_TYPE_SK_MSG BPF_FUNC_msg_redirect_map() BPF_FUNC_msg_redirect_hash() BPF_FUNC_msg_apply_bytes() BPF_FUNC_msg_cork_bytes() BPF_FUNC_msg_pull_data() BPF_FUNC_msg_push_data() BPF_FUNC_msg_pop_data() Base functions BPF_PROG_TYPE_RAW_TRACEPOINT BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_skb_output() Tracing functions BPF_PROG_TYPE_CGROUP_SOCK_ADDR BPF_FUNC_get_current_uid_gid() BPF_FUNC_bind() BPF_FUNC_get_socket_cookie() Base functions BPF_PROG_TYPE_LWT_SEG6LOCAL BPF_FUNC_lwt_seg6_store_bytes() BPF_FUNC_lwt_seg6_action() BPF_FUNC_lwt_seg6_adjust_srh() LWT functions BPF_PROG_TYPE_LIRC_MODE2 BPF_FUNC_rc_repeat() BPF_FUNC_rc_keydown() BPF_FUNC_rc_pointer_rel() BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_ktime_get_ns() BPF_FUNC_tail_call() BPF_FUNC_get_prandom_u32() BPF_FUNC_trace_printk() BPF_PROG_TYPE_SK_REUSEPORT BPF_FUNC_sk_select_reuseport() BPF_FUNC_skb_load_bytes() BPF_FUNC_load_bytes_relative() Base functions BPF_PROG_TYPE_FLOW_DISSECTOR BPF_FUNC_skb_load_bytes() Base functions Function Group Functions Base functions BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_map_peek_elem() BPF_FUNC_map_pop_elem() BPF_FUNC_map_push_elem() BPF_FUNC_get_prandom_u32() BPF_FUNC_get_smp_processor_id() BPF_FUNC_get_numa_node_id() BPF_FUNC_tail_call() BPF_FUNC_ktime_get_boot_ns() BPF_FUNC_ktime_get_ns() BPF_FUNC_trace_printk() BPF_FUNC_spin_lock() BPF_FUNC_spin_unlock() Tracing functions BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_probe_read() BPF_FUNC_ktime_get_boot_ns() BPF_FUNC_ktime_get_ns() BPF_FUNC_tail_call() BPF_FUNC_get_current_pid_tgid() BPF_FUNC_get_current_task() BPF_FUNC_get_current_uid_gid() BPF_FUNC_get_current_comm() BPF_FUNC_trace_printk() BPF_FUNC_get_smp_processor_id() BPF_FUNC_get_numa_node_id() BPF_FUNC_perf_event_read() BPF_FUNC_probe_write_user() BPF_FUNC_current_task_under_cgroup() BPF_FUNC_get_prandom_u32() BPF_FUNC_probe_read_str() BPF_FUNC_get_current_cgroup_id() BPF_FUNC_send_signal() BPF_FUNC_probe_read_kernel() BPF_FUNC_probe_read_kernel_str() BPF_FUNC_probe_read_user() BPF_FUNC_probe_read_user_str() BPF_FUNC_send_signal_thread() BPF_FUNC_get_ns_current_pid_tgid() BPF_FUNC_xdp_output() BPF_FUNC_get_task_stack() LWT functions BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_pull_data() BPF_FUNC_csum_diff() BPF_FUNC_get_cgroup_classid() BPF_FUNC_get_route_realm() BPF_FUNC_get_hash_recalc() BPF_FUNC_perf_event_output() BPF_FUNC_get_smp_processor_id() BPF_FUNC_skb_under_cgroup()","breadcrumbs":"BPF Features by Linux Kernel Version » Program Types","id":"124","title":"Program Types"},"125":{"body":"","breadcrumbs":"Kernel Configuration for BPF Features » Kernel Configuration for BPF Features","id":"125","title":"Kernel Configuration for BPF Features"},"126":{"body":"Functionalities Kernel Configuration Description Basic CONFIG_BPF_SYSCALL Enable the bpf() system call CONFIG_BPF_JIT BPF programs are normally handled by a BPF interpreter. This option allows the kernel to generate native code when a program is loaded into the kernel. This will significantly speed-up processing of BPF programs CONFIG_HAVE_BPF_JIT Enable BPF Just In Time compiler CONFIG_HAVE_EBPF_JIT Extended BPF JIT (eBPF) CONFIG_HAVE_CBPF_JIT Classic BPF JIT (cBPF) CONFIG_MODULES Enable to build loadable kernel modules CONFIG_BPF BPF VM interpreter CONFIG_BPF_EVENTS Allow the user to attach BPF programs to kprobe, uprobe, and tracepoint events CONFIG_PERF_EVENTS Kernel performance events and counters CONFIG_HAVE_PERF_EVENTS Enable perf events CONFIG_PROFILING Enable the extended profiling support mechanisms used by profilers BTF CONFIG_DEBUG_INFO_BTF Generate deduplicated BTF type information from DWARF debug info CONFIG_PAHOLE_HAS_SPLIT_BTF Generate BTF for each selected kernel module CONFIG_DEBUG_INFO_BTF_MODULES Generate compact split BTF type information for kernel modules Security CONFIG_BPF_JIT_ALWAYS_ON Enable BPF JIT and removes BPF interpreter to avoid speculative execution CONFIG_BPF_UNPRIV_DEFAULT_OFF Disable unprivileged BPF by default by setting Cgroup CONFIG_CGROUP_BPF Support for BPF programs attached to cgroups Network CONFIG_BPFILTER BPF based packet filtering framework (BPFILTER) CONFIG_BPFILTER_UMH This builds bpfilter kernel module with embedded user mode helper CONFIG_NET_CLS_BPF BPF-based classifier - to classify packets based on programmable BPF (JIT'ed) filters as an alternative to ematches CONFIG_NET_ACT_BPF Execute BPF code on packets. The BPF code will decide if the packet should be dropped or not CONFIG_BPF_STREAM_PARSER Enable this to allow a TCP stream parser to be used with BPF_MAP_TYPE_SOCKMAP CONFIG_LWTUNNEL_BPF Allow to run BPF programs as a nexthop action following a route lookup for incoming and outgoing packets CONFIG_NETFILTER_XT_MATCH_BPF BPF matching applies a linux socket filter to each packet and accepts those for which the filter returns non-zero CONFIG_IPV6_SEG6_BPF To support BPF seg6local hook. bpf: Add IPv6 Segment Routing helpersy. Reference kprobes CONFIG_KPROBE_EVENTS This allows the user to add tracing events (similar to tracepoints) on the fly via the ftrace interface CONFIG_KPROBES Enable kprobes-based dynamic events CONFIG_HAVE_KPROBES Check if krpobes enabled CONFIG_HAVE_REGS_AND_STACK_ACCESS_API This symbol should be selected by an architecture if it supports the API needed to access registers and stack entries from pt_regs. For example the kprobes-based event tracer needs this API. CONFIG_KPROBES_ON_FTRACE Have kprobes on function tracer if arch supports full passing of pt_regs to function tracing kprobe multi CONFIG_FPROBE Enable fprobe to attach the probe on multiple functions at once kprobe override CONFIG_BPF_KPROBE_OVERRIDE Enable BPF programs to override a kprobed function uprobes CONFIG_UPROBE_EVENTS Enable uprobes-based dynamic events CONFIG_ARCH_SUPPORTS_UPROBES Arch specific uprobes support CONFIG_UPROBES Uprobes is the user-space counterpart to kprobes: they enable instrumentation applications (such as 'perf probe') to establish unintrusive probes in user-space binaries and libraries, by executing handler functions when the probes are hit by user-space applications. CONFIG_MMU MMU-based virtualised addressing space support by paged memory management Tracepoints CONFIG_TRACEPOINTS Enable inserting tracepoints in the kernel and connect to proble functions CONFIG_HAVE_SYSCALL_TRACEPOINTS Enable syscall enter/exit tracing Raw Tracepoints Same as Tracepoints LSM CONFIG_BPF_LSM Enable instrumentation of the security hooks with BPF programs for implementing dynamic MAC and Audit Policies LIRC CONFIG_BPF_LIRC_MODE2 Allow attaching BPF programs to a lirc device","breadcrumbs":"Kernel Configuration for BPF Features » BPF Related Kernel Configurations","id":"126","title":"BPF Related Kernel Configurations"},"127":{"body":"Intended for search (Ctrl-F) and reference. For tutorials, start with tutorial.md . This guide is incomplete. If something feels missing, check the bcc and kernel source. And if you confirm we're missing something, please send a pull request to fix it, and help out everyone.","breadcrumbs":"bcc Reference Guide » bcc Reference Guide","id":"127","title":"bcc Reference Guide"},"128":{"body":"BPF C Events & Arguments 1. kprobes 2. kretprobes 3. Tracepoints 4. uprobes 5. uretprobes 6. USDT probes 7. Raw Tracepoints 8. system call tracepoints 9. kfuncs 10. kretfuncs 11. lsm probes 12. bpf iterators Data 1. bpf_probe_read_kernel() 2. bpf_probe_read_kernel_str() 3. bpf_ktime_get_ns() 4. bpf_get_current_pid_tgid() 5. bpf_get_current_uid_gid() 6. bpf_get_current_comm() 7. bpf_get_current_task() 8. bpf_log2l() 9. bpf_get_prandom_u32() 10. bpf_probe_read_user() 11. bpf_probe_read_user_str() 12. bpf_get_ns_current_pid_tgid() Debugging 1. bpf_override_return() Output 1. bpf_trace_printk() 2. BPF_PERF_OUTPUT 3. perf_submit() 4. perf_submit_skb() 5. BPF_RINGBUF_OUTPUT 6. ringbuf_output() 7. ringbuf_reserve() 8. ringbuf_submit() 9. ringbuf_discard() Maps 1. BPF_TABLE 2. BPF_HASH 3. BPF_ARRAY 4. BPF_HISTOGRAM 5. BPF_STACK_TRACE 6. BPF_PERF_ARRAY 7. BPF_PERCPU_HASH 8. BPF_PERCPU_ARRAY 9. BPF_LPM_TRIE 10. BPF_PROG_ARRAY 11. BPF_DEVMAP 12. BPF_CPUMAP 13. BPF_XSKMAP 14. BPF_ARRAY_OF_MAPS 15. BPF_HASH_OF_MAPS 16. BPF_STACK 17. BPF_QUEUE 18. BPF_SOCKHASH 19. map.lookup() 20. map.lookup_or_try_init() 21. map.delete() 22. map.update() 23. map.insert() 24. map.increment() 25. map.get_stackid() 26. map.perf_read() 27. map.call() 28. map.redirect_map() 29. map.push() 30. map.pop() 31. map.peek() 32. map.sock_hash_update() 33. map.msg_redirect_hash() 34. map.sk_redirect_hash() Licensing Rewriter bcc Python Initialization 1. BPF 2. USDT Events 1. attach_kprobe() 2. attach_kretprobe() 3. attach_tracepoint() 4. attach_uprobe() 5. attach_uretprobe() 6. USDT.enable_probe() 7. attach_raw_tracepoint() 8. attach_raw_socket() 9. attach_xdp() 10. attach_func() 11. detach_func() 12. detach_kprobe() 13. detach_kretprobe() Debug Output 1. trace_print() 2. trace_fields() Output APIs 1. perf_buffer_poll() 2. ring_buffer_poll() 3. ring_buffer_consume() Map APIs 1. get_table() 2. open_perf_buffer() 3. items() 4. values() 5. clear() 6. items_lookup_and_delete_batch() 7. items_lookup_batch() 8. items_delete_batch() 9. items_update_batch() 10. print_log2_hist() 11. print_linear_hist() 12. open_ring_buffer() 13. push() 14. pop() 15. peek() Helpers 1. ksym() 2. ksymname() 3. sym() 4. num_open_kprobes() 5. get_syscall_fnname() BPF Errors 1. Invalid mem access 2. Cannot call GPL only function from proprietary program Environment Variables 1. kernel source directory 2. kernel version overriding","breadcrumbs":"bcc Reference Guide » Contents","id":"128","title":"Contents"},"129":{"body":"This section describes the C part of a bcc program.","breadcrumbs":"bcc Reference Guide » BPF C","id":"129","title":"BPF C"},"13":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第二篇,主要介绍 eBPF 的基本框架和开发流程。 开发 eBPF 程序可以使用多种工具,如 BCC、eunomia-bpf 等。不同的工具有不同的特点,但基本流程大致相同。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » eBPF 入门开发实践教程二:Hello World,基本框架和开发流程","id":"13","title":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程"},"130":{"body":"","breadcrumbs":"bcc Reference Guide » Events & Arguments","id":"130","title":"Events & Arguments"},"131":{"body":"Syntax: kprobe__ kernel_function_name kprobe__ is a special prefix that creates a kprobe (dynamic tracing of a kernel function call) for the kernel function name provided as the remainder. You can also use kprobes by declaring a normal C function, then using the Python BPF.attach_kprobe() (covered later) to associate it with a kernel function. Arguments are specified on the function declaration: kprobe__ kernel_function_name (struct pt_regs *ctx [, argument1 ...]) For example: int kprobe__tcp_v4_connect(struct pt_regs *ctx, struct sock *sk) { [...]\n} This instruments the tcp_v4_connect() kernel function using a kprobe, with the following arguments: struct pt_regs *ctx: Registers and BPF context. struct sock *sk: First argument to tcp_v4_connect(). The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them). Examples in situ: code ( output ), code ( output )","breadcrumbs":"bcc Reference Guide » 1. kprobes","id":"131","title":"1. kprobes"},"132":{"body":"Syntax: kretprobe__ kernel_function_name kretprobe__ is a special prefix that creates a kretprobe (dynamic tracing of a kernel function return) for the kernel function name provided as the remainder. You can also use kretprobes by declaring a normal C function, then using the Python BPF.attach_kretprobe() (covered later) to associate it with a kernel function. Return value is available as PT_REGS_RC(ctx), given a function declaration of: kretprobe__ kernel_function_name (struct pt_regs *ctx) For example: int kretprobe__tcp_v4_connect(struct pt_regs *ctx)\n{ int ret = PT_REGS_RC(ctx); [...]\n} This instruments the return of the tcp_v4_connect() kernel function using a kretprobe, and stores the return value in ret. Examples in situ: code ( output )","breadcrumbs":"bcc Reference Guide » 2. kretprobes","id":"132","title":"2. kretprobes"},"133":{"body":"Syntax: TRACEPOINT_PROBE( category , event ) This is a macro that instruments the tracepoint defined by category : event . The tracepoint name is :. The probe function name is tracepoint____. Arguments are available in an args struct, which are the tracepoint arguments. One way to list these is to cat the relevant format file under /sys/kernel/debug/tracing/events/ category / event /format. The args struct can be used in place of ctx in each functions requiring a context as an argument. This includes notably perf_submit() . For example: TRACEPOINT_PROBE(random, urandom_read) { // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format bpf_trace_printk(\"%d\\\\n\", args->got_bits); return 0;\n} This instruments the tracepoint random:urandom_read tracepoint, and prints the tracepoint argument got_bits. When using Python API, this probe is automatically attached to the right tracepoint target. For C++, this tracepoint probe can be attached by specifying the tracepoint target and function name explicitly: BPF::attach_tracepoint(\"random:urandom_read\", \"tracepoint__random__urandom_read\") Note the name of the probe function defined above is tracepoint__random__urandom_read. Examples in situ: code ( output ), search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. Tracepoints","id":"133","title":"3. Tracepoints"},"134":{"body":"These are instrumented by declaring a normal function in C, then associating it as a uprobe probe in Python via BPF.attach_uprobe() (covered later). Arguments can be examined using PT_REGS_PARM macros. For example: int count(struct pt_regs *ctx) { char buf[64]; bpf_probe_read_user(&buf, sizeof(buf), (void *)PT_REGS_PARM1(ctx)); bpf_trace_printk(\"%s %d\", buf, PT_REGS_PARM2(ctx)); return(0);\n} This reads the first argument as a string, and then prints it with the second argument as an integer. Examples in situ: code","breadcrumbs":"bcc Reference Guide » 4. uprobes","id":"134","title":"4. uprobes"},"135":{"body":"These are instrumented by declaring a normal function in C, then associating it as a uretprobe probe in Python via BPF.attach_uretprobe() (covered later). Return value is available as PT_REGS_RC(ctx), given a function declaration of: function_name (struct pt_regs *ctx) For example: BPF_HISTOGRAM(dist);\nint count(struct pt_regs *ctx) { dist.increment(PT_REGS_RC(ctx)); return 0;\n} This increments the bucket in the dist histogram that is indexed by the return value. Examples in situ: code ( output ), code ( output )","breadcrumbs":"bcc Reference Guide » 5. uretprobes","id":"135","title":"5. uretprobes"},"136":{"body":"These are User Statically-Defined Tracing (USDT) probes, which may be placed in some applications or libraries to provide a user-level equivalent of tracepoints. The primary BPF method provided for USDT support method is enable_probe(). USDT probes are instrumented by declaring a normal function in C, then associating it as a USDT probe in Python via USDT.enable_probe(). Arguments can be read via: bpf_usdt_readarg( index , ctx, &addr) For example: int do_trace(struct pt_regs *ctx) { uint64_t addr; char path[128]; bpf_usdt_readarg(6, ctx, &addr); bpf_probe_read_user(&path, sizeof(path), (void *)addr); bpf_trace_printk(\"path:%s\\\\n\", path); return 0;\n}; This reads the sixth USDT argument, and then pulls it in as a string to path. When initializing USDTs via the third argument of BPF::init in the C API, if any USDT fails to init, entire BPF::init will fail. If you're OK with some USDTs failing to init, use BPF::init_usdt before calling BPF::init. Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 6. USDT probes","id":"136","title":"6. USDT probes"},"137":{"body":"Syntax: RAW_TRACEPOINT_PROBE( event ) This is a macro that instruments the raw tracepoint defined by event . The argument is a pointer to struct bpf_raw_tracepoint_args, which is defined in bpf.h . The struct field args contains all parameters of the raw tracepoint where you can found at linux tree include/trace/events directory. For example: RAW_TRACEPOINT_PROBE(sched_switch)\n{ // TP_PROTO(bool preempt, struct task_struct *prev, struct task_struct *next) struct task_struct *prev = (struct task_struct *)ctx->args[1]; struct task_struct *next= (struct task_struct *)ctx->args[2]; s32 prev_tgid, next_tgid; bpf_probe_read_kernel(&prev_tgid, sizeof(prev->tgid), &prev->tgid); bpf_probe_read_kernel(&next_tgid, sizeof(next->tgid), &next->tgid); bpf_trace_printk(\"%d -> %d\\\\n\", prev_tgid, next_tgid);\n} This instruments the sched:sched_switch tracepoint, and prints the prev and next tgid. Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 7. Raw Tracepoints","id":"137","title":"7. Raw Tracepoints"},"138":{"body":"Syntax: syscall__SYSCALLNAME syscall__ is a special prefix that creates a kprobe for the system call name provided as the remainder. You can use it by declaring a normal C function, then using the Python BPF.get_syscall_fnname(SYSCALLNAME) and BPF.attach_kprobe() to associate it. Arguments are specified on the function declaration: syscall__SYSCALLNAME(struct pt_regs *ctx, [, argument1 ...]). For example: int syscall__execve(struct pt_regs *ctx, const char __user *filename, const char __user *const __user *__argv, const char __user *const __user *__envp)\n{ [...]\n} This instruments the execve system call. The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them). Corresponding Python code: b = BPF(text=bpf_text)\nexecve_fnname = b.get_syscall_fnname(\"execve\")\nb.attach_kprobe(event=execve_fnname, fn_name=\"syscall__execve\") Examples in situ: code ( output )","breadcrumbs":"bcc Reference Guide » 8. system call tracepoints","id":"138","title":"8. system call tracepoints"},"139":{"body":"Syntax: KFUNC_PROBE( function , typeof(arg1) arg1, typeof(arg2) arge ...) This is a macro that instruments the kernel function via trampoline before the function is executed. It's defined by function name and the function arguments defined as argX . For example: KFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode)\n{ ... This instruments the do_sys_open kernel function and make its arguments accessible as standard argument values. Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 9. kfuncs","id":"139","title":"9. kfuncs"},"14":{"body":"下面以 BCC 工具为例,介绍 eBPF 程序的基本开发流程。 安装编译环境和依赖。使用 BCC 开发 eBPF 程序需要安装 LLVM/Clang 和 bcc,以及其它的依赖库。 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。 编译和加载 eBPF 程序。使用 bcc 工具将 eBPF 程序编译成机器码,然后使用用户态代码加载并运行该程序。 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。用户态程序负责处理这些信息并将结果输出。 结束程序。当 eBPF 程序运行完成后,用户态程序可以卸载并结束运行。 通过这个过程,你可以开发出一个能够在内核中运行的 eBPF 程序。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 开发 eBPF 程序的流程","id":"14","title":"开发 eBPF 程序的流程"},"140":{"body":"Syntax: KRETFUNC_PROBE( event , typeof(arg1) arg1, typeof(arg2) arge ..., int ret) This is a macro that instruments the kernel function via trampoline after the function is executed. It's defined by function name and the function arguments defined as argX . The last argument of the probe is the return value of the instrumented function. For example: KRETFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode, int ret)\n{ ... This instruments the do_sys_open kernel function and make its arguments accessible as standard argument values together with its return value. Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 10. kretfuncs","id":"140","title":"10. kretfuncs"},"141":{"body":"Syntax: LSM_PROBE( hook , typeof(arg1) arg1, typeof(arg2) arg2 ...) This is a macro that instruments an LSM hook as a BPF program. It can be used to audit security events and implement MAC security policies in BPF. It is defined by specifying the hook name followed by its arguments. Hook names can be found in include/linux/security.h by taking functions like security_hookname and taking just the hookname part. For example, security_bpf would simply become bpf. Unlike other BPF program types, the return value specified in an LSM probe matters. A return value of 0 allows the hook to succeed, whereas any non-zero return value will cause the hook to fail and deny the security operation. The following example instruments a hook that denies all future BPF operations: LSM_PROBE(bpf, int cmd, union bpf_attr *attr, unsigned int size)\n{ return -EPERM;\n} This instruments the security_bpf hook and causes it to return -EPERM. Changing return -EPERM to return 0 would cause the BPF program to allow the operation instead. LSM probes require at least a 5.7+ kernel with the following configuation options set: CONFIG_BPF_LSM=y CONFIG_LSM comma separated string must contain \"bpf\" (for example, CONFIG_LSM=\"lockdown,yama,bpf\") Examples in situ: search /tests","breadcrumbs":"bcc Reference Guide » 11. LSM Probes","id":"141","title":"11. LSM Probes"},"142":{"body":"Syntax: BPF_ITER(target) This is a macro to define a program signature for a bpf iterator program. The argument target specifies what to iterate for the program. Currently, kernel does not have interface to discover what targets are supported. A good place to find what is supported is in tools/testing/selftests/bpf/prog_test/bpf_iter.c and some sample bpf iter programs are in tools/testing/selftests/bpf/progs with file name prefix bpf_iter . The following example defines a program for target task , which traverses all tasks in the kernel. BPF_ITER(task)\n{ struct seq_file *seq = ctx->meta->seq; struct task_struct *task = ctx->task; if (task == (void *)0) return 0; ... task->pid, task->tgid, task->comm, ... return 0;\n} BPF iterators are introduced in 5.8 kernel for task, task_file, bpf_map, netlink_sock and ipv6_route . In 5.9, support is added to tcp/udp sockets and bpf map element (hashmap, arraymap and sk_local_storage_map) traversal.","breadcrumbs":"bcc Reference Guide » 12. BPF ITERATORS","id":"142","title":"12. BPF ITERATORS"},"143":{"body":"","breadcrumbs":"bcc Reference Guide » Data","id":"143","title":"Data"},"144":{"body":"Syntax: int bpf_probe_read_kernel(void *dst, int size, const void *src) Return: 0 on success This copies size bytes from kernel address space to the BPF stack, so that BPF can later operate on it. For safety, all kernel memory reads must pass through bpf_probe_read_kernel(). This happens automatically in some cases, such as dereferencing kernel variables, as bcc will rewrite the BPF program to include the necessary bpf_probe_read_kernel(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. bpf_probe_read_kernel()","id":"144","title":"1. bpf_probe_read_kernel()"},"145":{"body":"Syntax: int bpf_probe_read_kernel_str(void *dst, int size, const void *src) Return: > 0 length of the string including the trailing NULL on success < 0 error This copies a NULL terminated string from kernel address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. bpf_probe_read_kernel_str()","id":"145","title":"2. bpf_probe_read_kernel_str()"},"146":{"body":"Syntax: u64 bpf_ktime_get_ns(void) Return: u64 number of nanoseconds. Starts at system boot time but stops during suspend. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. bpf_ktime_get_ns()","id":"146","title":"3. bpf_ktime_get_ns()"},"147":{"body":"Syntax: u64 bpf_get_current_pid_tgid(void) Return: current->tgid << 32 | current->pid Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. bpf_get_current_pid_tgid()","id":"147","title":"4. bpf_get_current_pid_tgid()"},"148":{"body":"Syntax: u64 bpf_get_current_uid_gid(void) Return: current_gid << 32 | current_uid Returns the user ID and group IDs. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. bpf_get_current_uid_gid()","id":"148","title":"5. bpf_get_current_uid_gid()"},"149":{"body":"Syntax: bpf_get_current_comm(char *buf, int size_of_buf) Return: 0 on success Populates the first argument address with the current process name. It should be a pointer to a char array of at least size TASK_COMM_LEN, which is defined in linux/sched.h. For example: #include int do_trace(struct pt_regs *ctx) { char comm[TASK_COMM_LEN]; bpf_get_current_comm(&comm, sizeof(comm));\n[...] Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 6. bpf_get_current_comm()","id":"149","title":"6. bpf_get_current_comm()"},"15":{"body":"eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。它基于 libbpf 的 CO-RE 轻量级开发框架,支持通过用户态 WASM 虚拟机控制 eBPF 程序的加载和执行,并将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块进行分发。使用 eunomia-bpf 可以大幅简化 eBPF 程序的开发流程。 使用 eunomia-bpf 开发 eBPF 程序的流程也大致相同,只是细节略有不同。 安装编译环境和依赖。使用 eunomia-bpf 开发 eBPF 程序需要安装 eunomia-bpf 工具链和运行时库,以及其它的依赖库。 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。使用 eunomia-bpf,只需编写内核态代码即可,无需编写用户态代码。 编译和加载 eBPF 程序。使用 eunomia-bpf 工具链将 eBPF 程序编译成机器码,并将编译后的代码打包为可以在任何系统上运行的模块。然后使用 eunomia-bpf 运行时库加载并运行该模块。 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。eunomia-bpf 的运行时库负责处理这些信息并将结果输出。 结束程序。当 eBPF 程序运行完成后,eunomia-bpf 的运行时库可以卸载并结束运行","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 使用 eunomia-bpf 开发 eBPF 程序","id":"15","title":"使用 eunomia-bpf 开发 eBPF 程序"},"150":{"body":"Syntax: bpf_get_current_task() Return: current task as a pointer to struct task_struct. Returns a pointer to the current task's task_struct object. This helper can be used to compute the on-CPU time for a process, identify kernel threads, get the current CPU's run queue, or retrieve many other pieces of information. With Linux 4.13, due to issues with field randomization, you may need two #define directives before the includes: #define randomized_struct_fields_start struct {\n#define randomized_struct_fields_end };\n#include int do_trace(void *ctx) { struct task_struct *t = (struct task_struct *)bpf_get_current_task();\n[...] Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 7. bpf_get_current_task()","id":"150","title":"7. bpf_get_current_task()"},"151":{"body":"Syntax: unsigned int bpf_log2l(unsigned long v) Returns the log-2 of the provided value. This is often used to create indexes for histograms, to construct power-of-2 histograms. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 8. bpf_log2l()","id":"151","title":"8. bpf_log2l()"},"152":{"body":"Syntax: u32 bpf_get_prandom_u32() Returns a pseudo-random u32. Example in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 9. bpf_get_prandom_u32()","id":"152","title":"9. bpf_get_prandom_u32()"},"153":{"body":"Syntax: int bpf_probe_read_user(void *dst, int size, const void *src) Return: 0 on success This attempts to safely read size bytes from user address space to the BPF stack, so that BPF can later operate on it. For safety, all user address space memory reads must pass through bpf_probe_read_user(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 10. bpf_probe_read_user()","id":"153","title":"10. bpf_probe_read_user()"},"154":{"body":"Syntax: int bpf_probe_read_user_str(void *dst, int size, const void *src) Return: > 0 length of the string including the trailing NULL on success < 0 error This copies a NULL terminated string from user address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 11. bpf_probe_read_user_str()","id":"154","title":"11. bpf_probe_read_user_str()"},"155":{"body":"Syntax: u32 bpf_get_ns_current_pid_tgid(u64 dev, u64 ino, struct bpf_pidns_info* nsdata, u32 size) Values for pid and tgid as seen from the current namespace will be returned in nsdata . Return 0 on success, or one of the following in case of failure: -EINVAL if dev and inum supplied don't match dev_t and inode number with nsfs of current task, or if dev conversion to dev_t lost high bits. -ENOENT if pidns does not exists for the current task. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 12. bpf_get_ns_current_pid_tgid()","id":"155","title":"12. bpf_get_ns_current_pid_tgid()"},"156":{"body":"","breadcrumbs":"bcc Reference Guide » Debugging","id":"156","title":"Debugging"},"157":{"body":"Syntax: int bpf_override_return(struct pt_regs *, unsigned long rc) Return: 0 on success When used in a program attached to a function entry kprobe, causes the execution of the function to be skipped, immediately returning rc instead. This is used for targeted error injection. bpf_override_return will only work when the kprobed function is whitelisted to allow error injections. Whitelisting entails tagging a function with ALLOW_ERROR_INJECTION() in the kernel source tree; see io_ctl_init for an example. If the kprobed function is not whitelisted, the bpf program will fail to attach with ioctl(PERF_EVENT_IOC_SET_BPF): Invalid argument int kprobe__io_ctl_init(void *ctx) { bpf_override_return(ctx, -ENOMEM); return 0;\n}","breadcrumbs":"bcc Reference Guide » 1. bpf_override_return()","id":"157","title":"1. bpf_override_return()"},"158":{"body":"","breadcrumbs":"bcc Reference Guide » Output","id":"158","title":"Output"},"159":{"body":"Syntax: int bpf_trace_printk(const char *fmt, ...) Return: 0 on success A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(). Note that calling this helper is made simpler than the original kernel version, which has fmt_size as the second parameter. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. bpf_trace_printk()","id":"159","title":"1. bpf_trace_printk()"},"16":{"body":"可以通过以下步骤下载和安装 eunomia-bpf: 下载 ecli 工具,用于运行 eBPF 程序: $ wget https://aka.pw/bpf-ecli -O ecli && chmod +x ./ecli\n$ ./ecli -h\nUsage: ecli [--help] [--version] [--json] [--no-cache] url-and-args 下载编译器工具链,用于将 eBPF 内核代码编译为 config 文件或 WASM 模块: $ wget https://github.com/eunomia-bpf/eunomia-bpf/releases/latest/download/ecc && chmod +x ./ecc\n$ ./ecc -h\neunomia-bpf compiler\nUsage: ecc [OPTIONS] [EXPORT_EVENT_HEADER]\n.... 也可以使用 docker 镜像进行编译: $ docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest # 使用 docker 进行编译。`pwd` 应该包含 *.bpf.c 文件和 *.h 文件。\nexport PATH=PATH:~/.eunomia/bin\nCompiling bpf object...\nPacking ebpf object and config into /src/package.json...","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 下载安装 eunomia-bpf 开发工具","id":"16","title":"下载安装 eunomia-bpf 开发工具"},"160":{"body":"Syntax: BPF_PERF_OUTPUT(name) Creates a BPF table for pushing out custom event data to user space via a perf ring buffer. This is the preferred method for pushing per-event data to user space. For example: struct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_PERF_OUTPUT(events); int hello(struct pt_regs *ctx) { struct data_t data = {}; data.pid = bpf_get_current_pid_tgid(); data.ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data.comm, sizeof(data.comm)); events.perf_submit(ctx, &data, sizeof(data)); return 0;\n} The output table is named events, and data is pushed to it via events.perf_submit(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. BPF_PERF_OUTPUT","id":"160","title":"2. BPF_PERF_OUTPUT"},"161":{"body":"Syntax: int perf_submit((void *)ctx, (void *)data, u32 data_size) Return: 0 on success A method of a BPF_PERF_OUTPUT table, for submitting custom event data to user space. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().) The ctx parameter is provided in kprobes or kretprobes . For SCHED_CLS or SOCKET_FILTER programs, the struct __sk_buff *skb must be used instead. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. perf_submit()","id":"161","title":"3. perf_submit()"},"162":{"body":"Syntax: int perf_submit_skb((void *)ctx, u32 packet_size, (void *)data, u32 data_size) Return: 0 on success A method of a BPF_PERF_OUTPUT table available in networking program types, for submitting custom event data to user space, along with the first packet_size bytes of the packet buffer. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. perf_submit_skb()","id":"162","title":"4. perf_submit_skb()"},"163":{"body":"Syntax: BPF_RINGBUF_OUTPUT(name, page_cnt) Creates a BPF table for pushing out custom event data to user space via a ringbuf ring buffer. BPF_RINGBUF_OUTPUT has several advantages over BPF_PERF_OUTPUT, summarized as follows: Buffer is shared across all CPUs, meaning no per-CPU allocation Supports two APIs for BPF programs map.ringbuf_output() works like map.perf_submit() (covered in ringbuf_output ) map.ringbuf_reserve()/map.ringbuf_submit()/map.ringbuf_discard() split the process of reserving buffer space and submitting events into two steps (covered in ringbuf_reserve , ringbuf_submit , ringbuf_discard ) BPF APIs do not require access to a CPU ctx argument Superior performance and latency in userspace thanks to a shared ring buffer manager Supports two ways of consuming data in userspace Starting in Linux 5.8, this should be the preferred method for pushing per-event data to user space. Example of both APIs: struct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n}; // Creates a ringbuf called events with 8 pages of space, shared across all CPUs\nBPF_RINGBUF_OUTPUT(events, 8); int first_api_example(struct pt_regs *ctx) { struct data_t data = {}; data.pid = bpf_get_current_pid_tgid(); data.ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data.comm, sizeof(data.comm)); events.ringbuf_output(&data, sizeof(data), 0 /* flags */); return 0;\n} int second_api_example(struct pt_regs *ctx) { struct data_t *data = events.ringbuf_reserve(sizeof(struct data_t)); if (!data) { // Failed to reserve space return 1; } data->pid = bpf_get_current_pid_tgid(); data->ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data->comm, sizeof(data->comm)); events.ringbuf_submit(data, 0 /* flags */); return 0;\n} The output table is named events. Data is allocated via events.ringbuf_reserve() and pushed to it via events.ringbuf_submit(). Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 5. BPF_RINGBUF_OUTPUT","id":"163","title":"5. BPF_RINGBUF_OUTPUT"},"164":{"body":"Syntax: int ringbuf_output((void *)data, u64 data_size, u64 flags) Return: 0 on success Flags: BPF_RB_NO_WAKEUP: Do not sent notification of new data availability BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. This method works like perf_submit(), although it does not require a ctx argument. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 6. ringbuf_output()","id":"164","title":"6. ringbuf_output()"},"165":{"body":"Syntax: void* ringbuf_reserve(u64 data_size) Return: Pointer to data struct on success, NULL on failure A method of the BPF_RINGBUF_OUTPUT table, for reserving space in the ring buffer and simultaenously allocating a data struct for output. Must be used with one of ringbuf_submit or ringbuf_discard. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 7. ringbuf_reserve()","id":"165","title":"7. ringbuf_reserve()"},"166":{"body":"Syntax: void ringbuf_submit((void *)data, u64 flags) Return: Nothing, always succeeds Flags: BPF_RB_NO_WAKEUP: Do not sent notification of new data availability BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. Must be preceded by a call to ringbuf_reserve() to reserve space for the data. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 8. ringbuf_submit()","id":"166","title":"8. ringbuf_submit()"},"167":{"body":"Syntax: void ringbuf_discard((void *)data, u64 flags) Return: Nothing, always succeeds Flags: BPF_RB_NO_WAKEUP: Do not sent notification of new data availability BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally A method of the BPF_RINGBUF_OUTPUT table, for discarding custom event data; userspace ignores the data associated with the discarded event. Must be preceded by a call to ringbuf_reserve() to reserve space for the data. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 9. ringbuf_discard()","id":"167","title":"9. ringbuf_discard()"},"168":{"body":"Maps are BPF data stores, and are the basis for higher level object types including tables, hashes, and histograms.","breadcrumbs":"bcc Reference Guide » Maps","id":"168","title":"Maps"},"169":{"body":"Syntax: BPF_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries) Creates a map named _name. Most of the time this will be used via higher-level macros, like BPF_HASH, BPF_ARRAY, BPF_HISTOGRAM, etc. BPF_F_TABLE is a variant that takes a flag in the last parameter. BPF_TABLE(https://github.com/iovisor/bcc/tree/master.) is actually a wrapper to BPF_F_TABLE(https://github.com/iovisor/bcc/tree/master., 0 /* flag */). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools Pinned Maps Syntax: BPF_TABLE_PINNED(_table_type, _key_type, _leaf_type, _name, _max_entries, \"/sys/fs/bpf/xyz\") Create a new map if it doesn't exist and pin it to the bpffs as a FILE, otherwise use the map that was pinned to the bpffs. The type information is not enforced and the actual map type depends on the map that got pinned to the location. For example: BPF_TABLE_PINNED(\"hash\", u64, u64, ids, 1024, \"/sys/fs/bpf/ids\");","breadcrumbs":"bcc Reference Guide » 1. BPF_TABLE","id":"169","title":"1. BPF_TABLE"},"17":{"body":"/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */\n#define BPF_NO_GLOBAL_DATA\n#include \n#include \n#include typedef unsigned int u32;\ntypedef int pid_t;\nconst pid_t pid_filter = 0; char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; SEC(\"tp/syscalls/sys_enter_write\")\nint handle_tp(void *ctx)\n{ pid_t pid = bpf_get_current_pid_tgid() >> 32; if (pid_filter && pid != pid_filter) return 0; bpf_printk(\"BPF triggered from PID %d.\\n\", pid); return 0;\n} 这段程序通过定义一个 handle_tp 函数并使用 SEC 宏把它附加到 sys_enter_write tracepoint(即在进入 write 系统调用时执行)。该函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 write 系统调用的进程 ID,并在内核日志中打印出来。 bpf_trace_printk(): 一种将信息输出到trace_pipe(/sys/kernel/debug/tracing/trace_pipe)简单机制。 在一些简单用例中这样使用没有问题, but它也有一些限制:最多3 参数; 第一个参数必须是%s(即字符串);同时trace_pipe在内核中全局共享,其他并行使用trace_pipe的程序有可能会将 trace_pipe 的输出扰乱。 一个更好的方式是通过 BPF_PERF_OUTPUT(), 稍后将会讲到。 void *ctx:ctx本来是具体类型的参数, 但是由于我们这里没有使用这个参数,因此就将其写成void *类型。 return 0;:必须这样,返回0 (如果要知道why, 参考 #139 https://github.com/iovisor/bcc/issues/139 )。 要编译和运行这段程序,可以使用 ecc 工具和 ecli 命令。首先使用 ecc 编译程序: $ ecc hello.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... 或使用 docker 镜像进行编译: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 然后使用 ecli 运行编译后的程序: $ sudo ecli ./package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345. <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345.","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » Hello World - minimal eBPF program","id":"17","title":"Hello World - minimal eBPF program"},"170":{"body":"Syntax: BPF_HASH(name [, key_type [, leaf_type [, size]]]) Creates a hash map (associative array) named name, with optional parameters. Defaults: BPF_HASH(name, key_type=u64, leaf_type=u64, size=10240) For example: BPF_HASH(start, struct request *); This creates a hash named start where the key is a struct request *, and the value defaults to u64. This hash is used by the disksnoop.py example for saving timestamps for each I/O request, where the key is the pointer to struct request, and the value is the timestamp. This is a wrapper macro for BPF_TABLE(\"hash\", ...). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. BPF_HASH","id":"170","title":"2. BPF_HASH"},"171":{"body":"Syntax: BPF_ARRAY(name [, leaf_type [, size]]) Creates an int-indexed array which is optimized for fastest lookup and update, named name, with optional parameters. Defaults: BPF_ARRAY(name, leaf_type=u64, size=10240) For example: BPF_ARRAY(counts, u64, 32); This creates an array named counts where with 32 buckets and 64-bit integer values. This array is used by the funccount.py example for saving call count of each function. This is a wrapper macro for BPF_TABLE(\"array\", ...). Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. BPF_ARRAY","id":"171","title":"3. BPF_ARRAY"},"172":{"body":"Syntax: BPF_HISTOGRAM(name [, key_type [, size ]]) Creates a histogram map named name, with optional parameters. Defaults: BPF_HISTOGRAM(name, key_type=int, size=64) For example: BPF_HISTOGRAM(dist); This creates a histogram named dist, which defaults to 64 buckets indexed by keys of type int. This is a wrapper macro for BPF_TABLE(\"histgram\", ...). Methods (covered later): map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. BPF_HISTOGRAM","id":"172","title":"4. BPF_HISTOGRAM"},"173":{"body":"Syntax: BPF_STACK_TRACE(name, max_entries) Creates stack trace map named name, with a maximum entry count provided. These maps are used to store stack traces. For example: BPF_STACK_TRACE(stack_traces, 1024); This creates stack trace map named stack_traces, with a maximum number of stack trace entries of 1024. This is a wrapper macro for BPF_TABLE(\"stacktrace\", ...). Methods (covered later): map.get_stackid(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. BPF_STACK_TRACE","id":"173","title":"5. BPF_STACK_TRACE"},"174":{"body":"Syntax: BPF_PERF_ARRAY(name, max_entries) Creates perf array named name, with a maximum entry count provided, which must be equal to the number of system cpus. These maps are used to fetch hardware performance counters. For example: text=\"\"\"\nBPF_PERF_ARRAY(cpu_cycles, NUM_CPUS);\n\"\"\"\nb = bcc.BPF(text=text, cflags=[\"-DNUM_CPUS=%d\" % multiprocessing.cpu_count()])\nb[\"cpu_cycles\"].open_perf_event(b[\"cpu_cycles\"].HW_CPU_CYCLES) This creates a perf array named cpu_cycles, with number of entries equal to the number of cpus/cores. The array is configured so that later calling map.perf_read() will return a hardware-calculated counter of the number of cycles elapsed from some point in the past. Only one type of hardware counter may be configured per table at a time. Methods (covered later): map.perf_read(). Examples in situ: search /tests","breadcrumbs":"bcc Reference Guide » 6. BPF_PERF_ARRAY","id":"174","title":"6. BPF_PERF_ARRAY"},"175":{"body":"Syntax: BPF_PERCPU_HASH(name [, key_type [, leaf_type [, size]]]) Creates NUM_CPU int-indexed hash maps (associative arrays) named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way. Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. In other words, BPF_PERCPU_HASH elements cannot be larger than 32KB in size. Defaults: BPF_PERCPU_HASH(name, key_type=u64, leaf_type=u64, size=10240) For example: BPF_PERCPU_HASH(start, struct request *); This creates NUM_CPU hashes named start where the key is a struct request *, and the value defaults to u64. This is a wrapper macro for BPF_TABLE(\"percpu_hash\", ...). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 7. BPF_PERCPU_HASH","id":"175","title":"7. BPF_PERCPU_HASH"},"176":{"body":"Syntax: BPF_PERCPU_ARRAY(name [, leaf_type [, size]]) Creates NUM_CPU int-indexed arrays which are optimized for fastest lookup and update, named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way. Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. In other words, BPF_PERCPU_ARRAY elements cannot be larger than 32KB in size. Defaults: BPF_PERCPU_ARRAY(name, leaf_type=u64, size=10240) For example: BPF_PERCPU_ARRAY(counts, u64, 32); This creates NUM_CPU arrays named counts where with 32 buckets and 64-bit integer values. This is a wrapper macro for BPF_TABLE(\"percpu_array\", ...). Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 8. BPF_PERCPU_ARRAY","id":"176","title":"8. BPF_PERCPU_ARRAY"},"177":{"body":"Syntax: BPF_LPM_TRIE(name [, key_type [, leaf_type [, size]]]) Creates a longest prefix match trie map named name, with optional parameters. Defaults: BPF_LPM_TRIE(name, key_type=u64, leaf_type=u64, size=10240) For example: BPF_LPM_TRIE(trie, struct key_v6); This creates an LPM trie map named trie where the key is a struct key_v6, and the value defaults to u64. This is a wrapper macro to BPF_F_TABLE(\"lpm_trie\", ..., BPF_F_NO_PREALLOC). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 9. BPF_LPM_TRIE","id":"177","title":"9. BPF_LPM_TRIE"},"178":{"body":"Syntax: BPF_PROG_ARRAY(name, size) This creates a program array named name with size entries. Each entry of the array is either a file descriptor to a bpf program or NULL. The array acts as a jump table so that bpf programs can \"tail-call\" other bpf programs. This is a wrapper macro for BPF_TABLE(\"prog\", ...). Methods (covered later): map.call(). Examples in situ: search /examples , search /tests , assign fd","breadcrumbs":"bcc Reference Guide » 10. BPF_PROG_ARRAY","id":"178","title":"10. BPF_PROG_ARRAY"},"179":{"body":"Syntax: BPF_DEVMAP(name, size) This creates a device map named name with size entries. Each entry of the map is an ifindex to a network interface. This map is only used in XDP. For example: BPF_DEVMAP(devmap, 10); Methods (covered later): map.redirect_map(). Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 11. BPF_DEVMAP","id":"179","title":"11. BPF_DEVMAP"},"18":{"body":"如上所述, eBPF 程序的基本框架包括: 包含头文件:需要包含 等头文件。 定义许可证:需要定义许可证,通常使用 \"Dual BSD/GPL\"。 定义 BPF 函数:需要定义一个 BPF 函数,例如其名称为 handle_tp,其参数为 void *ctx,返回值为 int。通常用 C 语言编写。 使用 BPF 助手函数:在例如 BPF 函数中,可以使用 BPF 助手函数 bpf_get_current_pid_tgid() 和 bpf_printk()。 返回值","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » eBPF 程序的基本框架","id":"18","title":"eBPF 程序的基本框架"},"180":{"body":"Syntax: BPF_CPUMAP(name, size) This creates a cpu map named name with size entries. The index of the map represents the CPU id and each entry is the size of the ring buffer allocated for the CPU. This map is only used in XDP. For example: BPF_CPUMAP(cpumap, 16); Methods (covered later): map.redirect_map(). Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 12. BPF_CPUMAP","id":"180","title":"12. BPF_CPUMAP"},"181":{"body":"Syntax: BPF_XSKMAP(name, size [, \"/sys/fs/bpf/xyz\"]) This creates a xsk map named name with size entries and pin it to the bpffs as a FILE. Each entry represents one NIC's queue id. This map is only used in XDP to redirect packet to an AF_XDP socket. If the AF_XDP socket is binded to a queue which is different than the current packet's queue id, the packet will be dropped. For kernel v5.3 and latter, lookup method is available and can be used to check whether and AF_XDP socket is available for the current packet's queue id. More details at AF_XDP . For example: BPF_XSKMAP(xsks_map, 8); Methods (covered later): map.redirect_map(). map.lookup() Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 13. BPF_XSKMAP","id":"181","title":"13. BPF_XSKMAP"},"182":{"body":"Syntax: BPF_ARRAY_OF_MAPS(name, inner_map_name, size) This creates an array map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE. For example: BPF_TABLE(\"hash\", int, int, ex1, 1024);\nBPF_TABLE(\"hash\", int, int, ex2, 1024);\nBPF_ARRAY_OF_MAPS(maps_array, \"ex1\", 10);","breadcrumbs":"bcc Reference Guide » 14. BPF_ARRAY_OF_MAPS","id":"182","title":"14. BPF_ARRAY_OF_MAPS"},"183":{"body":"Syntax: BPF_HASH_OF_MAPS(name, key_type, inner_map_name, size) This creates a hash map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE. For example: BPF_ARRAY(ex1, int, 1024);\nBPF_ARRAY(ex2, int, 1024);\nBPF_HASH_OF_MAPS(maps_hash, struct custom_key, \"ex1\", 10);","breadcrumbs":"bcc Reference Guide » 15. BPF_HASH_OF_MAPS","id":"183","title":"15. BPF_HASH_OF_MAPS"},"184":{"body":"Syntax: BPF_STACK(name, leaf_type, max_entries[, flags]) Creates a stack named name with value type leaf_type and max entries max_entries. Stack and Queue maps are only available from Linux 4.20+. For example: BPF_STACK(stack, struct event, 10240); This creates a stack named stack where the value type is struct event, that holds up to 10240 entries. Methods (covered later): map.push(), map.pop(), map.peek(). Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 16. BPF_STACK","id":"184","title":"16. BPF_STACK"},"185":{"body":"Syntax: BPF_QUEUE(name, leaf_type, max_entries[, flags]) Creates a queue named name with value type leaf_type and max entries max_entries. Stack and Queue maps are only available from Linux 4.20+. For example: BPF_QUEUE(queue, struct event, 10240); This creates a queue named queue where the value type is struct event, that holds up to 10240 entries. Methods (covered later): map.push(), map.pop(), map.peek(). Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 17. BPF_QUEUE","id":"185","title":"17. BPF_QUEUE"},"186":{"body":"Syntax: BPF_SOCKHASH(name[, key_type [, max_entries) Creates a hash named name, with optional parameters. sockhash is only available from Linux 4.18+. Default: BPF_SOCKHASH(name, key_type=u32, max_entries=10240) For example: struct sock_key { u32 remote_ip4; u32 local_ip4; u32 remote_port; u32 local_port;\n};\nBPF_HASH(skh, struct sock_key, 65535); This creates a hash named skh where the key is a struct sock_key. A sockhash is a BPF map type that holds references to sock structs. Then with a new sk/msg redirect bpf helper BPF programs can use the map to redirect skbs/msgs between sockets (map.sk_redirect_hash()/map.msg_redirect_hash()). The difference between BPF_SOCKHASH and BPF_SOCKMAP is that BPF_SOCKMAP is implemented based on an array, and enforces keys to be four bytes. While BPF_SOCKHASH is implemented based on hash table, and the type of key can be specified freely. Methods (covered later): map.sock_hash_update(), map.msg_redirect_hash(), map.sk_redirect_hash(). search /tests","breadcrumbs":"bcc Reference Guide » 18. BPF_SOCKHASH","id":"186","title":"18. BPF_SOCKHASH"},"187":{"body":"Syntax: *val map.lookup(&key) Lookup the key in the map, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 19. map.lookup()","id":"187","title":"19. map.lookup()"},"188":{"body":"Syntax: *val map.lookup_or_try_init(&key, &zero) Lookup the key in the map, and return a pointer to its value if it exists, else initialize the key's value to the second argument. This is often used to initialize values to zero. If the key cannot be inserted (e.g. the map is full) then NULL is returned. Examples in situ: search /examples , search /tools Note: The old map.lookup_or_init() may cause return from the function, so lookup_or_try_init() is recommended as it does not have this side effect.","breadcrumbs":"bcc Reference Guide » 20. map.lookup_or_try_init()","id":"188","title":"20. map.lookup_or_try_init()"},"189":{"body":"Syntax: map.delete(&key) Delete the key from the hash. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 21. map.delete()","id":"189","title":"21. map.delete()"},"19":{"body":"跟踪点(tracepoints)是内核静态插桩技术,跟踪点在技术上只是放置在内核源代码中的跟踪函数,实际上就是在源码中插入的一些带有控制条件的探测点,这些探测点允许事后再添加处理函数。比如在内核中,最常见的静态跟踪方法就是 printk,即输出日志。又比如:在系统调用、调度程序事件、文件系统操作和磁盘 I/O 的开始和结束时都有跟踪点。 于 2009 年在 Linux 2.6.32 版本中首次提供。跟踪点是一种稳定的 API,数量有限。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » tracepoints","id":"19","title":"tracepoints"},"190":{"body":"Syntax: map.update(&key, &val) Associate the value in the second argument to the key, overwriting any previous value. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 22. map.update()","id":"190","title":"22. map.update()"},"191":{"body":"Syntax: map.insert(&key, &val) Associate the value in the second argument to the key, only if there was no previous value. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 23. map.insert()","id":"191","title":"23. map.insert()"},"192":{"body":"Syntax: map.increment(key[, increment_amount]) Increments the key's value by increment_amount, which defaults to 1. Used for histograms. map.increment() are not atomic. In the concurrency case. If you want more accurate results, use map.atomic_increment() instead of map.increment(). The overhead of map.increment() and map.atomic_increment() is similar. Note. When using map.atomic_increment() to operate on a BPF map of type BPF_MAP_TYPE_HASH, map.atomic_increment() does not guarantee the atomicity of the operation when the specified key does not exist. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 24. map.increment()","id":"192","title":"24. map.increment()"},"193":{"body":"Syntax: int map.get_stackid(void *ctx, u64 flags) This walks the stack found via the struct pt_regs in ctx, saves it in the stack trace map, and returns a unique ID for the stack trace. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 25. map.get_stackid()","id":"193","title":"25. map.get_stackid()"},"194":{"body":"Syntax: u64 map.perf_read(u32 cpu) This returns the hardware performance counter as configured in 5. BPF_PERF_ARRAY Examples in situ: search /tests","breadcrumbs":"bcc Reference Guide » 26. map.perf_read()","id":"194","title":"26. map.perf_read()"},"195":{"body":"Syntax: void map.call(void *ctx, int index) This invokes bpf_tail_call() to tail-call the bpf program which the index entry in BPF_PROG_ARRAY points to. A tail-call is different from the normal call. It reuses the current stack frame after jumping to another bpf program and never goes back. If the index entry is empty, it won't jump anywhere and the program execution continues as normal. For example: BPF_PROG_ARRAY(prog_array, 10); int tail_call(void *ctx) { bpf_trace_printk(\"Tail-call\\n\"); return 0;\n} int do_tail_call(void *ctx) { bpf_trace_printk(\"Original program\\n\"); prog_array.call(ctx, 2); return 0;\n} b = BPF(src_file=\"example.c\")\ntail_fn = b.load_func(\"tail_call\", BPF.KPROBE)\nprog_array = b.get_table(\"prog_array\")\nprog_array[c_int(2)] = c_int(tail_fn.fd)\nb.attach_kprobe(event=\"some_kprobe_event\", fn_name=\"do_tail_call\") This assigns tail_call() to prog_array[2]. In the end of do_tail_call(), prog_array.call(ctx, 2) tail-calls tail_call() and executes it. NOTE: To prevent infinite loop, the maximum number of tail-calls is 32 ( MAX_TAIL_CALL_CNT ). Examples in situ: search /examples , search /tests","breadcrumbs":"bcc Reference Guide » 27. map.call()","id":"195","title":"27. map.call()"},"196":{"body":"Syntax: int map.redirect_map(int index, int flags) This redirects the incoming packets based on the index entry. If the map is BPF_DEVMAP , the packet will be sent to the transmit queue of the network interface that the entry points to. If the map is BPF_CPUMAP , the packet will be sent to the ring buffer of the index CPU and be processed by the CPU later. If the map is BPF_XSKMAP , the packet will be sent to the AF_XDP socket attached to the queue. If the packet is redirected successfully, the function will return XDP_REDIRECT. Otherwise, it will return XDP_ABORTED to discard the packet. For example: BPF_DEVMAP(devmap, 1); int redirect_example(struct xdp_md *ctx) { return devmap.redirect_map(0, 0);\n}\nint xdp_dummy(struct xdp_md *ctx) { return XDP_PASS;\n} ip = pyroute2.IPRoute()\nidx = ip.link_lookup(ifname=\"eth1\")[0] b = bcc.BPF(src_file=\"example.c\") devmap = b.get_table(\"devmap\")\ndevmap[c_uint32(0)] = c_int(idx) in_fn = b.load_func(\"redirect_example\", BPF.XDP)\nout_fn = b.load_func(\"xdp_dummy\", BPF.XDP)\nb.attach_xdp(\"eth0\", in_fn, 0)\nb.attach_xdp(\"eth1\", out_fn, 0) Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 28. map.redirect_map()","id":"196","title":"28. map.redirect_map()"},"197":{"body":"Syntax: int map.push(&val, int flags) Push an element onto a Stack or Queue table. Passing BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full. Returns 0 on success, negative error on failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 29. map.push()","id":"197","title":"29. map.push()"},"198":{"body":"Syntax: int map.pop(&val) Pop an element from a Stack or Queue table. *val is populated with the result. Unlike peeking, popping removes the element. Returns 0 on success, negative error on failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 30. map.pop()","id":"198","title":"30. map.pop()"},"199":{"body":"Syntax: int map.peek(&val) Peek an element at the head of a Stack or Queue table. *val is populated with the result. Unlike popping, peeking does not remove the element. Returns 0 on success, negative error on failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 31. map.peek()","id":"199","title":"31. map.peek()"},"2":{"body":"对于浏览器而言,JavaScript 的引入带来的可编程性开启了一场巨大的革命,使浏览器发展成为几乎独立的操作系统。现在让我们回到 eBPF:为了理解 eBPF 对 Linux 内核的可编程性影响,对 Linux 内核的结构以及它如何与应用程序和硬件进行交互有一个高层次的理解是有帮助的[4]。 kernel-arch Linux 内核的主要目的是抽象出硬件或虚拟硬件,并提供一个一致的API(系统调用),允许应用程序运行和共享资源。为了实现这个目的,我们维护了一系列子系统和层,以分配这些责任[5]。每个子系统通常允许某种程度的配置,以考虑到用户的不同需求。如果不能配置所需的行为,就需要改变内核,从历史上看,改变内核的行为,或者让用户编写的程序能够在内核中运行,就有两种选择: 本地支持内核模块 写一个内核模块 改变内核源代码,并说服Linux内核社区相信这种改变是必要的。等待几年,让新的内核版本成为一种商品。 定期修复它,因为每个内核版本都可能破坏它。由于缺乏安全边界,冒着破坏你的Linux内核的风险 实际上,两种方案都不常用,前者成本太高,后者则几乎没有可移植性。 有了 eBPF,就有了一个新的选择,可以重新编程 Linux 内核的行为,而不需要改变内核的源代码或加载内核模块,同时保证在不同内核版本之间一定程度上的行为一致性和兼容性、以及安全性[6]。为了实现这个目的,eBPF 程序也需要有一套对应的 API,允许用户定义的应用程序运行和共享资源 --- 换句话说,某种意义上讲 eBPF 虚拟机也提供了一套类似于系统调用的机制,借助 eBPF 和用户态通信的机制,Wasm 虚拟机和用户态应用也可以获得这套“系统调用”的完整使用权,一方面能可编程地扩展传统的系统调用的能力,另一方面能在网络、文件系统等许多层次实现更高效的可编程 IO 处理。 new-os 正如上图所示,当今的 Linux 内核正在向一个新的内核模型演化:用户定义的应用程序可以在内核态和用户态同时执行,用户态通过传统的系统调用访问系统资源,内核态则通过 BPF Helper Calls 和系统的各个部分完成交互。截止 2023 年初,内核中的 eBPF 虚拟机中已经有 220 多个Helper 系统接口,涵盖了非常多的应用场景。 值得注意的是,BPF Helper Call 和系统调用二者并不是竞争关系,它们的编程模型和有性能优势的场景完全不同,也不会完全替代对方。对 Wasm 和 Wasi 相关生态来说,情况也类似,专门设计的 wasi 接口需要经历一个漫长的标准化过程,但可能在特定场景能为用户态应用获取更佳的性能和可移植性保证,而 eBPF 在保证沙箱本质和可移植性的前提下,可以提供一个快速灵活的扩展系统接口的方案。 目前的 eBPF 仍然处于早期阶段,但是借助当前 eBPF 提供的内核接口和用户态交互的能力,经由 Wasm-bpf 的系统接口转换,Wasm 虚拟机中的应用已经几乎有能力获取内核以及用户态任意一个函数调用的数据和返回值(kprobe,uprobe...);以很低的代价收集和理解所有系统调用,并获取所有网络操作的数据包和套接字级别的数据(tracepoint,socket...);在网络包处理解决方案中添加额外的协议分析器,并轻松地编程任何转发逻辑(XDP,TC...),以满足不断变化的需求,而无需离开Linux内核的数据包处理环境。 不仅如此,eBPF 还有能力往用户空间任意进程的任意地址写入数据(bpf_probe_write_user[7]),有限度地修改内核函数的返回值(bpf_override_return[8]),甚至在内核态直接执行某些系统调用[9];所幸的是,eBPF 在加载进内核之前对字节码会进行严格的安全检查,确保没有内存越界等操作,同时,许多可能会扩大攻击面、带来安全风险的功能都是需要在编译内核时明确选择启用才能使用的;在 Wasm 虚拟机将字节码加载进内核之前,也可以明确选择启用或者禁用某些 eBPF 功能,以确保沙箱的安全性。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF 的未来:内核的 JavaScript 可编程接口","id":"2","title":"eBPF 的未来:内核的 JavaScript 可编程接口"},"20":{"body":"eBPF 程序的开发和使用流程可以概括为如下几个步骤: 定义 eBPF 程序的接口和类型:这包括定义 eBPF 程序的接口函数,定义和实现 eBPF 内核映射(maps)和共享内存(perf events),以及定义和使用 eBPF 内核帮助函数(helpers)。 编写 eBPF 程序的代码:这包括编写 eBPF 程序的主要逻辑,实现 eBPF 内核映射的读写操作,以及使用 eBPF 内核帮助函数。 编译 eBPF 程序:这包括使用 eBPF 编译器(例如 clang)将 eBPF 程序代码编译为 eBPF 字节码,并生成可执行的 eBPF 内核模块。ecc 本质上也是调用 clang 编译器来编译 eBPF 程序。 加载 eBPF 程序到内核:这包括将编译好的 eBPF 内核模块加载到 Linux 内核中,并将 eBPF 程序附加到指定的内核事件上。 使用 eBPF 程序:这包括监测 eBPF 程序的运行情况,并使用 eBPF 内核映射和共享内存进行数据交换和共享。 在实际开发中,还可能需要进行其他的步骤,例如配置编译和加载参数,管理 eBPF 内核模块和内核映射,以及使用其他高级功能等。 需要注意的是,BPF 程序的执行是在内核空间进行的,因此需要使用特殊的工具和技术来编写、编译和调试 BPF 程序。eunomia-bpf 是一个开源的 BPF 编译器和工具包,它可以帮助开发者快速和简单地编写和运行 BPF 程序。 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 总结","id":"20","title":"总结"},"200":{"body":"Syntax: int map.sock_hash_update(struct bpf_sock_ops *skops, &key, int flags) Add an entry to, or update a sockhash map referencing sockets. The skops is used as a new value for the entry associated to key. flags is one of: BPF_NOEXIST: The entry for key must not exist in the map.\nBPF_EXIST: The entry for key must already exist in the map.\nBPF_ANY: No condition on the existence of the entry for key. If the map has eBPF programs (parser and verdict), those will be inherited by the socket being added. If the socket is already attached to eBPF programs, this results in an error. Return 0 on success, or a negative error in case of failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 32. map.sock_hash_update()","id":"200","title":"32. map.sock_hash_update()"},"201":{"body":"Syntax: int map.msg_redirect_hash(struct sk_msg_buff *msg, void *key, u64 flags) This helper is used in programs implementing policies at the socket level. If the message msg is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress path otherwise). This is the only flag supported for now. Return SK_PASS on success, or SK_DROP on error. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 33. map.msg_redirect_hash()","id":"201","title":"33. map.msg_redirect_hash()"},"202":{"body":"Syntax: int map.sk_redirect_hash(struct sk_buff *skb, void *key, u64 flags) This helper is used in programs implementing policies at the skb socket level. If the sk_buff skb is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress otherwise). This is the only flag supported for now. Return SK_PASS on success, or SK_DROP on error. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 34. map.sk_redirect_hash()","id":"202","title":"34. map.sk_redirect_hash()"},"203":{"body":"Depending on which BPF helpers are used, a GPL-compatible license is required. The special BCC macro BPF_LICENSE specifies the license of the BPF program. You can set the license as a comment in your source code, but the kernel has a special interface to specify it programmatically. If you need to use GPL-only helpers, it is recommended to specify the macro in your C code so that the kernel can understand it: // SPDX-License-Identifier: GPL-2.0+\n#define BPF_LICENSE GPL Otherwise, the kernel may reject loading your program (see the error description below). Note that it supports multiple words and quotes are not necessary: // SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause\n#define BPF_LICENSE Dual BSD/GPL Check the BPF helpers reference to see which helpers are GPL-only and what the kernel understands as GPL-compatible. If the macro is not specified, BCC will automatically define the license of the program as GPL.","breadcrumbs":"bcc Reference Guide » Licensing","id":"203","title":"Licensing"},"204":{"body":"One of jobs for rewriter is to turn implicit memory accesses to explicit ones using kernel helpers. Recent kernel introduced a config option ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE which will be set for architectures who user address space and kernel address are disjoint. x86 and arm has this config option set while s390 does not. If ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE is not set, the bpf old helper bpf_probe_read() will not be available. Some existing users may have implicit memory accesses to access user memory, so using bpf_probe_read_kernel() will cause their application to fail. Therefore, for non-s390, the rewriter will use bpf_probe_read() for these implicit memory accesses. For s390, bpf_probe_read_kernel() is used as default and users should use bpf_probe_read_user() explicitly when accessing user memories.","breadcrumbs":"bcc Reference Guide » Rewriter","id":"204","title":"Rewriter"},"205":{"body":"","breadcrumbs":"bcc Reference Guide » bcc Python","id":"205","title":"bcc Python"},"206":{"body":"Constructors.","breadcrumbs":"bcc Reference Guide » Initialization","id":"206","title":"Initialization"},"207":{"body":"Syntax: BPF({text=BPF_program | src_file=filename} [, usdt_contexts=[USDT_object, ...]] [, cflags=[arg1, ...]] [, debug=int]) Creates a BPF object. This is the main object for defining a BPF program, and interacting with its output. Exactly one of text or src_file must be supplied (not both). The cflags specifies additional arguments to be passed to the compiler, for example -DMACRO_NAME=value or -I/include/path. The arguments are passed as an array, with each element being an additional argument. Note that strings are not split on whitespace, so each argument must be a different element of the array, e.g. [\"-include\", \"header.h\"]. The debug flags control debug output, and can be or'ed together: DEBUG_LLVM_IR = 0x1 compiled LLVM IR DEBUG_BPF = 0x2 loaded BPF bytecode and register state on branches DEBUG_PREPROCESSOR = 0x4 pre-processor result DEBUG_SOURCE = 0x8 ASM instructions embedded with source DEBUG_BPF_REGISTER_STATE = 0x10 register state on all instructions in addition to DEBUG_BPF DEBUG_BTF = 0x20 print the messages from the libbpf library. Examples: # define entire BPF program in one line:\nBPF(text='int do_trace(void *ctx) { bpf_trace_printk(\"hit!\\\\n\"); return 0; }'); # define program as a variable:\nprog = \"\"\"\nint hello(void *ctx) { bpf_trace_printk(\"Hello, World!\\\\n\"); return 0;\n}\n\"\"\"\nb = BPF(text=prog) # source a file:\nb = BPF(src_file = \"vfsreadlat.c\") # include a USDT object:\nu = USDT(pid=int(pid))\n[...]\nb = BPF(text=bpf_text, usdt_contexts=[u]) # add include paths:\nu = BPF(text=prog, cflags=[\"-I/path/to/include\"]) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. BPF","id":"207","title":"1. BPF"},"208":{"body":"Syntax: USDT({pid=pid | path=path}) Creates an object to instrument User Statically-Defined Tracing (USDT) probes. Its primary method is enable_probe(). Arguments: pid: attach to this process ID. path: instrument USDT probes from this binary path. Examples: # include a USDT object:\nu = USDT(pid=int(pid))\n[...]\nb = BPF(text=bpf_text, usdt_contexts=[u]) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. USDT","id":"208","title":"2. USDT"},"209":{"body":"","breadcrumbs":"bcc Reference Guide » Events","id":"209","title":"Events"},"21":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第二篇,在 eBPF 中使用 kprobe 捕获 unlink 系统调用。","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用","id":"21","title":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用"},"210":{"body":"Syntax: BPF.attach_kprobe(event=\"event\", fn_name=\"name\") Instruments the kernel function event() using kernel dynamic tracing of the function entry, and attaches our C defined function name() to be called when the kernel function is called. For example: b.attach_kprobe(event=\"sys_clone\", fn_name=\"do_trace\") This will instrument the kernel sys_clone() function, which will then run our BPF defined do_trace() function each time it is called. You can call attach_kprobe() more than once, and attach your BPF function to multiple kernel functions. You can also call attach_kprobe() more than once to attach multiple BPF functions to the same kernel function. See the previous kprobes section for how to instrument arguments from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. attach_kprobe()","id":"210","title":"1. attach_kprobe()"},"211":{"body":"Syntax: BPF.attach_kretprobe(event=\"event\", fn_name=\"name\" [, maxactive=int]) Instruments the return of the kernel function event() using kernel dynamic tracing of the function return, and attaches our C defined function name() to be called when the kernel function returns. For example: b.attach_kretprobe(event=\"vfs_read\", fn_name=\"do_return\") This will instrument the kernel vfs_read() function, which will then run our BPF defined do_return() function each time it is called. You can call attach_kretprobe() more than once, and attach your BPF function to multiple kernel function returns. You can also call attach_kretprobe() more than once to attach multiple BPF functions to the same kernel function return. When a kretprobe is installed on a kernel function, there is a limit on how many parallel calls it can catch. You can change that limit with maxactive. See the kprobes documentation for its default value. See the previous kretprobes section for how to instrument the return value from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. attach_kretprobe()","id":"211","title":"2. attach_kretprobe()"},"212":{"body":"Syntax: BPF.attach_tracepoint(tp=\"tracepoint\", fn_name=\"name\") Instruments the kernel tracepoint described by tracepoint, and when hit, runs the BPF function name(). This is an explicit way to instrument tracepoints. The TRACEPOINT_PROBE syntax, covered in the earlier tracepoints section, is an alternate method with the advantage of auto-declaring an args struct containing the tracepoint arguments. With attach_tracepoint(), the tracepoint arguments need to be declared in the BPF program. For example: # define BPF program\nbpf_text = \"\"\"\n#include struct urandom_read_args { // from /sys/kernel/debug/tracing/events/random/urandom_read/format u64 __unused__; u32 got_bits; u32 pool_left; u32 input_left;\n}; int printarg(struct urandom_read_args *args) { bpf_trace_printk(\"%d\\\\n\", args->got_bits); return 0;\n};\n\"\"\" # load BPF program\nb = BPF(text=bpf_text)\nb.attach_tracepoint(\"random:urandom_read\", \"printarg\") Notice how the first argument to printarg() is now our defined struct. Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. attach_tracepoint()","id":"212","title":"3. attach_tracepoint()"},"213":{"body":"Syntax: BPF.attach_uprobe(name=\"location\", sym=\"symbol\", fn_name=\"name\" [, sym_off=int]), BPF.attach_uprobe(name=\"location\", sym_re=\"regex\", fn_name=\"name\"), BPF.attach_uprobe(name=\"location\", addr=int, fn_name=\"name\") Instruments the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function entry, and attach our C defined function name() to be called whenever the user-level function is called. If sym_off is given, the function is attached to the offset within the symbol. The real address addr may be supplied in place of sym, in which case sym must be set to its default value. If the file is a non-PIE executable, addr must be a virtual address, otherwise it must be an offset relative to the file load address. Instead of a symbol name, a regular expression can be provided in sym_re. The uprobe will then attach to symbols that match the provided regular expression. Libraries can be given in the name argument without the lib prefix, or with the full path (/usr/lib/...). Binaries can be given only with the full path (/bin/sh). For example: b.attach_uprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\") This will instrument strlen() function from libc, and call our BPF function count() when it is called. Note how the \"lib\" in \"libc\" is not necessary to specify. Other examples: b.attach_uprobe(name=\"c\", sym=\"getaddrinfo\", fn_name=\"do_entry\")\nb.attach_uprobe(name=\"/usr/bin/python\", sym=\"main\", fn_name=\"do_main\") You can call attach_uprobe() more than once, and attach your BPF function to multiple user-level functions. See the previous uprobes section for how to instrument arguments from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. attach_uprobe()","id":"213","title":"4. attach_uprobe()"},"214":{"body":"Syntax: BPF.attach_uretprobe(name=\"location\", sym=\"symbol\", fn_name=\"name\") Instruments the return of the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function return, and attach our C defined function name() to be called whenever the user-level function returns. For example: b.attach_uretprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\") This will instrument strlen() function from libc, and call our BPF function count() when it returns. Other examples: b.attach_uretprobe(name=\"c\", sym=\"getaddrinfo\", fn_name=\"do_return\")\nb.attach_uretprobe(name=\"/usr/bin/python\", sym=\"main\", fn_name=\"do_main\") You can call attach_uretprobe() more than once, and attach your BPF function to multiple user-level functions. See the previous uretprobes section for how to instrument the return value from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. attach_uretprobe()","id":"214","title":"5. attach_uretprobe()"},"215":{"body":"Syntax: USDT.enable_probe(probe=probe, fn_name=name) Attaches a BPF C function name to the USDT probe probe. Example: # enable USDT probe from given PID\nu = USDT(pid=int(pid))\nu.enable_probe(probe=\"http__server__request\", fn_name=\"do_trace\") To check if your binary has USDT probes, and what they are, you can run readelf -n binary and check the stap debug section. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 6. USDT.enable_probe()","id":"215","title":"6. USDT.enable_probe()"},"216":{"body":"Syntax: BPF.attach_raw_tracepoint(tp=\"tracepoint\", fn_name=\"name\") Instruments the kernel raw tracepoint described by tracepoint (event only, no category), and when hit, runs the BPF function name(). This is an explicit way to instrument tracepoints. The RAW_TRACEPOINT_PROBE syntax, covered in the earlier raw tracepoints section, is an alternate method. For example: b.attach_raw_tracepoint(\"sched_switch\", \"do_trace\") Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 7. attach_raw_tracepoint()","id":"216","title":"7. attach_raw_tracepoint()"},"217":{"body":"Syntax: BPF.attach_raw_socket(fn, dev) Attaches a BPF function to the specified network interface. The fn must be the type of BPF.function and the bpf_prog type needs to be BPF_PROG_TYPE_SOCKET_FILTER (fn=BPF.load_func(func_name, BPF.SOCKET_FILTER)) fn.sock is a non-blocking raw socket that was created and bound to dev. All network packets processed by dev are copied to the recv-q of fn.sock after being processed by bpf_prog. Try to recv packet form fn.sock with rev/recvfrom/recvmsg. Note that if the recv-q is not read in time after the recv-q is full, the copied packets will be discarded. We can use this feature to capture network packets just like tcpdump. We can use ss --bpf --packet -p to observe fn.sock. Example: BPF.attach_raw_socket(bpf_func, ifname) Examples in situ: search /examples","breadcrumbs":"bcc Reference Guide » 8. attach_raw_socket()","id":"217","title":"8. attach_raw_socket()"},"218":{"body":"Syntax: BPF.attach_xdp(dev=\"device\", fn=b.load_func(\"fn_name\",BPF.XDP), flags) Instruments the network driver described by dev , and then receives the packet, run the BPF function fn_name() with flags. Here is a list of optional flags. # from xdp_flags uapi/linux/if_link.h\nXDP_FLAGS_UPDATE_IF_NOEXIST = (1 << 0)\nXDP_FLAGS_SKB_MODE = (1 << 1)\nXDP_FLAGS_DRV_MODE = (1 << 2)\nXDP_FLAGS_HW_MODE = (1 << 3)\nXDP_FLAGS_REPLACE = (1 << 4) You can use flags like this BPF.attach_xdp(dev=\"device\", fn=b.load_func(\"fn_name\",BPF.XDP), flags=BPF.XDP_FLAGS_UPDATE_IF_NOEXIST) The default value of flags is 0. This means if there is no xdp program with device, the fn will run with that device. If there is an xdp program running with device, the old program will be replaced with new fn program. Currently, bcc does not support XDP_FLAGS_REPLACE flag. The following are the descriptions of other flags. 1. XDP_FLAGS_UPDATE_IF_NOEXIST If an XDP program is already attached to the specified driver, attaching the XDP program again will fail. 2. XDP_FLAGS_SKB_MODE Driver doesn’t have support for XDP, but the kernel fakes it. XDP program works, but there’s no real performance benefit because packets are handed to kernel stack anyways which then emulates XDP – this is usually supported with generic network drivers used in home computers, laptops, and virtualized HW. 3. XDP_FLAGS_DRV_MODE A driver has XDP support and can hand then to XDP without kernel stack interaction – Few drivers can support it and those are usually for enterprise HW. 4. XDP_FLAGS_HW_MODE XDP can be loaded and executed directly on the NIC – just a handful of NICs can do that. For example: b.attach_xdp(dev=\"ens1\", fn=b.load_func(\"do_xdp\", BPF.XDP)) This will instrument the network device ens1 , which will then run our BPF defined do_xdp() function each time it receives packets. Don't forget to call b.remove_xdp(\"ens1\") at the end! Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 9. attach_xdp()","id":"218","title":"9. attach_xdp()"},"219":{"body":"Syntax: BPF.attach_func(fn, attachable_fd, attach_type [, flags]) Attaches a BPF function of the specified type to a particular attachable_fd. if the attach_type is BPF_FLOW_DISSECTOR, the function is expected to attach to current net namespace and attachable_fd must be 0. For example: b.attach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)\nb.attach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT) Note. When attached to \"global\" hooks (xdp, tc, lwt, cgroup). If the \"BPF function\" is no longer needed after the program terminates, be sure to call detach_func when the program exits. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 10. attach_func()","id":"219","title":"10. attach_func()"},"22":{"body":"开发人员在内核或者模块的调试过程中,往往会需要要知道其中的一些函数有无被调用、何时被调用、执行是否正确以及函数的入参和返回值是什么等等。比较简单的做法是在内核代码对应的函数中添加日志打印信息,但这种方式往往需要重新编译内核或模块,重新启动设备之类的,操作较为复杂甚至可能会破坏原有的代码执行过程。 而利用kprobes技术,用户可以定义自己的回调函数,然后在内核或者模块中几乎所有的函数中(有些函数是不可探测的,例如kprobes自身的相关实现函数,后文会有详细说明)动态的插入探测点,当内核执行流程执行到指定的探测函数时,会调用该回调函数,用户即可收集所需的信息了,同时内核最后还会回到原本的正常执行流程。如果用户已经收集足够的信息,不再需要继续探测,则同样可以动态地移除探测点。因此kprobes技术具有对内核执行流程影响小和操作方便的优点。 kprobes技术包括的3种探测手段分别时kprobe、jprobe和kretprobe。首先kprobe是最基本的探测方式,是实现后两种的基础,它可以在任意的位置放置探测点(就连函数内部的某条指令处也可以),它提供了探测点的调用前、调用后和内存访问出错3种回调方式,分别是pre_handler、post_handler和fault_handler,其中pre_handler函数将在被探测指令被执行前回调,post_handler会在被探测指令执行完毕后回调(注意不是被探测函数),fault_handler会在内存访问出错时被调用;jprobe基于kprobe实现,它用于获取被探测函数的入参值;最后kretprobe从名字中就可以看出其用途了,它同样基于kprobe实现,用于获取被探测函数的返回值。 kprobes的技术原理并不仅仅包含存软件的实现方案,它也需要硬件架构提供支持。其中涉及硬件架构相关的是CPU的异常处理和单步调试技术,前者用于让程序的执行流程陷入到用户注册的回调函数中去,而后者则用于单步执行被探测点指令,因此并不是所有的架构均支持,目前kprobes技术已经支持多种架构,包括i386、x86_64、ppc64、ia64、sparc64、arm、ppc和mips(有些架构实现可能并不完全,具体可参考内核的Documentation/kprobes.txt)。 kprobes的特点与使用限制: kprobes允许在同一个被被探测位置注册多个kprobe,但是目前jprobe却不可以;同时也不允许以其他的jprobe回调函数和kprobe的post_handler回调函数作为被探测点。 一般情况下,可以探测内核中的任何函数,包括中断处理函数。不过在kernel/kprobes.c和arch/*/kernel/kprobes.c程序中用于实现kprobes自身的函数是不允许被探测的,另外还有do_page_fault和notifier_call_chain; 如果以一个内联函数为探测点,则kprobes可能无法保证对该函数的所有实例都注册探测点。由于gcc可能会自动将某些函数优化为内联函数,因此可能无法达到用户预期的探测效果; 一个探测点的回调函数可能会修改被探测函数运行的上下文,例如通过修改内核的数据结构或者保存与struct pt_regs结构体中的触发探测器之前寄存器信息。因此kprobes可以被用来安装bug修复代码或者注入故障测试代码; kprobes会避免在处理探测点函数时再次调用另一个探测点的回调函数,例如在printk()函数上注册了探测点,则在它的回调函数中可能再次调用printk函数,此时将不再触发printk探测点的回调,仅仅时增加了kprobe结构体中nmissed字段的数值; 在kprobes的注册和注销过程中不会使用mutex锁和动态的申请内存; kprobes回调函数的运行期间是关闭内核抢占的,同时也可能在关闭中断的情况下执行,具体要视CPU架构而定。因此不论在何种情况下,在回调函数中不要调用会放弃CPU的函数(如信号量、mutex锁等); kretprobe通过替换返回地址为预定义的trampoline的地址来实现,因此栈回溯和gcc内嵌函数__builtin_return_address()调用将返回trampoline的地址而不是真正的被探测函数的返回地址; 如果一个函数的调用次数和返回次数不相等,则在类似这样的函数上注册kretprobe将可能不会达到预期的效果,例如do_exit()函数会存在问题,而do_execve()函数和do_fork()函数不会; 如果当在进入和退出一个函数时,CPU运行在非当前任务所有的栈上,那么往该函数上注册kretprobe可能会导致不可预料的后果,因此,kprobes不支持在X86_64的结构下为__switch_to()函数注册kretprobe,将直接返回-EINVAL。","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » kprobes技术背景","id":"22","title":"kprobes技术背景"},"220":{"body":"Syntax: BPF.detach_func(fn, attachable_fd, attach_type) Detaches a BPF function of the specified type. For example: b.detach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)\nb.detach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT) Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 11. detach_func()","id":"220","title":"11. detach_func()"},"221":{"body":"Syntax: BPF.detach_kprobe(event=\"event\", fn_name=\"name\") Detach a kprobe handler function of the specified event. For example: b.detach_kprobe(event=\"__page_cache_alloc\", fn_name=\"trace_func_entry\")","breadcrumbs":"bcc Reference Guide » 12. detach_kprobe()","id":"221","title":"12. detach_kprobe()"},"222":{"body":"Syntax: BPF.detach_kretprobe(event=\"event\", fn_name=\"name\") Detach a kretprobe handler function of the specified event. For example: b.detach_kretprobe(event=\"__page_cache_alloc\", fn_name=\"trace_func_return\")","breadcrumbs":"bcc Reference Guide » 13. detach_kretprobe()","id":"222","title":"13. detach_kretprobe()"},"223":{"body":"","breadcrumbs":"bcc Reference Guide » Debug Output","id":"223","title":"Debug Output"},"224":{"body":"Syntax: BPF.trace_print(fmt=\"fields\") This method continually reads the globally shared /sys/kernel/debug/tracing/trace_pipe file and prints its contents. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred. Arguments: fmt: optional, and can contain a field formatting string. It defaults to None. Examples: # print trace_pipe output as-is:\nb.trace_print() # print PID and message:\nb.trace_print(fmt=\"{1} {5}\") Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. trace_print()","id":"224","title":"1. trace_print()"},"225":{"body":"Syntax: BPF.trace_fields(nonblocking=False) This method reads one line from the globally shared /sys/kernel/debug/tracing/trace_pipe file and returns it as fields. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred. Arguments: nonblocking: optional, defaults to False. When set to True, the program will not block waiting for input. Examples: while 1: try: (task, pid, cpu, flags, ts, msg) = b.trace_fields() except ValueError: continue [...] Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. trace_fields()","id":"225","title":"2. trace_fields()"},"226":{"body":"Normal output from a BPF program is either: per-event: using PERF_EVENT_OUTPUT, open_perf_buffer(), and perf_buffer_poll(). map summary: using items(), or print_log2_hist(), covered in the Maps section.","breadcrumbs":"bcc Reference Guide » Output APIs","id":"226","title":"Output APIs"},"227":{"body":"Syntax: BPF.perf_buffer_poll(timeout=T) This polls from all open perf ring buffers, calling the callback function that was provided when calling open_perf_buffer for each entry. The timeout parameter is optional and measured in milliseconds. In its absence, polling continues indefinitely. Example: # loop with callback to print_event\nb[\"events\"].open_perf_buffer(print_event)\nwhile 1: try: b.perf_buffer_poll() except KeyboardInterrupt: exit(); Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. perf_buffer_poll()","id":"227","title":"1. perf_buffer_poll()"},"228":{"body":"Syntax: BPF.ring_buffer_poll(timeout=T) This polls from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry. The timeout parameter is optional and measured in milliseconds. In its absence, polling continues until there is no more data or the callback returns a negative value. Example: # loop with callback to print_event\nb[\"events\"].open_ring_buffer(print_event)\nwhile 1: try: b.ring_buffer_poll(30) except KeyboardInterrupt: exit(); Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 2. ring_buffer_poll()","id":"228","title":"2. ring_buffer_poll()"},"229":{"body":"Syntax: BPF.ring_buffer_consume() This consumes from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry. Unlike ring_buffer_poll, this method does not poll for data before attempting to consume. This reduces latency at the expense of higher CPU consumption. If you are unsure which to use, use ring_buffer_poll. Example: # loop with callback to print_event\nb[\"events\"].open_ring_buffer(print_event)\nwhile 1: try: b.ring_buffer_consume() except KeyboardInterrupt: exit(); Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 3. ring_buffer_consume()","id":"229","title":"3. ring_buffer_consume()"},"23":{"body":"#include \"vmlinux.h\"\n#include \n#include \n#include char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; SEC(\"kprobe/do_unlinkat\")\nint BPF_KPROBE(do_unlinkat, int dfd, struct filename *name)\n{ pid_t pid; const char *filename; pid = bpf_get_current_pid_tgid() >> 32; filename = BPF_CORE_READ(name, name); bpf_printk(\"KPROBE ENTRY pid = %d, filename = %s\\n\", pid, filename); return 0;\n} SEC(\"kretprobe/do_unlinkat\")\nint BPF_KRETPROBE(do_unlinkat_exit, long ret)\n{ pid_t pid; pid = bpf_get_current_pid_tgid() >> 32; bpf_printk(\"KPROBE EXIT: pid = %d, ret = %ld\\n\", pid, ret); return 0;\n} kprobe 是 eBPF 用于处理内核空间入口和出口(返回)探针(kprobe 和 kretprobe)的一个例子。它将 kprobe 和 kretprobe BPF 程序附加到 do_unlinkat() 函数上,并使用 bpf_printk() 宏分别记录 PID、文件名和返回值。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。 要编译这个程序,请使用 ecc 工具: $ ecc kprobe-link.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... 然后运行: sudo ecli package.json 在另外一个窗口中: touch test1\nrm test1\ntouch test2\nrm test2 在 /sys/kernel/debug/tracing/trace_pipe 文件中,应该能看到类似下面的 kprobe 演示输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe rm-9346 [005] d..3 4710.951696: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test1 rm-9346 [005] d..4 4710.951819: bpf_trace_printk: KPROBE EXIT: ret = 0 rm-9346 [005] d..3 4710.951852: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test2 rm-9346 [005] d..4 4710.951895: bpf_trace_printk: KPROBE EXIT: ret = 0","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » kprobe","id":"23","title":"kprobe"},"230":{"body":"Maps are BPF data stores, and are used in bcc to implement a table, and then higher level objects on top of tables, including hashes and histograms.","breadcrumbs":"bcc Reference Guide » Map APIs","id":"230","title":"Map APIs"},"231":{"body":"Syntax: BPF.get_table(name) Returns a table object. This is no longer used, as tables can now be read as items from BPF. Eg: BPF[name]. Examples: counts = b.get_table(\"counts\") counts = b[\"counts\"] These are equivalent.","breadcrumbs":"bcc Reference Guide » 1. get_table()","id":"231","title":"1. get_table()"},"232":{"body":"Syntax: table.open_perf_buffers(callback, page_cnt=N, lost_cb=None) This operates on a table as defined in BPF as BPF_PERF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the perf ring buffer. This is part of the recommended mechanism for transferring per-event data from kernel to user space. The size of the perf ring buffer can be specified via the page_cnt parameter, which must be a power of two number of pages and defaults to 8. If the callback is not processing data fast enough, some submitted data may be lost. lost_cb will be called to log / monitor the lost count. If lost_cb is the default None value, it will just print a line of message to stderr. Example: # process event\ndef print_event(cpu, data, size): event = ct.cast(data, ct.POINTER(Data)).contents [...] # loop with callback to print_event\nb[\"events\"].open_perf_buffer(print_event)\nwhile 1: try: b.perf_buffer_poll() except KeyboardInterrupt: exit() Note that the data structure transferred will need to be declared in C in the BPF program. For example: // define output data structure in C\nstruct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_PERF_OUTPUT(events);\n[...] In Python, you can either let bcc generate the data structure from C declaration automatically (recommended): def print_event(cpu, data, size): event = b[\"events\"].event(data)\n[...] or define it manually: # define output data structure in Python\nTASK_COMM_LEN = 16 # linux/sched.h\nclass Data(ct.Structure): _fields_ = [(\"pid\", ct.c_ulonglong), (\"ts\", ct.c_ulonglong), (\"comm\", ct.c_char * TASK_COMM_LEN)] def print_event(cpu, data, size): event = ct.cast(data, ct.POINTER(Data)).contents\n[...] Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. open_perf_buffer()","id":"232","title":"2. open_perf_buffer()"},"233":{"body":"Syntax: table.items() Returns an array of the keys in a table. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. Example: # print output\nprint(\"%10s %s\" % (\"COUNT\", \"STRING\"))\ncounts = b.get_table(\"counts\")\nfor k, v in sorted(counts.items(), key=lambda counts: counts[1].value): print(\"%10d \\\"%s\\\"\" % (v.value, k.c.encode('string-escape'))) This example also uses the sorted() method to sort by value. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. items()","id":"233","title":"3. items()"},"234":{"body":"Syntax: table.values() Returns an array of the values in a table.","breadcrumbs":"bcc Reference Guide » 4. values()","id":"234","title":"4. values()"},"235":{"body":"Syntax: table.clear() Clears the table: deletes all entries. Example: # print map summary every second:\nwhile True: time.sleep(1) print(\"%-8s\\n\" % time.strftime(\"%H:%M:%S\"), end=\"\") dist.print_log2_hist(sym + \" return:\") dist.clear() Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. clear()","id":"235","title":"5. clear()"},"236":{"body":"Syntax: table.items_lookup_and_delete_batch() Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. It also clears the table: deletes all entries. You should rather use table.items_lookup_and_delete_batch() than table.items() followed by table.clear(). It requires kernel v5.6. Example: # print call rate per second:\nprint(\"%9s-%9s-%8s-%9s\" % (\"PID\", \"COMM\", \"fname\", \"counter\"))\nwhile True: for k, v in sorted(b['map'].items_lookup_and_delete_batch(), key=lambda kv: (kv[0]).pid): print(\"%9s-%9s-%8s-%9d\" % (k.pid, k.comm, k.fname, v.counter)) sleep(1)","breadcrumbs":"bcc Reference Guide » 6. items_lookup_and_delete_batch()","id":"236","title":"6. items_lookup_and_delete_batch()"},"237":{"body":"Syntax: table.items_lookup_batch() Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. You should rather use table.items_lookup_batch() than table.items(). It requires kernel v5.6. Example: # print current value of map:\nprint(\"%9s-%9s-%8s-%9s\" % (\"PID\", \"COMM\", \"fname\", \"counter\"))\nwhile True: for k, v in sorted(b['map'].items_lookup_batch(), key=lambda kv: (kv[0]).pid): print(\"%9s-%9s-%8s-%9d\" % (k.pid, k.comm, k.fname, v.counter))","breadcrumbs":"bcc Reference Guide » 7. items_lookup_batch()","id":"237","title":"7. items_lookup_batch()"},"238":{"body":"Syntax: table.items_delete_batch(keys) It clears all entries of a BPF_HASH map when keys is None. It is more efficient than table.clear() since it generates only one system call. You can delete a subset of a map by giving an array of keys as parameter. Those keys and their associated values will be deleted. It requires kernel v5.6. Arguments: keys is optional and by default is None.","breadcrumbs":"bcc Reference Guide » 8. items_delete_batch()","id":"238","title":"8. items_delete_batch()"},"239":{"body":"Syntax: table.items_update_batch(keys, values) Update all the provided keys with new values. The two arguments must be the same length and within the map limits (between 1 and the maximum entries). It requires kernel v5.6. Arguments: keys is the list of keys to be updated values is the list containing the new values.","breadcrumbs":"bcc Reference Guide » 9. items_update_batch()","id":"239","title":"9. items_update_batch()"},"24":{"body":"通过本文的示例,我们学习了如何使用 eBPF 的 kprobe 和 kretprobe 捕获 unlink 系统调用。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 本文是 eBPF 入门开发实践教程的第二篇。下一篇文章将介绍如何在 eBPF 中使用 fentry 监测捕获 unlink 系统调用。 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » 总结","id":"24","title":"总结"},"240":{"body":"Syntax: table.print_log2_hist(val_type=\"value\", section_header=\"Bucket ptr\", section_print_fn=None) Prints a table as a log2 histogram in ASCII. The table must be stored as log2, which can be done using the BPF function bpf_log2l(). Arguments: val_type: optional, column header. section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each. section_print_fn: if section_print_fn is not None, it will be passed the bucket value. Example: b = BPF(text=\"\"\"\nBPF_HISTOGRAM(dist); int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)\n{ dist.increment(bpf_log2l(req->__data_len / 1024)); return 0;\n}\n\"\"\")\n[...] b[\"dist\"].print_log2_hist(\"kbytes\") Output: kbytes : count distribution 0 -> 1 : 3 | | 2 -> 3 : 0 | | 4 -> 7 : 211 |********** | 8 -> 15 : 0 | | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 1 | | 128 -> 255 : 800 |**************************************| This output shows a multi-modal distribution, with the largest mode of 128->255 kbytes and a count of 800. This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the count column is passed to user space. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 10. print_log2_hist()","id":"240","title":"10. print_log2_hist()"},"241":{"body":"Syntax: table.print_linear_hist(val_type=\"value\", section_header=\"Bucket ptr\", section_print_fn=None) Prints a table as a linear histogram in ASCII. This is intended to visualize small integer ranges, eg, 0 to 100. Arguments: val_type: optional, column header. section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each. section_print_fn: if section_print_fn is not None, it will be passed the bucket value. Example: b = BPF(text=\"\"\"\nBPF_HISTOGRAM(dist); int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)\n{ dist.increment(req->__data_len / 1024); return 0;\n}\n\"\"\")\n[...] b[\"dist\"].print_linear_hist(\"kbytes\") Output: kbytes : count distribution 0 : 3 |****** | 1 : 0 | | 2 : 0 | | 3 : 0 | | 4 : 19 |****************************************| 5 : 0 | | 6 : 0 | | 7 : 0 | | 8 : 4 |******** | 9 : 0 | | 10 : 0 | | 11 : 0 | | 12 : 0 | | 13 : 0 | | 14 : 0 | | 15 : 0 | | 16 : 2 |**** |\n[...] This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the values in the count column are passed to user space. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 11. print_linear_hist()","id":"241","title":"11. print_linear_hist()"},"242":{"body":"Syntax: table.open_ring_buffer(callback, ctx=None) This operates on a table as defined in BPF as BPF_RINGBUF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the ringbuf ring buffer. This is part of the new (Linux 5.8+) recommended mechanism for transferring per-event data from kernel to user space. Unlike perf buffers, ringbuf sizes are specified within the BPF program, as part of the BPF_RINGBUF_OUTPUT macro. If the callback is not processing data fast enough, some submitted data may be lost. In this case, the events should be polled more frequently and/or the size of the ring buffer should be increased. Example: # process event\ndef print_event(ctx, data, size): event = ct.cast(data, ct.POINTER(Data)).contents [...] # loop with callback to print_event\nb[\"events\"].open_ring_buffer(print_event)\nwhile 1: try: b.ring_buffer_poll() except KeyboardInterrupt: exit() Note that the data structure transferred will need to be declared in C in the BPF program. For example: // define output data structure in C\nstruct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_RINGBUF_OUTPUT(events, 8);\n[...] In Python, you can either let bcc generate the data structure from C declaration automatically (recommended): def print_event(ctx, data, size): event = b[\"events\"].event(data)\n[...] or define it manually: # define output data structure in Python\nTASK_COMM_LEN = 16 # linux/sched.h\nclass Data(ct.Structure): _fields_ = [(\"pid\", ct.c_ulonglong), (\"ts\", ct.c_ulonglong), (\"comm\", ct.c_char * TASK_COMM_LEN)] def print_event(ctx, data, size): event = ct.cast(data, ct.POINTER(Data)).contents\n[...] Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 12. open_ring_buffer()","id":"242","title":"12. open_ring_buffer()"},"243":{"body":"Syntax: table.push(leaf, flags=0) Push an element onto a Stack or Queue table. Raises an exception if the operation does not succeed. Passing QueueStack.BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 13. push()","id":"243","title":"13. push()"},"244":{"body":"Syntax: leaf = table.pop() Pop an element from a Stack or Queue table. Unlike peek(), pop() removes the element from the table before returning it. Raises a KeyError exception if the operation does not succeed. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 14. pop()","id":"244","title":"14. pop()"},"245":{"body":"Syntax: leaf = table.peek() Peek the element at the head of a Stack or Queue table. Unlike pop(), peek() does not remove the element from the table. Raises an exception if the operation does not succeed. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 15. peek()","id":"245","title":"15. peek()"},"246":{"body":"Some helper methods provided by bcc. Note that since we're in Python, we can import any Python library and their methods, including, for example, the libraries: argparse, collections, ctypes, datetime, re, socket, struct, subprocess, sys, and time.","breadcrumbs":"bcc Reference Guide » Helpers","id":"246","title":"Helpers"},"247":{"body":"Syntax: BPF.ksym(addr) Translate a kernel memory address into a kernel function name, which is returned. Example: print(\"kernel function: \" + b.ksym(addr)) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. ksym()","id":"247","title":"1. ksym()"},"248":{"body":"Syntax: BPF.ksymname(name) Translate a kernel name into an address. This is the reverse of ksym. Returns -1 when the function name is unknown. Example: print(\"kernel address: %x\" % b.ksymname(\"vfs_read\")) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. ksymname()","id":"248","title":"2. ksymname()"},"249":{"body":"Syntax: BPF.sym(addr, pid, show_module=False, show_offset=False) Translate a memory address into a function name for a pid, which is returned. A pid of less than zero will access the kernel symbol cache. The show_module and show_offset parameters control whether the module in which the symbol lies should be displayed, and whether the instruction offset from the beginning of the symbol should be displayed. These extra parameters default to False. Example: print(\"function: \" + b.sym(addr, pid)) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. sym()","id":"249","title":"3. sym()"},"25":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第三篇,在 eBPF 中使用 fentry 捕获 unlink 系统调用。","breadcrumbs":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用 » eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用","id":"25","title":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用"},"250":{"body":"Syntax: BPF.num_open_kprobes() Returns the number of open k[ret]probes. Can be useful for scenarios where event_re is used while attaching and detaching probes. Excludes perf_events readers. Example: b.attach_kprobe(event_re=pattern, fn_name=\"trace_count\")\nmatched = b.num_open_kprobes()\nif matched == 0: print(\"0 functions matched by \\\"%s\\\". Exiting.\" % args.pattern) exit() Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. num_open_kprobes()","id":"250","title":"4. num_open_kprobes()"},"251":{"body":"Syntax: BPF.get_syscall_fnname(name : str) Return the corresponding kernel function name of the syscall. This helper function will try different prefixes and use the right one to concatenate with the syscall name. Note that the return value may vary in different versions of linux kernel and sometimes it will causing trouble. (see #2590 ) Example: print(\"The function name of %s in kernel is %s\" % (\"clone\", b.get_syscall_fnname(\"clone\")))\n# sys_clone or __x64_sys_clone or ... Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. get_syscall_fnname()","id":"251","title":"5. get_syscall_fnname()"},"252":{"body":"See the \"Understanding eBPF verifier messages\" section in the kernel source under Documentation/networking/filter.txt.","breadcrumbs":"bcc Reference Guide » BPF Errors","id":"252","title":"BPF Errors"},"253":{"body":"This can be due to trying to read memory directly, instead of operating on memory on the BPF stack. All kernel memory reads must be passed via bpf_probe_read_kernel() to copy kernel memory into the BPF stack, which can be automatic by the bcc rewriter in some cases of simple dereferencing. bpf_probe_read_kernel() does all the required checks. Example: bpf: Permission denied\n0: (bf) r6 = r1\n1: (79) r7 = *(u64 *)(r6 +80)\n2: (85) call 14\n3: (bf) r8 = r0\n[...]\n23: (69) r1 = *(u16 *)(r7 +16)\nR7 invalid mem access 'inv' Traceback (most recent call last): File \"./tcpaccept\", line 179, in b = BPF(text=bpf_text) File \"/usr/lib/python2.7/dist-packages/bcc/__init__.py\", line 172, in __init__ self._trace_autoload() File \"/usr/lib/python2.7/dist-packages/bcc/__init__.py\", line 612, in _trace_autoload fn = self.load_func(func_name, BPF.KPROBE) File \"/usr/lib/python2.7/dist-packages/bcc/__init__.py\", line 212, in load_func raise Exception(\"Failed to load BPF program %s\" % func_name)\nException: Failed to load BPF program kretprobe__inet_csk_accept","breadcrumbs":"bcc Reference Guide » 1. Invalid mem access","id":"253","title":"1. Invalid mem access"},"254":{"body":"This error happens when a GPL-only helper is called from a non-GPL BPF program. To fix this error, do not use GPL-only helpers from a proprietary BPF program, or relicense the BPF program under a GPL-compatible license. Check which BPF helpers are GPL-only, and what licenses are considered GPL-compatible. Example calling bpf_get_stackid(), a GPL-only BPF helper, from a proprietary program (#define BPF_LICENSE Proprietary): bpf: Failed to load program: Invalid argument\n[...]\n8: (85) call bpf_get_stackid#27\ncannot call GPL only function from proprietary program","breadcrumbs":"bcc Reference Guide » 2. Cannot call GPL only function from proprietary program","id":"254","title":"2. Cannot call GPL only function from proprietary program"},"255":{"body":"","breadcrumbs":"bcc Reference Guide » Environment Variables","id":"255","title":"Environment Variables"},"256":{"body":"eBPF program compilation needs kernel sources or kernel headers with headers compiled. In case your kernel sources are at a non-standard location where BCC cannot find then, its possible to provide BCC the absolute path of the location by setting BCC_KERNEL_SOURCE to it.","breadcrumbs":"bcc Reference Guide » 1. Kernel source directory","id":"256","title":"1. Kernel source directory"},"257":{"body":"By default, BCC stores the LINUX_VERSION_CODE in the generated eBPF object which is then passed along to the kernel when the eBPF program is loaded. Sometimes this is quite inconvenient especially when the kernel is slightly updated such as an LTS kernel release. Its extremely unlikely the slight mismatch would cause any issues with the loaded eBPF program. By setting BCC_LINUX_VERSION_CODE to the version of the kernel that's running, the check for verifying the kernel version can be bypassed. This is needed for programs that use kprobes. This needs to be encoded in the format: (VERSION * 65536) + (PATCHLEVEL * 256) + SUBLEVEL. For example, if the running kernel is 4.9.10, then can set export BCC_LINUX_VERSION_CODE=264458 to override the kernel version check successfully.","breadcrumbs":"bcc Reference Guide » 2. Kernel version overriding","id":"257","title":"2. Kernel version overriding"},"258":{"body":"Some tools have special filtering capabitilies, the main use case is to trace processes running in containers, but those mechanisms are generic and could be used in other cases as well.","breadcrumbs":"Special Filtering » Special Filtering","id":"258","title":"Special Filtering"},"259":{"body":"Some tools have an option to filter by cgroup by referencing a pinned BPF hash map managed externally. Examples of commands: # ./opensnoop --cgroupmap /sys/fs/bpf/test01\n# ./execsnoop --cgroupmap /sys/fs/bpf/test01\n# ./tcpconnect --cgroupmap /sys/fs/bpf/test01\n# ./tcpaccept --cgroupmap /sys/fs/bpf/test01\n# ./tcptracer --cgroupmap /sys/fs/bpf/test01 The commands above will only display results from processes that belong to one of the cgroups whose id, returned by bpf_get_current_cgroup_id(), is in the pinned BPF hash map. The BPF hash map can be created by: # bpftool map create /sys/fs/bpf/test01 type hash key 8 value 8 entries 128 \\ name cgroupset flags 0 To get a shell in a new cgroup, you can use: # systemd-run --pty --unit test bash The shell will be running in the cgroup /sys/fs/cgroup/unified/system.slice/test.service. The cgroup id can be discovered using the name_to_handle_at() system call. In the examples/cgroupid, you will find an example of program to get the cgroup id. # cd examples/cgroupid\n# make\n# ./cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service or, using Docker: # cd examples/cgroupid\n# docker build -t cgroupid .\n# docker run --rm --privileged -v /sys/fs/cgroup:/sys/fs/cgroup \\ cgroupid cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service This prints the cgroup id as a hexadecimal string in the host endianness such as 77 16 00 00 01 00 00 00. # FILE=/sys/fs/bpf/test01\n# CGROUPID_HEX=\"77 16 00 00 01 00 00 00\"\n# bpftool map update pinned $FILE key hex $CGROUPID_HEX value hex 00 00 00 00 00 00 00 00 any Now that the shell started by systemd-run has its cgroup id in the BPF hash map, bcc tools will display results from this shell. Cgroups can be added and removed from the BPF hash map without restarting the bcc tool. This feature is useful for integrating bcc tools in external projects.","breadcrumbs":"Special Filtering » Filtering by cgroups","id":"259","title":"Filtering by cgroups"},"26":{"body":"#include \"vmlinux.h\"\n#include \n#include char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; SEC(\"fentry/do_unlinkat\")\nint BPF_PROG(do_unlinkat, int dfd, struct filename *name)\n{ pid_t pid; pid = bpf_get_current_pid_tgid() >> 32; bpf_printk(\"fentry: pid = %d, filename = %s\\n\", pid, name->name); return 0;\n} SEC(\"fexit/do_unlinkat\")\nint BPF_PROG(do_unlinkat_exit, int dfd, struct filename *name, long ret)\n{ pid_t pid; pid = bpf_get_current_pid_tgid() >> 32; bpf_printk(\"fexit: pid = %d, filename = %s, ret = %ld\\n\", pid, name->name, ret); return 0;\n} 这段程序通过定义两个函数,分别附加到 do_unlinkat 和 do_unlinkat_exit 上。这两个函数分别在进入 do_unlinkat 和离开 do_unlinkat 时执行。这两个函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数来获取调用 do_unlinkat 的进程 ID,文件名和返回值,并在内核日志中打印出来。 与 kprobes 相比,fentry 和 fexit 程序有更高的性能和可用性。在这个例子中,我们可以直接访问函数的指针参数,就像在普通的 C 代码中一样,而不需要使用各种读取帮助程序。fexit 和 kretprobe 程序最大的区别在于,fexit 程序可以访问函数的输入参数和返回值,而 kretprobe 只能访问返回值。 从 5.5 内核开始,fentry 和 fexit 程序可用。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: $ ecc fentry-link.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 在另外一个窗口中: touch test_file\nrm test_file\ntouch test_file2\nrm test_file2 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe rm-9290 [004] d..2 4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file rm-9290 [004] d..2 4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file, ret = 0 rm-9290 [004] d..2 4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file2 rm-9290 [004] d..2 4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file2, ret = 0","breadcrumbs":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用 » Fentry","id":"26","title":"Fentry"},"260":{"body":"The BPF hash map can be created by: # bpftool map create /sys/fs/bpf/mnt_ns_set type hash key 8 value 4 entries 128 \\ name mnt_ns_set flags 0 Execute the execsnoop tool filtering only the mount namespaces in /sys/fs/bpf/mnt_ns_set: # tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set Start a terminal in a new mount namespace: # unshare -m bash Update the hash map with the mount namespace ID of the terminal above: FILE=/sys/fs/bpf/mnt_ns_set\nif [ $(printf '\\1' | od -dAn) -eq 1 ]; then HOST_ENDIAN_CMD=tac\nelse HOST_ENDIAN_CMD=cat\nfi NS_ID_HEX=\"$(printf '%016x' $(stat -Lc '%i' /proc/self/ns/mnt) | sed 's/.\\{2\\}/&\\n/g' | $HOST_ENDIAN_CMD)\"\nbpftool map update pinned $FILE key hex $NS_ID_HEX value hex 00 00 00 00 any Execute a command in this terminal: # ping kinvolk.io You'll see how on the execsnoop terminal you started above the call is logged: # tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set\n[sudo] password for mvb:\nPCOMM PID PPID RET ARGS\nping 8096 7970 0 /bin/ping kinvolk.io","breadcrumbs":"Special Filtering » Filtering by mount by namespace","id":"260","title":"Filtering by mount by namespace"},"261":{"body":"This tutorial covers how to use bcc tools to quickly solve performance, troubleshooting, and networking issues. If you want to develop new bcc tools, see tutorial_bcc_python_developer.md for that tutorial. It is assumed for this tutorial that bcc is already installed, and you can run tools like execsnoop successfully. See INSTALL.md . This uses enhancements added to the Linux 4.x series.","breadcrumbs":"bcc Tutorial » bcc Tutorial","id":"261","title":"bcc Tutorial"},"262":{"body":"Some quick wins.","breadcrumbs":"bcc Tutorial » Observability","id":"262","title":"Observability"},"263":{"body":"Before using bcc, you should start with the Linux basics. One reference is the Linux Performance Analysis in 60,000 Milliseconds post, which covers these commands: uptime dmesg | tail vmstat 1 mpstat -P ALL 1 pidstat 1 iostat -xz 1 free -m sar -n DEV 1 sar -n TCP,ETCP 1 top","breadcrumbs":"bcc Tutorial » 0. Before bcc","id":"263","title":"0. Before bcc"},"264":{"body":"Here is a generic checklist for performance investigations with bcc, first as a list, then in detail: execsnoop opensnoop ext4slower (or btrfs*, xfs*, zfs*) biolatency biosnoop cachestat tcpconnect tcpaccept tcpretrans runqlat profile These tools may be installed on your system under /usr/share/bcc/tools, or you can run them from the bcc github repo under /tools where they have a .py extension. Browse the 50+ tools available for more analysis options. 1.1 execsnoop # ./execsnoop\nPCOMM PID RET ARGS\nsupervise 9660 0 ./run\nsupervise 9661 0 ./run\nmkdir 9662 0 /bin/mkdir -p ./main\nrun 9663 0 ./run\n[...] execsnoop prints one line of output for each new process. Check for short-lived processes. These can consume CPU resources, but not show up in most monitoring tools that periodically take snapshots of which processes are running. It works by tracing exec(), not the fork(), so it will catch many types of new processes but not all (eg, it won't see an application launching working processes, that doesn't exec() anything else). More examples . 1.2. opensnoop # ./opensnoop\nPID COMM FD ERR PATH\n1565 redis-server 5 0 /proc/1565/stat\n1565 redis-server 5 0 /proc/1565/stat\n1565 redis-server 5 0 /proc/1565/stat\n1603 snmpd 9 0 /proc/net/dev\n1603 snmpd 11 0 /proc/net/if_inet6\n1603 snmpd -1 2 /sys/class/net/eth0/device/vendor\n1603 snmpd 11 0 /proc/sys/net/ipv4/neigh/eth0/retrans_time_ms\n1603 snmpd 11 0 /proc/sys/net/ipv6/neigh/eth0/retrans_time_ms\n1603 snmpd 11 0 /proc/sys/net/ipv6/conf/eth0/forwarding\n[...] opensnoop prints one line of output for each open() syscall, including details. Files that are opened can tell you a lot about how applications work: identifying their data files, config files, and log files. Sometimes applications can misbehave, and perform poorly, when they are constantly attempting to read files that do not exist. opensnoop gives you a quick look. More examples . 1.3. ext4slower (or btrfs*, xfs*, zfs*) # ./ext4slower\nTracing ext4 operations slower than 10 ms\nTIME COMM PID T BYTES OFF_KB LAT(ms) FILENAME\n06:35:01 cron 16464 R 1249 0 16.05 common-auth\n06:35:01 cron 16463 R 1249 0 16.04 common-auth\n06:35:01 cron 16465 R 1249 0 16.03 common-auth\n06:35:01 cron 16465 R 4096 0 10.62 login.defs\n06:35:01 cron 16464 R 4096 0 10.61 login.defs ext4slower traces the ext4 file system and times common operations, and then only prints those that exceed a threshold. This is great for identifying or exonerating one type of performance issue: show individually slow disk i/O via the file system. Disks process I/O asynchronously, and it can be difficult to associate latency at that layer with the latency applications experience. Tracing higher up in the kernel stack, at the VFS -> file system interface, will more closely match what an application suffers. Use this tool to identify if file system latency exceeds a given threshold. Similar tools exist in bcc for other file systems: btrfsslower, xfsslower, and zfsslower. There is also fileslower, which works at the VFS layer and traces everything (although at some higher overhead). More examples . 1.4. biolatency # ./biolatency\nTracing block device I/O... Hit Ctrl-C to end.\n^C usecs : count distribution 0 -> 1 : 0 | | 2 -> 3 : 0 | | 4 -> 7 : 0 | | 8 -> 15 : 0 | | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 1 | | 128 -> 255 : 12 |******** | 256 -> 511 : 15 |********** | 512 -> 1023 : 43 |******************************* | 1024 -> 2047 : 52 |**************************************| 2048 -> 4095 : 47 |********************************** | 4096 -> 8191 : 52 |**************************************| 8192 -> 16383 : 36 |************************** | 16384 -> 32767 : 15 |********** | 32768 -> 65535 : 2 |* | 65536 -> 131071 : 2 |* | biolatency traces disk I/O latency (time from device issue to completion), and when the tool ends (Ctrl-C, or a given interval), it prints a histogram summary of the latency. This is great for understanding disk I/O latency beyond the average times given by tools like iostat. I/O latency outliers will be visible at the end of the distribution, as well as multi-mode distributions. More examples . 1.5. biosnoop # ./biosnoop\nTIME(s) COMM PID DISK T SECTOR BYTES LAT(ms)\n0.000004001 supervise 1950 xvda1 W 13092560 4096 0.74\n0.000178002 supervise 1950 xvda1 W 13092432 4096 0.61\n0.001469001 supervise 1956 xvda1 W 13092440 4096 1.24\n0.001588002 supervise 1956 xvda1 W 13115128 4096 1.09\n1.022346001 supervise 1950 xvda1 W 13115272 4096 0.98\n1.022568002 supervise 1950 xvda1 W 13188496 4096 0.93\n[...] biosnoop prints a line of output for each disk I/O, with details including latency (time from device issue to completion). This allows you to examine disk I/O in more detail, and look for time-ordered patterns (eg, reads queueing behind writes). Note that the output will be verbose if your system performs disk I/O at a high rate. More examples . 1.6. cachestat # ./cachestat HITS MISSES DIRTIES READ_HIT% WRITE_HIT% BUFFERS_MB CACHED_MB 1074 44 13 94.9% 2.9% 1 223 2195 170 8 92.5% 6.8% 1 143 182 53 56 53.6% 1.3% 1 143 62480 40960 20480 40.6% 19.8% 1 223 7 2 5 22.2% 22.2% 1 223 348 0 0 100.0% 0.0% 1 223\n[...] cachestat prints a one line summary every second (or every custom interval) showing statistics from the file system cache. Use this to identify a low cache hit ratio, and a high rate of misses: which gives one lead for performance tuning. More examples . 1.7. tcpconnect # ./tcpconnect\nPID COMM IP SADDR DADDR DPORT\n1479 telnet 4 127.0.0.1 127.0.0.1 23\n1469 curl 4 10.201.219.236 54.245.105.25 80\n1469 curl 4 10.201.219.236 54.67.101.145 80\n1991 telnet 6 ::1 ::1 23\n2015 ssh 6 fe80::2000:bff:fe82:3ac fe80::2000:bff:fe82:3ac 22\n[...] tcpconnect prints one line of output for every active TCP connection (eg, via connect()), with details including source and destination addresses. Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder. More examples . 1.8. tcpaccept # ./tcpaccept\nPID COMM IP RADDR LADDR LPORT\n907 sshd 4 192.168.56.1 192.168.56.102 22\n907 sshd 4 127.0.0.1 127.0.0.1 22\n5389 perl 6 1234:ab12:2040:5020:2299:0:5:0 1234:ab12:2040:5020:2299:0:5:0 7001\n[...] tcpaccept prints one line of output for every passive TCP connection (eg, via accept()), with details including source and destination addresses. Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder. More examples . 1.9. tcpretrans # ./tcpretrans\nTIME PID IP LADDR:LPORT T> RADDR:RPORT STATE\n01:55:05 0 4 10.153.223.157:22 R> 69.53.245.40:34619 ESTABLISHED\n01:55:05 0 4 10.153.223.157:22 R> 69.53.245.40:34619 ESTABLISHED\n01:55:17 0 4 10.153.223.157:22 R> 69.53.245.40:22957 ESTABLISHED\n[...] tcprerans prints one line of output for every TCP retransmit packet, with details including source and destination addresses, and kernel state of the TCP connection. TCP retransmissions cause latency and throughput issues. For ESTABLISHED retransmits, look for patterns with networks. For SYN_SENT, this may point to target kernel CPU saturation and kernel packet drops. More examples . 1.10. runqlat # ./runqlat\nTracing run queue latency... Hit Ctrl-C to end.\n^C usecs : count distribution 0 -> 1 : 233 |*********** | 2 -> 3 : 742 |************************************ | 4 -> 7 : 203 |********** | 8 -> 15 : 173 |******** | 16 -> 31 : 24 |* | 32 -> 63 : 0 | | 64 -> 127 : 30 |* | 128 -> 255 : 6 | | 256 -> 511 : 3 | | 512 -> 1023 : 5 | | 1024 -> 2047 : 27 |* | 2048 -> 4095 : 30 |* | 4096 -> 8191 : 20 | | 8192 -> 16383 : 29 |* | 16384 -> 32767 : 809 |****************************************| 32768 -> 65535 : 64 |*** | runqlat times how long threads were waiting on the CPU run queues, and prints this as a histogram. This can help quantify time lost waiting for a turn on CPU, during periods of CPU saturation. More examples . 1.11. profile # ./profile\nSampling at 49 Hertz of all threads by user + kernel stack... Hit Ctrl-C to end.\n^C 00007f31d76c3251 [unknown] 47a2c1e752bf47f7 [unknown] - sign-file (8877) 1 ffffffff813d0af8 __clear_user ffffffff813d5277 iov_iter_zero ffffffff814ec5f2 read_iter_zero ffffffff8120be9d __vfs_read ffffffff8120c385 vfs_read ffffffff8120d786 sys_read ffffffff817cc076 entry_SYSCALL_64_fastpath 00007fc5652ad9b0 read - dd (25036) 4 0000000000400542 func_a 0000000000400598 main 00007f12a133e830 __libc_start_main 083e258d4c544155 [unknown] - func_ab (13549) 5 [...] ffffffff8105eb66 native_safe_halt ffffffff8103659e default_idle ffffffff81036d1f arch_cpu_idle ffffffff810bba5a default_idle_call ffffffff810bbd07 cpu_startup_entry ffffffff8104df55 start_secondary - swapper/1 (0) 75 profile is a CPU profiler, which takes samples of stack traces at timed intervals, and prints a summary of unique stack traces and a count of their occurrence. Use this tool to understand the code paths that are consuming CPU resources. More examples .","breadcrumbs":"bcc Tutorial » 1. General Performance","id":"264","title":"1. General Performance"},"265":{"body":"In addition to the above tools for performance tuning, below is a checklist for bcc generic tools, first as a list, and in detail: trace argdist funccount These generic tools may be useful to provide visibility to solve your specific problems. 2.1. trace Example 1 Suppose you want to track file ownership change. There are three syscalls, chown, fchown and lchown which users can use to change file ownership. The corresponding syscall entry is SyS_[f|l]chown. The following command can be used to print out syscall parameters and the calling process user id. You can use id command to find the uid of a particular user. $ trace.py \\ 'p::SyS_chown \"file = %s, to_uid = %d, to_gid = %d, from_uid = %d\", arg1, arg2, arg3, $uid' \\ 'p::SyS_fchown \"fd = %d, to_uid = %d, to_gid = %d, from_uid = %d\", arg1, arg2, arg3, $uid' \\ 'p::SyS_lchown \"file = %s, to_uid = %d, to_gid = %d, from_uid = %d\", arg1, arg2, arg3, $uid'\nPID TID COMM FUNC -\n1269255 1269255 python3.6 SyS_lchown file = /tmp/dotsync-usisgezu/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269441 1269441 zstd SyS_chown file = /tmp/dotsync-vic7ygj0/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269255 1269255 python3.6 SyS_lchown file = /tmp/dotsync-a40zd7ev/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269442 1269442 zstd SyS_chown file = /tmp/dotsync-gzp413o_/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269255 1269255 python3.6 SyS_lchown file = /tmp/dotsync-whx4fivm/tmp/.bash_profile, to_uid = 128203, to_gid = 100, from_uid = 128203 Example 2 Suppose you want to count nonvoluntary context switches (nvcsw) in your bpf based performance monitoring tools and you do not know what is the proper method. /proc//status already tells you the number (nonvoluntary_ctxt_switches) for a pid and you can use trace.py to do a quick experiment to verify your method. With kernel source code, the nvcsw is counted at file linux/kernel/sched/core.c function __schedule and under condition !(!preempt && prev->state) // i.e., preempt || !prev->state The __schedule function is marked as notrace, and the best place to evaluate the above condition seems in sched/sched_switch tracepoint called inside function __schedule and defined in linux/include/trace/events/sched.h. trace.py already has args being the pointer to the tracepoint TP_STRUCT__entry. The above condition in function __schedule can be represented as args->prev_state == TASK_STATE_MAX || args->prev_state == 0 The below command can be used to count the involuntary context switches (per process or per pid) and compare to /proc//status or /proc//task//status for correctness, as in typical cases, involuntary context switches are not very common. $ trace.py -p 1134138 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'\nPID TID COMM FUNC\n1134138 1134140 contention_test sched_switch\n1134138 1134142 contention_test sched_switch\n...\n$ trace.py -L 1134140 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'\nPID TID COMM FUNC\n1134138 1134140 contention_test sched_switch\n1134138 1134140 contention_test sched_switch\n... Example 3 This example is related to issue 1231 and 1516 where uprobe does not work at all in certain cases. First, you can do a strace as below $ strace trace.py 'r:bash:readline \"%s\", retval'\n...\nperf_event_open(0x7ffd968212f0, -1, 0, -1, 0x8 /* PERF_FLAG_??? */) = -1 EIO (Input/output error)\n... The perf_event_open syscall returns -EIO. Digging into kernel uprobe related codes in /kernel/trace and /kernel/events directories to search EIO, the function uprobe_register is the most suspicious. Let us find whether this function is called or not and what is the return value if it is called. In one terminal using the following command to print out the return value of uprobe_register, $ trace.py 'r::uprobe_register \"ret = %d\", retval' In another terminal run the same bash uretprobe tracing example, and you should get $ trace.py 'r::uprobe_register \"ret = %d\", retval'\nPID TID COMM FUNC -\n1041401 1041401 python2.7 uprobe_register ret = -5 The -5 error code is EIO. This confirms that the following code in function uprobe_register is the most suspicious culprit. if (!inode->i_mapping->a_ops->readpage && !shmem_mapping(inode->i_mapping)) return -EIO; The shmem_mapping function is defined as bool shmem_mapping(struct address_space *mapping)\n{ return mapping->a_ops == &shmem_aops;\n} To confirm the theory, find what is inode->i_mapping->a_ops with the following command $ trace.py -I 'linux/fs.h' 'p::uprobe_register(struct inode *inode) \"a_ops = %llx\", inode->i_mapping->a_ops'\nPID TID COMM FUNC -\n814288 814288 python2.7 uprobe_register a_ops = ffffffff81a2adc0\n^C$ grep ffffffff81a2adc0 /proc/kallsyms\nffffffff81a2adc0 R empty_aops The kernel symbol empty_aops does not have readpage defined and hence the above suspicious condition is true. Further examining the kernel source code shows that overlayfs does not provide its own a_ops while some other file systems (e.g., ext4) define their own a_ops (e.g., ext4_da_aops), and ext4_da_aops defines readpage. Hence, uprobe works fine on ext4 while not on overlayfs. More examples . 2.2. argdist More examples . 2.3. funccount More examples .","breadcrumbs":"bcc Tutorial » 2. Observability with Generic Tools","id":"265","title":"2. Observability with Generic Tools"},"266":{"body":"To do.","breadcrumbs":"bcc Tutorial » Networking","id":"266","title":"Networking"},"267":{"body":"This tutorial is about developing bcc tools and programs using the Python interface. There are two parts: observability then networking. Snippets are taken from various programs in bcc: see their files for licences. Also see the bcc developer's reference_guide.md , and a tutorial for end-users of tools: tutorial.md . There is also a lua interface for bcc.","breadcrumbs":"bcc Python Developer Tutorial » bcc Python Developer Tutorial","id":"267","title":"bcc Python Developer Tutorial"},"268":{"body":"This observability tutorial contains 17 lessons, and 46 enumerated things to learn.","breadcrumbs":"bcc Python Developer Tutorial » Observability","id":"268","title":"Observability"},"269":{"body":"Start by running examples/hello_world.py , while running some commands (eg, \"ls\") in another session. It should print \"Hello, World!\" for new processes. If not, start by fixing bcc: see INSTALL.md . # ./examples/hello_world.py bash-13364 [002] d... 24573433.052937: : Hello, World! bash-13364 [003] d... 24573436.642808: : Hello, World!\n[...] Here's the code for hello_world.py: from bcc import BPF\nBPF(text='int kprobe__sys_clone(void *ctx) { bpf_trace_printk(\"Hello, World!\\\\n\"); return 0; }').trace_print() There are six things to learn from this: text='...': This defines a BPF program inline. The program is written in C. kprobe__sys_clone(): This is a short-cut for kernel dynamic tracing via kprobes. If the C function begins with kprobe__, the rest is treated as a kernel function name to instrument, in this case, sys_clone(). void *ctx: ctx has arguments, but since we aren't using them here, we'll just cast it to void *. bpf_trace_printk(): A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(), covered later. return 0;: Necessary formality (if you want to know why, see #139 ). .trace_print(): A bcc routine that reads trace_pipe and prints the output.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 1. Hello World","id":"269","title":"Lesson 1. Hello World"},"27":{"body":"这段程序是一个 eBPF 程序,通过使用 fentry 和 fexit 捕获 do_unlinkat 和 do_unlinkat_exit 函数,并通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 do_unlinkat 的进程 ID、文件名和返回值,并在内核日志中打印出来。 编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令,并通过查看 /sys/kernel/debug/tracing/trace_pipe 文件查看 eBPF 程序的输出。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用 » 总结","id":"27","title":"总结"},"270":{"body":"Write a program that traces the sys_sync() kernel function. Print \"sys_sync() called\" when it runs. Test by running sync in another session while tracing. The hello_world.py program has everything you need for this. Improve it by printing \"Tracing sys_sync()... Ctrl-C to end.\" when the program first starts. Hint: it's just Python.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 2. sys_sync()","id":"270","title":"Lesson 2. sys_sync()"},"271":{"body":"This program is in examples/tracing/hello_fields.py . Sample output (run commands in another session): # examples/tracing/hello_fields.py\nTIME(s) COMM PID MESSAGE\n24585001.174885999 sshd 1432 Hello, World!\n24585001.195710000 sshd 15780 Hello, World!\n24585001.991976000 systemd-udevd 484 Hello, World!\n24585002.276147000 bash 15787 Hello, World! Code: from bcc import BPF # define BPF program\nprog = \"\"\"\nint hello(void *ctx) { bpf_trace_printk(\"Hello, World!\\\\n\"); return 0;\n}\n\"\"\" # load BPF program\nb = BPF(text=prog)\nb.attach_kprobe(event=b.get_syscall_fnname(\"clone\"), fn_name=\"hello\") # header\nprint(\"%-18s %-16s %-6s %s\" % (\"TIME(s)\", \"COMM\", \"PID\", \"MESSAGE\")) # format output\nwhile 1: try: (task, pid, cpu, flags, ts, msg) = b.trace_fields() except ValueError: continue print(\"%-18.9f %-16s %-6d %s\" % (ts, task, pid, msg)) This is similar to hello_world.py, and traces new processes via sys_clone() again, but has a few more things to learn: prog =: This time we declare the C program as a variable, and later refer to it. This is useful if you want to add some string substitutions based on command line arguments. hello(): Now we're just declaring a C function, instead of the kprobe__ shortcut. We'll refer to this later. All C functions declared in the BPF program are expected to be executed on a probe, hence they all need to take a pt_reg* ctx as first argument. If you need to define some helper function that will not be executed on a probe, they need to be defined as static inline in order to be inlined by the compiler. Sometimes you would also need to add _always_inline function attribute to it. b.attach_kprobe(event=b.get_syscall_fnname(\"clone\"), fn_name=\"hello\"): Creates a kprobe for the kernel clone system call function, which will execute our defined hello() function. You can call attach_kprobe() more than once, and attach your C function to multiple kernel functions. b.trace_fields(): Returns a fixed set of fields from trace_pipe. Similar to trace_print(), this is handy for hacking, but for real tooling we should switch to BPF_PERF_OUTPUT().","breadcrumbs":"bcc Python Developer Tutorial » Lesson 3. hello_fields.py","id":"271","title":"Lesson 3. hello_fields.py"},"272":{"body":"Remember the days of sysadmins typing sync three times on a slow console before reboot, to give the first asynchronous sync time to complete? Then someone thought sync;sync;sync was clever, to run them all on one line, which became industry practice despite defeating the original purpose! And then sync became synchronous, so more reasons it was silly. Anyway. The following example times how quickly the do_sync function is called, and prints output if it has been called more recently than one second ago. A sync;sync;sync will print output for the 2nd and 3rd sync's: # examples/tracing/sync_timing.py\nTracing for quick sync's... Ctrl-C to end\nAt time 0.00 s: multiple syncs detected, last 95 ms ago\nAt time 0.10 s: multiple syncs detected, last 96 ms ago This program is examples/tracing/sync_timing.py : from __future__ import print_function\nfrom bcc import BPF # load BPF program\nb = BPF(text=\"\"\"\n#include BPF_HASH(last); int do_trace(struct pt_regs *ctx) { u64 ts, *tsp, delta, key = 0; // attempt to read stored timestamp tsp = last.lookup(&key); if (tsp != NULL) { delta = bpf_ktime_get_ns() - *tsp; if (delta < 1000000000) { // output if time is less than 1 second bpf_trace_printk(\"%d\\\\n\", delta / 1000000); } last.delete(&key); } // update stored timestamp ts = bpf_ktime_get_ns(); last.update(&key, &ts); return 0;\n}\n\"\"\") b.attach_kprobe(event=b.get_syscall_fnname(\"sync\"), fn_name=\"do_trace\")\nprint(\"Tracing for quick sync's... Ctrl-C to end\") # format output\nstart = 0\nwhile 1: (task, pid, cpu, flags, ts, ms) = b.trace_fields() if start == 0: start = ts ts = ts - start print(\"At time %.2f s: multiple syncs detected, last %s ms ago\" % (ts, ms)) Things to learn: bpf_ktime_get_ns(): Returns the time as nanoseconds. BPF_HASH(last): Creates a BPF map object that is a hash (associative array), called \"last\". We didn't specify any further arguments, so it defaults to key and value types of u64. key = 0: We'll only store one key/value pair in this hash, where the key is hardwired to zero. last.lookup(&key): Lookup the key in the hash, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer. if (tsp != NULL) {: The verifier requires that pointer values derived from a map lookup must be checked for a null value before they can be dereferenced and used. last.delete(&key): Delete the key from the hash. This is currently required because of a kernel bug in .update() (fixed in 4.8.10). last.update(&key, &ts): Associate the value in the 2nd argument to the key, overwriting any previous value. This records the timestamp.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 4. sync_timing.py","id":"272","title":"Lesson 4. sync_timing.py"},"273":{"body":"Modify the sync_timing.py program (prior lesson) to store the count of all kernel sync system calls (both fast and slow), and print it with the output. This count can be recorded in the BPF program by adding a new key index to the existing hash.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 5. sync_count.py","id":"273","title":"Lesson 5. sync_count.py"},"274":{"body":"Browse the examples/tracing/disksnoop.py program to see what is new. Here is some sample output: # disksnoop.py\nTIME(s) T BYTES LAT(ms)\n16458043.436012 W 4096 3.13\n16458043.437326 W 4096 4.44\n16458044.126545 R 4096 42.82\n16458044.129872 R 4096 3.24\n[...] And a code snippet: [...]\nREQ_WRITE = 1 # from include/linux/blk_types.h # load BPF program\nb = BPF(text=\"\"\"\n#include \n#include BPF_HASH(start, struct request *); void trace_start(struct pt_regs *ctx, struct request *req) { // stash start timestamp by request ptr u64 ts = bpf_ktime_get_ns(); start.update(&req, &ts);\n} void trace_completion(struct pt_regs *ctx, struct request *req) { u64 *tsp, delta; tsp = start.lookup(&req); if (tsp != 0) { delta = bpf_ktime_get_ns() - *tsp; bpf_trace_printk(\"%d %x %d\\\\n\", req->__data_len, req->cmd_flags, delta / 1000); start.delete(&req); }\n}\n\"\"\")\nif BPF.get_kprobe_functions(b'blk_start_request'): b.attach_kprobe(event=\"blk_start_request\", fn_name=\"trace_start\")\nb.attach_kprobe(event=\"blk_mq_start_request\", fn_name=\"trace_start\")\nif BPF.get_kprobe_functions(b'__blk_account_io_done'): b.attach_kprobe(event=\"__blk_account_io_done\", fn_name=\"trace_completion\")\nelse: b.attach_kprobe(event=\"blk_account_io_done\", fn_name=\"trace_completion\")\n[...] Things to learn: REQ_WRITE: We're defining a kernel constant in the Python program because we'll use it there later. If we were using REQ_WRITE in the BPF program, it should just work (without needing to be defined) with the appropriate #includes. trace_start(struct pt_regs *ctx, struct request *req): This function will later be attached to kprobes. The arguments to kprobe functions are struct pt_regs *ctx, for registers and BPF context, and then the actual arguments to the function. We'll attach this to blk_start_request(), where the first argument is struct request *. start.update(&req, &ts): We're using the pointer to the request struct as a key in our hash. What? This is commonplace in tracing. Pointers to structs turn out to be great keys, as they are unique: two structs can't have the same pointer address. (Just be careful about when it gets free'd and reused.) So what we're really doing is tagging the request struct, which describes the disk I/O, with our own timestamp, so that we can time it. There's two common keys used for storing timestamps: pointers to structs, and, thread IDs (for timing function entry to return). req->__data_len: We're dereferencing members of struct request. See its definition in the kernel source for what members are there. bcc actually rewrites these expressions to be a series of bpf_probe_read_kernel() calls. Sometimes bcc can't handle a complex dereference, and you need to call bpf_probe_read_kernel() directly. This is a pretty interesting program, and if you can understand all the code, you'll understand many important basics. We're still using the bpf_trace_printk() hack, so let's fix that next.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 6. disksnoop.py","id":"274","title":"Lesson 6. disksnoop.py"},"275":{"body":"Let's finally stop using bpf_trace_printk() and use the proper BPF_PERF_OUTPUT() interface. This will also mean we stop getting the free trace_field() members like PID and timestamp, and will need to fetch them directly. Sample output while commands are run in another session: # hello_perf_output.py\nTIME(s) COMM PID MESSAGE\n0.000000000 bash 22986 Hello, perf_output!\n0.021080275 systemd-udevd 484 Hello, perf_output!\n0.021359520 systemd-udevd 484 Hello, perf_output!\n0.021590610 systemd-udevd 484 Hello, perf_output!\n[...] Code is examples/tracing/hello_perf_output.py : from bcc import BPF # define BPF program\nprog = \"\"\"\n#include // define output data structure in C\nstruct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_PERF_OUTPUT(events); int hello(struct pt_regs *ctx) { struct data_t data = {}; data.pid = bpf_get_current_pid_tgid(); data.ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data.comm, sizeof(data.comm)); events.perf_submit(ctx, &data, sizeof(data)); return 0;\n}\n\"\"\" # load BPF program\nb = BPF(text=prog)\nb.attach_kprobe(event=b.get_syscall_fnname(\"clone\"), fn_name=\"hello\") # header\nprint(\"%-18s %-16s %-6s %s\" % (\"TIME(s)\", \"COMM\", \"PID\", \"MESSAGE\")) # process event\nstart = 0\ndef print_event(cpu, data, size): global start event = b[\"events\"].event(data) if start == 0: start = event.ts time_s = (float(event.ts - start)) / 1000000000 print(\"%-18.9f %-16s %-6d %s\" % (time_s, event.comm, event.pid, \"Hello, perf_output!\")) # loop with callback to print_event\nb[\"events\"].open_perf_buffer(print_event)\nwhile 1: b.perf_buffer_poll() Things to learn: struct data_t: This defines the C struct we'll use to pass data from kernel to user space. BPF_PERF_OUTPUT(events): This names our output channel \"events\". struct data_t data = {};: Create an empty data_t struct that we'll then populate. bpf_get_current_pid_tgid(): Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits. Should you be presenting the PID or the TGID? For a multi-threaded app, the TGID will be the same, so you need the PID to differentiate them, if that's what you want. It's also a question of expectations for the end user. bpf_get_current_comm(): Populates the first argument address with the current process name. events.perf_submit(): Submit the event for user space to read via a perf ring buffer. def print_event(): Define a Python function that will handle reading events from the events stream. b[\"events\"].event(data): Now get the event as a Python object, auto-generated from the C declaration. b[\"events\"].open_perf_buffer(print_event): Associate the Python print_event function with the events stream. while 1: b.perf_buffer_poll(): Block waiting for events.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 7. hello_perf_output.py","id":"275","title":"Lesson 7. hello_perf_output.py"},"276":{"body":"Rewrite sync_timing.py, from a prior lesson, to use BPF_PERF_OUTPUT.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 8. sync_perf_output.py","id":"276","title":"Lesson 8. sync_perf_output.py"},"277":{"body":"The following tool records a histogram of disk I/O sizes. Sample output: # bitehist.py\nTracing... Hit Ctrl-C to end.\n^C kbytes : count distribution 0 -> 1 : 3 | | 2 -> 3 : 0 | | 4 -> 7 : 211 |********** | 8 -> 15 : 0 | | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 1 | | 128 -> 255 : 800 |**************************************| Code is examples/tracing/bitehist.py : from __future__ import print_function\nfrom bcc import BPF\nfrom time import sleep # load BPF program\nb = BPF(text=\"\"\"\n#include \n#include BPF_HISTOGRAM(dist); int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)\n{ dist.increment(bpf_log2l(req->__data_len / 1024)); return 0;\n}\n\"\"\") # header\nprint(\"Tracing... Hit Ctrl-C to end.\") # trace until Ctrl-C\ntry: sleep(99999999)\nexcept KeyboardInterrupt: print() # output\nb[\"dist\"].print_log2_hist(\"kbytes\") A recap from earlier lessons: kprobe__: This prefix means the rest will be treated as a kernel function name that will be instrumented using kprobe. struct pt_regs *ctx, struct request *req: Arguments to kprobe. The ctx is registers and BPF context, the req is the first argument to the instrumented function: blk_account_io_done(). req->__data_len: Dereferencing that member. New things to learn: BPF_HISTOGRAM(dist): Defines a BPF map object that is a histogram, and names it \"dist\". dist.increment(): Increments the histogram bucket index provided as first argument by one by default. Optionally, custom increments can be passed as the second argument. bpf_log2l(): Returns the log-2 of the provided value. This becomes the index of our histogram, so that we're constructing a power-of-2 histogram. b[\"dist\"].print_log2_hist(\"kbytes\"): Prints the \"dist\" histogram as power-of-2, with a column header of \"kbytes\". The only data transferred from kernel to user space is the bucket counts, making this efficient.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 9. bitehist.py","id":"277","title":"Lesson 9. bitehist.py"},"278":{"body":"Write a program that times disk I/O, and prints a histogram of their latency. Disk I/O instrumentation and timing can be found in the disksnoop.py program from a prior lesson, and histogram code can be found in bitehist.py from a prior lesson.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 10. disklatency.py","id":"278","title":"Lesson 10. disklatency.py"},"279":{"body":"This example is split into separate Python and C files. Example output: # vfsreadlat.py 1\nTracing... Hit Ctrl-C to end. usecs : count distribution 0 -> 1 : 0 | | 2 -> 3 : 2 |*********** | 4 -> 7 : 7 |****************************************| 8 -> 15 : 4 |********************** | usecs : count distribution 0 -> 1 : 29 |****************************************| 2 -> 3 : 28 |************************************** | 4 -> 7 : 4 |***** | 8 -> 15 : 8 |*********** | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 0 | | 128 -> 255 : 0 | | 256 -> 511 : 2 |** | 512 -> 1023 : 0 | | 1024 -> 2047 : 0 | | 2048 -> 4095 : 0 | | 4096 -> 8191 : 4 |***** | 8192 -> 16383 : 6 |******** | 16384 -> 32767 : 9 |************ | 32768 -> 65535 : 6 |******** | 65536 -> 131071 : 2 |** | usecs : count distribution 0 -> 1 : 11 |****************************************| 2 -> 3 : 2 |******* | 4 -> 7 : 10 |************************************ | 8 -> 15 : 8 |***************************** | 16 -> 31 : 1 |*** | 32 -> 63 : 2 |******* |\n[...] Browse the code in examples/tracing/vfsreadlat.py and examples/tracing/vfsreadlat.c . Things to learn: b = BPF(src_file = \"vfsreadlat.c\"): Read the BPF C program from a separate source file. b.attach_kretprobe(event=\"vfs_read\", fn_name=\"do_return\"): Attaches the BPF C function do_return() to the return of the kernel function vfs_read(). This is a kretprobe: instrumenting the return from a function, rather than its entry. b[\"dist\"].clear(): Clears the histogram.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 11. vfsreadlat.py","id":"279","title":"Lesson 11. vfsreadlat.py"},"28":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第四篇,主要介绍如何捕获进程打开文件的系统调用集合,并使用全局变量在 eBPF 中过滤进程 pid。","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid","id":"28","title":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid"},"280":{"body":"Tracing while a dd if=/dev/urandom of=/dev/null bs=8k count=5 is run: # urandomread.py\nTIME(s) COMM PID GOTBITS\n24652832.956994001 smtp 24690 384\n24652837.726500999 dd 24692 65536\n24652837.727111001 dd 24692 65536\n24652837.727703001 dd 24692 65536\n24652837.728294998 dd 24692 65536\n24652837.728888001 dd 24692 65536 Hah! I caught smtp by accident. Code is examples/tracing/urandomread.py : from __future__ import print_function\nfrom bcc import BPF # load BPF program\nb = BPF(text=\"\"\"\nTRACEPOINT_PROBE(random, urandom_read) { // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format bpf_trace_printk(\"%d\\\\n\", args->got_bits); return 0;\n}\n\"\"\") # header\nprint(\"%-18s %-16s %-6s %s\" % (\"TIME(s)\", \"COMM\", \"PID\", \"GOTBITS\")) # format output\nwhile 1: try: (task, pid, cpu, flags, ts, msg) = b.trace_fields() except ValueError: continue print(\"%-18.9f %-16s %-6d %s\" % (ts, task, pid, msg)) Things to learn: TRACEPOINT_PROBE(random, urandom_read): Instrument the kernel tracepoint random:urandom_read. These have a stable API, and thus are recommend to use instead of kprobes, wherever possible. You can run perf list for a list of tracepoints. Linux >= 4.7 is required to attach BPF programs to tracepoints. args->got_bits: args is auto-populated to be a structure of the tracepoint arguments. The comment above says where you can see that structure. Eg: # cat /sys/kernel/debug/tracing/events/random/urandom_read/format\nname: urandom_read\nID: 972\nformat: field:unsigned short common_type;\toffset:0;\tsize:2;\tsigned:0; field:unsigned char common_flags;\toffset:2;\tsize:1;\tsigned:0; field:unsigned char common_preempt_count;\toffset:3;\tsize:1;\tsigned:0; field:int common_pid;\toffset:4;\tsize:4;\tsigned:1; field:int got_bits;\toffset:8;\tsize:4;\tsigned:1; field:int pool_left;\toffset:12;\tsize:4;\tsigned:1; field:int input_left;\toffset:16;\tsize:4;\tsigned:1; print fmt: \"got_bits %d nonblocking_pool_entropy_left %d input_entropy_left %d\", REC->got_bits, REC->pool_left, REC->input_left In this case, we were printing the got_bits member.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 12. urandomread.py","id":"280","title":"Lesson 12. urandomread.py"},"281":{"body":"Convert disksnoop.py from a previous lesson to use the block:block_rq_issue and block:block_rq_complete tracepoints.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 13. disksnoop.py fixed","id":"281","title":"Lesson 13. disksnoop.py fixed"},"282":{"body":"This program instruments a user-level function, the strlen() library function, and frequency counts its string argument. Example output: # strlen_count.py\nTracing strlen()... Hit Ctrl-C to end.\n^C COUNT STRING 1 \" \" 1 \"/bin/ls\" 1 \".\" 1 \"cpudist.py.1\" 1 \".bashrc\" 1 \"ls --color=auto\" 1 \"key_t\"\n[...] 10 \"a7:~# \" 10 \"/root\" 12 \"LC_ALL\" 12 \"en_US.UTF-8\" 13 \"en_US.UTF-8\" 20 \"~\" 70 \"#%^,~:-=?+/}\" 340 \"\\x01\\x1b]0;root@bgregg-test: ~\\x07\\x02root@bgregg-test:~# \" These are various strings that are being processed by this library function while tracing, along with their frequency counts. strlen() was called on \"LC_ALL\" 12 times, for example. Code is examples/tracing/strlen_count.py : from __future__ import print_function\nfrom bcc import BPF\nfrom time import sleep # load BPF program\nb = BPF(text=\"\"\"\n#include struct key_t { char c[80];\n};\nBPF_HASH(counts, struct key_t); int count(struct pt_regs *ctx) { if (!PT_REGS_PARM1(ctx)) return 0; struct key_t key = {}; u64 zero = 0, *val; bpf_probe_read_user(&key.c, sizeof(key.c), (void *)PT_REGS_PARM1(ctx)); // could also use `counts.increment(key)` val = counts.lookup_or_try_init(&key, &zero); if (val) { (*val)++; } return 0;\n};\n\"\"\")\nb.attach_uprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\") # header\nprint(\"Tracing strlen()... Hit Ctrl-C to end.\") # sleep until Ctrl-C\ntry: sleep(99999999)\nexcept KeyboardInterrupt: pass # print output\nprint(\"%10s %s\" % (\"COUNT\", \"STRING\"))\ncounts = b.get_table(\"counts\")\nfor k, v in sorted(counts.items(), key=lambda counts: counts[1].value): print(\"%10d \\\"%s\\\"\" % (v.value, k.c.encode('string-escape'))) Things to learn: PT_REGS_PARM1(ctx): This fetches the first argument to strlen(), which is the string. b.attach_uprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\"): Attach to library \"c\" (if this is the main program, use its pathname), instrument the user-level function strlen(), and on execution call our C function count().","breadcrumbs":"bcc Python Developer Tutorial » Lesson 14. strlen_count.py","id":"282","title":"Lesson 14. strlen_count.py"},"283":{"body":"This program instruments a user statically-defined tracing (USDT) probe, which is the user-level version of a kernel tracepoint. Sample output: # nodejs_http_server.py 24728\nTIME(s) COMM PID ARGS\n24653324.561322998 node 24728 path:/index.html\n24653335.343401998 node 24728 path:/images/welcome.png\n24653340.510164998 node 24728 path:/images/favicon.png Relevant code from examples/tracing/nodejs_http_server.py : from __future__ import print_function\nfrom bcc import BPF, USDT\nimport sys if len(sys.argv) < 2: print(\"USAGE: nodejs_http_server PID\") exit()\npid = sys.argv[1]\ndebug = 0 # load BPF program\nbpf_text = \"\"\"\n#include \nint do_trace(struct pt_regs *ctx) { uint64_t addr; char path[128]={0}; bpf_usdt_readarg(6, ctx, &addr); bpf_probe_read_user(&path, sizeof(path), (void *)addr); bpf_trace_printk(\"path:%s\\\\n\", path); return 0;\n};\n\"\"\" # enable USDT probe from given PID\nu = USDT(pid=int(pid))\nu.enable_probe(probe=\"http__server__request\", fn_name=\"do_trace\")\nif debug: print(u.get_text()) print(bpf_text) # initialize BPF\nb = BPF(text=bpf_text, usdt_contexts=[u]) Things to learn: bpf_usdt_readarg(6, ctx, &addr): Read the address of argument 6 from the USDT probe into addr. bpf_probe_read_user(&path, sizeof(path), (void *)addr): Now the string addr points to into our path variable. u = USDT(pid=int(pid)): Initialize USDT tracing for the given PID. u.enable_probe(probe=\"http__server__request\", fn_name=\"do_trace\"): Attach our do_trace() BPF C function to the Node.js http__server__request USDT probe. b = BPF(text=bpf_text, usdt_contexts=[u]): Need to pass in our USDT object, u, to BPF object creation.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 15. nodejs_http_server.py","id":"283","title":"Lesson 15. nodejs_http_server.py"},"284":{"body":"This is an older tutorial included as a bonus lesson. Use this for recap and to reinforce what you've already learned. This is a slightly more complex tracing example than Hello World. This program will be invoked for every task change in the kernel, and record in a BPF map the new and old pids. The C program below introduces a new concept: the prev argument. This argument is treated specially by the BCC frontend, such that accesses to this variable are read from the saved context that is passed by the kprobe infrastructure. The prototype of the args starting from position 1 should match the prototype of the kernel function being kprobed. If done so, the program will have seamless access to the function parameters. #include \n#include struct key_t { u32 prev_pid; u32 curr_pid;\n}; BPF_HASH(stats, struct key_t, u64, 1024);\nint count_sched(struct pt_regs *ctx, struct task_struct *prev) { struct key_t key = {}; u64 zero = 0, *val; key.curr_pid = bpf_get_current_pid_tgid(); key.prev_pid = prev->pid; // could also use `stats.increment(key);` val = stats.lookup_or_try_init(&key, &zero); if (val) { (*val)++; } return 0;\n} The userspace component loads the file shown above, and attaches it to the finish_task_switch kernel function. The [] operator of the BPF object gives access to each BPF_HASH in the program, allowing pass-through access to the values residing in the kernel. Use the object as you would any other python dict object: read, update, and deletes are all allowed. from bcc import BPF\nfrom time import sleep b = BPF(src_file=\"task_switch.c\")\nb.attach_kprobe(event=\"finish_task_switch\", fn_name=\"count_sched\") # generate many schedule events\nfor i in range(0, 100): sleep(0.01) for k, v in b[\"stats\"].items(): print(\"task_switch[%5d->%5d]=%u\" % (k.prev_pid, k.curr_pid, v.value)) These programs can be found in the files examples/tracing/task_switch.c and examples/tracing/task_switch.py respectively.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 16. task_switch.c","id":"284","title":"Lesson 16. task_switch.c"},"285":{"body":"For further study, see Sasha Goldshtein's linux-tracing-workshop , which contains additional labs. There are also many tools in bcc /tools to study. Please read CONTRIBUTING-SCRIPTS.md if you wish to contribute tools to bcc. At the bottom of the main README.md , you'll also find methods for contacting us. Good luck, and happy tracing!","breadcrumbs":"bcc Python Developer Tutorial » Lesson 17. Further Study","id":"285","title":"Lesson 17. Further Study"},"286":{"body":"To do.","breadcrumbs":"bcc Python Developer Tutorial » Networking","id":"286","title":"Networking"},"29":{"body":"首先,我们需要编写一段 eBPF 程序来捕获进程打开文件的系统调用,具体实现如下: #include \n#include /// @description \"Process ID to trace\"\nconst volatile int pid_target = 0; SEC(\"tracepoint/syscalls/sys_enter_openat\")\nint tracepoint__syscalls__sys_enter_openat(struct trace_event_raw_sys_enter* ctx)\n{ u64 id = bpf_get_current_pid_tgid(); u32 pid = id; if (pid_target && pid_target != pid) return false; // Use bpf_printk to print the process information bpf_printk(\"Process ID: %d enter sys openat\\n\", pid); return 0;\n} /// \"Trace open family syscalls.\"\nchar LICENSE[] SEC(\"license\") = \"GPL\"; 上面的 eBPF 程序通过定义函数 tracepoint__syscalls__sys_enter_openat 并使用 SEC 宏把它们附加到 sys_enter_openat 的 tracepoint(即在进入 openat 系统调用时执行)。这个函数通过使用 bpf_get_current_pid_tgid 函数获取调用 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: $ ecc fentry-link.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 3840345 enter sys openat <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 3840345 enter sys openat 此时,我们已经能够捕获进程打开文件的系统调用了。","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » 在 eBPF 中捕获进程打开文件的系统调用集合","id":"29","title":"在 eBPF 中捕获进程打开文件的系统调用集合"},"3":{"body":"本文不会对 eBPF 的原理做更详细的介绍,不过这里有一个学习规划和参考资料,也许会有一些价值:","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 2. 关于如何学习 eBPF 相关的开发的一些建议","id":"3","title":"2. 关于如何学习 eBPF 相关的开发的一些建议"},"30":{"body":"在上面的程序中,我们定义了一个全局变量 pid_target 来指定要捕获的进程的 pid。在 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数中,我们可以使用这个全局变量来过滤输出,只输出指定的进程的信息。 可以通过执行 ecli -h 命令来查看 opensnoop 的帮助信息: $ ecli package.json -h\nUsage: opensnoop_bpf [--help] [--version] [--verbose] [--pid_target VAR] Trace open family syscalls. Optional arguments: -h, --help shows help message and exits -v, --version prints version information and exits --verbose prints libbpf debug information --pid_target Process ID to trace Built with eunomia-bpf framework.\nSee https://github.com/eunomia-bpf/eunomia-bpf for more information. 可以通过 --pid_target 参数来指定要捕获的进程的 pid,例如: $ sudo ./ecli run package.json --pid_target 618\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 618 enter sys openat <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 618 enter sys openat","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » 使用全局变量在 eBPF 中过滤进程 pid","id":"30","title":"使用全局变量在 eBPF 中过滤进程 pid"},"31":{"body":"本文介绍了如何使用 eBPF 程序来捕获进程打开文件的系统调用。在 eBPF 程序中,我们可以通过定义 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数并使用 SEC 宏把它们附加到 sys_enter_open 和 sys_enter_openat 两个 tracepoint 来捕获进程打开文件的系统调用。我们可以使用 bpf_get_current_pid_tgid 函数获取调用 open 或 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。在 eBPF 程序中,我们还可以通过定义一个全局变量 pid_target 来指定要捕获的进程的 pid,从而过滤输出,只输出指定的进程的信息。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » 总结","id":"31","title":"总结"},"32":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第五篇,主要介绍如何使用 uprobe 捕获 bash 的 readline 函数调用。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用","id":"32","title":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用"},"33":{"body":"uprobe是一种用户空间探针,uprobe探针允许在用户空间程序中动态插桩,插桩位置包括:函数入口、特定偏移处,以及函数返回处。当我们定义uprobe时,内核会在附加的指令上创建快速断点指令(x86机器上为int3指令),当程序执行到该指令时,内核将触发事件,程序陷入到内核态,并以回调函数的方式调用探针函数,执行完探针函数再返回到用户态继续执行后序的指令。 uprobe基于文件,当一个二进制文件中的一个函数被跟踪时,所有使用到这个文件的进程都会被插桩,包括那些尚未启动的进程,这样就可以在全系统范围内跟踪系统调用。 uprobe适用于在用户态去解析一些内核态探针无法解析的流量,例如http2流量(报文header被编码,内核无法解码),https流量(加密流量,内核无法解密)。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » 什么是uprobe","id":"33","title":"什么是uprobe"},"34":{"body":"uprobe 是一种用于捕获用户空间函数调用的 eBPF 的探针,我们可以通过它来捕获用户空间程序调用的系统函数。 例如,我们可以使用 uprobe 来捕获 bash 的 readline 函数调用,从而获取用户在 bash 中输入的命令行。示例代码如下: #include \n#include \n#include #define TASK_COMM_LEN 16\n#define MAX_LINE_SIZE 80 /* Format of u[ret]probe section definition supporting auto-attach: * u[ret]probe/binary:function[+offset] * * binary can be an absolute/relative path or a filename; the latter is resolved to a * full binary path via bpf_program__attach_uprobe_opts. * * Specifying uprobe+ ensures we carry out strict matching; either \"uprobe\" must be * specified (and auto-attach is not possible) or the above format is specified for * auto-attach. */\nSEC(\"uretprobe//bin/bash:readline\")\nint BPF_KRETPROBE(printret, const void *ret)\n{ char str[MAX_LINE_SIZE]; char comm[TASK_COMM_LEN]; u32 pid; if (!ret) return 0; bpf_get_current_comm(&comm, sizeof(comm)); pid = bpf_get_current_pid_tgid() >> 32; bpf_probe_read_user_str(str, sizeof(str), ret); bpf_printk(\"PID %d (%s) read: %s \", pid, comm, str); return 0;\n}; char LICENSE[] SEC(\"license\") = \"GPL\"; 这段代码的作用是在 bash 的 readline 函数返回时执行指定的 BPF_KRETPROBE 函数,即 printret 函数。 在 printret 函数中,我们首先获取了调用 readline 函数的进程的进程名称和进程 ID,然后通过 bpf_probe_read_user_str 函数读取了用户输入的命令行字符串,最后通过 bpf_printk 函数打印出进程 ID、进程名称和输入的命令行字符串。 除此之外,我们还需要通过 SEC 宏来定义 uprobe 探针,并使用 BPF_KRETPROBE 宏来定义探针函数。 在 SEC 宏中,我们需要指定 uprobe 的类型、要捕获的二进制文件的路径和要捕获的函数名称。例如,上面的代码中的 SEC 宏的定义如下: SEC(\"uprobe//bin/bash:readline\") 这表示我们要捕获的是 /bin/bash 二进制文件中的 readline 函数。 接下来,我们需要使用 BPF_KRETPROBE 宏来定义探针函数,例如: BPF_KRETPROBE(printret, const void *ret) 这里的 printret 是探针函数的名称,const void *ret 是探针函数的参数,它代表被捕获的函数的返回值。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: $ ecc bashreadline.bpf.c bashreadline.h\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe bash-32969 [000] d..31 64001.375748: bpf_trace_printk: PID 32969 (bash) read: fff bash-32969 [000] d..31 64002.056951: bpf_trace_printk: PID 32969 (bash) read: fff 可以看到,我们成功的捕获了 bash 的 readline 函数调用,并获取了用户在 bash 中输入的命令行。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » 使用 uprobe 捕获 bash 的 readline 函数调用","id":"34","title":"使用 uprobe 捕获 bash 的 readline 函数调用"},"35":{"body":"在上述代码中,我们使用了 SEC 宏来定义了一个 uprobe 探针,它指定了要捕获的用户空间程序 (bin/bash) 和要捕获的函数 (readline)。此外,我们还使用了 BPF_KRETPROBE 宏来定义了一个用于处理 readline 函数返回值的回调函数 (printret)。该函数可以获取到 readline 函数的返回值,并将其打印到内核日志中。通过这样的方式,我们就可以使用 eBPF 来捕获 bash 的 readline 函数调用,并获取用户在 bash 中输入的命令行。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » 总结","id":"35","title":"总结"},"36":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第六篇,主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。","breadcrumbs":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态 » eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态","id":"36","title":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态"},"37":{"body":"示例代码如下: #include \n#include \n#include #define MAX_ENTRIES 10240\n#define TASK_COMM_LEN 16 struct event { unsigned int pid; unsigned int tpid; int sig; int ret; char comm[TASK_COMM_LEN];\n}; struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, __u32); __type(value, struct event);\n} values SEC(\".maps\"); static int probe_entry(pid_t tpid, int sig)\n{ struct event event = {}; __u64 pid_tgid; __u32 tid; pid_tgid = bpf_get_current_pid_tgid(); tid = (__u32)pid_tgid; event.pid = pid_tgid >> 32; event.tpid = tpid; event.sig = sig; bpf_get_current_comm(event.comm, sizeof(event.comm)); bpf_map_update_elem(&values, &tid, &event, BPF_ANY); return 0;\n} static int probe_exit(void *ctx, int ret)\n{ __u64 pid_tgid = bpf_get_current_pid_tgid(); __u32 tid = (__u32)pid_tgid; struct event *eventp; eventp = bpf_map_lookup_elem(&values, &tid); if (!eventp) return 0; eventp->ret = ret; bpf_printk(\"PID %d (%s) sent signal %d to PID %d, ret = %d\", eventp->pid, eventp->comm, eventp->sig, eventp->tpid, ret); cleanup: bpf_map_delete_elem(&values, &tid); return 0;\n} SEC(\"tracepoint/syscalls/sys_enter_kill\")\nint kill_entry(struct trace_event_raw_sys_enter *ctx)\n{ pid_t tpid = (pid_t)ctx->args[0]; int sig = (int)ctx->args[1]; return probe_entry(tpid, sig);\n} SEC(\"tracepoint/syscalls/sys_exit_kill\")\nint kill_exit(struct trace_event_raw_sys_exit *ctx)\n{ return probe_exit(ctx, ctx->ret);\n} char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; 上面的代码定义了一个 eBPF 程序,用于捕获进程发送信号的系统调用,包括 kill、tkill 和 tgkill。它通过使用 tracepoint 来捕获系统调用的进入和退出事件,并在这些事件发生时执行指定的探针函数,例如 probe_entry 和 probe_exit。 在探针函数中,我们使用 bpf_map 存储捕获的事件信息,包括发送信号的进程 ID、接收信号的进程 ID、信号值和系统调用的返回值。在系统调用退出时,我们将获取存储在 bpf_map 中的事件信息,并使用 bpf_printk 打印进程 ID、进程名称、发送的信号和系统调用的返回值。 最后,我们还需要使用 SEC 宏来定义探针,并指定要捕获的系统调用的名称,以及要执行的探针函数。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 或者 $ ecc sigsnoop.bpf.c sigsnoop.h\nCompiling bpf object...\nGenerating export types...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe node-3517 [003] d..31 82575.798191: bpf_trace_printk: PID 3517 (node) sent signal 0 to PID 3427, ret = 0 node-15194 [003] d..31 82575.849227: bpf_trace_printk: PID 15194 (node) sent signal 0 to PID 3427, ret = 0 node-30016 [003] d..31 82576.001361: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0 cpptools-srv-38617 [002] d..31 82576.461085: bpf_trace_printk: PID 38617 (cpptools-srv) sent signal 0 to PID 30496, ret = 0 node-30040 [002] d..31 82576.467720: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0","breadcrumbs":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态 » sigsnoop","id":"37","title":"sigsnoop"},"38":{"body":"本文主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。使用 hash map 需要定义一个结构体: struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, __u32); __type(value, struct event);\n} values SEC(\".maps\"); 并使用一些对应的 API 进行访问,例如 bpf_map_lookup_elem、bpf_map_update_elem、bpf_map_delete_elem 等。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态 » 总结","id":"38","title":"总结"},"39":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第七篇,主要介绍如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,不需要再通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出。通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出","id":"39","title":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出"},"4":{"body":"Google 或者其他搜索引擎查找:eBPF 询问 ChatGPT 之类的东西:eBPF 是什么? 推荐: 阅读 ebpf 简介: https://ebpf.io/(30min) 简要了解一下 ebpf 内核相关文档: https://prototype-kernel.readthedocs.io/en/latest/bpf/ (知道有问题去哪里查询: 30min) 阅读 ebpf 中文入门指南: https://www.modb.pro/db/391570(1h) 有大量的参考资料: https://github.com/zoidbergwill/awesome-ebpf(2-3h) 可以选自己感兴趣的 PPT 翻一翻: https://github.com/gojue/ebpf-slide(1-2h) 回答三个问题: 了解 eBPF 是什么东西?为啥要有这个玩意,不能用内核模块? 它有什么功能?能在 Linux 内核里面完成哪些事情?有哪些 eBPF 程序的类型和 helper(不需要知道全部,但是需要知道去哪里找)? 能拿来做什么?比如说在哪些场景中进行运用?网络、安全、可观测性?","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF 入门(5-7h)","id":"4","title":"eBPF 入门(5-7h)"},"40":{"body":"eBPF 提供了两个环形缓冲区,可以用来将信息从 eBPF 程序传输到用户区控制器。第一个是perf环形缓冲区,,它至少从内核v4.15开始就存在了。第二个是后来引入的 BPF 环形缓冲区。本文只考虑perf环形缓冲区。","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » perf buffer","id":"40","title":"perf buffer"},"41":{"body":"通过 perf event array 向用户态命令行打印输出,需要编写一个头文件,一个 C 源文件。示例代码如下: 头文件:execsnoop.h #ifndef __EXECSNOOP_H\n#define __EXECSNOOP_H #define TASK_COMM_LEN 16 struct event { int pid; int ppid; int uid; int retval; bool is_exit; char comm[TASK_COMM_LEN];\n}; #endif /* __EXECSNOOP_H */ 源文件:execsnoop.bpf.c // SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)\n#include \n#include \n#include \n#include \"execsnoop.h\" struct { __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); __uint(key_size, sizeof(u32)); __uint(value_size, sizeof(u32));\n} events SEC(\".maps\"); SEC(\"tracepoint/syscalls/sys_enter_execve\")\nint tracepoint__syscalls__sys_enter_execve(struct trace_event_raw_sys_enter* ctx)\n{ u64 id; pid_t pid, tgid; struct event event; struct task_struct *task; uid_t uid = (u32)bpf_get_current_uid_gid(); id = bpf_get_current_pid_tgid(); pid = (pid_t)id; tgid = id >> 32; event.pid = tgid; event.uid = uid; task = (struct task_struct*)bpf_get_current_task(); event.ppid = BPF_CORE_READ(task, real_parent, tgid); bpf_get_current_comm(&event.comm, sizeof(event.comm)); bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); return 0;\n} char LICENSE[] SEC(\"license\") = \"GPL\"; 这段代码定义了个 eBPF 程序,用于捕获进程执行 execve 系统调用的入口。 在入口程序中,我们首先获取了当前进程的进程 ID 和用户 ID,然后通过 bpf_get_current_task 函数获取了当前进程的 task_struct 结构体,并通过 bpf_probe_read_str 函数读取了进程名称。最后,我们通过 bpf_perf_event_output 函数将进程执行事件输出到 perf buffer。 使用这段代码,我们就可以捕获 Linux 内核中进程执行的事件, 并分析进程的执行情况。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 使用容器编译: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 或者使用 ecc 编译: ecc execsnoop.bpf.c execsnoop.h 运行 $ sudo ./ecli run package.json TIME PID PPID UID COMM 21:28:30 40747 3517 1000 node\n21:28:30 40748 40747 1000 sh\n21:28:30 40749 3517 1000 node\n21:28:30 40750 40749 1000 sh\n21:28:30 40751 3517 1000 node\n21:28:30 40752 40751 1000 sh\n21:28:30 40753 40752 1000 cpuUsage.sh","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » execsnoop","id":"41","title":"execsnoop"},"42":{"body":"本文介绍了如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。在 libbpf 对应的内核态代码中,定义这样一个结构体和对应的头文件: struct { __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); __uint(key_size, sizeof(u32)); __uint(value_size, sizeof(u32));\n} events SEC(\".maps\"); 就可以往用户态直接发送信息。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » 总结","id":"42","title":"总结"},"43":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出","id":"43","title":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出"},"44":{"body":"现在有一个新的 BPF 数据结构可用。BPF 环形缓冲区(ring buffer)。它解决了 BPF perf buffer(当今从内核向用户空间发送数据的事实上的标准)的内存效率和事件重排问题,同时达到或超过了它的性能。它既提供了与 perf buffer 兼容以方便迁移,又有新的保留/提交API,具有更好的可用性。另外,合成和真实世界的基准测试表明,在几乎所有的情况下,所以考虑将其作为从BPF程序向用户空间发送数据的默认选择。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » ring buffer","id":"44","title":"ring buffer"},"45":{"body":"今天,只要BPF程序需要将收集到的数据发送到用户空间进行后处理和记录,它通常会使用BPF perf buffer(perfbuf)来实现。Perfbuf 是每个CPU循环缓冲区的集合,它允许在内核和用户空间之间有效地交换数据。它在实践中效果很好,但由于其按CPU设计,它有两个主要的缺点,在实践中被证明是不方便的:内存的低效使用和事件的重新排序。 为了解决这些问题,从Linux 5.8开始,BPF提供了一个新的BPF数据结构(BPF map)。BPF环形缓冲区(ringbuf)。它是一个多生产者、单消费者(MPSC)队列,可以同时在多个CPU上安全共享。 BPF ringbuf 支持来自 BPF perfbuf 的熟悉的功能: 变长的数据记录。 能够通过内存映射区域有效地从用户空间读取数据,而不需要额外的内存拷贝和/或进入内核的系统调用。 既支持epoll通知,又能以绝对最小的延迟进行忙环操作。 同时,BPF ringbuf解决了BPF perfbuf的以下问题: 内存开销。 数据排序。 浪费的工作和额外的数据复制。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » BPF ringbuf vs BPF perfbuf","id":"45","title":"BPF ringbuf vs BPF perfbuf"},"46":{"body":"本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件,并使用 ring buffer 向用户态打印输出。 使用 ring buffer 向用户态打印输出的步骤和 perf buffer 类似,首先需要定义一个头文件: 头文件:exitsnoop.h #ifndef __BOOTSTRAP_H\n#define __BOOTSTRAP_H #define TASK_COMM_LEN 16\n#define MAX_FILENAME_LEN 127 struct event { int pid; int ppid; unsigned exit_code; unsigned long long duration_ns; char comm[TASK_COMM_LEN];\n}; #endif /* __BOOTSTRAP_H */ 源文件:exitsnoop.bpf.c #include \"vmlinux.h\"\n#include \n#include \n#include \n#include \"exitsnoop.h\"\nchar LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; struct { __uint(type, BPF_MAP_TYPE_RINGBUF); __uint(max_entries, 256 * 1024);\n} rb SEC(\".maps\"); SEC(\"tp/sched/sched_process_exit\")\nint handle_exit(struct trace_event_raw_sched_process_template* ctx)\n{ struct task_struct *task; struct event *e; pid_t pid, tid; u64 id, ts, *start_ts, duration_ns = 0; /* get PID and TID of exiting thread/process */ id = bpf_get_current_pid_tgid(); pid = id >> 32; tid = (u32)id; /* ignore thread exits */ if (pid != tid) return 0; /* reserve sample from BPF ringbuf */ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); if (!e) return 0; /* fill out the sample with data */ task = (struct task_struct *)bpf_get_current_task(); e->duration_ns = duration_ns; e->pid = pid; e->ppid = BPF_CORE_READ(task, real_parent, tgid); e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff; bpf_get_current_comm(&e->comm, sizeof(e->comm)); /* send data to user-space for post-processing */ bpf_ringbuf_submit(e, 0); return 0;\n} 这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件。 该程序通过注册一个 tracepoint,来监控进程退出事件。Tracepoint 是一种内核特性,允许内核模块获取特定事件的通知。在本程序中,注册的 tracepoint 是“tp/sched/sched_process_exit”,表示该程序监控的是进程退出事件。 当系统中发生进程退出事件时,BPF 程序会捕获该事件,并调用“handle_exit”函数来处理它。该函数首先检查当前退出事件是否是进程退出事件(而不是线程退出事件),然后在 BPF 环形缓冲区(“rb”)中保留一个事件结构体,并填充该结构体中的其他信息,例如进程 ID、进程名称、退出代码和退出信号等信息。最后,该函数还会调用 BPF 的“perf_event_output”函数,将捕获的事件发送给用户空间程序。 总而言之,这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件.","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » exitsnoop","id":"46","title":"exitsnoop"},"47":{"body":"eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 Compile: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest Or $ ecc exitsnoop.bpf.c exitsnoop.h\nCompiling bpf object...\nGenerating export types...\nPacking ebpf object and config into package.json... Run: $ sudo ./ecli run package.json TIME PID PPID EXIT_CODE DURATION_NS COMM 21:40:09 42050 42049 0 0 which\n21:40:09 42049 3517 0 0 sh\n21:40:09 42052 42051 0 0 ps\n21:40:09 42051 3517 0 0 sh\n21:40:09 42055 42054 0 0 sed\n21:40:09 42056 42054 0 0 cat\n21:40:09 42057 42054 0 0 cat\n21:40:09 42058 42054 0 0 cat\n21:40:09 42059 42054 0 0 cat","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » Compile and Run","id":"47","title":"Compile and Run"},"48":{"body":"本文介绍了如何使用 eunomia-bpf 开发一个简单的 BPF 程序,该程序可以监控 Linux 系统中的进程退出事件, 并将捕获的事件通过 ring buffer 发送给用户空间程序。在本文中,我们使用 eunomia-bpf 编译运行了这个例子。如果你想了解更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » 总结","id":"48","title":"总结"},"49":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度","id":"49","title":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度"},"5":{"body":"了解并尝试一下 eBPF 开发框架: BCC 开发各类小工具的例子: https://github.com/iovisor/bcc/blob/master/docs/tutorial_bcc_python_developer.md(跑一遍:3-4h) libbpf 的一些例子: https://github.com/libbpf/libbpf-bootstrap(选感兴趣的运行一下,并阅读一下源代码:2h ) 基于 libbpf 和 eunomia-bpf 的教程: https://github.com/eunomia-bpf/bpf-developer-tutorial(阅读 1-10 的部分: 3-4h) 其他开发框架:Go 语言或者 Rust 语言,请自行搜索并且尝试(0-2h) 有任何问题或者想了解的东西,不管是不是和本项目相关,都可以在本项目的 discussions 里面开始讨论。 回答一些问题,并且进行一些尝试(2-5h): 如何开发一个最简单的 eBPF 程序? 如何用 eBPF 追踪一个内核功能或函数?有很多种方法,举出对应的代码; 有哪些方案能通过用户态和内核态通信?如何从用户态向内核态传送信息?如何从内核态向用户态传递信息?举出代码示例; 编写一个你自己的 eBPF 程序,实现一个功能; eBPF 程序的整个生命周期里面,分别在用户态和内核态做了哪些事情?","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 了解如何开发 eBPF 程序(10-15h)","id":"5","title":"了解如何开发 eBPF 程序(10-15h)"},"50":{"body":"bcc-tools 是一组用于在 Linux 系统上使用 BPF 程序的工具。runqlat 是 bcc-tools 中的一个工具,用于分析 Linux 系统的调度性能。具体来说,runqlat 用于测量一个任务在被调度到 CPU 上运行之前在运行队列中等待的时间。这些信息对于识别性能瓶颈和提高 Linux 内核调度算法的整体效率非常有用。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » runqlat是什么?","id":"50","title":"runqlat是什么?"},"51":{"body":"runqlat 使用内核跟踪点和函数探针的结合来测量进程在运行队列中的时间。当进程被排队时,trace_enqueue 函数会在一个映射中记录时间戳。当进程被调度到 CPU 上运行时,handle_switch 函数会检索时间戳,并计算当前时间与排队时间之间的时间差。这个差值(或 delta)然后用于更新进程的直方图,该直方图记录运行队列延迟的分布。该直方图可用于分析 Linux 内核的调度性能。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » runqlat 原理","id":"51","title":"runqlat 原理"},"52":{"body":"首先我们需要编写一个源代码文件 runqlat.bpf.c: // SPDX-License-Identifier: GPL-2.0\n// Copyright (c) 2020 Wenbo Zhang\n#include \n#include \n#include \n#include \n#include \"runqlat.h\"\n#include \"bits.bpf.h\"\n#include \"maps.bpf.h\"\n#include \"core_fixes.bpf.h\" #define MAX_ENTRIES 10240\n#define TASK_RUNNING 0 const volatile bool filter_cg = false;\nconst volatile bool targ_per_process = false;\nconst volatile bool targ_per_thread = false;\nconst volatile bool targ_per_pidns = false;\nconst volatile bool targ_ms = false;\nconst volatile pid_t targ_tgid = 0; struct { __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY); __type(key, u32); __type(value, u32); __uint(max_entries, 1);\n} cgroup_map SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, u32); __type(value, u64);\n} start SEC(\".maps\"); static struct hist zero; /// @sample {\"interval\": 1000, \"type\" : \"log2_hist\"}\nstruct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, u32); __type(value, struct hist);\n} hists SEC(\".maps\"); static int trace_enqueue(u32 tgid, u32 pid)\n{ u64 ts; if (!pid) return 0; if (targ_tgid && targ_tgid != tgid) return 0; ts = bpf_ktime_get_ns(); bpf_map_update_elem(&start, &pid, &ts, BPF_ANY); return 0;\n} static unsigned int pid_namespace(struct task_struct *task)\n{ struct pid *pid; unsigned int level; struct upid upid; unsigned int inum; /* get the pid namespace by following task_active_pid_ns(), * pid->numbers[pid->level].ns */ pid = BPF_CORE_READ(task, thread_pid); level = BPF_CORE_READ(pid, level); bpf_core_read(&upid, sizeof(upid), &pid->numbers[level]); inum = BPF_CORE_READ(upid.ns, ns.inum); return inum;\n} static int handle_switch(bool preempt, struct task_struct *prev, struct task_struct *next)\n{ struct hist *histp; u64 *tsp, slot; u32 pid, hkey; s64 delta; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; if (get_task_state(prev) == TASK_RUNNING) trace_enqueue(BPF_CORE_READ(prev, tgid), BPF_CORE_READ(prev, pid)); pid = BPF_CORE_READ(next, pid); tsp = bpf_map_lookup_elem(&start, &pid); if (!tsp) return 0; delta = bpf_ktime_get_ns() - *tsp; if (delta < 0) goto cleanup; if (targ_per_process) hkey = BPF_CORE_READ(next, tgid); else if (targ_per_thread) hkey = pid; else if (targ_per_pidns) hkey = pid_namespace(next); else hkey = -1; histp = bpf_map_lookup_or_try_init(&hists, &hkey, &zero); if (!histp) goto cleanup; if (!histp->comm[0]) bpf_probe_read_kernel_str(&histp->comm, sizeof(histp->comm), next->comm); if (targ_ms) delta /= 1000000U; else delta /= 1000U; slot = log2l(delta); if (slot >= MAX_SLOTS) slot = MAX_SLOTS - 1; __sync_fetch_and_add(&histp->slots[slot], 1); cleanup: bpf_map_delete_elem(&start, &pid); return 0;\n} SEC(\"raw_tp/sched_wakeup\")\nint BPF_PROG(handle_sched_wakeup, struct task_struct *p)\n{ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));\n} SEC(\"raw_tp/sched_wakeup_new\")\nint BPF_PROG(handle_sched_wakeup_new, struct task_struct *p)\n{ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));\n} SEC(\"raw_tp/sched_switch\")\nint BPF_PROG(handle_sched_switch, bool preempt, struct task_struct *prev, struct task_struct *next)\n{ return handle_switch(preempt, prev, next);\n} char LICENSE[] SEC(\"license\") = \"GPL\"; 然后我们需要定义一个头文件runqlat.h,用来给用户态处理从内核态上报的事件: /* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */\n#ifndef __RUNQLAT_H\n#define __RUNQLAT_H #define TASK_COMM_LEN 16\n#define MAX_SLOTS 26 struct hist { __u32 slots[MAX_SLOTS]; char comm[TASK_COMM_LEN];\n}; #endif /* __RUNQLAT_H */ 这是一个 Linux 内核 BPF 程序,旨在收集和报告运行队列的延迟。BPF 是 Linux 内核中一项技术,它允许将程序附加到内核中的特定点并进行安全高效的执行。这些程序可用于收集有关内核行为的信息,并实现自定义行为。这个 BPF 程序使用 BPF maps 来收集有关任务何时从内核的运行队列中排队和取消排队的信息,并记录任务在被安排执行之前在运行队列上等待的时间。然后,它使用这些信息生成直方图,显示不同组任务的运行队列延迟分布。这些直方图可用于识别和诊断内核调度行为中的性能问题。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » runqlat 代码实现","id":"52","title":"runqlat 代码实现"},"53":{"body":"eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 Compile: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 或者 $ ecc runqlat.bpf.c runqlat.h\nCompiling bpf object...\nGenerating export types...\nPacking ebpf object and config into package.json... Run: $ sudo ecli examples/bpftools/runqlat/package.json -h\nUsage: runqlat_bpf [--help] [--version] [--verbose] [--filter_cg] [--targ_per_process] [--targ_per_thread] [--targ_per_pidns] [--targ_ms] [--targ_tgid VAR] A simple eBPF program Optional arguments: -h, --help shows help message and exits -v, --version prints version information and exits --verbose prints libbpf debug information --filter_cg set value of bool variable filter_cg --targ_per_process set value of bool variable targ_per_process --targ_per_thread set value of bool variable targ_per_thread --targ_per_pidns set value of bool variable targ_per_pidns --targ_ms set value of bool variable targ_ms --targ_tgid set value of pid_t variable targ_tgid Built with eunomia-bpf framework.\nSee https://github.com/eunomia-bpf/eunomia-bpf for more information. $ sudo ecli examples/bpftools/runqlat/package.json\nkey = 4294967295\ncomm = rcu_preempt (unit) : count distribution 0 -> 1 : 9 |**** | 2 -> 3 : 6 |** | 4 -> 7 : 12 |***** | 8 -> 15 : 28 |************* | 16 -> 31 : 40 |******************* | 32 -> 63 : 83 |****************************************| 64 -> 127 : 57 |*************************** | 128 -> 255 : 19 |********* | 256 -> 511 : 11 |***** | 512 -> 1023 : 2 | | 1024 -> 2047 : 2 | | 2048 -> 4095 : 0 | | 4096 -> 8191 : 0 | | 8192 -> 16383 : 0 | | 16384 -> 32767 : 1 | | $ sudo ecli examples/bpftools/runqlat/package.json --targ_per_process\nkey = 3189\ncomm = cpptools (unit) : count distribution 0 -> 1 : 0 | | 2 -> 3 : 0 | | 4 -> 7 : 0 | | 8 -> 15 : 1 |*** | 16 -> 31 : 2 |******* | 32 -> 63 : 11 |****************************************| 64 -> 127 : 8 |***************************** | 128 -> 255 : 3 |********** |","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » 编译运行","id":"53","title":"编译运行"},"54":{"body":"runqlat 是一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度。编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。 runqlat 是一种用于监控Linux内核中进程调度延迟的工具。它可以帮助您了解进程在内核中等待执行的时间,并根据这些信息优化进程调度,提高系统的性能。可以在 libbpf-tools 中找到最初的源代码: https://github.com/iovisor/bcc/blob/master/libbpf-tools/runqlat.bpf.c 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » 总结","id":"54","title":"总结"},"55":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第十篇,在 eBPF 中。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件","id":"55","title":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件"},"56":{"body":"hardirqs 是 bcc-tools 工具包的一部分,该工具包是一组用于在 Linux 系统上执行系统跟踪和分析的实用程序。 hardirqs 是一种用于跟踪和分析 Linux 内核中的中断处理程序的工具。它使用 BPF(Berkeley Packet Filter)程序来收集有关中断处理程序的数据, 并可用于识别内核中的性能问题和其他与中断处理相关的问题。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » hardirqs是什么?","id":"56","title":"hardirqs是什么?"},"57":{"body":"在 Linux 内核中,每个中断处理程序都有一个唯一的名称,称为中断向量。hardirqs 通过检查每个中断处理程序的中断向量,来监控内核中的中断处理程序。当内核接收到一个中断时,它会查找与该中断相关的中断处理程序,并执行该程序。hardirqs 通过检查内核中执行的中断处理程序,来监控内核中的中断处理程序。另外,hardirqs 还可以通过注入 BPF 程序到内核中,来捕获内核中的中断处理程序。这样,hardirqs 就可以监控内核中执行的中断处理程序,并收集有关它们的信息。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 实现原理","id":"57","title":"实现原理"},"58":{"body":"// SPDX-License-Identifier: GPL-2.0\n// Copyright (c) 2020 Wenbo Zhang\n#include \n#include \n#include \n#include \n#include \"hardirqs.h\"\n#include \"bits.bpf.h\"\n#include \"maps.bpf.h\" #define MAX_ENTRIES 256 const volatile bool filter_cg = false;\nconst volatile bool targ_dist = false;\nconst volatile bool targ_ns = false;\nconst volatile bool do_count = false; struct { __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY); __type(key, u32); __type(value, u32); __uint(max_entries, 1);\n} cgroup_map SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_PERCPU_ARRAY); __uint(max_entries, 1); __type(key, u32); __type(value, u64);\n} start SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, struct irq_key); __type(value, struct info);\n} infos SEC(\".maps\"); static struct info zero; static int handle_entry(int irq, struct irqaction *action)\n{ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; if (do_count) { struct irq_key key = {}; struct info *info; bpf_probe_read_kernel_str(&key.name, sizeof(key.name), BPF_CORE_READ(action, name)); info = bpf_map_lookup_or_try_init(&infos, &key, &zero); if (!info) return 0; info->count += 1; return 0; } else { u64 ts = bpf_ktime_get_ns(); u32 key = 0; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; bpf_map_update_elem(&start, &key, &ts, BPF_ANY); return 0; }\n} static int handle_exit(int irq, struct irqaction *action)\n{ struct irq_key ikey = {}; struct info *info; u32 key = 0; u64 delta; u64 *tsp; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; tsp = bpf_map_lookup_elem(&start, &key); if (!tsp) return 0; delta = bpf_ktime_get_ns() - *tsp; if (!targ_ns) delta /= 1000U; bpf_probe_read_kernel_str(&ikey.name, sizeof(ikey.name), BPF_CORE_READ(action, name)); info = bpf_map_lookup_or_try_init(&infos, &ikey, &zero); if (!info) return 0; if (!targ_dist) { info->count += delta; } else { u64 slot; slot = log2(delta); if (slot >= MAX_SLOTS) slot = MAX_SLOTS - 1; info->slots[slot]++; } return 0;\n} SEC(\"tp_btf/irq_handler_entry\")\nint BPF_PROG(irq_handler_entry_btf, int irq, struct irqaction *action)\n{ return handle_entry(irq, action);\n} SEC(\"tp_btf/irq_handler_exit\")\nint BPF_PROG(irq_handler_exit_btf, int irq, struct irqaction *action)\n{ return handle_exit(irq, action);\n} SEC(\"raw_tp/irq_handler_entry\")\nint BPF_PROG(irq_handler_entry, int irq, struct irqaction *action)\n{ return handle_entry(irq, action);\n} SEC(\"raw_tp/irq_handler_exit\")\nint BPF_PROG(irq_handler_exit, int irq, struct irqaction *action)\n{ return handle_exit(irq, action);\n} char LICENSE[] SEC(\"license\") = \"GPL\"; 这是一个 BPF(Berkeley Packet Filter)程序。BPF 程序是小型程序,可以直接在 Linux 内核中运行,用于过滤和操纵网络流量。这个特定的程序似乎旨在收集内核中中断处理程序的统计信息。它定义了一些地图(可以在 BPF 程序和内核的其他部分之间共享的数据结构)和两个函数:handle_entry 和 handle_exit。当内核进入和退出中断处理程序时,分别执行这些函数。handle_entry 函数用于跟踪中断处理程序被执行的次数,而 handle_exit 则用于测量中断处理程序中花费的时间。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 代码实现","id":"58","title":"代码实现"},"59":{"body":"eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 要编译这个程序,请使用 ecc 工具: $ ecc hardirqs.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... 然后运行: sudo ecli ./package.json","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 运行代码","id":"59","title":"运行代码"},"6":{"body":"原始的eBPF程序编写是非常繁琐和困难的。为了改变这一现状,llvm于2015年推出了可以将由高级语言编写的代码编译为eBPF字节码的功能,同时,eBPF 社区将 bpf() 等原始的系统调用进行了初步地封装,给出了libbpf库。这些库会包含将字节码加载到内核中的函数以及一些其他的关键函数。在Linux的源码包的samples/bpf/目录下,有大量Linux提供的基于libbpf的eBPF样例代码。 一个典型的基于 libbpf 的eBPF程序具有*_kern.c和*_user.c两个文件,*_kern.c中书写在内核中的挂载点以及处理函数,*_user.c中书写用户态代码,完成内核态代码注入以及与用户交互的各种任务。 更为详细的教程可以参考 该视频 然而由于该方法仍然较难理解且入门存在一定的难度,因此现阶段的eBPF程序开发大多基于一些工具,比如: BCC BPFtrace libbpf-bootstrap Go eBPF library 以及还有比较新的工具,例如 eunomia-bpf.","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 3. 如何使用eBPF编程","id":"6","title":"3. 如何使用eBPF编程"},"60":{"body":"更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 总结","id":"60","title":"总结"},"61":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用","id":"61","title":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用"},"62":{"body":"Bootstrap是一个工具,它使用BPF(Berkeley Packet Filter)程序跟踪执行exec()系统调用(使用SEC(“tp/sched/sched_process_exec”)handle_exit BPF程序),这大致对应于新进程的生成(忽略fork()部分)。此外,它还跟踪exit()(使用SEC(“tp/sched/sched_process_exit”)handle_exit BPF程序)以了解每个进程何时退出。这两个BPF程序共同工作,允许捕获有关任何新进程的有趣信息,例如二进制文件的文件名,以及测量进程的生命周期并在进程死亡时收集有趣的统计信息,例如退出代码或消耗的资源量等。我认为这是深入了解内核内部并观察事物如何真正运作的良好起点。 Bootstrap还使用argp API(libc的一部分)进行命令行参数解析。","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » 什么是bootstrap?","id":"62","title":"什么是bootstrap?"},"63":{"body":"TODO: 添加关于用户态的应用部分,以及关于 libbpf-boostrap 的完整介绍。也许可以参考类似:http://cn-sec.com/archives/1267522.html 的文档。 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause\n/* Copyright (c) 2020 Facebook */\n#include \"vmlinux.h\"\n#include \n#include \n#include \n#include \"bootstrap.h\" char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, 8192); __type(key, pid_t); __type(value, u64);\n} exec_start SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_RINGBUF); __uint(max_entries, 256 * 1024);\n} rb SEC(\".maps\"); const volatile unsigned long long min_duration_ns = 0; SEC(\"tp/sched/sched_process_exec\")\nint handle_exec(struct trace_event_raw_sched_process_exec *ctx)\n{ struct task_struct *task; unsigned fname_off; struct event *e; pid_t pid; u64 ts; /* remember time exec() was executed for this PID */ pid = bpf_get_current_pid_tgid() >> 32; ts = bpf_ktime_get_ns(); bpf_map_update_elem(&exec_start, &pid, &ts, BPF_ANY); /* don't emit exec events when minimum duration is specified */ if (min_duration_ns) return 0; /* reserve sample from BPF ringbuf */ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); if (!e) return 0; /* fill out the sample with data */ task = (struct task_struct *)bpf_get_current_task(); e->exit_event = false; e->pid = pid; e->ppid = BPF_CORE_READ(task, real_parent, tgid); bpf_get_current_comm(&e->comm, sizeof(e->comm)); fname_off = ctx->__data_loc_filename & 0xFFFF; bpf_probe_read_str(&e->filename, sizeof(e->filename), (void *)ctx + fname_off); /* successfully submit it to user-space for post-processing */ bpf_ringbuf_submit(e, 0); return 0;\n} SEC(\"tp/sched/sched_process_exit\")\nint handle_exit(struct trace_event_raw_sched_process_template* ctx)\n{ struct task_struct *task; struct event *e; pid_t pid, tid; u64 id, ts, *start_ts, duration_ns = 0; /* get PID and TID of exiting thread/process */ id = bpf_get_current_pid_tgid(); pid = id >> 32; tid = (u32)id; /* ignore thread exits */ if (pid != tid) return 0; /* if we recorded start of the process, calculate lifetime duration */ start_ts = bpf_map_lookup_elem(&exec_start, &pid); if (start_ts) duration_ns = bpf_ktime_get_ns() - *start_ts; else if (min_duration_ns) return 0; bpf_map_delete_elem(&exec_start, &pid); /* if process didn't live long enough, return early */ if (min_duration_ns && duration_ns < min_duration_ns) return 0; /* reserve sample from BPF ringbuf */ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); if (!e) return 0; /* fill out the sample with data */ task = (struct task_struct *)bpf_get_current_task(); e->exit_event = true; e->duration_ns = duration_ns; e->pid = pid; e->ppid = BPF_CORE_READ(task, real_parent, tgid); e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff; bpf_get_current_comm(&e->comm, sizeof(e->comm)); /* send data to user-space for post-processing */ bpf_ringbuf_submit(e, 0); return 0;\n} 这是一段使用BPF(Berkeley Packet Filter)的C程序,用于跟踪进程启动和退出事件,并显示有关它们的信息。BPF是一种强大的机制,允许您将称为BPF程序的小程序附加到Linux内核的各个部分。这些程序可用于过滤,监视或修改内核的行为。 程序首先定义一些常量,并包含一些头文件。然后定义了一个名为env的struct,用于存储一些程序选项,例如详细模式和进程报告的最小持续时间。 然后,程序定义了一个名为parse_arg的函数,用于解析传递给程序的命令行参数。它接受三个参数:一个表示正在解析的选项的整数key,一个表示选项参数的字符指针arg和一个表示当前解析状态的struct argp_state指针state。该函数处理选项并在env struct中设置相应的值。 然后,程序定义了一个名为sig_handler的函数,当被调用时会将全局标志exiting设置为true。这用于在接收到信号时允许程序干净地退出。 接下来,我们将继续描述这段代码中的其他部分。 程序定义了一个名为exec_start的BPF map,它的类型为BPF_MAP_TYPE_HASH,最大条目数为8192,键类型为pid_t,值类型为u64。 另外,程序还定义了一个名为rb的BPF map,它的类型为BPF_MAP_TYPE_RINGBUF,最大条目数为256 * 1024。 程序还定义了一个名为min_duration_ns的常量,其值为0。 程序定义了一个名为handle_exec的SEC(static evaluator of code)函数,它被附加到跟踪进程执行的BPF程序上。该函数记录为该PID执行exec()的时间,并在指定了最小持续时间时不发出exec事件。如果未指定最小持续时间,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。 程序还定义了一个名为handle_exit的SEC函数,它被附加到跟踪进程退出的BPF程序上。该函数会在确定PID和TID后计算进程的生命周期,然后根据min_duration_ns的值决定是否发出退出事件。如果进程的生命周期足够长,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。 最后,主函数调用bpf_ringbuf_poll来轮询BPF ringbuf,并在接收到新的事件时处理该事件。这个函数会持续运行,直到全局标志exiting被设置为true,此时它会清理资源并退出。 编译运行上述代码: $ ecc bootstrap.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program...","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » Bootstrap","id":"63","title":"Bootstrap"},"64":{"body":"这是一个使用BPF的C程序,用于跟踪进程的启动和退出事件,并显示有关这些事件的信息。它通过使用argp API来解析命令行参数,并使用BPF地图存储进程的信息,包括进程的PID和执行文件的文件名。程序还使用了SEC函数来附加BPF程序,以监视进程的执行和退出事件。最后,程序在终端中打印出启动和退出的进程信息。 编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » 总结","id":"64","title":"总结"},"65":{"body":"","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时","id":"65","title":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时"},"66":{"body":"在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。 tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 背景","id":"66","title":"背景"},"67":{"body":"tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » tcpconnlat 的实现原理","id":"67","title":"tcpconnlat 的实现原理"},"68":{"body":"tcp 连接的整个过程如图所示: tcpconnlate 在这个连接过程中,我们来简单分析一下每一步的耗时: 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销 SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销 SYC/ACK传到客户端:长途网络跋涉 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销 ACK传到服务器:长途网络跋涉 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销 在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » tcp 连接原理","id":"68","title":"tcp 连接原理"},"69":{"body":"在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是: 半连接队列,也称 SYN 队列; 全连接队列,也称 accepet 队列; 服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。 我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中: 它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点: SEC(\"kprobe/tcp_v4_connect\")\nint BPF_KPROBE(tcp_v4_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_v6_connect\")\nint BPF_KPROBE(tcp_v6_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_rcv_state_process\")\nint BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)\n{ return handle_tcp_rcv_state_process(ctx, sk);\n} 在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中: struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, 4096); __type(key, struct sock *); __type(value, struct piddata);\n} start SEC(\".maps\"); static int trace_connect(struct sock *sk)\n{ u32 tgid = bpf_get_current_pid_tgid() >> 32; struct piddata piddata = {}; if (targ_tgid && targ_tgid != tgid) return 0; bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm)); piddata.ts = bpf_ktime_get_ns(); piddata.tgid = tgid; bpf_map_update_elem(&start, &sk, &piddata, 0); return 0;\n} 在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟: static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)\n{ struct piddata *piddatap; struct event event = {}; s64 delta; u64 ts; if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT) return 0; piddatap = bpf_map_lookup_elem(&start, &sk); if (!piddatap) return 0; ts = bpf_ktime_get_ns(); delta = (s64)(ts - piddatap->ts); if (delta < 0) goto cleanup; event.delta_us = delta / 1000U; if (targ_min_us && event.delta_us < targ_min_us) goto cleanup; __builtin_memcpy(&event.comm, piddatap->comm, sizeof(event.comm)); event.ts_us = ts / 1000; event.tgid = piddatap->tgid; event.lport = BPF_CORE_READ(sk, __sk_common.skc_num); event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport); event.af = BPF_CORE_READ(sk, __sk_common.skc_family); if (event.af == AF_INET) { event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr); event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr); } else { BPF_CORE_READ_INTO(&event.saddr_v6, sk, __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); BPF_CORE_READ_INTO(&event.daddr_v6, sk, __sk_common.skc_v6_daddr.in6_u.u6_addr32); } bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); cleanup: bpf_map_delete_elem(&start, &sk); return 0;\n}","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » ebpf 实现原理","id":"69","title":"ebpf 实现原理"},"7":{"body":"eBPF 程序由内核态部分和用户态部分构成。内核态部分包含程序的实际逻辑,用户态部分负责加载和管理内核态部分。使用 eunomia-bpf 开发工具,只需编写内核态部分的代码。 内核态部分的代码需要符合 eBPF 的语法和指令集。eBPF 程序主要由若干个函数组成,每个函数都有其特定的作用。可以使用的函数类型包括: kprobe:插探函数,在指定的内核函数前或后执行。 tracepoint:跟踪点函数,在指定的内核跟踪点处执行。 raw_tracepoint:原始跟踪点函数,在指定的内核原始跟踪点处执行。 xdp:网络数据处理函数,拦截和处理网络数据包。 perf_event:性能事件函数,用于处理内核性能事件。 kretprobe:函数返回插探函数,在指定的内核函数返回时执行。 tracepoint_return:跟踪点函数返回,在指定的内核跟踪点返回时执行。 raw_tracepoint_return:原始跟踪点函数返回,在指定的内核原始跟踪","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 编写 eBPF 程序","id":"7","title":"编写 eBPF 程序"},"70":{"body":"git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned 将 libbpf-bootstrap 目录下的文件复制到 libbpf-bootstrap-cloned/examples/c下 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpconnlat 在 libbpf-bootstrap-cloned/examples/c 下运行 make tcpconnlat sudo ./tcpconnlat","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 编译运行","id":"70","title":"编译运行"},"71":{"body":"root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpconnlat PID COMM IP SADDR DADDR DPORT LAT(ms)\n222564 wget 4 192.168.88.15 110.242.68.3 80 25.29\n222684 wget 4 192.168.88.15 167.179.101.42 443 246.76\n222726 ssh 4 192.168.88.15 167.179.101.42 22 241.17\n222774 ssh 4 192.168.88.15 1.15.149.151 22 25.31","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 效果","id":"71","title":"效果"},"72":{"body":"通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheus 和 grafana 等工具进行网络性能分析。 来源: https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpconnlat.bpf.c","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 总结","id":"72","title":"总结"},"73":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时","id":"73","title":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时"},"74":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 代码解释","id":"74","title":"代码解释"},"75":{"body":"在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。 tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 背景","id":"75","title":"背景"},"76":{"body":"tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » tcpconnlat 的实现原理","id":"76","title":"tcpconnlat 的实现原理"},"77":{"body":"tcp 连接的整个过程如图所示: tcpconnlate 在这个连接过程中,我们来简单分析一下每一步的耗时: 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销 SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销 SYC/ACK传到客户端:长途网络跋涉 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销 ACK传到服务器:长途网络跋涉 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销 在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » tcp 连接原理","id":"77","title":"tcp 连接原理"},"78":{"body":"在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是: 半连接队列,也称 SYN 队列; 全连接队列,也称 accepet 队列; 服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。 我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中: 它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点: SEC(\"kprobe/tcp_v4_connect\")\nint BPF_KPROBE(tcp_v4_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_v6_connect\")\nint BPF_KPROBE(tcp_v6_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_rcv_state_process\")\nint BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)\n{ return handle_tcp_rcv_state_process(ctx, sk);\n} 在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中: struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, 4096); __type(key, struct sock *); __type(value, struct piddata);\n} start SEC(\".maps\"); static int trace_connect(struct sock *sk)\n{ u32 tgid = bpf_get_current_pid_tgid() >> 32; struct piddata piddata = {}; if (targ_tgid && targ_tgid != tgid) return 0; bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm)); piddata.ts = bpf_ktime_get_ns(); piddata.tgid = tgid; bpf_map_update_elem(&start, &sk, &piddata, 0); return 0;\n} 在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟: static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)\n{ struct piddata *piddatap; struct event event = {}; s64 delta; u64 ts; if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT) return 0; piddatap = bpf_map_lookup_elem(&start, &sk); if (!piddatap) return 0; ts = bpf_ktime_get_ns(); delta = (s64)(ts - piddatap->ts); if (delta < 0) goto cleanup; event.delta_us = delta / 1000U; if (targ_min_us && event.delta_us < targ_min_us) goto cleanup; __builtin_memcpy(&event.comm, piddatap->comm, sizeof(event.comm)); event.ts_us = ts / 1000; event.tgid = piddatap->tgid; event.lport = BPF_CORE_READ(sk, __sk_common.skc_num); event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport); event.af = BPF_CORE_READ(sk, __sk_common.skc_family); if (event.af == AF_INET) { event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr); event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr); } else { BPF_CORE_READ_INTO(&event.saddr_v6, sk, __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); BPF_CORE_READ_INTO(&event.daddr_v6, sk, __sk_common.skc_v6_daddr.in6_u.u6_addr32); } bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); cleanup: bpf_map_delete_elem(&start, &sk); return 0;\n}","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » ebpf 实现原理","id":"78","title":"ebpf 实现原理"},"79":{"body":"使用命令行进行追踪: $ sudo build/bin/Release/eunomia run tcpconnlat\n[sudo] password for yunwei: [2022-08-07 02:13:39.601] [info] eunomia run in cmd...\n[2022-08-07 02:13:40.534] [info] press 'Ctrl C' key to exit...\nPID COMM IP SRC DEST PORT LAT(ms) CONATINER/OS\n3477 openresty 4 172.19.0.7 172.19.0.5 2379 0.05 docker-apisix_apisix_1\n3483 openresty 4 172.19.0.7 172.19.0.5 2379 0.08 docker-apisix_apisix_1\n3477 openresty 4 172.19.0.7 172.19.0.5 2379 0.04 docker-apisix_apisix_1\n3478 openresty 4 172.19.0.7 172.19.0.5 2379 0.05 docker-apisix_apisix_1\n3478 openresty 4 172.19.0.7 172.19.0.5 2379 0.03 docker-apisix_apisix_1\n3478 openresty 4 172.19.0.7 172.19.0.5 2379 0.03 docker-apisix_apisix_1 还可以使用 eunomia 作为 prometheus exporter,在运行上述命令之后,打开 prometheus 自带的可视化面板: 使用下述查询命令即可看到延时的统计图表: rate(eunomia_observed_tcpconnlat_v4_histogram_sum[5m])\n/ rate(eunomia_observed_tcpconnlat_v4_histogram_count[5m]) 结果: result","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » Eunomia 测试 demo","id":"79","title":"Eunomia 测试 demo"},"8":{"body":"BCC全称为BPF Compiler Collection,该项目是一个python库, 包含了完整的编写、编译、和加载BPF程序的工具链,以及用于调试和诊断性能问题的工具。 自2015年发布以来,BCC经过上百位贡献者地不断完善后,目前已经包含了大量随时可用的跟踪工具。 其官方项目库 提供了一个方便上手的教程,用户可以快速地根据教程完成BCC入门工作。 用户可以在BCC上使用Python、Lua等高级语言进行编程。 相较于使用C语言直接编程,这些高级语言具有极大的便捷性,用户只需要使用C来设计内核中的 BPF程序,其余包括编译、解析、加载等工作在内,均可由BCC完成。 然而使用BCC存在一个缺点便是在于其兼容性并不好。基于BCC的 eBPF程序每次执行时候都需要进行编译,编译则需要用户配置相关的头文件和对应实现。在实际应用中, 相信大家也会有体会,编译依赖问题是一个很棘手的问题。也正是因此,在本项目的开发中我们放弃了BCC, 选择了可以做到一次编译-多次运行的libbpf-bootstrap工具。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » BCC","id":"8","title":"BCC"},"80":{"body":"通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheus 和 grafana 等工具进行网络性能分析。 Eunomia 是一个使用 C/C++ 开发的基于 eBPF的轻量级,高性能云原生监控工具,旨在帮助用户了解容器的各项行为、监控可疑的容器安全事件,力求提供覆盖容器全生命周期的轻量级开源监控解决方案。它使用 Linux eBPF 技术在运行时跟踪您的系统和应用程序,并分析收集的事件以检测可疑的行为模式。目前,它包含性能分析、容器集群网络可视化分析*、容器安全感知告警、一键部署、持久化存储监控等功能,提供了多样化的 ebpf 追踪点。其核心导出器/命令行工具最小仅需要约 4MB 大小的二进制程序,即可在支持的 Linux 内核上启动。 项目地址: https://github.com/yunwei37/Eunomia","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 总结","id":"80","title":"总结"},"81":{"body":"http://kerneltravel.net/blog/2020/tcpconnlat/ https://network.51cto.com/article/640631.html","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 参考资料","id":"81","title":"参考资料"},"82":{"body":"tcpstates 是一个追踪当前系统上的TCP套接字的TCP状态的程序,主要通过跟踪内核跟踪点 inet_sock_set_state 来实现。统计数据通过 perf_event向用户态传输。 SEC(\"tracepoint/sock/inet_sock_set_state\")\nint handle_set_state(struct trace_event_raw_inet_sock_set_state *ctx) 在套接字改变状态处附加一个eBPF跟踪函数。 if (ctx->protocol != IPPROTO_TCP) return 0; if (target_family && target_family != family) return 0; if (filter_by_sport && !bpf_map_lookup_elem(&sports, &sport)) return 0; if (filter_by_dport && !bpf_map_lookup_elem(&dports, &dport)) return 0; 跟踪函数被调用后,先判断当前改变状态的套接字是否满足我们需要的过滤条件,如果不满足则不进行记录。 tsp = bpf_map_lookup_elem(×tamps, &sk); ts = bpf_ktime_get_ns(); if (!tsp) delta_us = 0; else delta_us = (ts - *tsp) / 1000; event.skaddr = (__u64)sk; event.ts_us = ts / 1000; event.delta_us = delta_us; event.pid = bpf_get_current_pid_tgid() >> 32; event.oldstate = ctx->oldstate; event.newstate = ctx->newstate; event.family = family; event.sport = sport; event.dport = dport; bpf_get_current_comm(&event.task, sizeof(event.task)); if (family == AF_INET) { bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_rcv_saddr); bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_daddr); } else { /* family == AF_INET6 */ bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_v6_daddr.in6_u.u6_addr32); } 使用状态改变相关填充event结构体。 此处使用了libbpf 的 CO-RE 支持。 bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); 将事件结构体发送至用户态程序。 if (ctx->newstate == TCP_CLOSE) bpf_map_delete_elem(×tamps, &sk); else bpf_map_update_elem(×tamps, &sk, &ts, BPF_ANY); 根据这个TCP链接的新状态,决定是更新下时间戳记录还是不再记录它的时间戳。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时","id":"82","title":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时"},"83":{"body":"while (!exiting) { err = perf_buffer__poll(pb, PERF_POLL_TIMEOUT_MS); if (err < 0 && err != -EINTR) { warn(\"error polling perf buffer: %s\\n\", strerror(-err)); goto cleanup; } /* reset err to return 0 if exiting */ err = 0; } 不停轮询内核程序所发过来的 perf event。 static void handle_event(void* ctx, int cpu, void* data, __u32 data_sz) { char ts[32], saddr[26], daddr[26]; struct event* e = data; struct tm* tm; int family; time_t t; if (emit_timestamp) { time(&t); tm = localtime(&t); strftime(ts, sizeof(ts), \"%H:%M:%S\", tm); printf(\"%8s \", ts); } inet_ntop(e->family, &e->saddr, saddr, sizeof(saddr)); inet_ntop(e->family, &e->daddr, daddr, sizeof(daddr)); if (wide_output) { family = e->family == AF_INET ? 4 : 6; printf( \"%-16llx %-7d %-16s %-2d %-26s %-5d %-26s %-5d %-11s -> %-11s \" \"%.3f\\n\", e->skaddr, e->pid, e->task, family, saddr, e->sport, daddr, e->dport, tcp_states[e->oldstate], tcp_states[e->newstate], (double)e->delta_us / 1000); } else { printf( \"%-16llx %-7d %-10.10s %-15s %-5d %-15s %-5d %-11s -> %-11s %.3f\\n\", e->skaddr, e->pid, e->task, saddr, e->sport, daddr, e->dport, tcp_states[e->oldstate], tcp_states[e->newstate], (double)e->delta_us / 1000); }\n} static void handle_lost_events(void* ctx, int cpu, __u64 lost_cnt) { warn(\"lost %llu events on CPU #%d\\n\", lost_cnt, cpu);\n} 收到事件后所调用对应的处理函数并进行输出打印。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 用户态程序","id":"83","title":"用户态程序"},"84":{"body":"git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned 将 libbpf-bootstrap 目录下的文件复制到 libbpf-bootstrap-cloned/examples/c下 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpstates 在 libbpf-bootstrap-cloned/examples/c 下运行 make tcpstates sudo ./tcpstates","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 编译运行","id":"84","title":"编译运行"},"85":{"body":"root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpstates SKADDR PID COMM LADDR LPORT RADDR RPORT OLDSTATE -> NEWSTATE MS\nffff9bf61bb62bc0 164978 node 192.168.88.15 0 52.178.17.2 443 CLOSE -> SYN_SENT 0.000\nffff9bf61bb62bc0 0 swapper/0 192.168.88.15 41596 52.178.17.2 443 SYN_SENT -> ESTABLISHED 225.794\nffff9bf61bb62bc0 0 swapper/0 192.168.88.15 41596 52.178.17.2 443 ESTABLISHED -> CLOSE_WAIT 901.454\nffff9bf61bb62bc0 164978 node 192.168.88.15 41596 52.178.17.2 443 CLOSE_WAIT -> LAST_ACK 0.793\nffff9bf61bb62bc0 164978 node 192.168.88.15 41596 52.178.17.2 443 LAST_ACK -> LAST_ACK 0.086\nffff9bf61bb62bc0 228759 kworker/u6 192.168.88.15 41596 52.178.17.2 443 LAST_ACK -> CLOSE 0.193\nffff9bf6d8ee88c0 229832 redis-serv 0.0.0.0 6379 0.0.0.0 0 CLOSE -> LISTEN 0.000\nffff9bf6d8ee88c0 229832 redis-serv 0.0.0.0 6379 0.0.0.0 0 LISTEN -> CLOSE 1.763\nffff9bf7109d6900 88750 node 127.0.0.1 39755 127.0.0.1 50966 ESTABLISHED -> FIN_WAIT1 0.000 对于输出的详细解释,详见 README.md","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 效果","id":"85","title":"效果"},"86":{"body":"这里的代码修改自 https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpstates.bpf.c","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 总结","id":"86","title":"总结"},"87":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间","id":"87","title":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间"},"88":{"body":"网络质量在互联网社会中是一个很重要的因素。导致网络质量差的因素有很多,可能是硬件因素导致,也可能是程序 写的不好导致。为了能更好地定位网络问题,tcprtt 工具被提出。它可以监测TCP链接的往返时间,从而分析 网络质量,帮助用户定位问题来源。 当有tcp链接建立时,该工具会自动根据当前系统的支持情况,选择合适的执行函数。 在执行函数中,tcprtt会收集tcp链接的各项基本底薪,包括地址,源端口,目标端口,耗时 等等,并将其更新到直方图的map中。运行结束后通过用户态代码,展现给用户。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 背景","id":"88","title":"背景"},"89":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 编写 eBPF 程序","id":"89","title":"编写 eBPF 程序"},"9":{"body":"eBPF Go库提供了一个通用的eBPF库,它解耦了获取 eBPF 字节码的过程和 eBPF 程序的加载和管理,并实现了类似 libbpf 一样的 CO- 功能。eBPF程序通常是通过编写高级语言创建的,然后使用clang/LLVM编译器编译为eBPF字节码。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF Go library","id":"9","title":"eBPF Go library"},"90":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 编译运行","id":"90","title":"编译运行"},"91":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 总结","id":"91","title":"总结"},"92":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏","id":"92","title":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏"},"93":{"body":"内存泄漏对于一个程序而言是一个很严重的问题。倘若放任一个存在内存泄漏的程序运行,久而久之 系统的内存会慢慢被耗尽,导致程序运行速度显著下降。为了避免这一情况,memleak工具被提出。 它可以跟踪并匹配内存分配和释放的请求,并且打印出已经被分配资源而又尚未释放的堆栈信息。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 背景","id":"93","title":"背景"},"94":{"body":"memleak 的实现逻辑非常直观。它在我们常用的动态分配内存的函数接口路径上挂载了ebpf程序, 同时在free上也挂载了ebpf程序。在调用分配内存相关函数时,memleak 会记录调用者的pid,分配得到 内存的地址,分配得到的内存大小等基本数据。在free之后,memeleak则会去map中删除记录的对应的分配 信息。对于用户态常用的分配函数 malloc, calloc 等,memleak使用了 uporbe 技术实现挂载,对于 内核态的函数,比如 kmalloc 等,memleak 则使用了现有的 tracepoint 来实现。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 实现原理","id":"94","title":"实现原理"},"95":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 编写 eBPF 程序","id":"95","title":"编写 eBPF 程序"},"96":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 编译运行","id":"96","title":"编译运行"},"97":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 总结","id":"97","title":"总结"},"98":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O","id":"98","title":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O"},"99":{"body":"Biopattern 可以统计随机/顺序磁盘I/O次数的比例。 TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 背景","id":"99","title":"背景"}},"length":287,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"0":{".":{"0":{".":{"0":{".":{"0":{"df":1,"docs":{"85":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"7":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"1":{"4":{"6":{"9":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"8":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}}},"2":{"1":{"0":{"8":{"0":{"2":{"7":{"5":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"5":{"9":{"5":{"2":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"9":{"0":{"6":{"1":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"79":{"tf":1.0}}},"5":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"4":{"0":{"0":{"5":{"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"8":{"df":1,"docs":{"264":{"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":{}},"7":{"df":0,"docs":{},"f":{"1":{"2":{"a":{"1":{"3":{"3":{"df":0,"docs":{},"e":{"8":{"3":{"0":{"df":1,"docs":{"264":{"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":{}},"3":{"1":{"d":{"7":{"6":{"c":{"3":{"2":{"5":{"1":{"df":1,"docs":{"264":{"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":{}},"c":{"5":{"6":{"5":{"2":{"a":{"d":{"9":{"b":{"0":{"df":1,"docs":{"264":{"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":1,"docs":{"34":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.4142135623730951}}},"3":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.7320508075688772}}},"4":{"d":{"4":{"b":{"2":{"7":{"4":{"df":0,"docs":{},"e":{"2":{"a":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{"26":{"tf":2.0}}},"5":{"df":1,"docs":{"23":{"tf":2.0}}},"6":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":2,"docs":{"259":{"tf":4.242640687119285},"260":{"tf":2.0}}},"1":{"0":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}}},"5":{"6":{"3":{"2":{"b":{"b":{"3":{"0":{"d":{"a":{"df":1,"docs":{"123":{"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":{}},"6":{"5":{"c":{"c":{"8":{"1":{"7":{"0":{"7":{"5":{"df":1,"docs":{"123":{"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":{},"x":{"df":1,"docs":{"260":{"tf":1.0}}}},":":{"5":{"5":{":":{"0":{"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"2":{"4":{"0":{"a":{"0":{"4":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"2":{":":{"1":{"3":{":":{"3":{"9":{".":{"6":{"0":{"1":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{".":{"5":{"3":{"4":{"df":1,"docs":{"79":{"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":{}},"3":{"df":0,"docs":{},"e":{"6":{"9":{"b":{"5":{"0":{"8":{"b":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"f":{"5":{"7":{"8":{"1":{"b":{"df":0,"docs":{},"e":{"2":{"c":{"7":{"df":1,"docs":{"116":{"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":{}}},"4":{"5":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"8":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"5":{"6":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"d":{"6":{"1":{"a":{"b":{"3":{"6":{"df":0,"docs":{},"e":{"c":{"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"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":{}}},"5":{"1":{"5":{"df":0,"docs":{},"e":{"5":{"9":{"9":{"9":{"a":{"4":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"4":{"6":{"2":{"3":{"1":{"0":{"5":{"7":{"2":{"8":{"df":1,"docs":{"116":{"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":{}},"7":{"9":{"9":{"6":{"3":{"8":{"0":{"a":{"4":{"2":{"df":1,"docs":{"121":{"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":{}},"c":{"7":{"4":{"df":0,"docs":{},"e":{"5":{"df":0,"docs":{},"e":{"5":{"3":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"7":{"3":{"df":0,"docs":{},"f":{"5":{"2":{"b":{"9":{"6":{"df":1,"docs":{"122":{"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":{}},"6":{":":{"3":{"5":{":":{"0":{"1":{"df":1,"docs":{"264":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"4":{"3":{"1":{"1":{"0":{"b":{"2":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"4":{"c":{"4":{"a":{"3":{"df":0,"docs":{},"e":{"7":{"a":{"df":1,"docs":{"123":{"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":{"79":{"tf":1.4142135623730951}}},"8":{"1":{"3":{"a":{"8":{"4":{"1":{"5":{"6":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"2":{"5":{"8":{"d":{"4":{"c":{"5":{"4":{"4":{"1":{"5":{"5":{"df":1,"docs":{"264":{"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":1,"docs":{"79":{"tf":1.4142135623730951}}},";":{"df":0,"docs":{},":":{"df":0,"docs":{},"必":{"df":0,"docs":{},"须":{"df":0,"docs":{},"这":{"df":0,"docs":{},"样":{"df":0,"docs":{},",":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"0":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}},"c":{"8":{"4":{"9":{"3":{"d":{"9":{"0":{"b":{"6":{"b":{"df":1,"docs":{"122":{"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":{}},"d":{"0":{"1":{"d":{"a":{"6":{"a":{"df":0,"docs":{},"f":{"c":{"5":{"4":{"df":1,"docs":{"118":{"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":{}},"4":{"df":0,"docs":{},"f":{"a":{"d":{"3":{"df":0,"docs":{},"e":{"5":{"7":{"d":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"5":{"1":{"d":{"a":{"7":{"a":{"8":{"df":0,"docs":{},"e":{"9":{"df":1,"docs":{"122":{"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":70,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"164":{"tf":1.0},"169":{"tf":1.0},"17":{"tf":1.7320508075688772},"195":{"tf":1.4142135623730951},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.4142135623730951},"212":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"23":{"tf":2.0},"240":{"tf":2.449489742783178},"241":{"tf":4.0},"250":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.0},"26":{"tf":2.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.0},"264":{"tf":5.656854249492381},"265":{"tf":2.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":2.23606797749979},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":2.449489742783178},"279":{"tf":3.3166247903554},"280":{"tf":1.0},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":3.605551275463989},"41":{"tf":1.0},"46":{"tf":2.449489742783178},"47":{"tf":4.242640687119285},"5":{"tf":1.0},"52":{"tf":3.7416573867739413},"53":{"tf":2.8284271247461903},"58":{"tf":3.7416573867739413},"63":{"tf":3.7416573867739413},"69":{"tf":2.6457513110645907},"78":{"tf":2.6457513110645907},"82":{"tf":2.23606797749979},"83":{"tf":1.7320508075688772},"85":{"tf":2.23606797749979}},"e":{"3":{"3":{"6":{"6":{"1":{"d":{"df":0,"docs":{},"e":{"4":{"9":{"3":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"f":{"8":{"df":0,"docs":{},"e":{"4":{"b":{"d":{"8":{"a":{"1":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"120":{"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":{}},"x":{"0":{"8":{"0":{"0":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"2":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"4":{"df":1,"docs":{"207":{"tf":1.0}}},"8":{"df":2,"docs":{"207":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}},"1":{".":{"0":{"2":{"2":{"3":{"4":{"6":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{".":{"1":{"4":{"9":{".":{"1":{"5":{"1":{"df":1,"docs":{"71":{"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":1,"docs":{"264":{"tf":1.0}}},"2":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{".":{"1":{"0":{"df":1,"docs":{"83":{"tf":1.0}}},"5":{"3":{".":{"2":{"2":{"3":{".":{"1":{"5":{"7":{":":{"2":{"2":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"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":{}},"2":{"0":{"1":{".":{"2":{"1":{"9":{".":{"2":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{".":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":2,"docs":{"272":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}},"u":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"274":{"tf":1.0},"41":{"tf":2.6457513110645907},"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"u":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"241":{"tf":1.0},"265":{"tf":2.23606797749979},"284":{"tf":1.0}}},"2":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"0":{"df":4,"docs":{"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"37":{"tf":1.0},"52":{"tf":1.0}}},"df":13,"docs":{"169":{"tf":1.0},"173":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"284":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"4":{"1":{"4":{"0":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"e":{"b":{"6":{"2":{"9":{"df":0,"docs":{},"e":{"1":{"9":{"df":1,"docs":{"123":{"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":16,"docs":{"128":{"tf":2.23606797749979},"140":{"tf":1.0},"153":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"195":{"tf":1.0},"219":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"282":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}},"1":{"0":{".":{"2":{"4":{"2":{".":{"6":{"8":{".":{"3":{"df":1,"docs":{"71":{"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":{}},"3":{"4":{"1":{"3":{"8":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"265":{"tf":2.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"128":{"tf":2.23606797749979},"141":{"tf":1.0},"154":{"tf":1.0},"179":{"tf":1.0},"220":{"tf":1.0},"241":{"tf":1.4142135623730951},"264":{"tf":2.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"83":{"tf":2.0}}},"2":{"3":{"1":{"df":1,"docs":{"265":{"tf":1.0}}},"4":{":":{"a":{"b":{"1":{"2":{":":{"2":{"0":{"4":{"0":{":":{"5":{"0":{"2":{"0":{":":{"2":{"2":{"9":{"9":{":":{"0":{":":{"5":{":":{"0":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"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":{}},"4":{"9":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"5":{"4":{"7":{"2":{"8":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"1":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"9":{"2":{"5":{"5":{"df":1,"docs":{"265":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"4":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{".":{"0":{".":{"1":{"df":2,"docs":{"264":{"tf":2.0},"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"8":{"2":{"0":{"3":{"df":1,"docs":{"265":{"tf":3.1622776601683795}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"240":{"tf":1.4142135623730951},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"e":{"d":{"7":{"6":{"0":{"a":{"7":{"8":{"d":{"df":1,"docs":{"123":{"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":11,"docs":{"128":{"tf":2.23606797749979},"142":{"tf":1.0},"155":{"tf":1.0},"180":{"tf":1.0},"221":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.7320508075688772},"53":{"tf":1.0}}},"3":{"0":{"9":{"2":{"4":{"3":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"7":{"1":{"df":2,"docs":{"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"1":{"2":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"7":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"4":{"9":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"6":{"4":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"4":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":2,"docs":{"17":{"tf":1.0},"269":{"tf":1.0}}},"a":{"2":{"7":{"d":{"df":0,"docs":{},"f":{"c":{"6":{"6":{"9":{"7":{"df":1,"docs":{"117":{"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":{}},"b":{"b":{"b":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"a":{"7":{"5":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"4":{"0":{"df":0,"docs":{},"f":{"7":{"8":{"9":{"df":1,"docs":{"123":{"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":8,"docs":{"128":{"tf":1.7320508075688772},"181":{"tf":1.0},"222":{"tf":1.0},"241":{"tf":1.0},"243":{"tf":1.0},"264":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0}}},"4":{"3":{"2":{"df":1,"docs":{"271":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"6":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"0":{"7":{"5":{"1":{"c":{"9":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":6,"docs":{"128":{"tf":1.4142135623730951},"182":{"tf":1.0},"241":{"tf":1.0},"244":{"tf":1.0},"253":{"tf":1.0},"282":{"tf":1.0}}},"5":{"1":{"6":{"df":1,"docs":{"265":{"tf":1.0}}},"9":{"4":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"5":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"d":{"0":{"df":0,"docs":{},"e":{"2":{"9":{"0":{"df":0,"docs":{},"e":{"9":{"6":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"8":{"0":{"df":1,"docs":{"271":{"tf":1.0}}},"7":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":11,"docs":{"128":{"tf":1.4142135623730951},"183":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"245":{"tf":1.0},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"283":{"tf":1.0},"53":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{".":{"0":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"3":{"8":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"5":{"8":{"0":{"4":{"3":{".":{"4":{"3":{"6":{"0":{"1":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"2":{"6":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"1":{"2":{"6":{"5":{"4":{"5":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"7":{"2":{"df":1,"docs":{"274":{"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":{}},"6":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"7":{"8":{"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"1":{"7":{"9":{".":{"1":{"0":{"1":{".":{"4":{"2":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}},"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":23,"docs":{"128":{"tf":1.0},"180":{"tf":1.0},"184":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"284":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"83":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"x":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}},"7":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{".":{"1":{"9":{".":{"0":{".":{"5":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"7":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"253":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"a":{"7":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"9":{"5":{"1":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"1":{"6":{"9":{"4":{"6":{"df":0,"docs":{},"e":{"3":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"df":1,"docs":{"253":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"d":{"a":{"b":{"2":{"7":{"2":{"3":{"1":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"185":{"tf":1.0},"268":{"tf":1.0},"285":{"tf":1.0}}},"8":{".":{"9":{"df":0,"docs":{},"f":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"1":{"3":{"9":{"d":{"c":{"a":{"8":{"b":{"3":{"df":1,"docs":{"117":{"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":{}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":5,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"9":{".":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{".":{"1":{"6":{"8":{".":{"5":{"6":{".":{"1":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{".":{"1":{"5":{"df":2,"docs":{"71":{"tf":2.0},"85":{"tf":2.449489742783178}}},"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":{}},"5":{"0":{"df":1,"docs":{"264":{"tf":2.0}}},"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"187":{"tf":1.0},"241":{"tf":1.0},"53":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"7":{"5":{"d":{"1":{"6":{"6":{"8":{"df":1,"docs":{"117":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"c":{"a":{"df":0,"docs":{},"e":{"9":{"6":{"3":{"c":{"2":{"df":1,"docs":{"117":{"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":{}}},"d":{"1":{"1":{"b":{"3":{"0":{"1":{"6":{"c":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"123":{"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":49,"docs":{"1":{"tf":1.0},"111":{"tf":1.7320508075688772},"128":{"tf":3.605551275463989},"131":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.4142135623730951},"163":{"tf":1.0},"169":{"tf":1.0},"192":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.0},"210":{"tf":1.0},"218":{"tf":2.6457513110645907},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"253":{"tf":1.4142135623730951},"256":{"tf":1.0},"260":{"tf":1.4142135623730951},"263":{"tf":2.449489742783178},"264":{"tf":3.7416573867739413},"265":{"tf":2.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":2.23606797749979},"280":{"tf":1.0},"282":{"tf":2.6457513110645907},"284":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":2.0},"58":{"tf":2.0}},"e":{"6":{"c":{"6":{"2":{"a":{"8":{"8":{"2":{"1":{"5":{"df":1,"docs":{"117":{"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":{}},"f":{"2":{"1":{"1":{"a":{"1":{"b":{"9":{"2":{"9":{"c":{"df":1,"docs":{"117":{"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":{}},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"2":{".":{"0":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"1":{"df":4,"docs":{"17":{"tf":1.0},"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"3":{"df":1,"docs":{"265":{"tf":1.0}}},"6":{".":{"3":{"2":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"9":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"1":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{"0":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"2":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"2":{"tf":1.0}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"5":{"7":{"1":{"5":{"6":{"7":{"3":{"8":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"6":{"0":{"5":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"2":{"0":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"188":{"tf":1.0},"264":{"tf":1.0},"282":{"tf":1.0}}},"1":{"1":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"9":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},":":{"2":{"8":{":":{"3":{"0":{"df":1,"docs":{"41":{"tf":2.6457513110645907}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{":":{"0":{"9":{"df":1,"docs":{"47":{"tf":3.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"189":{"tf":1.0}}},"2":{".":{"2":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"2":{"tf":1.0}}},"2":{"5":{"6":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"8":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":2.0}}},"5":{".":{"7":{"9":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"7":{"5":{"9":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"3":{"2":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"6":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"190":{"tf":1.0},"264":{"tf":1.7320508075688772},"71":{"tf":1.4142135623730951}}},"3":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"3":{"df":0,"docs":{},"e":{"c":{"c":{"6":{"df":0,"docs":{},"f":{"9":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"191":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"4":{"1":{".":{"1":{"7":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"7":{"3":{"4":{"3":{"3":{".":{"0":{"5":{"2":{"9":{"3":{"7":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"6":{"4":{"2":{"8":{"0":{"8":{"df":1,"docs":{"269":{"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":{}},"8":{"5":{"0":{"0":{"1":{".":{"1":{"7":{"4":{"8":{"8":{"5":{"9":{"9":{"9":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"7":{"1":{"0":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"9":{"9":{"1":{"9":{"7":{"6":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"2":{".":{"2":{"7":{"6":{"1":{"4":{"7":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"6":{".":{"7":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"2":{"8":{"3":{"2":{".":{"9":{"5":{"6":{"9":{"9":{"4":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"7":{".":{"7":{"2":{"6":{"5":{"0":{"0":{"9":{"9":{"9":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"1":{"1":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"0":{"3":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"2":{"9":{"4":{"9":{"9":{"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"8":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"3":{"3":{"2":{"4":{".":{"5":{"6":{"1":{"3":{"2":{"2":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"3":{"5":{".":{"3":{"4":{"3":{"4":{"0":{"1":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"4":{"0":{".":{"5":{"1":{"0":{"1":{"6":{"4":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"9":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"2":{"df":1,"docs":{"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"8":{"df":1,"docs":{"283":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"192":{"tf":1.0},"264":{"tf":1.0}}},"5":{".":{"2":{"9":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"3":{"1":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"1":{"5":{"1":{"7":{"c":{"3":{"2":{"b":{"df":0,"docs":{},"e":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"5":{"df":5,"docs":{"240":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"6":{"df":7,"docs":{"257":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"8":{"9":{"7":{"2":{"6":{"d":{"1":{"2":{"a":{"1":{"df":1,"docs":{"117":{"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":{}},"9":{"0":{"df":1,"docs":{"251":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"193":{"tf":1.0}}},"6":{"3":{"a":{"df":0,"docs":{},"e":{"1":{"5":{"2":{"df":0,"docs":{},"e":{"9":{"6":{"2":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"194":{"tf":1.0},"52":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"7":{"6":{"7":{"2":{"df":0,"docs":{},"f":{"0":{"d":{"2":{"8":{"0":{"a":{"df":1,"docs":{"123":{"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":{}},"a":{"df":0,"docs":{},"e":{"7":{"9":{"9":{"7":{"a":{"6":{"6":{"1":{"df":1,"docs":{"118":{"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":{}}},"b":{"2":{"9":{"df":0,"docs":{},"f":{"6":{"3":{"0":{"5":{"8":{"d":{"df":1,"docs":{"123":{"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":3,"docs":{"128":{"tf":1.0},"195":{"tf":1.0},"264":{"tf":1.0}}},"8":{"df":4,"docs":{"128":{"tf":1.0},"196":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.0}},"f":{"b":{"c":{"df":0,"docs":{},"f":{"a":{"0":{"8":{"d":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"9":{"b":{"a":{"7":{"3":{"2":{"a":{"c":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"120":{"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":4,"docs":{"128":{"tf":1.0},"197":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0}}},"a":{"1":{"0":{"0":{"3":{"1":{"7":{"c":{"9":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"e":{"2":{"1":{"2":{"d":{"5":{"4":{"1":{"df":1,"docs":{"123":{"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":{}}},"c":{"1":{"6":{"d":{"6":{"0":{"3":{"3":{"2":{"6":{"4":{"df":1,"docs":{"117":{"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":{}},"d":{"0":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"3":{"0":{"df":0,"docs":{},"f":{"8":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"9":{"b":{"9":{"df":0,"docs":{},"e":{"6":{"d":{"df":0,"docs":{},"f":{"6":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{"83":{"tf":1.0}}},"df":32,"docs":{"128":{"tf":3.4641016151377544},"132":{"tf":1.0},"145":{"tf":1.0},"151":{"tf":1.4142135623730951},"160":{"tf":1.0},"17":{"tf":1.0},"170":{"tf":1.0},"195":{"tf":1.4142135623730951},"203":{"tf":1.0},"208":{"tf":1.0},"211":{"tf":1.0},"218":{"tf":1.4142135623730951},"225":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"248":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"270":{"tf":1.0},"277":{"tf":2.0},"279":{"tf":2.8284271247461903},"283":{"tf":1.0},"3":{"tf":1.0},"41":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":2.23606797749979}},"f":{"df":1,"docs":{"272":{"tf":1.0}}},"h":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{".":{"1":{"3":{"df":1,"docs":{"274":{"tf":1.0}}},"5":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"116":{"tf":1.0}}},"8":{"df":3,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"121":{"tf":1.0}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"1":{"6":{"df":1,"docs":{"37":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"9":{"6":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"198":{"tf":1.0},"264":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"1":{"8":{"9":{"df":1,"docs":{"53":{"tf":1.0}}},"df":0,"docs":{}},"df":7,"docs":{"128":{"tf":1.0},"199":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"2":{"2":{"0":{"7":{"0":{"1":{".":{"1":{"0":{"1":{"1":{"4":{"3":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"1":{"5":{"8":{"0":{"0":{"0":{"df":2,"docs":{"29":{"tf":1.0},"30":{"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":{}},"7":{"4":{"df":0,"docs":{},"f":{"5":{"2":{"0":{"7":{"3":{"d":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"9":{"df":1,"docs":{"34":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":24,"docs":{"128":{"tf":1.0},"147":{"tf":2.0},"148":{"tf":1.0},"17":{"tf":1.0},"171":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"195":{"tf":1.0},"200":{"tf":1.0},"23":{"tf":1.4142135623730951},"240":{"tf":1.0},"26":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"k":{"b":{"df":2,"docs":{"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{"2":{"a":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"6":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"f":{"9":{"8":{"8":{"5":{"0":{"4":{"0":{"c":{"df":1,"docs":{"123":{"tf":2.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":2,"docs":{"128":{"tf":1.0},"201":{"tf":1.0}}},"4":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"2":{"7":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}},"7":{"7":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"79":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"8":{"3":{"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"b":{"2":{"0":{"2":{"1":{"c":{"c":{"6":{"1":{"6":{"df":1,"docs":{"123":{"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":{}},"d":{"4":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"7":{"7":{"5":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"202":{"tf":1.0}}},"5":{"1":{"7":{"df":3,"docs":{"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"1":{"5":{"8":{"1":{"3":{"9":{"5":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"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":{"7":{"8":{"d":{"7":{"9":{"8":{"4":{"0":{"0":{"df":1,"docs":{"123":{"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":{}},"6":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"2":{"c":{"7":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"0":{"4":{"0":{"df":0,"docs":{},"e":{"4":{"7":{"3":{"3":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"4":{"0":{"3":{"4":{"5":{"df":3,"docs":{"17":{"tf":2.0},"29":{"tf":2.0},"30":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"280":{"tf":1.0}}},"6":{"1":{"7":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"d":{"6":{"5":{"5":{"df":0,"docs":{},"f":{"4":{"d":{"4":{"df":1,"docs":{"123":{"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":{}},"9":{"7":{"5":{"5":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"4":{"0":{"8":{"4":{"7":{"0":{"8":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"1":{"3":{"c":{"2":{"0":{"4":{"b":{"b":{"1":{"df":1,"docs":{"116":{"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":{}},"a":{"0":{"8":{"c":{"2":{"df":0,"docs":{},"f":{"d":{"7":{"6":{"3":{"4":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"f":{"8":{"df":0,"docs":{},"f":{"d":{"6":{"1":{"df":0,"docs":{},"f":{"9":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772},"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"e":{"a":{"0":{"8":{"9":{"2":{"4":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"2":{"5":{"3":{"c":{"2":{"df":0,"docs":{},"e":{"6":{"5":{"2":{"df":1,"docs":{"123":{"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":{}},"c":{"a":{"1":{"0":{"3":{"2":{"a":{"b":{"7":{"a":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"7":{"8":{"4":{"1":{"7":{"b":{"6":{"0":{"df":0,"docs":{},"f":{"b":{"df":1,"docs":{"123":{"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":25,"docs":{"1":{"tf":1.0},"128":{"tf":2.8284271247461903},"133":{"tf":1.0},"146":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"171":{"tf":1.0},"212":{"tf":1.0},"218":{"tf":1.4142135623730951},"229":{"tf":1.0},"233":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"249":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"6":{"tf":1.0},"63":{"tf":1.0}},"e":{"8":{"7":{"df":0,"docs":{},"f":{"1":{"9":{"2":{"b":{"4":{"0":{"5":{"df":1,"docs":{"121":{"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":{}},"f":{"3":{"6":{"4":{"2":{"2":{"2":{"d":{"0":{"3":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"7":{"1":{"9":{"c":{"7":{"b":{"6":{"2":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{},"n":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"h":{"df":1,"docs":{"4":{"tf":1.0}}},"r":{"d":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}},"4":{".":{"1":{"0":{"df":5,"docs":{"117":{"tf":2.0},"118":{"tf":2.23606797749979},"120":{"tf":1.4142135623730951},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"1":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}},"2":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.4142135623730951}}},"3":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.7320508075688772},"150":{"tf":1.0}}},"4":{"df":7,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":5,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"6":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"7":{"df":4,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"8":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":2.6457513110645907},"118":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"123":{"tf":4.0},"186":{"tf":1.0}}},"9":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903}}},"2":{"0":{"df":7,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0}}},"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"3":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.449489742783178}}},"4":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":2,"docs":{"117":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}},"6":{"df":3,"docs":{"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"280":{"tf":1.0}}},"8":{".":{"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":2.449489742783178},"123":{"tf":2.449489742783178}}},"9":{".":{"1":{"0":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.7320508075688772},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"df":0,"docs":{},"x":{"df":1,"docs":{"261":{"tf":1.0}}}},"0":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"3":{"0":{"4":{"b":{"2":{"a":{"1":{"5":{"6":{"7":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"7":{"4":{"7":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"41":{"tf":1.0}}},"9":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"41":{"tf":1.0}}},"1":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":6,"docs":{"264":{"tf":3.1622776601683795},"274":{"tf":2.0},"279":{"tf":1.0},"53":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":1.0}}},"1":{"5":{"9":{"6":{"df":1,"docs":{"85":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"8":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"4":{"9":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"47":{"tf":1.0}}},"1":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"47":{"tf":1.0}}},"4":{"df":1,"docs":{"47":{"tf":2.23606797749979}}},"5":{"df":1,"docs":{"47":{"tf":1.0}}},"6":{"df":1,"docs":{"47":{"tf":1.0}}},"7":{"df":1,"docs":{"47":{"tf":1.0}}},"8":{"df":1,"docs":{"47":{"tf":1.0}}},"9":{"df":1,"docs":{"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"4":{"9":{"6":{"7":{"2":{"9":{"5":{"df":1,"docs":{"53":{"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":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"3":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":2.449489742783178}}},"df":1,"docs":{"264":{"tf":1.0}}},"5":{"7":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"6":{"3":{"a":{"8":{"8":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"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":{}},"6":{"3":{"7":{".":{"7":{"9":{"8":{"6":{"9":{"8":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"3":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"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":1,"docs":{"268":{"tf":1.0}},"f":{"8":{"b":{"c":{"9":{"2":{"7":{"5":{"8":{"c":{"df":1,"docs":{"123":{"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":{}}},"7":{"1":{"0":{".":{"9":{"5":{"1":{"6":{"9":{"6":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"9":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"5":{"2":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"9":{"5":{"df":1,"docs":{"23":{"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":{}},"8":{"c":{"df":0,"docs":{},"f":{"b":{"d":{"df":0,"docs":{},"f":{"5":{"df":0,"docs":{},"f":{"1":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"7":{"5":{"2":{"b":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"264":{"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":{}},"3":{"8":{"df":0,"docs":{},"e":{"1":{"5":{"5":{"0":{"3":{"7":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"8":{"4":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"9":{"2":{"df":0,"docs":{},"e":{"6":{"3":{"9":{"df":0,"docs":{},"f":{"0":{"c":{"2":{"2":{"df":1,"docs":{"123":{"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":{"df":0,"docs":{},"e":{"0":{"5":{"1":{"7":{"0":{"9":{"5":{"8":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"a":{"4":{"8":{"2":{"df":0,"docs":{},"f":{"3":{"4":{"a":{"df":0,"docs":{},"f":{"c":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"f":{"6":{"c":{"0":{"b":{"8":{"4":{"c":{"9":{"df":1,"docs":{"122":{"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":{}},"b":{"df":0,"docs":{},"e":{"b":{"d":{"c":{"7":{"a":{"8":{"5":{"a":{"a":{"df":1,"docs":{"123":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"b":{"c":{"1":{"df":0,"docs":{},"f":{"1":{"0":{"4":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"2":{"2":{"0":{"df":0,"docs":{},"e":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"1":{"4":{"df":1,"docs":{"117":{"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":20,"docs":{"128":{"tf":2.6457513110645907},"134":{"tf":1.0},"147":{"tf":1.0},"162":{"tf":1.0},"172":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.4142135623730951},"234":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"250":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":3.3166247903554},"272":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":2.449489742783178},"53":{"tf":1.4142135623730951},"71":{"tf":2.0},"79":{"tf":2.449489742783178},"83":{"tf":1.0}},"e":{"1":{"0":{"d":{"df":0,"docs":{},"f":{"9":{"a":{"6":{"0":{"d":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"5":{"6":{"c":{"d":{"c":{"5":{"9":{"df":1,"docs":{"123":{"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":{}}},"6":{"3":{"a":{"c":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"c":{"5":{"2":{"1":{"df":0,"docs":{},"e":{"d":{"5":{"df":1,"docs":{"120":{"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":{}},"f":{"1":{"9":{"c":{"a":{"b":{"7":{"6":{"1":{"3":{"6":{"df":1,"docs":{"123":{"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":{}},"3":{"4":{"4":{"6":{"b":{"b":{"8":{"0":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"7":{"3":{"8":{"a":{"d":{"b":{"a":{"3":{"0":{"a":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"b":{"a":{"c":{"7":{"7":{"d":{"2":{"d":{"0":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"m":{"b":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}},"5":{".":{"0":{"df":3,"docs":{"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"1":{"0":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":3.7416573867739413}}},"1":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"3":{"df":2,"docs":{"116":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"118":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":1,"docs":{"123":{"tf":2.449489742783178}}},"8":{"df":1,"docs":{"123":{"tf":2.8284271247461903}}},"9":{"df":1,"docs":{"123":{"tf":3.1622776601683795}}},"df":3,"docs":{"116":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":2.449489742783178}}},"2":{"df":5,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":3.1622776601683795}}},"3":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"120":{"tf":1.0}}},"5":{"df":6,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903},"26":{"tf":1.0}}},"6":{"df":5,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"7":{"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":2.6457513110645907},"141":{"tf":1.0}}},"8":{"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0},"163":{"tf":1.0},"242":{"tf":1.0}},"开":{"df":0,"docs":{},"始":{"df":0,"docs":{},",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"提":{"df":0,"docs":{},"供":{"df":0,"docs":{},"了":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"新":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"结":{"df":0,"docs":{},"构":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0}}},"df":0,"docs":{}},"0":{"9":{"6":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"c":{"6":{"6":{"a":{"d":{"8":{"4":{"9":{"a":{"7":{"df":1,"docs":{"116":{"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":{}},"2":{".":{"1":{"7":{"8":{".":{"1":{"7":{".":{"2":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"6":{"2":{"d":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"3":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"8":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"4":{".":{"2":{"4":{"5":{".":{"1":{"0":{"5":{".":{"2":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"7":{".":{"1":{"0":{"1":{".":{"1":{"4":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"a":{"c":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"b":{"7":{"0":{"d":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"6":{"b":{"9":{"9":{"1":{"df":0,"docs":{},"e":{"9":{"c":{"1":{"df":1,"docs":{"123":{"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":{}},"6":{"df":1,"docs":{"264":{"tf":1.0}},"f":{"6":{"6":{"8":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"0":{"d":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"df":1,"docs":{"53":{"tf":1.0}}},"8":{"3":{"c":{"1":{"df":0,"docs":{},"f":{"4":{"2":{"0":{"1":{"7":{"3":{"df":1,"docs":{"120":{"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":{}},"9":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"9":{"8":{"8":{"8":{"d":{"7":{"8":{"df":1,"docs":{"121":{"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":{}},"d":{"8":{"b":{"5":{"8":{"3":{"d":{"0":{"4":{"a":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"c":{"4":{"b":{"7":{"d":{"4":{"df":0,"docs":{},"e":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"5":{"5":{"2":{"0":{"c":{"4":{"d":{"df":1,"docs":{"116":{"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":1,"docs":{"83":{"tf":2.0}}},"df":15,"docs":{"128":{"tf":2.6457513110645907},"135":{"tf":1.0},"148":{"tf":1.0},"163":{"tf":1.0},"173":{"tf":1.0},"194":{"tf":1.0},"214":{"tf":1.0},"224":{"tf":1.0},"235":{"tf":1.0},"241":{"tf":1.0},"251":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"273":{"tf":1.0},"4":{"tf":1.0}},"f":{"3":{"1":{"6":{"b":{"6":{"5":{"df":0,"docs":{},"e":{"9":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{".":{"0":{"df":1,"docs":{"123":{"tf":2.0}}},"1":{"df":3,"docs":{"116":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{",":{"0":{"0":{"0":{"df":1,"docs":{"263":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"2":{"7":{"4":{"c":{"5":{"a":{"b":{"d":{"8":{"df":1,"docs":{"123":{"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":{}},"d":{"2":{"0":{"df":0,"docs":{},"f":{"9":{"1":{"9":{"5":{"b":{"2":{"df":1,"docs":{"123":{"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":{}},"1":{"0":{"2":{"3":{"6":{"5":{"8":{"7":{"6":{"0":{"0":{"df":1,"docs":{"118":{"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":{}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"8":{"df":1,"docs":{"30":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"2":{"5":{"8":{"2":{"7":{"8":{"6":{"c":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"116":{"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":{}},"4":{"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"7":{"9":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"d":{"9":{"b":{"8":{"0":{"d":{"c":{"df":0,"docs":{},"f":{"2":{"c":{"df":1,"docs":{"123":{"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":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"4":{"0":{"0":{"1":{".":{"3":{"7":{"5":{"7":{"4":{"8":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"0":{"5":{"6":{"9":{"5":{"1":{"df":1,"docs":{"34":{"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":{}},"1":{"c":{"d":{"7":{"b":{"0":{"6":{"c":{"9":{"1":{"df":1,"docs":{"117":{"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":{}},"5":{"3":{"0":{"7":{"3":{"9":{"8":{"7":{"b":{"a":{"df":1,"docs":{"122":{"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":9,"docs":{"112":{"tf":2.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"5":{"5":{"3":{"5":{"df":3,"docs":{"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"6":{"df":4,"docs":{"257":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"a":{"5":{"1":{"df":0,"docs":{},"e":{"5":{"3":{"6":{"c":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"8":{"1":{"7":{"1":{"a":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"0":{"df":0,"docs":{},"e":{"1":{"1":{"2":{"6":{"9":{"3":{"4":{"df":1,"docs":{"120":{"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":{}},"9":{".":{"5":{"3":{".":{"2":{"4":{"5":{".":{"4":{"0":{":":{"2":{"2":{"9":{"5":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"4":{"6":{"1":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"b":{"6":{"9":{"3":{"df":0,"docs":{},"f":{"0":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"8":{"7":{"b":{"a":{"6":{"2":{"2":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.0}}},"a":{"7":{"7":{"3":{"a":{"1":{"5":{"a":{"1":{"df":0,"docs":{},"e":{"8":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"9":{"9":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"2":{"3":{"d":{"4":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"9":{"1":{"0":{"6":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"b":{"4":{"3":{"2":{"df":0,"docs":{},"e":{"6":{"7":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{},"e":{"0":{"8":{"a":{"df":0,"docs":{},"e":{"3":{"d":{"df":0,"docs":{},"e":{"a":{"2":{"df":1,"docs":{"123":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"5":{"a":{"a":{"6":{"df":0,"docs":{},"f":{"c":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"5":{"9":{"8":{"1":{"7":{"4":{"3":{"2":{"df":1,"docs":{"121":{"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":{},"e":{"9":{"6":{"c":{"a":{"3":{"4":{"8":{"a":{"9":{"df":1,"docs":{"122":{"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":{}}},"d":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"136":{"tf":1.0},"149":{"tf":1.0},"164":{"tf":1.0},"174":{"tf":1.0},"215":{"tf":1.0},"236":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":2.0},"274":{"tf":1.0},"279":{"tf":1.4142135623730951},"283":{"tf":1.0},"53":{"tf":1.0},"83":{"tf":1.0}},"e":{"2":{"2":{"a":{"b":{"9":{"d":{"a":{"7":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"b":{"0":{"4":{"a":{"8":{"2":{"2":{"4":{"df":1,"docs":{"121":{"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":{}},"f":{"9":{"d":{"4":{"5":{"1":{"a":{"b":{"1":{"a":{"3":{"df":1,"docs":{"120":{"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":{},"f":{"df":0,"docs":{},"f":{"6":{"0":{"7":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"1":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"7":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"d":{"6":{"6":{"2":{"4":{"4":{"3":{"1":{"7":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"1":{"b":{"b":{"4":{"2":{"8":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"2":{"c":{"1":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"1":{"9":{"2":{"1":{"4":{"7":{"7":{"6":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"2":{"4":{"6":{"d":{"8":{"df":0,"docs":{},"e":{"d":{"4":{"d":{"c":{"c":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"1":{"8":{"7":{"6":{"c":{"8":{"5":{"7":{"c":{"b":{"df":1,"docs":{"122":{"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":{}},"7":{"2":{"3":{"6":{"2":{"8":{"1":{"0":{"1":{"a":{"a":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.0}}},"9":{"7":{"0":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"a":{"7":{"df":0,"docs":{},"f":{"8":{"b":{"d":{"b":{"1":{"5":{"9":{"df":2,"docs":{"118":{"tf":1.0},"123":{"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":2,"docs":{"112":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"a":{"1":{"2":{"b":{"5":{"0":{"3":{"1":{"c":{"6":{"b":{"df":1,"docs":{"116":{"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":{}},"4":{"b":{"2":{"8":{"c":{"6":{"c":{"c":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"f":{"c":{"6":{"c":{"9":{"b":{"3":{"1":{"5":{"df":1,"docs":{"123":{"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":{}},"b":{"1":{"4":{"6":{"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"2":{"3":{"a":{"9":{"8":{"9":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"5":{"0":{"9":{"df":0,"docs":{},"e":{"3":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"117":{"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":{}},"c":{"7":{"df":0,"docs":{},"e":{"3":{"d":{"3":{"1":{"df":0,"docs":{},"e":{"7":{"8":{"5":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"e":{"c":{"5":{"4":{"df":0,"docs":{},"f":{"9":{"7":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"d":{"6":{"7":{"2":{"3":{"4":{"5":{"df":0,"docs":{},"e":{"d":{"2":{"9":{"df":1,"docs":{"123":{"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":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"137":{"tf":1.0},"150":{"tf":1.0},"165":{"tf":1.0},"175":{"tf":1.0},"216":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":2.0},"53":{"tf":1.4142135623730951}},"e":{"2":{"7":{"3":{"a":{"8":{"df":0,"docs":{},"e":{"b":{"d":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"h":{"df":1,"docs":{"4":{"tf":1.0}}}},"8":{"0":{"0":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"8":{"6":{"4":{"9":{"df":0,"docs":{},"f":{"b":{"7":{"8":{"7":{"d":{"df":1,"docs":{"123":{"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":{}},"9":{"6":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":4,"docs":{"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"34":{"tf":1.0},"71":{"tf":1.0}}},"1":{"1":{"1":{"0":{"3":{"8":{"4":{"4":{"4":{"1":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"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":{}},"4":{"2":{"8":{"8":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"4":{"b":{"d":{"0":{"c":{"df":0,"docs":{},"e":{"6":{"c":{"7":{"c":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"5":{".":{"7":{"9":{"8":{"1":{"9":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"9":{"2":{"2":{"7":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"0":{"0":{"1":{"3":{"6":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"6":{"1":{"0":{"8":{"5":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"7":{"2":{"0":{"df":1,"docs":{"37":{"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":{}},"3":{"8":{"c":{"9":{"3":{"d":{"c":{"5":{"4":{"4":{"9":{"df":1,"docs":{"122":{"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":1,"docs":{"53":{"tf":1.0}}},"4":{"8":{"2":{"9":{"4":{"1":{"df":0,"docs":{},"f":{"0":{"9":{"0":{"6":{"df":1,"docs":{"123":{"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":{}},"5":{"6":{"c":{"0":{"2":{"d":{"b":{"c":{"df":0,"docs":{},"e":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"3":{"d":{"df":0,"docs":{},"f":{"3":{"5":{"7":{"b":{"6":{"df":1,"docs":{"120":{"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":2,"docs":{"253":{"tf":1.0},"254":{"tf":1.0}}},"6":{"9":{"9":{"4":{"1":{"5":{"6":{"c":{"7":{"3":{"6":{"df":1,"docs":{"122":{"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":{}},"7":{"3":{"7":{"8":{"3":{"1":{".":{"6":{"7":{"1":{"0":{"7":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"3":{"3":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"4":{"9":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"0":{"df":1,"docs":{"112":{"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":{}},"d":{"df":0,"docs":{},"f":{"1":{"5":{"d":{"df":0,"docs":{},"e":{"4":{"4":{"1":{"b":{"df":1,"docs":{"121":{"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":{},"f":{"5":{"df":0,"docs":{},"f":{"c":{"7":{"df":0,"docs":{},"e":{"4":{"8":{"d":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"8":{"7":{"5":{"0":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"a":{"a":{"0":{"7":{"5":{"8":{"3":{"2":{"b":{"0":{"df":1,"docs":{"117":{"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":{}},"b":{"4":{"0":{"1":{"df":0,"docs":{},"f":{"9":{"df":0,"docs":{},"e":{"d":{"2":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"4":{"c":{"7":{"df":0,"docs":{},"e":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"2":{"0":{"a":{"a":{"b":{"df":0,"docs":{},"e":{"1":{"c":{"7":{"6":{"df":1,"docs":{"123":{"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":24,"docs":{"128":{"tf":2.449489742783178},"138":{"tf":1.0},"151":{"tf":1.0},"163":{"tf":1.4142135623730951},"166":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"217":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"254":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"264":{"tf":1.7320508075688772},"276":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":2.23606797749979},"282":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.7320508075688772},"63":{"tf":1.0}},"e":{"a":{"6":{"3":{"6":{"8":{"4":{"8":{"a":{"c":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"f":{"8":{"4":{"4":{"9":{"3":{"8":{"4":{"df":0,"docs":{},"e":{"c":{"3":{"df":1,"docs":{"120":{"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":{},"e":{"4":{"5":{"9":{"2":{"4":{"3":{"8":{"7":{"b":{"df":1,"docs":{"121":{"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":{}}},"s":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}}},"9":{"0":{"1":{".":{"4":{"5":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"8":{"4":{"3":{"2":{"c":{"a":{"8":{"4":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"123":{"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":{}},"1":{"8":{"4":{"3":{"d":{"5":{"4":{"0":{"a":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"8":{"2":{"7":{"0":{"df":0,"docs":{},"f":{"2":{"a":{"4":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"8":{"2":{"2":{"c":{"3":{"d":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"2":{".":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"7":{"0":{"8":{"0":{"8":{"1":{"6":{"2":{"9":{"df":1,"docs":{"122":{"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":{}},"9":{"0":{"df":1,"docs":{"26":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"3":{"0":{"9":{"8":{"6":{"c":{"0":{"3":{"0":{"0":{"df":1,"docs":{"120":{"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":{}},"4":{"6":{"df":1,"docs":{"23":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"c":{"3":{"1":{"2":{"d":{"df":1,"docs":{"118":{"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":{}},"5":{"df":1,"docs":{"272":{"tf":1.0}}},"6":{"0":{"4":{"9":{"df":0,"docs":{},"f":{"3":{"a":{"df":0,"docs":{},"f":{"d":{"5":{"0":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"7":{"8":{"b":{"6":{"3":{"4":{"7":{"4":{"df":1,"docs":{"120":{"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":{}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"b":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"e":{"b":{"3":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"e":{"5":{"2":{"2":{"7":{"9":{"5":{"9":{"4":{"df":1,"docs":{"123":{"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":{}}},"b":{"3":{"b":{"6":{"c":{"9":{"0":{"9":{"1":{"d":{"df":1,"docs":{"121":{"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":{},"e":{"4":{"3":{"2":{"5":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"df":1,"docs":{"118":{"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":{"272":{"tf":1.0}},"e":{"a":{"b":{"df":0,"docs":{},"e":{"7":{"a":{"4":{"0":{"a":{"a":{"df":1,"docs":{"121":{"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":{}}},"7":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{},"f":{"9":{"1":{"a":{"7":{"c":{"df":0,"docs":{},"f":{"0":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"8":{"0":{"2":{"d":{"8":{"6":{"5":{"8":{"5":{"d":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"5":{"c":{"2":{"c":{"6":{"5":{"c":{"2":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"9":{"c":{"5":{"5":{"df":0,"docs":{},"f":{"7":{"d":{"4":{"7":{"c":{"0":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}},"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":{}},"a":{"a":{"1":{"2":{"0":{"6":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"4":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"b":{"9":{"8":{"4":{"df":0,"docs":{},"f":{"2":{"8":{"d":{"5":{"b":{"df":1,"docs":{"123":{"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":{}},"c":{"9":{"5":{"9":{"c":{"8":{"6":{"3":{"df":0,"docs":{},"f":{"8":{"2":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"9":{"4":{"8":{"b":{"5":{"a":{"2":{"0":{"df":1,"docs":{"122":{"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":{}},"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}},"f":{"1":{"c":{"2":{"8":{"b":{"b":{"7":{"5":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":12,"docs":{"128":{"tf":2.449489742783178},"139":{"tf":1.0},"152":{"tf":1.0},"167":{"tf":1.0},"177":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.0}},"e":{"d":{"4":{"0":{"5":{"0":{"c":{"0":{"d":{"7":{"5":{"df":1,"docs":{"122":{"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":{},"e":{"b":{"3":{"a":{"a":{"3":{"3":{"a":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"123":{"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":{}}},"s":{"df":2,"docs":{"236":{"tf":1.7320508075688772},"237":{"tf":1.7320508075688772}}}},"_":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"46":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}}},"o":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"p":{"df":1,"docs":{"138":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"_":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"b":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"111":{"tf":1.0},"161":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"c":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"v":{"6":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"d":{"d":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"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":{}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"u":{"3":{"2":{")":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":4,"docs":{"37":{"tf":1.7320508075688772},"38":{"tf":1.0},"52":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":2,"docs":{"37":{"tf":1.4142135623730951},"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"d":{"_":{"_":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"138":{"tf":2.23606797749979}}}}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"6":{"4":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"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":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"169":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"a":{".":{"df":0,"docs":{},"k":{".":{"a":{"df":2,"docs":{"117":{"tf":1.0},"119":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{"0":{"4":{"2":{"3":{"b":{"8":{"7":{"a":{"7":{"df":1,"docs":{"120":{"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":{}},"4":{"0":{"df":0,"docs":{},"z":{"d":{"7":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"c":{"3":{"0":{"4":{"2":{"5":{"9":{"df":1,"docs":{"123":{"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":{}},"5":{"df":0,"docs":{},"e":{"8":{"c":{"0":{"7":{"0":{"5":{"9":{"d":{"0":{"df":1,"docs":{"123":{"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":{}}},"6":{"7":{"df":0,"docs":{},"e":{"d":{"b":{"df":0,"docs":{},"f":{"4":{"df":0,"docs":{},"f":{"b":{"6":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"6":{"5":{"8":{"df":0,"docs":{},"e":{"1":{"a":{"4":{"1":{"6":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}}}},"a":{"2":{"df":0,"docs":{},"e":{"9":{"3":{"b":{"8":{"df":0,"docs":{},"e":{"5":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"df":0,"docs":{},"f":{"c":{"3":{"2":{"0":{"d":{"9":{"4":{"df":1,"docs":{"117":{"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":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":7,"docs":{"133":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"265":{"tf":2.0},"280":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"256":{"tf":1.0}},"e":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"t":{"df":4,"docs":{"126":{"tf":1.0},"264":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":11,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":2.23606797749979},"249":{"tf":1.0},"253":{"tf":1.4142135623730951},"284":{"tf":2.0}}}}},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":4,"docs":{"68":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"178":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":2.0},"126":{"tf":1.0},"58":{"tf":3.1622776601683795}}}},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"d":{"5":{"b":{"1":{"7":{"7":{"b":{"d":{"7":{"3":{"df":0,"docs":{},"f":{"df":1,"docs":{"121":{"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":{}},"d":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"200":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"123":{"tf":1.0},"207":{"tf":1.7320508075688772},"265":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":3,"docs":{"136":{"tf":2.0},"213":{"tf":1.4142135623730951},"283":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":17,"docs":{"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"187":{"tf":1.0},"204":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"264":{"tf":1.7320508075688772},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}}}}},"df":5,"docs":{"142":{"tf":1.0},"200":{"tf":1.0},"259":{"tf":1.0},"261":{"tf":1.0},"273":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"163":{"tf":1.0},"212":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"7":{"df":0,"docs":{},"e":{"c":{"1":{"3":{"8":{"3":{"3":{"6":{"1":{"df":1,"docs":{"123":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"82":{"tf":1.0}}},"df":4,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0},"83":{"tf":1.0}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"181":{"tf":2.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":1,"docs":{"272":{"tf":2.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":6,"docs":{"121":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0}}},"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":8,"docs":{"118":{"tf":1.0},"126":{"tf":2.449489742783178},"141":{"tf":1.4142135623730951},"157":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"264":{"tf":1.0},"284":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"162":{"tf":1.0},"257":{"tf":1.0},"282":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"h":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":5,"docs":{"200":{"tf":1.4142135623730951},"218":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"164":{"tf":1.0},"264":{"tf":1.0}}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"131":{"tf":1.0},"138":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}}}}},"d":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"242":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":6,"docs":{"195":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"218":{"tf":1.0},"272":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":14,"docs":{"121":{"tf":1.4142135623730951},"126":{"tf":1.4142135623730951},"128":{"tf":1.4142135623730951},"133":{"tf":1.0},"136":{"tf":1.0},"163":{"tf":1.7320508075688772},"19":{"tf":1.0},"2":{"tf":1.0},"226":{"tf":1.0},"230":{"tf":1.0},"280":{"tf":1.0},"38":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"1":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"c":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":3,"docs":{"275":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"136":{"tf":1.0},"204":{"tf":1.0},"264":{"tf":2.6457513110645907}}},"df":1,"docs":{"126":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"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":3,"docs":{"116":{"tf":1.0},"126":{"tf":1.4142135623730951},"2":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"116":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"204":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"1":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"2":{"df":2,"docs":{"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"3":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":14,"docs":{"133":{"tf":2.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"212":{"tf":1.7320508075688772},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.6457513110645907},"269":{"tf":1.0},"280":{"tf":2.0},"283":{"tf":1.0},"284":{"tf":1.0}},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{".":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"[":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"1":{"df":2,"docs":{"137":{"tf":1.0},"37":{"tf":1.0}}},"2":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"1":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}}},"df":43,"docs":{"128":{"tf":1.0},"130":{"tf":1.0},"131":{"tf":2.23606797749979},"133":{"tf":2.0},"134":{"tf":1.7320508075688772},"136":{"tf":1.7320508075688772},"137":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.7320508075688772},"140":{"tf":2.0},"141":{"tf":1.0},"142":{"tf":1.0},"149":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.0},"210":{"tf":1.0},"212":{"tf":1.7320508075688772},"213":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":2.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"x":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}},"m":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"y":{"df":22,"docs":{"120":{"tf":2.6457513110645907},"121":{"tf":1.0},"149":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":2.0},"174":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"176":{"tf":2.0},"178":{"tf":1.7320508075688772},"182":{"tf":1.4142135623730951},"183":{"tf":1.0},"186":{"tf":1.0},"207":{"tf":1.4142135623730951},"233":{"tf":1.0},"234":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"272":{"tf":1.0},"39":{"tf":1.7320508075688772},"41":{"tf":1.0},"42":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.0}}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":18,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"167":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"200":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"261":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"264":{"tf":1.0},"272":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"128":{"tf":1.0},"219":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"210":{"tf":1.7320508075688772},"271":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"211":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"\"":{":":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"217":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"216":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"212":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.4142135623730951},"220":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"213":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"214":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"218":{"tf":1.0}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.7320508075688772},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":24,"docs":{"117":{"tf":3.1622776601683795},"126":{"tf":2.0},"133":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"196":{"tf":1.0},"200":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"250":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"153":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.0}}}}}},"r":{"df":1,"docs":{"141":{"tf":1.0}},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"o":{"df":4,"docs":{"212":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"t":{"df":6,"docs":{"133":{"tf":1.0},"144":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":15,"docs":{"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"b":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"210":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"b":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"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":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"212":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"214":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":1,"docs":{"214":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"1":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"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":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"221":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"222":{"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":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"231":{"tf":1.0},"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"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":{}}}},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"248":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":1,"docs":{"196":{"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":{}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"242":{"tf":1.0}},"l":{"(":{"3":{"0":{"df":1,"docs":{"228":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":4,"docs":{"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"{":{"1":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":1,"docs":{"224":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"0":{"0":{"5":{"df":0,"docs":{},"f":{"d":{"1":{"8":{"9":{"c":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"2":{"8":{"b":{"1":{"c":{"7":{"d":{"5":{"df":1,"docs":{"123":{"tf":2.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":{"3":{"d":{"8":{"8":{"0":{"7":{"2":{"1":{"7":{"2":{"df":1,"docs":{"123":{"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":{}},"2":{"1":{"9":{"7":{"7":{"5":{"5":{"b":{"2":{"6":{"3":{"df":1,"docs":{"117":{"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":{}},"3":{"2":{"c":{"c":{"5":{"b":{"9":{"a":{"3":{"4":{"6":{"df":1,"docs":{"123":{"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":{}},"4":{"2":{"6":{"c":{"df":0,"docs":{},"e":{"8":{"3":{"b":{"a":{"a":{"7":{"df":1,"docs":{"123":{"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":{}},"4":{"1":{"2":{"3":{"b":{"4":{"a":{"3":{"d":{"c":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"c":{"5":{"c":{"4":{"df":0,"docs":{},"e":{"0":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"b":{"3":{"1":{"4":{"1":{"4":{"9":{"7":{"0":{"df":1,"docs":{"123":{"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":{}},"5":{"c":{"d":{"a":{"df":0,"docs":{},"e":{"3":{"2":{"9":{"1":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"122":{"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":{}},"7":{"4":{"1":{"df":0,"docs":{},"f":{"1":{"6":{"3":{"0":{"3":{"4":{"6":{"df":1,"docs":{"120":{"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":{}},"b":{"7":{"0":{"1":{"3":{"c":{"a":{"c":{"5":{"5":{"df":1,"docs":{"116":{"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":{}},"9":{"5":{"a":{"5":{"c":{"4":{"d":{"b":{"0":{"9":{"b":{"df":1,"docs":{"120":{"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":{}},"[":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"231":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"[":{"\"":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"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":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"\"":{"]":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"241":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}},"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":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"228":{"tf":1.0},"229":{"tf":1.0},"242":{"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":{}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"2":{"b":{"2":{"3":{"2":{"1":{"0":{"8":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"124":{"tf":3.7416573867739413},"126":{"tf":2.6457513110645907},"186":{"tf":1.4142135623730951},"196":{"tf":1.0},"265":{"tf":1.0},"271":{"tf":1.0}}},"h":{"df":9,"docs":{"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"32":{"tf":1.4142135623730951},"34":{"tf":3.1622776601683795},"35":{"tf":1.4142135623730951}},"r":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"263":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"168":{"tf":1.0}}}}},"c":{"3":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"6":{"5":{"a":{"6":{"5":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"6":{"b":{"1":{"b":{"7":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"256":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}},"e":{"=":{"2":{"6":{"4":{"4":{"5":{"8":{"df":1,"docs":{"257":{"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":40,"docs":{"11":{"tf":1.0},"119":{"tf":1.0},"12":{"tf":1.0},"127":{"tf":1.4142135623730951},"128":{"tf":1.0},"129":{"tf":1.0},"14":{"tf":2.0},"144":{"tf":1.0},"203":{"tf":1.4142135623730951},"205":{"tf":1.0},"218":{"tf":1.0},"230":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.4142135623730951},"257":{"tf":1.0},"259":{"tf":1.7320508075688772},"261":{"tf":2.0},"263":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"267":{"tf":2.23606797749979},"269":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.4142135623730951},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.0}},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"13":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"上":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"、":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"全":{"df":0,"docs":{},"称":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"d":{"4":{"c":{"df":0,"docs":{},"f":{"0":{"df":0,"docs":{},"e":{"d":{"3":{"3":{"1":{"a":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"1":{"3":{"c":{"d":{"0":{"8":{"df":0,"docs":{},"f":{"1":{"0":{"df":1,"docs":{"121":{"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":20,"docs":{"138":{"tf":1.0},"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"8":{"7":{"0":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"7":{"d":{"2":{"df":1,"docs":{"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"141":{"tf":1.0},"277":{"tf":1.0}}}}},"df":6,"docs":{"200":{"tf":1.0},"207":{"tf":1.0},"217":{"tf":1.0},"265":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"136":{"tf":1.0},"139":{"tf":1.0},"150":{"tf":1.0},"229":{"tf":1.0},"244":{"tf":1.0},"263":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"121":{"tf":1.0},"249":{"tf":1.0},"269":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}},"w":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"203":{"tf":1.0},"265":{"tf":1.7320508075688772},"284":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":11,"docs":{"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"239":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"6":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"8":{"9":{"3":{"c":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.0}}},"m":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":1,"docs":{"260":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"213":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"126":{"tf":1.0},"208":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"215":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}}},"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"181":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":4,"docs":{"100":{"tf":1.7320508075688772},"102":{"tf":1.0},"98":{"tf":1.0},"99":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"264":{"tf":2.0}}}}}}}},"t":{"df":5,"docs":{"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":2,"docs":{"277":{"tf":1.4142135623730951},"278":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{":":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":2.449489742783178},"53":{"tf":2.23606797749979},"58":{"tf":2.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"df":1,"docs":{"146":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"63":{"tf":1.0}}}},"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":10,"docs":{"10":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"65":{"tf":1.0},"70":{"tf":2.449489742783178},"8":{"tf":1.0},"82":{"tf":1.0},"84":{"tf":2.449489742783178}},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"基":{"df":0,"docs":{},"于":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"库":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"用":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"将":{"*":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"10":{"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":{},"用":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"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":{},"代":{"df":0,"docs":{},"码":{"df":0,"docs":{},":":{"2":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":5,"docs":{"163":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"273":{"tf":1.0}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"285":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"117":{"tf":1.0},"217":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"'":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"269":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"138":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"253":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"df":7,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}}}}}},"{":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"210":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"132":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"211":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"217":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"134":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"213":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"135":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"214":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"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":{}}}},"c":{"df":1,"docs":{"16":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"221":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"222":{"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"b":{"'":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"251":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"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":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"231":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"h":{"df":1,"docs":{"137":{"tf":1.0}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":2,"docs":{"195":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"248":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"228":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"225":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"196":{"tf":1.4142135623730951},"218":{"tf":1.0}}}},"df":0,"docs":{}}},"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"23":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":13,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"h":{"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":12,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"27":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":23,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"/":{"df":0,"docs":{},"e":{"c":{"c":{"df":1,"docs":{"16":{"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":{}}}}}},"2":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"136":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"231":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":6,"docs":{"200":{"tf":1.0},"37":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"171":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"1":{"df":1,"docs":{"183":{"tf":1.0}}},"2":{"df":1,"docs":{"183":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"171":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"182":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"171":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"&":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":4,"docs":{"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772}}}},"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":{}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"179":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"179":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"200":{"tf":1.0}}}}}}},"f":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"177":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"169":{"tf":1.0}},"e":{"(":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"219":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"c":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"123":{"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":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"d":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"b":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.449489742783178}}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"t":{"a":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"3":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.8284271247461903}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"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":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"c":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"k":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"b":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"c":{"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"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":{}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"y":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}}},"v":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"(":{"&":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"149":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"128":{"tf":1.0},"149":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"147":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":21,"docs":{"128":{"tf":1.0},"147":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772},"27":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"150":{"tf":1.7320508075688772},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"155":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"155":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"128":{"tf":1.0},"152":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"#":{"2":{"7":{"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"282":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"170":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"170":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"183":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"183":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"(":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"142":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":13,"docs":{"128":{"tf":1.0},"146":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":2,"docs":{"203":{"tf":1.7320508075688772},"254":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"151":{"tf":1.0}}}}}}}}},"df":4,"docs":{"128":{"tf":1.0},"151":{"tf":1.0},"240":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":2,"docs":{"128":{"tf":1.0},"177":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"121":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"38":{"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":{}}}}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}},"e":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"120":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":9,"docs":{"120":{"tf":1.0},"192":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"120":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":3,"docs":{"120":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"120":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.0},"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"142":{"tf":1.0},"37":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"l":{"3":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"128":{"tf":1.0},"157":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"176":{"tf":1.0}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"176":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"176":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"175":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"128":{"tf":1.0},"175":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.0},"194":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"41":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"160":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"160":{"tf":1.0}}}},"df":0,"docs":{}}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"155":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"26":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"34":{"tf":1.0},"37":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"29":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"144":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"145":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"145":{"tf":1.0}}}}}},"df":5,"docs":{"128":{"tf":1.0},"144":{"tf":1.7320508075688772},"204":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"41":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":3,"docs":{"128":{"tf":1.0},"153":{"tf":1.4142135623730951},"204":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"(":{"&":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"153":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"154":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"154":{"tf":1.0},"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}},"y":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"178":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"118":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"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":1,"docs":{"118":{"tf":1.0}}}}}}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":3,"docs":{"118":{"tf":1.0},"124":{"tf":1.0},"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"217":{"tf":1.4142135623730951}},"r":{"a":{"df":0,"docs":{},"m":{"_":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"185":{"tf":1.0}}}},"df":0,"docs":{}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"185":{"tf":1.0}}}}}}},"df":2,"docs":{"128":{"tf":1.0},"185":{"tf":1.0}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"163":{"tf":1.0},"242":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}},"df":7,"docs":{"128":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"242":{"tf":1.4142135623730951}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"来":{"df":0,"docs":{},"轮":{"df":0,"docs":{},"询":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"186":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":2,"docs":{"128":{"tf":1.0},"173":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"173":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"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":2,"docs":{"128":{"tf":1.0},"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"169":{"tf":1.0}},"e":{"(":{"\"":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"171":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"170":{"tf":1.0},"182":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"176":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"178":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"(":{"\"":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"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":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"283":{"tf":1.0}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"%":{"d":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":4,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"s":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.0},"17":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"26":{"tf":2.0},"269":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"6":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"181":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"219":{"tf":1.0},"220":{"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":111,"docs":{"108":{"tf":1.0},"11":{"tf":2.8284271247461903},"111":{"tf":1.0},"112":{"tf":1.4142135623730951},"114":{"tf":1.0},"117":{"tf":5.5677643628300215},"12":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":5.0990195135927845},"128":{"tf":2.0},"129":{"tf":1.0},"13":{"tf":1.0},"131":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":2.6457513110645907},"142":{"tf":2.23606797749979},"144":{"tf":1.7320508075688772},"145":{"tf":1.4142135623730951},"15":{"tf":3.3166247903554},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.0},"16":{"tf":2.0},"160":{"tf":1.0},"163":{"tf":1.7320508075688772},"168":{"tf":1.0},"17":{"tf":1.0},"178":{"tf":1.7320508075688772},"18":{"tf":2.23606797749979},"186":{"tf":1.7320508075688772},"192":{"tf":1.0},"195":{"tf":1.4142135623730951},"2":{"tf":1.7320508075688772},"20":{"tf":2.23606797749979},"203":{"tf":1.7320508075688772},"204":{"tf":1.0},"207":{"tf":2.23606797749979},"210":{"tf":2.0},"211":{"tf":2.0},"212":{"tf":2.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"219":{"tf":1.4142135623730951},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"24":{"tf":1.4142135623730951},"240":{"tf":1.0},"242":{"tf":1.7320508075688772},"252":{"tf":1.0},"253":{"tf":2.23606797749979},"254":{"tf":2.449489742783178},"259":{"tf":2.23606797749979},"26":{"tf":2.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"271":{"tf":2.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"282":{"tf":1.4142135623730951},"283":{"tf":2.23606797749979},"284":{"tf":1.7320508075688772},"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"34":{"tf":2.0},"35":{"tf":1.4142135623730951},"37":{"tf":2.0},"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.7320508075688772},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"45":{"tf":2.23606797749979},"46":{"tf":2.449489742783178},"47":{"tf":2.0},"48":{"tf":2.23606797749979},"49":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":2.449489742783178},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":2.0},"6":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"64":{"tf":1.4142135623730951},"7":{"tf":1.0}},"f":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"181":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"117":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":3,"docs":{"56":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"a":{"d":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}}}}},"s":{"=":{"8":{"df":0,"docs":{},"k":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"f":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":2.0}}},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":7,"docs":{"135":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"f":{"[":{"6":{"4":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"134":{"tf":1.0},"149":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":20,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.7320508075688772},"275":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"46":{"tf":1.7320508075688772},"48":{"tf":1.0},"83":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},")":{"df":0,"docs":{},"来":{"df":0,"docs":{},"实":{"df":0,"docs":{},"现":{"df":0,"docs":{},"。":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}},"g":{"df":1,"docs":{"272":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"126":{"tf":1.4142135623730951},"259":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"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":{},"多":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"y":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":8,"docs":{"144":{"tf":1.0},"145":{"tf":1.7320508075688772},"153":{"tf":1.0},"154":{"tf":1.7320508075688772},"162":{"tf":1.0},"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}},"c":{"/":{"c":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}},"0":{"4":{"1":{"6":{"7":{"c":{"df":0,"docs":{},"e":{"2":{"c":{"a":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"d":{"2":{"b":{"9":{"6":{"8":{"a":{"df":1,"docs":{"117":{"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":{}},"a":{"5":{"a":{"2":{"1":{"c":{"2":{"5":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"123":{"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":{}},"4":{"6":{"6":{"4":{"6":{"d":{"0":{"4":{"8":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"df":0,"docs":{},"f":{"b":{"3":{"8":{"a":{"9":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"0":{"b":{"df":0,"docs":{},"f":{"b":{"4":{"5":{"0":{"6":{"8":{"df":1,"docs":{"123":{"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":{},"f":{"6":{"6":{"9":{"9":{"d":{"df":0,"docs":{},"f":{"c":{"b":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"5":{"df":0,"docs":{},"f":{"b":{"1":{"9":{"9":{"3":{"7":{"4":{"5":{"5":{"df":1,"docs":{"123":{"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":{}}},"6":{"d":{"3":{"0":{"df":0,"docs":{},"e":{"8":{"3":{"9":{"1":{"b":{"8":{"df":1,"docs":{"122":{"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":{}},"7":{"a":{"df":0,"docs":{},"e":{"c":{"5":{"9":{"6":{"5":{"7":{"b":{"6":{"df":1,"docs":{"122":{"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":{}},"8":{"9":{"9":{"6":{"c":{"9":{"8":{"df":0,"docs":{},"f":{"7":{"0":{"3":{"df":1,"docs":{"123":{"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":{}},"[":{"8":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"f":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"16":{"tf":1.0},"249":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"d":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"174":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":6,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.7320508075688772},"229":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":43,"docs":{"117":{"tf":2.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"171":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.23606797749979},"2":{"tf":1.4142135623730951},"210":{"tf":2.23606797749979},"211":{"tf":2.23606797749979},"213":{"tf":2.23606797749979},"214":{"tf":1.7320508075688772},"218":{"tf":1.0},"219":{"tf":1.0},"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":2.23606797749979},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":2.0},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"258":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"274":{"tf":1.0}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"34":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":14,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.0},"213":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.0},"258":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"280":{"tf":1.0}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"211":{"tf":1.0},"264":{"tf":1.0}}}},"df":11,"docs":{"112":{"tf":1.4142135623730951},"133":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"280":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.7320508075688772},"216":{"tf":1.0}}},"y":{">":{":":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}},"s":{"df":9,"docs":{"141":{"tf":1.7320508075688772},"157":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"204":{"tf":1.0},"243":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}}},"b":{"2":{"0":{"b":{"0":{"8":{"df":0,"docs":{},"e":{"a":{"d":{"4":{"0":{"df":1,"docs":{"123":{"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":{}},"4":{"d":{"0":{"3":{"a":{"b":{"4":{"9":{"9":{"d":{"df":1,"docs":{"121":{"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":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"c":{"8":{"b":{"0":{"b":{"9":{"2":{"a":{"1":{"6":{"9":{"df":1,"docs":{"117":{"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":{}},"d":{"3":{"3":{"9":{"4":{"3":{"1":{"7":{"6":{"5":{"3":{"df":1,"docs":{"123":{"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":{}},"8":{"6":{"d":{"1":{"df":0,"docs":{},"f":{"d":{"2":{"1":{"0":{"2":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"df":36,"docs":{"128":{"tf":1.0},"129":{"tf":1.4142135623730951},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"26":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":2.0},"282":{"tf":2.449489742783178},"283":{"tf":1.0},"284":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{}}}},"f":{"7":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"6":{"6":{"0":{"df":0,"docs":{},"f":{"2":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"174":{"tf":1.0},"207":{"tf":1.4142135623730951}},"s":{"=":{"[":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":6,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":2.449489742783178},"120":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"219":{"tf":1.0},"259":{"tf":3.1622776601683795}},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"7":{"7":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"259":{"tf":1.0}}}}}},"df":1,"docs":{"259":{"tf":2.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":2.23606797749979}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":4,"docs":{"141":{"tf":1.0},"211":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"r":{"df":28,"docs":{"111":{"tf":1.0},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"149":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"26":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"83":{"tf":1.0}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":11,"docs":{"123":{"tf":1.0},"126":{"tf":1.0},"127":{"tf":1.0},"181":{"tf":1.0},"203":{"tf":1.0},"215":{"tf":1.4142135623730951},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"264":{"tf":1.0},"272":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}},"s":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}},"i":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"s":{"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"37":{"tf":1.0},"52":{"tf":1.7320508075688772},"69":{"tf":1.7320508075688772},"78":{"tf":1.7320508075688772},"83":{"tf":1.0}}}}},"r":{"df":5,"docs":{"128":{"tf":1.0},"235":{"tf":1.4142135623730951},"236":{"tf":1.0},"238":{"tf":1.0},"279":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"251":{"tf":1.0},"271":{"tf":1.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":2.0}}}},"u":{"d":{"df":1,"docs":{"109":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":2,"docs":{"141":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{"df":25,"docs":{"123":{"tf":1.0},"126":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"203":{"tf":1.4142135623730951},"212":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"246":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},",":{"df":0,"docs":{},"该":{"df":0,"docs":{},"项":{"df":0,"docs":{},"目":{"df":0,"docs":{},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"=":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"[":{"0":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":11,"docs":{"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":1,"docs":{"141":{"tf":1.0}},"n":{"d":{"df":7,"docs":{"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"263":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":25,"docs":{"142":{"tf":1.0},"163":{"tf":1.4142135623730951},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":2.23606797749979},"265":{"tf":2.23606797749979},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":1.0},"71":{"tf":1.0},"78":{"tf":1.0},"79":{"tf":1.0},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"203":{"tf":1.0},"280":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":8,"docs":{"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":5,"docs":{"159":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":1,"docs":{"265":{"tf":1.0}}},"t":{"df":3,"docs":{"123":{"tf":1.7320508075688772},"203":{"tf":1.4142135623730951},"254":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":20,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"116":{"tf":1.0},"12":{"tf":1.0},"126":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"207":{"tf":1.4142135623730951},"23":{"tf":1.0},"256":{"tf":1.4142135623730951},"26":{"tf":1.0},"271":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"272":{"tf":1.0}}},"x":{"df":2,"docs":{"274":{"tf":1.0},"284":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"122":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"150":{"tf":1.0},"218":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":5,"docs":{"159":{"tf":1.0},"192":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"200":{"tf":1.0},"265":{"tf":2.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"126":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"=":{"df":0,"docs":{},"i":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"126":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{",":{"df":0,"docs":{},"y":{"a":{"df":0,"docs":{},"m":{"a":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"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":1,"docs":{"141":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}},"p":{"a":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":15,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"204":{"tf":1.4142135623730951},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"u":{"df":1,"docs":{"141":{"tf":1.0}},"r":{"df":5,"docs":{"125":{"tf":1.0},"126":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"194":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"127":{"tf":1.0},"265":{"tf":1.4142135623730951}}}}}},"n":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"108":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"108":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"264":{"tf":2.449489742783178},"66":{"tf":1.0},"69":{"tf":1.0},"75":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"254":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"116":{"tf":1.4142135623730951},"274":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":14,"docs":{"138":{"tf":2.23606797749979},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"151":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"206":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":3,"docs":{"163":{"tf":1.0},"229":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"229":{"tf":1.0}}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":8,"docs":{"137":{"tf":1.0},"141":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"239":{"tf":1.0},"258":{"tf":1.0},"268":{"tf":1.0},"285":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"224":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"131":{"tf":1.0},"133":{"tf":1.0},"265":{"tf":1.7320508075688772},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":7,"docs":{"195":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"207":{"tf":1.0},"249":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"155":{"tf":1.0}}},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":7,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"217":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"138":{"tf":1.0},"251":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"134":{"tf":1.0},"135":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"=":{"5":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":19,"docs":{"171":{"tf":1.4142135623730951},"173":{"tf":1.0},"174":{"tf":1.0},"176":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.7320508075688772},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"265":{"tf":1.7320508075688772},"273":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.6457513110645907},"53":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"126":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"[":{"1":{"]":{".":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":29,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"269":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"37":{"tf":1.4142135623730951},"53":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"122":{"tf":1.0}}}},"u":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{".":{"1":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":22,"docs":{"120":{"tf":2.0},"150":{"tf":1.0},"163":{"tf":2.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.7320508075688772},"194":{"tf":1.0},"196":{"tf":1.4142135623730951},"225":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.0},"68":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"83":{"tf":2.0}},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":32,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"151":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"207":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"121":{"tf":1.7320508075688772},"283":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":2.23606797749979}}}}},"t":{".":{"c":{"_":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}}}}}}}},"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{")":{")":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}},"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":{},"r":{"df":0,"docs":{},"l":{"df":8,"docs":{"127":{"tf":1.0},"264":{"tf":2.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.7320508075688772},"279":{"tf":1.0},"282":{"tf":1.7320508075688772},"79":{"tf":1.0}}}},"x":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"242":{"tf":1.0}}}}}}},"df":44,"docs":{"111":{"tf":1.4142135623730951},"131":{"tf":1.7320508075688772},"132":{"tf":1.4142135623730951},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.4142135623730951},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"193":{"tf":1.4142135623730951},"195":{"tf":1.7320508075688772},"196":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"282":{"tf":1.0},"283":{"tf":1.7320508075688772},"284":{"tf":1.0},"29":{"tf":1.0},"37":{"tf":2.0},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":2.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951}},":":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":13,"docs":{"123":{"tf":1.0},"142":{"tf":1.0},"147":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"155":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"195":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"237":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"183":{"tf":1.0}}}}}},"df":9,"docs":{"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}}}}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{".":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"3":{"1":{"df":2,"docs":{"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}},"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"0":{"0":{"3":{"df":0,"docs":{},"e":{"c":{"0":{"1":{"c":{"6":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"1":{"2":{"6":{"1":{"8":{"0":{"5":{"6":{"df":1,"docs":{"123":{"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":{}},"2":{"4":{"8":{"5":{"c":{"4":{"2":{"4":{"2":{"a":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"a":{"0":{"9":{"c":{"1":{"7":{"a":{"0":{"6":{"df":1,"docs":{"117":{"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":{}},"3":{"a":{"a":{"4":{"5":{"c":{"df":0,"docs":{},"e":{"6":{"b":{"9":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"4":{"4":{"5":{"5":{"1":{"6":{"9":{"6":{"6":{"d":{"c":{"df":1,"docs":{"122":{"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":{}},"5":{"8":{"df":0,"docs":{},"e":{"4":{"6":{"8":{"b":{"1":{"1":{"1":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"a":{"3":{"b":{"1":{"df":0,"docs":{},"f":{"6":{"9":{"1":{"8":{"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"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":{}},"6":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"0":{"8":{"a":{"8":{"7":{"2":{"b":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"9":{"6":{"2":{"df":0,"docs":{},"f":{"3":{"df":0,"docs":{},"e":{"6":{"2":{"7":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"b":{"a":{"d":{"4":{"df":0,"docs":{},"e":{"7":{"4":{"df":0,"docs":{},"e":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"4":{"c":{"b":{"9":{"b":{"6":{"7":{"0":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"8":{"3":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"4":{"b":{"df":0,"docs":{},"f":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"5":{"2":{"5":{"c":{"a":{"6":{"2":{"c":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":{}},"9":{"8":{"4":{"7":{"d":{"3":{"1":{"0":{"a":{"b":{"4":{"df":1,"docs":{"123":{"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":{},"n":{"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":1,"docs":{"117":{"tf":1.0}},"n":{"df":1,"docs":{"260":{"tf":1.0}}},"t":{"a":{"(":{"c":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"111":{"tf":2.0}}},"df":0,"docs":{}}},"s":{"df":4,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0}},"z":{"df":1,"docs":{"83":{"tf":1.0}}}},"t":{"df":5,"docs":{"160":{"tf":1.4142135623730951},"163":{"tf":2.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.23606797749979}}}},"df":29,"docs":{"111":{"tf":1.7320508075688772},"117":{"tf":1.0},"122":{"tf":1.0},"128":{"tf":1.0},"143":{"tf":1.0},"160":{"tf":2.23606797749979},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":3.0},"164":{"tf":2.0},"165":{"tf":1.4142135623730951},"166":{"tf":2.23606797749979},"167":{"tf":2.449489742783178},"168":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"232":{"tf":3.3166247903554},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":3.3166247903554},"264":{"tf":1.0},"275":{"tf":2.449489742783178},"277":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"246":{"tf":1.0}}}}}}},"y":{"df":2,"docs":{"109":{"tf":1.0},"272":{"tf":1.0}}}},"b":{"2":{"0":{"df":0,"docs":{},"f":{"d":{"2":{"b":{"0":{"1":{"0":{"8":{"df":1,"docs":{"121":{"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":{}},"a":{"df":0,"docs":{},"f":{"d":{"7":{"d":{"d":{"d":{"6":{"2":{"3":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"b":{"0":{"df":0,"docs":{},"e":{"2":{"3":{"5":{"6":{"1":{"df":1,"docs":{"117":{"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":{}},"d":{"6":{"df":0,"docs":{},"e":{"1":{"0":{"df":0,"docs":{},"f":{"b":{"d":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"8":{"7":{"2":{"b":{"c":{"3":{"0":{"9":{"8":{"df":1,"docs":{"118":{"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":2,"docs":{"264":{"tf":1.0},"280":{"tf":2.449489742783178}}},"df":12,"docs":{"111":{"tf":1.4142135623730951},"134":{"tf":1.0},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"265":{"tf":3.4641016151377544},"269":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":2.0}},"e":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"f":{"4":{"8":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"8":{"df":0,"docs":{},"f":{"3":{"a":{"8":{"3":{"b":{"0":{"a":{"0":{"df":1,"docs":{"123":{"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":{}}},"9":{"c":{"b":{"b":{"a":{"a":{"d":{"b":{"a":{"5":{"df":1,"docs":{"120":{"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":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"207":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":10,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"156":{"tf":1.0},"207":{"tf":1.4142135623730951},"215":{"tf":1.0},"223":{"tf":1.0},"283":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"r":{"df":11,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"0":{"9":{"2":{"c":{"d":{"7":{"3":{"c":{"2":{"df":1,"docs":{"123":{"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":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":22,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.0},"172":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.0},"177":{"tf":1.4142135623730951},"186":{"tf":1.0},"192":{"tf":1.0},"204":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"238":{"tf":1.0},"249":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":3,"docs":{"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":38,"docs":{"111":{"tf":1.4142135623730951},"133":{"tf":1.4142135623730951},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"17":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"232":{"tf":2.0},"242":{"tf":2.0},"254":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":2.0},"277":{"tf":1.0},"283":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"274":{"tf":1.0},"34":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":9,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"189":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"82":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}}},"df":6,"docs":{"272":{"tf":2.0},"274":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"n":{"df":0,"docs":{},"i":{"df":2,"docs":{"141":{"tf":1.4142135623730951},"253":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"169":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"c":{"df":5,"docs":{"144":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"272":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"129":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"274":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"29":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"178":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}},"t":{"df":1,"docs":{"79":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":3,"docs":{"128":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"221":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"222":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":4,"docs":{"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"250":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}}},"df":4,"docs":{"155":{"tf":1.7320508075688772},"217":{"tf":1.7320508075688772},"218":{"tf":1.0},"263":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":14,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":1.0},"267":{"tf":1.4142135623730951},"27":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"c":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"179":{"tf":1.0},"218":{"tf":2.0},"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"[":{"c":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"3":{"2":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"f":{"d":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"181":{"tf":1.0},"186":{"tf":1.0},"195":{"tf":1.0},"207":{"tf":1.0},"251":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}}}}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"g":{"df":1,"docs":{"265":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"150":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"147":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"128":{"tf":1.0},"137":{"tf":1.0},"256":{"tf":1.0},"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":7,"docs":{"147":{"tf":1.0},"167":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"217":{"tf":1.0},"243":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"142":{"tf":1.0},"259":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.0}}}}}}},"k":{"df":4,"docs":{"264":{"tf":2.8284271247461903},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"278":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":4,"docs":{"170":{"tf":1.0},"274":{"tf":1.4142135623730951},"278":{"tf":1.0},"281":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"249":{"tf":1.4142135623730951},"259":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"277":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"241":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"235":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"277":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"=":{"%":{"d":{"df":1,"docs":{"174":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":3,"docs":{"210":{"tf":1.0},"216":{"tf":1.0},"283":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"136":{"tf":1.0},"149":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"150":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":1.0},"27":{"tf":1.0}}}}}}},"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":2.0},"27":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"259":{"tf":1.7320508075688772},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":2.449489742783178}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"252":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"211":{"tf":1.0}}}}}}}},"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"169":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{},"’":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":5,"docs":{"131":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"155":{"tf":1.0},"218":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"240":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{")":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"a":{"2":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":3,"docs":{"122":{"tf":4.795831523312719},"124":{"tf":1.0},"218":{"tf":2.449489742783178}}}}}},"o":{"df":0,"docs":{},"p":{"df":4,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.7320508075688772},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":4,"docs":{"150":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"253":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":3,"docs":{"46":{"tf":2.0},"47":{"tf":1.0},"63":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"146":{"tf":1.0},"264":{"tf":1.0}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"269":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":3,"docs":{"188":{"tf":1.0},"207":{"tf":1.0},"265":{"tf":1.4142135623730951}}}},"2":{"df":0,"docs":{},"e":{"9":{"b":{"6":{"5":{"4":{"1":{"d":{"d":{"4":{"df":1,"docs":{"117":{"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":{}}},"5":{"4":{"b":{"c":{"d":{"df":0,"docs":{},"e":{"3":{"d":{"6":{"9":{"d":{"df":1,"docs":{"116":{"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":{}},"6":{"df":0,"docs":{},"f":{"2":{"d":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"0":{"6":{"7":{"df":1,"docs":{"123":{"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":{}}},"9":{"d":{"d":{"b":{"b":{"7":{"7":{"0":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"a":{"3":{"1":{"7":{"b":{"2":{"6":{"7":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"120":{"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":{}},"a":{"6":{"b":{"c":{"b":{"7":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"h":{"df":21,"docs":{"126":{"tf":1.4142135623730951},"133":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"218":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"284":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"63":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"277":{"tf":1.0}}}}}}}},"b":{"4":{"1":{"1":{"3":{"7":{"7":{"a":{"df":0,"docs":{},"e":{"d":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"a":{"3":{"6":{"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"6":{"1":{"4":{"df":0,"docs":{},"f":{"6":{"8":{"7":{"3":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{},"p":{"df":0,"docs":{},"f":{"df":75,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.7320508075688772},"100":{"tf":1.0},"101":{"tf":1.0},"104":{"tf":1.0},"107":{"tf":1.0},"108":{"tf":1.0},"109":{"tf":1.0},"11":{"tf":3.3166247903554},"110":{"tf":1.4142135623730951},"111":{"tf":1.7320508075688772},"112":{"tf":1.0},"115":{"tf":1.0},"117":{"tf":1.0},"12":{"tf":1.0},"126":{"tf":1.0},"13":{"tf":2.23606797749979},"14":{"tf":3.3166247903554},"15":{"tf":3.872983346207417},"16":{"tf":1.7320508075688772},"17":{"tf":2.0},"18":{"tf":1.4142135623730951},"2":{"tf":3.4641016151377544},"20":{"tf":4.69041575982343},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"21":{"tf":2.23606797749979},"23":{"tf":2.0},"24":{"tf":1.7320508075688772},"25":{"tf":2.23606797749979},"252":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"26":{"tf":2.23606797749979},"27":{"tf":1.4142135623730951},"28":{"tf":2.23606797749979},"29":{"tf":2.8284271247461903},"3":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"31":{"tf":1.7320508075688772},"32":{"tf":2.0},"34":{"tf":2.449489742783178},"35":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":2.449489742783178},"38":{"tf":1.0},"39":{"tf":2.0},"4":{"tf":2.8284271247461903},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"43":{"tf":2.23606797749979},"46":{"tf":1.4142135623730951},"47":{"tf":1.7320508075688772},"49":{"tf":1.4142135623730951},"5":{"tf":2.449489742783178},"53":{"tf":2.0},"55":{"tf":2.23606797749979},"59":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"65":{"tf":1.0},"69":{"tf":1.4142135623730951},"7":{"tf":2.0},"73":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"80":{"tf":1.4142135623730951},"82":{"tf":1.4142135623730951},"87":{"tf":1.4142135623730951},"89":{"tf":1.0},"9":{"tf":2.0},"92":{"tf":1.4142135623730951},"95":{"tf":1.0},"98":{"tf":1.4142135623730951}},"(":{"2":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"c":{"c":{"df":18,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"16":{"tf":1.7320508075688772},"17":{"tf":1.7320508075688772},"20":{"tf":1.0},"23":{"tf":1.7320508075688772},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.7320508075688772},"63":{"tf":1.0},"64":{"tf":1.0}}},"d":{"6":{"3":{"a":{"0":{"2":{"1":{"7":{"d":{"5":{"df":1,"docs":{"122":{"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":{},"l":{"df":0,"docs":{},"i":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":2.449489742783178},"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":2.0},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.0}}}}},"d":{"b":{"df":0,"docs":{},"f":{"8":{"c":{"0":{"1":{"d":{"df":0,"docs":{},"e":{"5":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"117":{"tf":1.0},"46":{"tf":2.6457513110645907},"63":{"tf":3.7416573867739413},"83":{"tf":3.7416573867739413}},"f":{"c":{"2":{"2":{"1":{"4":{"b":{"6":{"0":{"4":{"7":{"df":1,"docs":{"122":{"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":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":5,"docs":{"231":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":2.0},"269":{"tf":1.0},"280":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"155":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":1,"docs":{"265":{"tf":2.23606797749979}}}},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":11,"docs":{"142":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.4142135623730951},"199":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"126":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"63":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"195":{"tf":1.0},"275":{"tf":1.0}}},"y":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"218":{"tf":1.0}}}}},"n":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"126":{"tf":4.0},"215":{"tf":1.0},"283":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"122":{"tf":1.0}}},"c":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}}},"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"d":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":11,"docs":{"195":{"tf":1.0},"218":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":2.23606797749979},"267":{"tf":1.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}},"i":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"169":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"261":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"157":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"63":{"tf":1.0}}}}}},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":2,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"218":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"136":{"tf":1.0},"207":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":32,"docs":{"126":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"195":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"200":{"tf":2.23606797749979},"210":{"tf":1.0},"213":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}},"y":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"6":{"4":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"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":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"118":{"tf":1.0},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"268":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"128":{"tf":1.0},"255":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":1.0}}}}},"q":{"df":1,"docs":{"260":{"tf":1.0}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"136":{"tf":1.0},"231":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"r":{"df":2,"docs":{"264":{"tf":1.0},"83":{"tf":2.449489742783178}},"o":{"df":0,"docs":{},"r":{"df":14,"docs":{"128":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.4142135623730951},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"252":{"tf":1.0},"254":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}}}}},"s":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"126":{"tf":1.0},"264":{"tf":2.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"c":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":30,"docs":{"11":{"tf":2.6457513110645907},"12":{"tf":1.0},"15":{"tf":3.1622776601683795},"16":{"tf":1.7320508075688772},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"47":{"tf":1.4142135623730951},"48":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0},"7":{"tf":1.0},"79":{"tf":1.7320508075688772},"80":{"tf":1.0}}},"df":0,"docs":{}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"265":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"a":{"df":0,"docs":{},"f":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"275":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}},"k":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"t":{"df":1,"docs":{"275":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"df":42,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":2.6457513110645907},"128":{"tf":1.4142135623730951},"130":{"tf":1.0},"133":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"140":{"tf":1.0},"141":{"tf":1.0},"160":{"tf":1.7320508075688772},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.4142135623730951},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"20":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":2.23606797749979},"242":{"tf":2.449489742783178},"275":{"tf":3.0},"284":{"tf":1.0},"37":{"tf":2.449489742783178},"38":{"tf":1.0},"39":{"tf":1.7320508075688772},"41":{"tf":2.6457513110645907},"42":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.7320508075688772}},"p":{"df":1,"docs":{"37":{"tf":2.8284271247461903}}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"&":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"163":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"127":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"264":{"tf":1.0},"270":{"tf":1.0}}}}}}}},"x":{"1":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.0}}},"2":{"df":1,"docs":{"182":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"134":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}},"p":{"df":0,"docs":{},"l":{"df":118,"docs":{"126":{"tf":1.0},"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"133":{"tf":1.7320508075688772},"134":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":2.0},"142":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.7320508075688772},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"157":{"tf":1.0},"159":{"tf":1.7320508075688772},"160":{"tf":1.7320508075688772},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"164":{"tf":1.4142135623730951},"165":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.7320508075688772},"170":{"tf":2.0},"171":{"tf":2.0},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.4142135623730951},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.7320508075688772},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.7320508075688772},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":2.0},"215":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"219":{"tf":1.7320508075688772},"220":{"tf":1.7320508075688772},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.7320508075688772},"225":{"tf":1.7320508075688772},"227":{"tf":1.7320508075688772},"228":{"tf":1.7320508075688772},"229":{"tf":1.7320508075688772},"231":{"tf":1.0},"232":{"tf":2.0},"233":{"tf":2.0},"235":{"tf":1.7320508075688772},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.7320508075688772},"242":{"tf":2.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.7320508075688772},"248":{"tf":1.7320508075688772},"249":{"tf":1.7320508075688772},"250":{"tf":1.7320508075688772},"251":{"tf":1.7320508075688772},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":3.3166247903554},"265":{"tf":2.8284271247461903},"269":{"tf":1.0},"272":{"tf":1.0},"279":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"108":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"53":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"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":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":1,"docs":{"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"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":{}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":16,"docs":{"182":{"tf":1.0},"183":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"253":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"264":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":5,"docs":{"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"261":{"tf":1.0},"264":{"tf":2.0},"41":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":12,"docs":{"118":{"tf":1.0},"126":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"157":{"tf":1.0},"195":{"tf":1.4142135623730951},"213":{"tf":1.0},"218":{"tf":1.0},"260":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"282":{"tf":1.0},"63":{"tf":1.0}}}},"v":{"df":2,"docs":{"138":{"tf":1.0},"41":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"155":{"tf":1.0},"169":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.7320508075688772},"204":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0}}}},"t":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":3,"docs":{"46":{"tf":1.7320508075688772},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.4142135623730951}}}}},"df":16,"docs":{"219":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"250":{"tf":1.4142135623730951},"283":{"tf":1.0},"30":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":1.4142135623730951},"79":{"tf":1.0},"83":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"46":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":2,"docs":{"43":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"219":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"229":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.0},"204":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":6,"docs":{"16":{"tf":1.0},"257":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}}},"t":{"4":{"_":{"d":{"a":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":2.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":12,"docs":{"126":{"tf":1.4142135623730951},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":2,"docs":{"118":{"tf":1.0},"264":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":1,"docs":{"249":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"f":{"1":{"a":{"2":{"df":0,"docs":{},"e":{"4":{"4":{"a":{"3":{"a":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"9":{"5":{"0":{"9":{"c":{"2":{"df":0,"docs":{},"f":{"b":{"0":{"df":1,"docs":{"118":{"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":{}},"3":{"0":{"7":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"b":{"4":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{"8":{"9":{"0":{"3":{"c":{"0":{"b":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"1":{"b":{"df":0,"docs":{},"f":{"6":{"d":{"8":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"116":{"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":{}},"4":{"3":{"6":{"4":{"d":{"c":{"df":0,"docs":{},"f":{"c":{"8":{"6":{"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"0":{"0":{"b":{"6":{"9":{"0":{"5":{"0":{"1":{"5":{"df":1,"docs":{"122":{"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":{}},"7":{"c":{"9":{"1":{"7":{"b":{"a":{"1":{"1":{"a":{"6":{"df":1,"docs":{"123":{"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":{}},"9":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"1":{"8":{"3":{"6":{"0":{"4":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"a":{"2":{"8":{"d":{"c":{"b":{"8":{"2":{"a":{"3":{"8":{"df":1,"docs":{"123":{"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":{}},"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":8,"docs":{"136":{"tf":1.7320508075688772},"141":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"155":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"l":{"df":0,"docs":{},"s":{"df":6,"docs":{"225":{"tf":1.0},"249":{"tf":1.0},"29":{"tf":1.0},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"63":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":4,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":2.449489742783178}}}}}},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}}}}}}},"b":{"df":0,"docs":{},"f":{"c":{"5":{"0":{"4":{"a":{"2":{"4":{"df":0,"docs":{},"f":{"5":{"df":2,"docs":{"117":{"tf":1.0},"120":{"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":{}}},"c":{"6":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"2":{"1":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"7":{"0":{"2":{"2":{"7":{"3":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"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":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"df":3,"docs":{"178":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}},"df":1,"docs":{"127":{"tf":1.0}},"e":{"8":{"0":{":":{":":{"2":{"0":{"0":{"0":{":":{"b":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"8":{"2":{":":{"3":{"a":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"9":{"4":{"c":{"c":{"2":{"9":{"0":{"df":0,"docs":{},"f":{"5":{"3":{"df":1,"docs":{"123":{"tf":2.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":{}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":8,"docs":{"114":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.7320508075688772},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"125":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.0}}}}}},"c":{"5":{"6":{"df":0,"docs":{},"f":{"5":{"8":{"9":{"0":{"d":{"9":{"df":1,"docs":{"117":{"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":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"127":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"26":{"tf":2.449489742783178},"27":{"tf":1.0},"29":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":6,"docs":{"174":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"275":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":2.449489742783178},"27":{"tf":1.0}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"a":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"f":{"0":{"2":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"f":{"7":{"b":{"6":{"4":{"3":{"5":{"5":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"123":{"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":{"34":{"tf":1.4142135623730951}},"f":{"9":{"b":{"df":0,"docs":{},"f":{"6":{"1":{"b":{"b":{"6":{"2":{"b":{"c":{"0":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"8":{"c":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"0":{"9":{"d":{"6":{"9":{"0":{"0":{"df":1,"docs":{"85":{"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":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"1":{"0":{"3":{"6":{"5":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"d":{"df":0,"docs":{},"f":{"5":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"df":0,"docs":{},"e":{"b":{"6":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"a":{"5":{"a":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"0":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"0":{"b":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"8":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"7":{"8":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"d":{"0":{"a":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"2":{"7":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"df":0,"docs":{},"e":{"c":{"5":{"df":0,"docs":{},"f":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"c":{"c":{"0":{"7":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"2":{"a":{"d":{"c":{"0":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"d":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}}}}}}}},"df":5,"docs":{"137":{"tf":1.0},"150":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"e":{"=":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"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":21,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"133":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"178":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"253":{"tf":2.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":3.4641016151377544},"265":{"tf":3.3166247903554},"267":{"tf":1.0},"279":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":2.6457513110645907},"26":{"tf":2.8284271247461903},"264":{"tf":1.0},"34":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":3,"docs":{"52":{"tf":2.0},"53":{"tf":1.7320508075688772},"58":{"tf":2.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"126":{"tf":2.0},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"258":{"tf":1.4142135623730951},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"61":{"tf":1.0}},")":{"df":0,"docs":{},"程":{"df":0,"docs":{},"序":{"df":0,"docs":{},"。":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"n":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}},"d":{"df":5,"docs":{"142":{"tf":1.0},"256":{"tf":1.0},"259":{"tf":1.0},"265":{"tf":1.7320508075688772},"285":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.0}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":15,"docs":{"131":{"tf":1.4142135623730951},"134":{"tf":1.0},"138":{"tf":1.0},"149":{"tf":1.0},"162":{"tf":1.0},"212":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0}}}}},"x":{"df":7,"docs":{"127":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"281":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":26,"docs":{"121":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.4142135623730951},"200":{"tf":1.4142135623730951},"201":{"tf":2.0},"202":{"tf":2.0},"207":{"tf":1.0},"218":{"tf":2.6457513110645907},"219":{"tf":1.0},"225":{"tf":1.0},"243":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}},"s":{"=":{"0":{"df":1,"docs":{"243":{"tf":1.0}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"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":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}},"o":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"w":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":3,"docs":{"159":{"tf":1.0},"224":{"tf":1.0},"280":{"tf":1.0}}}},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"217":{"tf":2.0}}}},"df":0,"docs":{}}}},"=":{"b":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"\"":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"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":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"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":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"213":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"211":{"tf":1.0},"214":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":4,"docs":{"210":{"tf":1.0},"215":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"250":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"221":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"222":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"215":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"218":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.7320508075688772}}}}}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":4,"docs":{"123":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":12,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":1.0},"155":{"tf":1.0},"163":{"tf":1.0},"218":{"tf":1.0},"236":{"tf":1.0},"265":{"tf":2.0},"272":{"tf":1.0},"277":{"tf":1.0},"52":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}},"k":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"269":{"tf":1.0}}},"t":{"df":8,"docs":{"117":{"tf":1.0},"133":{"tf":1.4142135623730951},"224":{"tf":1.0},"257":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}},"df":1,"docs":{"217":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"137":{"tf":1.0},"141":{"tf":1.0},"193":{"tf":1.0},"278":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":1,"docs":{"186":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"195":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":3,"docs":{"126":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"263":{"tf":1.0},"275":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"186":{"tf":1.0}}}},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"121":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}},"df":0,"docs":{},"t":{"df":1,"docs":{"242":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":7,"docs":{"126":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"213":{"tf":1.4142135623730951},"217":{"tf":1.0},"243":{"tf":1.0},"34":{"tf":1.0}}}},"n":{"c":{"_":{"a":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"171":{"tf":1.0}}}}},"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"265":{"tf":2.23606797749979}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"135":{"tf":1.0}}}},"df":0,"docs":{}}},"df":57,"docs":{"117":{"tf":1.0},"124":{"tf":5.291502622129181},"126":{"tf":2.6457513110645907},"128":{"tf":1.0},"131":{"tf":2.6457513110645907},"132":{"tf":2.449489742783178},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":2.449489742783178},"140":{"tf":2.449489742783178},"141":{"tf":1.0},"157":{"tf":2.23606797749979},"171":{"tf":1.0},"188":{"tf":1.0},"196":{"tf":1.0},"210":{"tf":3.1622776601683795},"211":{"tf":3.3166247903554},"212":{"tf":1.0},"213":{"tf":3.0},"214":{"tf":2.8284271247461903},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.7320508075688772},"254":{"tf":1.4142135623730951},"265":{"tf":2.8284271247461903},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.8284271247461903},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.23606797749979},"283":{"tf":1.0},"284":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0},"285":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":15,"docs":{"122":{"tf":1.0},"126":{"tf":2.0},"218":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.4142135623730951},"265":{"tf":1.7320508075688772},"275":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"251":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"231":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"e":{"df":1,"docs":{"11":{"tf":1.0}}},"h":{"df":0,"docs":{},"u":{"b":{"df":3,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"238":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"n":{"df":6,"docs":{"132":{"tf":1.0},"135":{"tf":1.0},"213":{"tf":1.7320508075688772},"215":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"159":{"tf":1.0},"219":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":1,"docs":{"195":{"tf":1.0}}},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"d":{"df":2,"docs":{"142":{"tf":1.0},"285":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"t":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"280":{"tf":2.449489742783178}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":4,"docs":{"52":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"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":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"111":{"tf":1.0},"123":{"tf":6.0},"128":{"tf":1.0},"203":{"tf":2.8284271247461903},"254":{"tf":3.0},"29":{"tf":1.0},"34":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"n":{"a":{"df":2,"docs":{"72":{"tf":1.0},"80":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}},"df":0,"docs":{},"p":{"df":8,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"265":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":4,"docs":{"124":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"275":{"tf":1.0}}}}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"127":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"z":{"df":0,"docs":{},"p":{"4":{"1":{"3":{"df":0,"docs":{},"o":{"_":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"271":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"280":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"218":{"tf":1.7320508075688772}},"i":{"df":1,"docs":{"271":{"tf":1.0}}},"l":{"df":4,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}},"e":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"e":{"c":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"58":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}}}}},"df":1,"docs":{"51":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":3,"docs":{"126":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"144":{"tf":1.0},"254":{"tf":1.0}}}},"i":{"df":1,"docs":{"285":{"tf":1.0}}}}},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":3,"docs":{"55":{"tf":1.0},"56":{"tf":1.7320508075688772},"57":{"tf":1.0}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"117":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":19,"docs":{"120":{"tf":2.23606797749979},"121":{"tf":1.0},"168":{"tf":1.0},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.4142135623730951},"186":{"tf":1.7320508075688772},"189":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0},"259":{"tf":2.449489742783178},"260":{"tf":1.7320508075688772},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"116":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"16":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}},"e":{"a":{"d":{"df":2,"docs":{"199":{"tf":1.0},"245":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":8,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"256":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"207":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":6,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":2.0},"271":{"tf":2.449489742783178},"275":{"tf":2.23606797749979},"284":{"tf":1.0}}}},"p":{"df":5,"docs":{"127":{"tf":1.0},"16":{"tf":1.0},"264":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"117":{"tf":1.4142135623730951},"123":{"tf":2.0},"124":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"150":{"tf":1.0},"159":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.7320508075688772},"20":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.4142135623730951},"246":{"tf":1.4142135623730951},"251":{"tf":1.0},"254":{"tf":2.0},"271":{"tf":1.0},"4":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"n":{"c":{"df":2,"docs":{"265":{"tf":1.4142135623730951},"271":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"269":{"tf":1.0}}},"df":4,"docs":{"218":{"tf":1.0},"264":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}}},"t":{"df":0,"docs":{},"z":{"df":1,"docs":{"264":{"tf":1.0}}}}},"x":{"a":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"259":{"tf":2.0},"260":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"155":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"168":{"tf":1.0},"169":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"270":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":2.23606797749979}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":12,"docs":{"135":{"tf":1.0},"151":{"tf":1.4142135623730951},"168":{"tf":1.0},"172":{"tf":1.4142135623730951},"192":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":2.449489742783178},"278":{"tf":1.4142135623730951},"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"df":1,"docs":{"52":{"tf":2.0}}}}},"t":{"df":7,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"264":{"tf":2.23606797749979},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"52":{"tf":2.449489742783178}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"117":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"141":{"tf":2.8284271247461903},"219":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"m":{"d":{"=":{"c":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"c":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"259":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{":":{"/":{"/":{"c":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"/":{"2":{"0":{"2":{"0":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"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":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{":":{"/":{"/":{"a":{"df":0,"docs":{},"k":{"a":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"(":{"3":{"0":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":25,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.4142135623730951},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.4142135623730951},"37":{"tf":1.0},"38":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.4142135623730951},"5":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"54":{"tf":1.0},"72":{"tf":1.0},"86":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"3":{"9":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"o":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"109":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"5":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"/":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"4":{"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":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{".":{"5":{"1":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"6":{"4":{"0":{"6":{"3":{"1":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"81":{"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":{}}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}}}},"w":{"df":0,"docs":{},"w":{"df":0,"docs":{},"w":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"b":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"/":{"d":{"b":{"/":{"3":{"9":{"1":{"5":{"7":{"0":{"df":0,"docs":{},"(":{"1":{"df":0,"docs":{},"h":{"df":1,"docs":{"4":{"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":{}}}}},"v":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"i":{".":{"df":3,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"265":{"tf":1.0}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"o":{"df":8,"docs":{"170":{"tf":1.0},"19":{"tf":1.0},"264":{"tf":3.0},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"98":{"tf":1.0},"99":{"tf":1.0}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"4":{"0":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"122":{"tf":1.0}}},"d":{"df":25,"docs":{"117":{"tf":1.0},"147":{"tf":1.7320508075688772},"148":{"tf":1.4142135623730951},"169":{"tf":1.0},"17":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.7320508075688772},"193":{"tf":1.0},"208":{"tf":1.0},"259":{"tf":2.23606797749979},"26":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.4142135623730951},"27":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"280":{"tf":1.0},"29":{"tf":2.6457513110645907},"30":{"tf":1.7320508075688772},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":8,"docs":{"150":{"tf":1.0},"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"264":{"tf":2.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"179":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{}}},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"186":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0}}}}}}},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":11,"docs":{"246":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.7320508075688772},"284":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"270":{"tf":1.0}}}}}}},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":34,"docs":{"111":{"tf":2.0},"133":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"154":{"tf":1.0},"168":{"tf":1.0},"17":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.7320508075688772},"264":{"tf":2.23606797749979},"272":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"37":{"tf":1.7320508075688772},"41":{"tf":2.0},"46":{"tf":2.23606797749979},"52":{"tf":2.8284271247461903},"58":{"tf":2.6457513110645907},"63":{"tf":2.23606797749979}},"e":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"126":{"tf":1.0},"196":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"127":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"242":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"135":{"tf":1.0},"192":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}}}}},"x":{"df":12,"docs":{"135":{"tf":1.0},"136":{"tf":1.0},"151":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"273":{"tf":1.0},"277":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"(":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"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":{"195":{"tf":1.0}}}}}},"o":{"df":3,"docs":{"126":{"tf":1.0},"58":{"tf":3.7416573867739413},"79":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"m":{"df":6,"docs":{"126":{"tf":1.4142135623730951},"150":{"tf":1.0},"169":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"111":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.4142135623730951}},"i":{"df":5,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"188":{"tf":1.4142135623730951},"206":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"269":{"tf":1.0},"271":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":2,"docs":{"182":{"tf":1.0},"183":{"tf":1.0}}}}},"o":{"d":{"df":3,"docs":{"120":{"tf":1.0},"155":{"tf":1.0},"265":{"tf":2.23606797749979}}},"df":1,"docs":{"155":{"tf":1.0}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"225":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"188":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"211":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.0}},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"261":{"tf":1.0},"269":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":8,"docs":{"141":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"192":{"tf":1.0},"213":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.4142135623730951},"249":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":27,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"138":{"tf":1.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"269":{"tf":1.0},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}}}}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":66,"docs":{"111":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.7320508075688772},"140":{"tf":2.23606797749979},"141":{"tf":1.4142135623730951},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"151":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"17":{"tf":1.7320508075688772},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"18":{"tf":1.0},"182":{"tf":2.0},"183":{"tf":1.4142135623730951},"193":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":2.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"23":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"26":{"tf":2.0},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":3.3166247903554},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"52":{"tf":2.8284271247461903},"58":{"tf":3.1622776601683795},"63":{"tf":1.4142135623730951},"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979},"82":{"tf":1.0},"83":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"134":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"241":{"tf":1.0}},"r":{"df":1,"docs":{"259":{"tf":1.0}}}},"l":{"df":1,"docs":{"122":{"tf":2.23606797749979}}},"n":{"d":{"df":4,"docs":{"127":{"tf":1.0},"131":{"tf":1.0},"138":{"tf":1.0},"241":{"tf":1.0}}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"218":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}},"f":{"a":{"c":{"df":13,"docs":{"126":{"tf":1.0},"142":{"tf":1.0},"159":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"217":{"tf":1.0},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"111":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.7320508075688772}}}}}},"v":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"52":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":3,"docs":{"142":{"tf":1.0},"204":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"155":{"tf":1.0},"52":{"tf":1.7320508075688772}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"128":{"tf":1.0},"157":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"253":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"195":{"tf":1.0},"284":{"tf":1.0}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"157":{"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":2,"docs":{"100":{"tf":1.0},"2":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"1":{"\"":{")":{"[":{"0":{"df":1,"docs":{"196":{"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":6,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"71":{"tf":1.0},"79":{"tf":1.0}},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"4":{"df":1,"docs":{"111":{"tf":1.0}}},"6":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":1,"docs":{"207":{"tf":1.0}},"q":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.7320508075688772}}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":5,"docs":{"150":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0}}}}},"t":{"'":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"270":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"238":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"237":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"239":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":6,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"142":{"tf":2.23606797749979},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"j":{"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"126":{"tf":1.0}}},"df":2,"docs":{"116":{"tf":1.4142135623730951},"126":{"tf":1.7320508075688772}}}},"o":{"b":{"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.4142135623730951}}}}}},"k":{".":{"c":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"(":{"'":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":5,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}},".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"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":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":66,"docs":{"114":{"tf":1.0},"115":{"tf":1.0},"116":{"tf":1.4142135623730951},"117":{"tf":2.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"123":{"tf":2.0},"124":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":3.1622776601683795},"127":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":2.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.7320508075688772},"144":{"tf":1.7320508075688772},"145":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"2":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.7320508075688772},"210":{"tf":2.449489742783178},"211":{"tf":2.6457513110645907},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.7320508075688772},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"252":{"tf":1.0},"253":{"tf":1.4142135623730951},"256":{"tf":2.0},"257":{"tf":2.8284271247461903},"264":{"tf":2.23606797749979},"265":{"tf":2.0},"269":{"tf":1.7320508075688772},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":2.0}}}}}},"y":{"'":{"df":2,"docs":{"188":{"tf":1.0},"192":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"/":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"272":{"tf":1.0}}}}},"df":0,"docs":{}}},"=":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":4,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"282":{"tf":2.0},"284":{"tf":1.7320508075688772}},"y":{"df":0,"docs":{},"p":{"df":6,"docs":{"170":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"183":{"tf":1.0},"186":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"172":{"tf":1.0}}}}},"u":{"3":{"2":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":3,"docs":{"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"6":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":7,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":31,"docs":{"170":{"tf":1.4142135623730951},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.7320508075688772},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":2.23606797749979},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"238":{"tf":2.0},"239":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"272":{"tf":2.8284271247461903},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"282":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":1.4142135623730951},"58":{"tf":2.449489742783178},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"244":{"tf":1.0}}}}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"139":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"139":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"139":{"tf":1.0}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"、":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"265":{"tf":1.0},"269":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"277":{"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":4,"docs":{"131":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"157":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"131":{"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":24,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":3.0},"128":{"tf":1.0},"131":{"tf":2.0},"138":{"tf":1.0},"157":{"tf":1.7320508075688772},"161":{"tf":1.0},"21":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"22":{"tf":1.4142135623730951},"221":{"tf":1.0},"23":{"tf":3.1622776601683795},"24":{"tf":1.0},"257":{"tf":1.0},"26":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"284":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"140":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"140":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"128":{"tf":1.0},"132":{"tf":2.0},"161":{"tf":1.0},"211":{"tf":1.4142135623730951},"222":{"tf":1.0},"23":{"tf":1.4142135623730951},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"279":{"tf":1.0}},"e":{"_":{"_":{"df":1,"docs":{"132":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"132":{"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":{}}}}}},"p":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":3,"docs":{"128":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"248":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"[":{"0":{"]":{")":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"u":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"2":{"df":1,"docs":{"111":{"tf":2.0}}},"3":{"df":1,"docs":{"111":{"tf":2.0}}},"a":{"b":{"df":1,"docs":{"285":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"224":{"tf":1.0},"225":{"tf":1.0}}}},"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"240":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"85":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"140":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":2.0}}}},"t":{"(":{"df":0,"docs":{},"m":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"163":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":3.1622776601683795},"278":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":28,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"196":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"181":{"tf":1.0},"34":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"c":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"23":{"tf":1.0},"26":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"122":{"tf":1.0},"265":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":7,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951}},"e":{"=":{"df":0,"docs":{},"u":{"6":{"4":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"244":{"tf":1.0},"245":{"tf":1.0}}},"r":{"df":0,"docs":{},"n":{"df":12,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"145":{"tf":1.7320508075688772},"154":{"tf":1.7320508075688772},"239":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"249":{"tf":1.0},"272":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"df":18,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"278":{"tf":1.7320508075688772},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0}}}}}},"t":{"'":{"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"]":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":11,"docs":{"136":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"230":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}}},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":3,"docs":{"17":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":17,"docs":{"10":{"tf":2.449489742783178},"11":{"tf":2.23606797749979},"15":{"tf":1.0},"207":{"tf":1.0},"30":{"tf":1.0},"42":{"tf":1.0},"5":{"tf":1.4142135623730951},"53":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"65":{"tf":1.0},"70":{"tf":2.23606797749979},"8":{"tf":1.0},"82":{"tf":1.4142135623730951},"84":{"tf":2.23606797749979},"9":{"tf":1.0}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"214":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.4142135623730951}},"p":{"c":{"a":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"126":{"tf":1.0},"136":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"246":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"6":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":15,"docs":{"123":{"tf":2.0},"128":{"tf":1.0},"17":{"tf":1.4142135623730951},"203":{"tf":2.6457513110645907},"23":{"tf":1.0},"254":{"tf":1.4142135623730951},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"df":1,"docs":{"249":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"117":{"tf":1.0},"159":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"211":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"239":{"tf":1.0},"269":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":7,"docs":{"207":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":2.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0}}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"119":{"tf":1.0}}}},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"274":{"tf":1.0}}}},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"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":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"m":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{".":{"c":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":46,"docs":{"1":{"tf":1.0},"111":{"tf":1.0},"114":{"tf":1.0},"126":{"tf":1.0},"13":{"tf":1.0},"137":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":2.23606797749979},"20":{"tf":1.0},"21":{"tf":1.0},"242":{"tf":1.0},"25":{"tf":1.0},"251":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.4142135623730951},"28":{"tf":1.0},"280":{"tf":1.0},"285":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.4142135623730951},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.4142135623730951},"57":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"80":{"tf":1.4142135623730951}}}}},"r":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":13,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"133":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":1.0},"280":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"63":{"tf":1.0}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"83":{"tf":1.0}}},"v":{"df":0,"docs":{},"m":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"207":{"tf":1.0}}}},"x":{"df":1,"docs":{"265":{"tf":1.0}}}},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":1,"docs":{"120":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":4,"docs":{"169":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"256":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"2":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":1,"docs":{"240":{"tf":1.4142135623730951}},"l":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":5,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"151":{"tf":1.0},"157":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"231":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"112":{"tf":1.0},"264":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":10,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"df":8,"docs":{"117":{"tf":1.0},"195":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"_":{"c":{"b":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":1,"docs":{"232":{"tf":1.4142135623730951}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":4,"docs":{"155":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.0}}},"w":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"m":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}}},"s":{"df":2,"docs":{"269":{"tf":1.0},"282":{"tf":1.0}},"m":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":8,"docs":{"104":{"tf":1.0},"106":{"tf":1.0},"108":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.0},"141":{"tf":2.0}}}},"t":{"df":1,"docs":{"257":{"tf":1.0}}},"u":{"a":{"df":1,"docs":{"267":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"t":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"124":{"tf":2.23606797749979},"219":{"tf":1.0}}}}},"m":{"a":{"c":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"116":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"df":18,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"203":{"tf":1.7320508075688772},"242":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"207":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.4142135623730951},"282":{"tf":1.0},"285":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":8,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0},"277":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"163":{"tf":1.0},"259":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":6,"docs":{"150":{"tf":1.0},"211":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":2.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"189":{"tf":1.0}},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"189":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"193":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"173":{"tf":1.0},"193":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"192":{"tf":2.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"191":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"191":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"187":{"tf":1.0}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"201":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"201":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"199":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"199":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"198":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"198":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"197":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"197":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":5,"docs":{"128":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"163":{"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":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"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":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"202":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"202":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"200":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"190":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"190":{"tf":1.0}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":49,"docs":{"117":{"tf":2.23606797749979},"119":{"tf":1.0},"120":{"tf":2.23606797749979},"121":{"tf":2.23606797749979},"128":{"tf":1.4142135623730951},"142":{"tf":1.0},"168":{"tf":1.4142135623730951},"169":{"tf":2.449489742783178},"170":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.7320508075688772},"174":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":2.6457513110645907},"183":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.4142135623730951},"192":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.7320508075688772},"200":{"tf":2.0},"201":{"tf":1.0},"202":{"tf":1.0},"226":{"tf":1.4142135623730951},"230":{"tf":1.4142135623730951},"233":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.4142135623730951},"238":{"tf":1.4142135623730951},"239":{"tf":1.0},"259":{"tf":2.6457513110645907},"260":{"tf":2.0},"265":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"277":{"tf":1.0},"284":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.4142135623730951},"52":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"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":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}}},",":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},",":{"df":0,"docs":{},"最":{"df":0,"docs":{},"大":{"df":0,"docs":{},"条":{"df":0,"docs":{},"目":{"df":0,"docs":{},"数":{"df":0,"docs":{},"为":{"2":{"5":{"6":{"df":1,"docs":{"63":{"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":{}}}}}}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"265":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":9,"docs":{"120":{"tf":1.0},"126":{"tf":1.0},"155":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"250":{"tf":1.7320508075688772},"264":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"173":{"tf":1.0},"174":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"=":{"1":{"0":{"2":{"4":{"0":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"269":{"tf":1.0}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":4,"docs":{"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"195":{"tf":1.0},"239":{"tf":1.0}}}}}}}},"df":2,"docs":{"260":{"tf":1.0},"263":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"163":{"tf":1.0},"218":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":6,"docs":{"126":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"258":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0}}}}},"df":2,"docs":{"128":{"tf":1.0},"253":{"tf":1.4142135623730951}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":2,"docs":{"92":{"tf":1.0},"94":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"204":{"tf":2.23606797749979},"247":{"tf":1.0},"249":{"tf":1.0},"253":{"tf":2.0}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":9,"docs":{"201":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.0},"232":{"tf":1.0},"252":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":3,"docs":{"142":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":35,"docs":{"136":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"229":{"tf":1.0},"233":{"tf":1.0},"246":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"285":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"263":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":2.23606797749979}},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"常":{"df":0,"docs":{},"量":{"df":0,"docs":{},",":{"df":0,"docs":{},"其":{"df":0,"docs":{},"值":{"df":0,"docs":{},"为":{"0":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"17":{"tf":1.0}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"116":{"tf":1.0}}},"s":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":2,"docs":{"127":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}}}},"t":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"x":{"4":{"df":1,"docs":{"122":{"tf":1.0}}},"5":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"o":{"d":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"240":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0}}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"126":{"tf":2.0},"249":{"tf":1.0},"253":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"117":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":18,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"192":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":3.7416573867739413},"265":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.0}}}}}},"p":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"q":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":2.23606797749979},"85":{"tf":1.0}},"g":{"df":5,"docs":{"118":{"tf":1.0},"201":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"v":{"b":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":50,"docs":{"121":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":2.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.7320508075688772},"171":{"tf":1.7320508075688772},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.7320508075688772},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"184":{"tf":1.7320508075688772},"185":{"tf":1.7320508075688772},"186":{"tf":1.7320508075688772},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"216":{"tf":1.0},"23":{"tf":1.4142135623730951},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":2.449489742783178},"260":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"58":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"155":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.0},"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"146":{"tf":1.0},"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":2,"docs":{"109":{"tf":1.0},"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"215":{"tf":1.0},"263":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"144":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"138":{"tf":1.0},"150":{"tf":1.0},"203":{"tf":1.0},"212":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"283":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":5,"docs":{"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"228":{"tf":1.0}}},"t":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"124":{"tf":1.0},"219":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":11,"docs":{"126":{"tf":1.0},"162":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"261":{"tf":1.0},"264":{"tf":1.0},"266":{"tf":1.0},"267":{"tf":1.0},"286":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}},"w":{"df":20,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"242":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":3,"docs":{"137":{"tf":2.0},"274":{"tf":1.0},"52":{"tf":2.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"f":{"df":0,"docs":{},"p":{"df":1,"docs":{"122":{"tf":1.0}}}},"i":{"c":{"'":{"df":1,"docs":{"181":{"tf":1.0}}},"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":6,"docs":{"112":{"tf":1.4142135623730951},"121":{"tf":1.0},"283":{"tf":1.7320508075688772},"37":{"tf":2.8284271247461903},"41":{"tf":1.7320508075688772},"85":{"tf":2.0}},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"225":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"141":{"tf":1.0},"204":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"254":{"tf":1.0},"256":{"tf":1.0}},"e":{"df":5,"docs":{"224":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}},"y":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"195":{"tf":1.4142135623730951},"226":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"133":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":19,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"159":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"188":{"tf":1.0},"192":{"tf":1.0},"195":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"251":{"tf":1.0},"264":{"tf":1.0}}},"h":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951}}}},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":8,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"231":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"$":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"260":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":1,"docs":{"155":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":8,"docs":{"121":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"165":{"tf":1.0},"178":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":2.0}}}},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":3,"docs":{"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"a":{"df":1,"docs":{"121":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":8,"docs":{"146":{"tf":1.0},"155":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":2.0},"195":{"tf":1.0},"232":{"tf":1.0},"250":{"tf":1.0},"265":{"tf":1.0}},"s":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"v":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":25,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"150":{"tf":1.0},"16":{"tf":1.4142135623730951},"168":{"tf":1.0},"17":{"tf":1.4142135623730951},"207":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"257":{"tf":1.0},"26":{"tf":1.4142135623730951},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"217":{"tf":1.0},"262":{"tf":1.0},"265":{"tf":1.0},"267":{"tf":1.0},"268":{"tf":1.4142135623730951}}}}}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"16":{"tf":1.0}},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"k":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"1":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"6":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"3":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":1.0}}},"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"213":{"tf":1.4142135623730951},"249":{"tf":1.0}}}}}}},"k":{"df":3,"docs":{"136":{"tf":1.0},"159":{"tf":1.0},"269":{"tf":1.0}}},"l":{"d":{"df":4,"docs":{"188":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"c":{"df":6,"docs":{"126":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"271":{"tf":1.0}}},"df":17,"docs":{"133":{"tf":1.0},"155":{"tf":1.0},"165":{"tf":1.0},"174":{"tf":1.0},"181":{"tf":1.0},"200":{"tf":1.0},"204":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"225":{"tf":1.0},"238":{"tf":1.0},"251":{"tf":1.0},"259":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"277":{"tf":1.0}},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"p":{"df":2,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":3,"docs":{"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.0}}}},"df":8,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"250":{"tf":1.0},"264":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":2.449489742783178}}}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"30":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"259":{"tf":1.0},"264":{"tf":2.23606797749979},"30":{"tf":1.0}}}}}}}},"r":{"df":15,"docs":{"121":{"tf":1.0},"141":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"192":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":24,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"16":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.4142135623730951},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"r":{"'":{"df":1,"docs":{"207":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"123":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"159":{"tf":1.0},"272":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"2":{"tf":1.0}}},"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":6,"docs":{"169":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"df":9,"docs":{"118":{"tf":1.0},"127":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"34":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"126":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":33,"docs":{"112":{"tf":1.4142135623730951},"128":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.4142135623730951},"138":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"207":{"tf":1.4142135623730951},"223":{"tf":1.0},"224":{"tf":1.0},"226":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"233":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"264":{"tf":2.6457513110645907},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"163":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"192":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"f":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"126":{"tf":1.4142135623730951},"128":{"tf":1.0},"257":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"190":{"tf":1.0},"272":{"tf":1.0}}}}}}}}},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}}}},"p":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":14,"docs":{"108":{"tf":1.0},"112":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.4142135623730951},"53":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"z":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"s":{"/":{"b":{"c":{"c":{"/":{"_":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}},"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":13,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"181":{"tf":1.4142135623730951}}},"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"162":{"tf":1.4142135623730951}}}},"df":26,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0},"117":{"tf":1.0},"122":{"tf":1.0},"126":{"tf":2.449489742783178},"13":{"tf":1.0},"162":{"tf":1.0},"181":{"tf":1.4142135623730951},"196":{"tf":2.449489742783178},"21":{"tf":1.0},"217":{"tf":2.23606797749979},"218":{"tf":1.7320508075688772},"25":{"tf":1.0},"264":{"tf":1.4142135623730951},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"d":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}},"df":2,"docs":{"163":{"tf":1.0},"232":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":18,"docs":{"137":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0},"284":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"200":{"tf":1.0}}}}},"t":{"df":5,"docs":{"129":{"tf":1.0},"141":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"267":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"187":{"tf":1.0},"197":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"243":{"tf":1.0},"253":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"260":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":1,"docs":{"174":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"h":{":":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"~":{"/":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"208":{"tf":1.0}}}}},"df":0,"docs":{}}},"[":{"1":{"2":{"8":{"]":{"=":{"df":0,"docs":{},"{":{"0":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"136":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"256":{"tf":1.0},"264":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"282":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"260":{"tf":1.0},"264":{"tf":1.0}}}}}},"df":5,"docs":{"217":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"52":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.7320508075688772}}}},"r":{"df":10,"docs":{"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"174":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"236":{"tf":1.0},"242":{"tf":1.0},"265":{"tf":1.4142135623730951}},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"b":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"250":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"(":{"0":{"df":0,"docs":{},"x":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"d":{"9":{"6":{"8":{"2":{"1":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"265":{"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":1,"docs":{"265":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"226":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"_":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":2.23606797749979}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"161":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"162":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"162":{"tf":1.0}}},"df":0,"docs":{}}}},"df":4,"docs":{"128":{"tf":1.0},"133":{"tf":1.0},"161":{"tf":1.0},"164":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.7320508075688772}}}}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":1.4142135623730951},"160":{"tf":1.0},"174":{"tf":1.4142135623730951},"227":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"39":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":1.0},"46":{"tf":1.0},"83":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"174":{"tf":1.0},"194":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"l":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}}}},"i":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.7320508075688772}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":2.23606797749979},"31":{"tf":1.0}}}}}}},"df":9,"docs":{"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.7320508075688772}},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979}},"p":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":42,"docs":{"142":{"tf":1.0},"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":2.449489742783178},"208":{"tf":1.0},"215":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":3.3166247903554},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.4142135623730951},"249":{"tf":2.0},"26":{"tf":3.4641016151377544},"260":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":2.6457513110645907},"271":{"tf":2.0},"272":{"tf":1.0},"275":{"tf":2.8284271247461903},"28":{"tf":1.4142135623730951},"280":{"tf":2.0},"283":{"tf":2.23606797749979},"284":{"tf":1.4142135623730951},"29":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"31":{"tf":1.0},"34":{"tf":2.23606797749979},"37":{"tf":3.605551275463989},"41":{"tf":2.0},"46":{"tf":2.6457513110645907},"47":{"tf":1.0},"52":{"tf":4.242640687119285},"63":{"tf":3.7416573867739413},"71":{"tf":1.0},"79":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0},"94":{"tf":1.0}},"n":{"df":1,"docs":{"155":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"150":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.0}}},"n":{"df":4,"docs":{"169":{"tf":2.0},"181":{"tf":1.0},"259":{"tf":1.7320508075688772},"260":{"tf":1.0}},"g":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":5,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"213":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"285":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"137":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"165":{"tf":1.0},"170":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"274":{"tf":2.0}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":5,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.0},"242":{"tf":1.0},"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.4142135623730951},"199":{"tf":1.0},"244":{"tf":1.7320508075688772},"245":{"tf":1.0}},"u":{"df":0,"docs":{},"l":{"df":5,"docs":{"149":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"122":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"256":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"263":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"277":{"tf":1.4142135623730951}},"p":{"c":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":5,"docs":{"260":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":4,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"207":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"137":{"tf":1.0},"265":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0}}}},"i":{"df":0,"docs":{},"x":{"df":9,"docs":{"120":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"142":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"251":{"tf":1.0},"277":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"147":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"s":{"df":1,"docs":{"79":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":4,"docs":{"137":{"tf":2.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"52":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":8,"docs":{"190":{"tf":1.0},"191":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"272":{"tf":1.0},"281":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"%":{"1":{"0":{"d":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"9":{"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"250":{"tf":1.0}}},"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"247":{"tf":1.0},"248":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"[":{"%":{"5":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"251":{"tf":1.0}}},"r":{"a":{"c":{"df":3,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":2,"docs":{"232":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"242":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"241":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"240":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":28,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.7320508075688772},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"259":{"tf":1.0},"264":{"tf":3.3166247903554},"265":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"280":{"tf":2.0},"282":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}},"f":{"(":{"\"":{"%":{"8":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"260":{"tf":1.0},"269":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"273":{"tf":1.0},"276":{"tf":1.0},"278":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"111":{"tf":1.0}}},"y":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"37":{"tf":1.0}}},"y":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":13,"docs":{"126":{"tf":2.0},"128":{"tf":1.4142135623730951},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":2.0},"140":{"tf":1.0},"141":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"215":{"tf":2.0},"250":{"tf":1.0},"271":{"tf":1.4142135623730951},"283":{"tf":2.0}}},"l":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"c":{"/":{"1":{"5":{"6":{"5":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"/":{"<":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"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":{},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"6":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"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":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"126":{"tf":1.0},"147":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"196":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.7320508075688772},"282":{"tf":1.0},"29":{"tf":2.0},"30":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":2.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"264":{"tf":2.23606797749979}}}}},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{".":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"195":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"[":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"120":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}},"r":{"a":{"df":0,"docs":{},"m":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":59,"docs":{"112":{"tf":1.0},"117":{"tf":2.8284271247461903},"118":{"tf":1.4142135623730951},"122":{"tf":1.0},"124":{"tf":1.7320508075688772},"126":{"tf":3.0},"128":{"tf":1.0},"129":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":2.23606797749979},"144":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.4142135623730951},"178":{"tf":2.0},"186":{"tf":1.0},"195":{"tf":1.7320508075688772},"200":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"218":{"tf":2.6457513110645907},"219":{"tf":1.4142135623730951},"225":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"254":{"tf":2.6457513110645907},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.7320508075688772},"270":{"tf":1.7320508075688772},"271":{"tf":2.23606797749979},"272":{"tf":1.4142135623730951},"273":{"tf":1.4142135623730951},"274":{"tf":2.23606797749979},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":2.23606797749979},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":3,"docs":{"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"80":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"265":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"128":{"tf":1.0},"254":{"tf":2.23606797749979}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"284":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":19,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"151":{"tf":1.0},"161":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"213":{"tf":1.4142135623730951},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"239":{"tf":1.0},"246":{"tf":1.0},"256":{"tf":1.0},"265":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":1,"docs":{"47":{"tf":1.0}},"e":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"o":{"df":1,"docs":{"152":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":22,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"149":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"193":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"1":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"134":{"tf":1.0},"282":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"132":{"tf":1.4142135623730951},"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"259":{"tf":1.0}}},"r":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"127":{"tf":1.0},"136":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":5,"docs":{"128":{"tf":1.0},"160":{"tf":1.7320508075688772},"163":{"tf":1.7320508075688772},"197":{"tf":1.0},"243":{"tf":1.4142135623730951}}}}},"w":{"d":{"`":{"/":{":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"y":{"df":1,"docs":{"264":{"tf":1.0}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"2":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{".":{"6":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":18,"docs":{"128":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"205":{"tf":1.0},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"246":{"tf":1.4142135623730951},"267":{"tf":1.4142135623730951},"270":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"279":{"tf":1.0},"284":{"tf":1.0}}}}}}}},"q":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"217":{"tf":1.7320508075688772}},"e":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"275":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":13,"docs":{"120":{"tf":1.0},"150":{"tf":1.0},"181":{"tf":2.0},"184":{"tf":1.0},"185":{"tf":2.0},"196":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"264":{"tf":1.7320508075688772}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"243":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"i":{"c":{"df":2,"docs":{"66":{"tf":1.0},"75":{"tf":1.0}},"k":{"df":8,"docs":{"159":{"tf":1.0},"262":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"272":{"tf":1.4142135623730951},"66":{"tf":1.0},"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"272":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}}}},"r":{"0":{"df":1,"docs":{"253":{"tf":1.0}}},"1":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}},"8":{"df":1,"docs":{"253":{"tf":1.0}}},":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":4,"docs":{"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0}}}},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"150":{"tf":1.0},"152":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"150":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"150":{"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":{},"g":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"(":{"0":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"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":2,"docs":{"236":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"137":{"tf":1.0},"216":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"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":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"137":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"217":{"tf":1.0}}}},"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"157":{"tf":1.4142135623730951}},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"274":{"tf":1.4142135623730951}},"e":{"a":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":18,"docs":{"134":{"tf":1.0},"136":{"tf":1.4142135623730951},"144":{"tf":1.0},"153":{"tf":1.4142135623730951},"217":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"231":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"269":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.4142135623730951},"279":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"34":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"215":{"tf":1.0}}}},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"32":{"tf":1.4142135623730951},"34":{"tf":2.449489742783178},"35":{"tf":2.0}}}}},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"285":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"271":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":1,"docs":{"280":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":5,"docs":{"188":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"r":{"d":{"df":5,"docs":{"272":{"tf":1.0},"273":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"v":{"df":1,"docs":{"217":{"tf":2.0}}}},"d":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"85":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"122":{"tf":1.0},"181":{"tf":1.0},"186":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"c":{"df":1,"docs":{"229":{"tf":1.0}}},"df":0,"docs":{}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"246":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"120":{"tf":2.449489742783178},"126":{"tf":1.0},"127":{"tf":1.4142135623730951},"186":{"tf":1.0},"203":{"tf":1.0},"263":{"tf":1.0},"271":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"207":{"tf":1.4142135623730951},"274":{"tf":1.0},"277":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"213":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"265":{"tf":1.4142135623730951}}}},"df":1,"docs":{"213":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"133":{"tf":1.0},"283":{"tf":1.0}}}},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"254":{"tf":1.0}}}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"138":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"v":{"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"264":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":3,"docs":{"180":{"tf":1.0},"181":{"tf":1.0},"265":{"tf":1.0}}}}}},"q":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.7320508075688772}}}}}}},"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":2.449489742783178},"277":{"tf":2.0}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":7,"docs":{"127":{"tf":1.0},"170":{"tf":2.0},"175":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":3.0},"277":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"r":{"df":13,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"141":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"203":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":6,"docs":{"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"34":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":2,"docs":{"269":{"tf":1.0},"277":{"tf":1.0}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"192":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.0},"259":{"tf":1.4142135623730951},"79":{"tf":1.0}}}}}},"t":{"df":9,"docs":{"132":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"23":{"tf":2.23606797749979},"26":{"tf":2.23606797749979},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"34":{"tf":2.23606797749979},"37":{"tf":3.4641016151377544}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"116":{"tf":1.0},"122":{"tf":1.0},"124":{"tf":1.0},"150":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"0":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":92,"docs":{"111":{"tf":2.0},"126":{"tf":1.0},"132":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.7320508075688772},"136":{"tf":1.0},"140":{"tf":1.4142135623730951},"141":{"tf":2.6457513110645907},"142":{"tf":1.4142135623730951},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.4142135623730951},"157":{"tf":1.7320508075688772},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.7320508075688772},"174":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":2.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"211":{"tf":2.449489742783178},"212":{"tf":1.0},"214":{"tf":2.23606797749979},"225":{"tf":1.0},"228":{"tf":1.0},"23":{"tf":1.4142135623730951},"231":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"244":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"259":{"tf":1.0},"26":{"tf":1.4142135623730951},"265":{"tf":2.23606797749979},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979},"41":{"tf":1.0},"46":{"tf":1.7320508075688772},"52":{"tf":3.4641016151377544},"58":{"tf":3.605551275463989},"63":{"tf":3.0},"69":{"tf":2.8284271247461903},"78":{"tf":2.8284271247461903},"82":{"tf":2.0},"83":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"41":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"195":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"120":{"tf":1.0}}}}}}}}},"v":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"248":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"204":{"tf":1.7320508075688772},"253":{"tf":1.0},"274":{"tf":1.0},"276":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"251":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"167":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"167":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"164":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"165":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"166":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"120":{"tf":1.0},"163":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"解":{"df":0,"docs":{},"决":{"df":0,"docs":{},"了":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":16,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"275":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"48":{"tf":1.0}}}},"s":{"c":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"m":{"df":3,"docs":{"23":{"tf":2.449489742783178},"259":{"tf":1.0},"26":{"tf":2.449489742783178}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"df":0,"docs":{},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}}}}}},"df":2,"docs":{"117":{"tf":1.0},"282":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"s":{"df":1,"docs":{"11":{"tf":1.0}}},"u":{"df":0,"docs":{},"n":{"df":30,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"126":{"tf":1.0},"150":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":2.0},"257":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":2.0},"261":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"47":{"tf":2.0},"53":{"tf":1.4142135623730951},"79":{"tf":1.4142135623730951}},"e":{"df":7,"docs":{"17":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"63":{"tf":1.0}}},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"53":{"tf":1.0}}}}},"df":0,"docs":{}},"df":5,"docs":{"264":{"tf":2.0},"50":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"3":{"2":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"6":{"4":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"/":{".":{"\\":{"df":0,"docs":{},"{":{"2":{"\\":{"df":0,"docs":{},"}":{"/":{"&":{"\\":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"g":{"df":1,"docs":{"260":{"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":{}},"1":{"df":1,"docs":{"112":{"tf":2.0}}},"3":{"2":{"df":1,"docs":{"137":{"tf":1.0}}},"9":{"0":{"df":2,"docs":{"116":{"tf":1.0},"204":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{")":{"(":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"153":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"144":{"tf":1.0},"153":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"239":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"142":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0}}}}},"r":{"df":1,"docs":{"263":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"a":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"193":{"tf":1.0},"284":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"250":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"161":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":15,"docs":{"159":{"tf":1.0},"233":{"tf":1.4142135623730951},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"253":{"tf":1.0},"26":{"tf":1.0},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":93,"docs":{"127":{"tf":1.0},"133":{"tf":1.4142135623730951},"136":{"tf":1.4142135623730951},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"159":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"208":{"tf":1.4142135623730951},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"214":{"tf":1.4142135623730951},"215":{"tf":1.4142135623730951},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"227":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"235":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951},"250":{"tf":1.4142135623730951},"251":{"tf":1.4142135623730951},"265":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"(":{"\"":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":12,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"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":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}},".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"2":{"6":{"7":{"5":{"2":{"2":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"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":6,"docs":{"17":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.7320508075688772},"35":{"tf":1.0},"37":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":10,"docs":{"134":{"tf":1.0},"159":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"=":{"\"":{"b":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":11,"docs":{"129":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"226":{"tf":1.0},"252":{"tf":1.0},"34":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"141":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"d":{"df":2,"docs":{"260":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":22,"docs":{"112":{"tf":1.0},"117":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"203":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.4142135623730951},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"280":{"tf":1.0},"285":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"m":{"df":1,"docs":{"265":{"tf":1.0}}},"n":{"df":1,"docs":{"155":{"tf":1.0}}}},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"f":{".":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"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":{}}},"n":{"d":{"df":6,"docs":{"127":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":5,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"196":{"tf":1.7320508075688772},"37":{"tf":2.449489742783178}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"141":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"279":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"142":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"274":{"tf":1.0}}},"v":{"df":1,"docs":{"85":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"t":{"df":14,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.0},"154":{"tf":1.0},"203":{"tf":1.0},"204":{"tf":1.7320508075688772},"213":{"tf":1.0},"225":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"53":{"tf":2.449489742783178}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"163":{"tf":1.0}}}}}},"f":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":5,"docs":{"159":{"tf":1.0},"163":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}},"df":2,"docs":{"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"259":{"tf":2.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":3,"docs":{"264":{"tf":1.0},"269":{"tf":1.0},"280":{"tf":1.0}}}},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"249":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"249":{"tf":1.0}}}}}}}}},"df":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"n":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"121":{"tf":1.4142135623730951},"188":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":2.449489742783178}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":2.449489742783178}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"264":{"tf":1.0}},"e":{"d":{":":{"0":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}},"1":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":1,"docs":{"37":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"126":{"tf":1.0},"192":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":4,"docs":{"159":{"tf":1.0},"253":{"tf":1.0},"269":{"tf":1.0},"53":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"159":{"tf":1.0}}}},"i":{"df":1,"docs":{"141":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"165":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":95,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"x":{"df":1,"docs":{"269":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"136":{"tf":1.0}}}}},"z":{"df":0,"docs":{},"e":{":":{"1":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"=":{"1":{"0":{"2":{"4":{"0":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"172":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"149":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":23,"docs":{"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":2.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":2.0},"155":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.0},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.23606797749979},"275":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"*":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":4,"docs":{"37":{"tf":1.0},"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}},"u":{"3":{"2":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"k":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"202":{"tf":1.4142135623730951}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"201":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"df":3,"docs":{"117":{"tf":1.0},"161":{"tf":1.0},"202":{"tf":1.7320508075688772}},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":4,"docs":{"131":{"tf":1.4142135623730951},"69":{"tf":3.3166247903554},"78":{"tf":3.3166247903554},"82":{"tf":2.6457513110645907}},"h":{"df":1,"docs":{"186":{"tf":1.0}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"157":{"tf":1.0}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"0":{".":{"0":{"1":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"236":{"tf":1.0}}},"9":{"9":{"9":{"9":{"9":{"9":{"9":{"9":{"df":2,"docs":{"277":{"tf":1.0},"282":{"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":{}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"(":{"1":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"257":{"tf":1.0},"284":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":2.0},"58":{"tf":2.0}},"s":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"w":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"267":{"tf":1.0},"274":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"o":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}}}}}},"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}},"k":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"186":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":5,"docs":{"118":{"tf":1.4142135623730951},"131":{"tf":1.4142135623730951},"186":{"tf":1.0},"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"161":{"tf":1.0}}}}}}},"df":13,"docs":{"117":{"tf":2.6457513110645907},"118":{"tf":2.449489742783178},"120":{"tf":2.0},"126":{"tf":1.0},"142":{"tf":1.0},"181":{"tf":1.7320508075688772},"186":{"tf":1.0},"196":{"tf":1.0},"200":{"tf":1.7320508075688772},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"217":{"tf":1.0},"246":{"tf":1.0}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"200":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"261":{"tf":1.0},"265":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"112":{"tf":1.0},"127":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":5,"docs":{"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"233":{"tf":1.4142135623730951}},"e":{"d":{"(":{"b":{"[":{"'":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"'":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"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":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":13,"docs":{"117":{"tf":1.0},"123":{"tf":1.0},"127":{"tf":1.0},"128":{"tf":1.0},"157":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.4142135623730951},"252":{"tf":1.0},"256":{"tf":1.7320508075688772},"264":{"tf":1.7320508075688772},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"279":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":23,"docs":{"126":{"tf":2.0},"144":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.4142135623730951},"167":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.0},"277":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"c":{"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"x":{"df":6,"docs":{"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"203":{"tf":1.4142135623730951},"258":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":2,"docs":{"126":{"tf":1.0},"265":{"tf":1.0}},"i":{"df":22,"docs":{"121":{"tf":1.0},"131":{"tf":1.4142135623730951},"133":{"tf":1.0},"138":{"tf":1.4142135623730951},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"186":{"tf":1.0},"192":{"tf":1.0},"203":{"tf":2.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"272":{"tf":1.0},"34":{"tf":1.7320508075688772},"63":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"207":{"tf":1.0},"279":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"c":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"207":{"tf":1.0}}}}}}},"df":5,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}},"s":{"df":1,"docs":{"217":{"tf":1.0}},"h":{"d":{"df":3,"docs":{"112":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951}}},"df":2,"docs":{"264":{"tf":1.0},"71":{"tf":1.4142135623730951}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":21,"docs":{"120":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"173":{"tf":2.0},"184":{"tf":2.0},"185":{"tf":1.0},"193":{"tf":1.7320508075688772},"195":{"tf":1.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"218":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":2.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"256":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":1,"docs":{"215":{"tf":1.0}}},"r":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":2.0}}}},"df":20,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"146":{"tf":1.0},"163":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"272":{"tf":2.0},"274":{"tf":1.0},"275":{"tf":2.23606797749979},"284":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"136":{"tf":1.0},"208":{"tf":1.0},"271":{"tf":1.0},"283":{"tf":1.0},"37":{"tf":1.4142135623730951},"52":{"tf":2.0},"58":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"163":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"274":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"146":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":2.23606797749979}}}},"df":0,"docs":{},"e":{"df":9,"docs":{"132":{"tf":1.0},"168":{"tf":1.0},"173":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"251":{"tf":1.0},"34":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"134":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"207":{"tf":1.0},"224":{"tf":1.0},"233":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"282":{"tf":2.23606797749979},"283":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":2.449489742783178}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":48,"docs":{"111":{"tf":1.7320508075688772},"118":{"tf":1.0},"120":{"tf":1.0},"131":{"tf":2.23606797749979},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"135":{"tf":1.0},"137":{"tf":2.8284271247461903},"138":{"tf":1.0},"142":{"tf":1.4142135623730951},"150":{"tf":2.0},"155":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"163":{"tf":1.7320508075688772},"165":{"tf":1.4142135623730951},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":2.0},"193":{"tf":1.0},"212":{"tf":1.7320508075688772},"23":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.4142135623730951},"274":{"tf":3.4641016151377544},"275":{"tf":2.449489742783178},"277":{"tf":1.7320508075688772},"282":{"tf":1.7320508075688772},"284":{"tf":2.0},"37":{"tf":2.23606797749979},"38":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"42":{"tf":1.0},"46":{"tf":2.23606797749979},"52":{"tf":3.872983346207417},"58":{"tf":4.0},"63":{"tf":3.0},"69":{"tf":3.1622776601683795},"78":{"tf":3.1622776601683795},"83":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"u":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"285":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"u":{"b":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"63":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"238":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":6,"docs":{"141":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0}},"s":{"df":0,"docs":{},"s":{"df":18,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"112":{"tf":1.0},"196":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.0},"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"o":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"260":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.7320508075688772},"59":{"tf":1.0},"63":{"tf":1.0},"70":{"tf":1.0},"79":{"tf":1.4142135623730951},"84":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"163":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"i":{"df":3,"docs":{"226":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"163":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":2.8284271247461903}}}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":3,"docs":{"155":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":19,"docs":{"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":2.0},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.7320508075688772},"123":{"tf":1.0},"124":{"tf":1.0},"126":{"tf":2.6457513110645907},"136":{"tf":1.0},"142":{"tf":1.7320508075688772},"163":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":2.23606797749979},"224":{"tf":1.0},"225":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"219":{"tf":1.0}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"c":{"/":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"246":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"m":{"=":{"\"":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":1,"docs":{"213":{"tf":1.0}}}}},"r":{"df":1,"docs":{"213":{"tf":1.0}},"e":{"=":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"126":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.0},"249":{"tf":1.7320508075688772},"265":{"tf":1.0}}}}},"df":3,"docs":{"128":{"tf":1.0},"213":{"tf":1.4142135623730951},"249":{"tf":1.0}}},"n":{"+":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}}},"c":{"'":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}},";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"272":{"tf":1.0},"273":{"tf":1.0},"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":3,"docs":{"270":{"tf":1.0},"272":{"tf":2.449489742783178},"273":{"tf":1.0}},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"272":{"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":{},"过":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":6,"docs":{"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}},"t":{"a":{"df":0,"docs":{},"x":{"df":105,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.4142135623730951},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"[":{"1":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"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":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":2,"docs":{"169":{"tf":1.0},"181":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}},"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":{}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":14,"docs":{"112":{"tf":1.7320508075688772},"159":{"tf":1.0},"17":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"269":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"39":{"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":{},"f":{"df":0,"docs":{},"|":{"df":0,"docs":{},"l":{"]":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"210":{"tf":1.0},"251":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"29":{"tf":1.0},"31":{"tf":1.0}}}},"df":1,"docs":{"31":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"270":{"tf":2.0}}},"df":0,"docs":{}}}}},"a":{"d":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":11,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"126":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"251":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":2.0},"29":{"tf":1.0},"30":{"tf":1.0}},"l":{"_":{"_":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"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":{},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"d":{"df":3,"docs":{"259":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":13,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"138":{"tf":1.7320508075688772},"146":{"tf":1.0},"17":{"tf":1.4142135623730951},"174":{"tf":1.0},"238":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0}}}}}}}},"t":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":31,"docs":{"117":{"tf":1.0},"119":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"186":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"230":{"tf":1.4142135623730951},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}},"e":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":3,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"238":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"239":{"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":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"232":{"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":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"242":{"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":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"245":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"244":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"241":{"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":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"240":{"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":{}}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"243":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"234":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"117":{"tf":1.0},"157":{"tf":1.0},"274":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.4142135623730951}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":4,"docs":{"117":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.0},"263":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":4,"docs":{"141":{"tf":1.4142135623730951},"169":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0}},"n":{"df":1,"docs":{"267":{"tf":1.0}}}}},"p":{"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"g":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"m":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"n":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"52":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":6,"docs":{"133":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.0},"264":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":8,"docs":{"149":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"*":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"41":{"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":8,"docs":{"137":{"tf":2.449489742783178},"142":{"tf":1.0},"150":{"tf":2.0},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":2.6457513110645907},"63":{"tf":2.0}}}},"df":0,"docs":{}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":14,"docs":{"120":{"tf":1.0},"142":{"tf":3.0},"150":{"tf":1.0},"155":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0},"83":{"tf":1.4142135623730951}}}}},"c":{"'":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":2.23606797749979}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"df":6,"docs":{"110":{"tf":1.0},"111":{"tf":1.7320508075688772},"112":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"219":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"p":{",":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"/":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":1,"docs":{"83":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"253":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"259":{"tf":1.0},"264":{"tf":2.0}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":10,"docs":{"67":{"tf":1.4142135623730951},"68":{"tf":1.0},"70":{"tf":1.7320508075688772},"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.0},"76":{"tf":1.4142135623730951},"77":{"tf":1.0},"79":{"tf":1.0},"80":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"df":17,"docs":{"126":{"tf":1.0},"264":{"tf":2.23606797749979},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.4142135623730951},"69":{"tf":1.7320508075688772},"72":{"tf":1.0},"73":{"tf":1.0},"75":{"tf":1.0},"76":{"tf":1.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.7320508075688772},"80":{"tf":1.0},"82":{"tf":1.0},"87":{"tf":1.0},"88":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"t":{"df":2,"docs":{"87":{"tf":1.0},"88":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"82":{"tf":1.0},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":5,"docs":{"150":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.7320508075688772},"274":{"tf":1.0},"83":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.0},"265":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"26":{"tf":2.0}},"e":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":21,"docs":{"117":{"tf":1.0},"141":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0},"270":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"174":{"tf":1.0},"207":{"tf":1.0},"269":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"d":{"df":11,"docs":{"137":{"tf":2.23606797749979},"142":{"tf":1.0},"147":{"tf":1.0},"155":{"tf":1.0},"275":{"tf":1.4142135623730951},"41":{"tf":2.0},"46":{"tf":1.0},"52":{"tf":2.449489742783178},"63":{"tf":1.4142135623730951},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"163":{"tf":1.0}}}},"t":{"'":{"df":2,"docs":{"257":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"204":{"tf":1.0}}}}},"’":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":11,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"k":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"d":{"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"126":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"238":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":7,"docs":{"147":{"tf":1.4142135623730951},"150":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":2,"docs":{"265":{"tf":1.0},"272":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"144":{"tf":1.0},"153":{"tf":1.0},"284":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"u":{"df":1,"docs":{"280":{"tf":1.0}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":4,"docs":{"265":{"tf":2.23606797749979},"37":{"tf":2.449489742783178},"46":{"tf":2.0},"63":{"tf":2.0}}},"df":1,"docs":{"122":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":6,"docs":{"264":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0}}},".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"1":{"df":1,"docs":{"235":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"%":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"235":{"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":{"275":{"tf":1.4142135623730951}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":22,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"146":{"tf":1.0},"150":{"tf":1.0},"169":{"tf":1.0},"174":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"246":{"tf":1.0},"264":{"tf":3.1622776601683795},"271":{"tf":1.0},"272":{"tf":2.8284271247461903},"274":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"63":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":4,"docs":{"170":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.7320508075688772},"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"m":{"df":1,"docs":{"83":{"tf":2.0}},"p":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"o":{"df":16,"docs":{"101":{"tf":1.0},"102":{"tf":1.0},"103":{"tf":1.0},"105":{"tf":1.0},"106":{"tf":1.0},"107":{"tf":1.0},"109":{"tf":1.0},"113":{"tf":1.0},"63":{"tf":1.0},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0},"95":{"tf":1.0},"96":{"tf":1.0},"97":{"tf":1.0},"99":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"140":{"tf":1.0},"207":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"l":{"df":72,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"258":{"tf":1.0},"259":{"tf":2.0},"260":{"tf":1.0},"261":{"tf":1.7320508075688772},"264":{"tf":3.0},"265":{"tf":2.23606797749979},"267":{"tf":1.4142135623730951},"271":{"tf":1.0},"277":{"tf":1.0},"285":{"tf":1.7320508075688772},"50":{"tf":1.4142135623730951},"54":{"tf":1.0},"56":{"tf":1.0}},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"86":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":1,"docs":{"142":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"p":{"df":2,"docs":{"230":{"tf":1.0},"263":{"tf":1.0}}},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":3.0}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"128":{"tf":1.0},"225":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":5,"docs":{"159":{"tf":1.4142135623730951},"17":{"tf":1.0},"224":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"128":{"tf":1.0},"224":{"tf":1.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":34,"docs":{"11":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"124":{"tf":2.23606797749979},"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.0},"173":{"tf":2.0},"193":{"tf":1.4142135623730951},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":3.1622776601683795},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"270":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.0},"285":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"100":{"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":{}},"_":{"_":{"<":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{">":{"_":{"_":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"tf":1.4142135623730951}}},"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":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}},"df":2,"docs":{"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"133":{"tf":1.0},"212":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":22,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"126":{"tf":2.449489742783178},"128":{"tf":1.7320508075688772},"133":{"tf":3.1622776601683795},"136":{"tf":1.0},"137":{"tf":2.0},"138":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":1.0},"212":{"tf":2.449489742783178},"216":{"tf":2.0},"265":{"tf":1.4142135623730951},"280":{"tf":2.0},"281":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0},"94":{"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":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}},"r":{"df":1,"docs":{"126":{"tf":1.4142135623730951}}}},"k":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"118":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0}}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":5,"docs":{"117":{"tf":1.0},"121":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"142":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"269":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"137":{"tf":1.0},"157":{"tf":1.0}}}},"i":{"df":13,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"251":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"e":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.7320508075688772}}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"251":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"261":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":6,"docs":{"225":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"265":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"[":{"3":{"2":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":18,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":3.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":2.0},"83":{"tf":1.0}},"p":{"df":5,"docs":{"272":{"tf":2.23606797749979},"274":{"tf":2.0},"52":{"tf":2.0},"58":{"tf":2.0},"82":{"tf":1.7320508075688772}}}},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"204":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"127":{"tf":1.0},"267":{"tf":1.0}}},"df":0,"docs":{}}},"_":{"b":{"c":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"261":{"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":17,"docs":{"12":{"tf":1.0},"127":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":2.0},"267":{"tf":1.7320508075688772},"268":{"tf":1.0},"27":{"tf":1.0},"284":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"o":{"df":6,"docs":{"150":{"tf":1.0},"163":{"tf":1.7320508075688772},"232":{"tf":1.0},"239":{"tf":1.0},"267":{"tf":1.0},"274":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":30,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.4142135623730951},"120":{"tf":1.7320508075688772},"124":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"141":{"tf":1.0},"162":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.4142135623730951},"172":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"192":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"217":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"37":{"tf":1.0},"47":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"2":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}}}}},"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":{"6":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"3":{"2":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"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":{},"i":{"d":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"df":20,"docs":{"147":{"tf":1.0},"152":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"186":{"tf":2.0},"212":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"34":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.23606797749979},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":36,"docs":{"146":{"tf":1.4142135623730951},"147":{"tf":1.0},"148":{"tf":1.0},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":2.23606797749979},"63":{"tf":1.7320508075688772},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"[":{"+":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}},"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"h":{"df":7,"docs":{"212":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"d":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"p":{"df":2,"docs":{"66":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951}}}},"df":4,"docs":{"207":{"tf":1.4142135623730951},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.7320508075688772}},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":2,"docs":{"265":{"tf":2.0},"41":{"tf":2.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"6":{"4":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"161":{"tf":1.0},"162":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"133":{"tf":1.0},"252":{"tf":1.0},"254":{"tf":1.0},"264":{"tf":1.4142135623730951},"265":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"252":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"141":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":3,"docs":{"193":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":2,"docs":{"259":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"248":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":8,"docs":{"141":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"257":{"tf":1.0}}},"n":{"df":0,"docs":{},"k":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":8,"docs":{"141":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"229":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"228":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":10,"docs":{"121":{"tf":1.4142135623730951},"171":{"tf":1.0},"176":{"tf":1.0},"200":{"tf":1.0},"239":{"tf":1.4142135623730951},"257":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"126":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"264":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"b":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"126":{"tf":2.23606797749979},"128":{"tf":1.0},"134":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"265":{"tf":1.7320508075688772},"32":{"tf":1.4142135623730951},"33":{"tf":1.0},"34":{"tf":2.6457513110645907},"35":{"tf":1.0}},"e":{"_":{"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":1,"docs":{"265":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":4,"docs":{"128":{"tf":1.0},"135":{"tf":1.4142135623730951},"214":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"d":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"{":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"208":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"215":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"215":{"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":{}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"=":{"[":{"df":0,"docs":{},"u":{"df":3,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"283":{"tf":1.4142135623730951}},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"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":6,"docs":{"128":{"tf":1.4142135623730951},"136":{"tf":3.0},"207":{"tf":1.0},"208":{"tf":2.0},"215":{"tf":1.7320508075688772},"283":{"tf":2.6457513110645907}}}},"df":68,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.7320508075688772},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"141":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.4142135623730951},"161":{"tf":1.0},"165":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"186":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.7320508075688772},"200":{"tf":1.0},"201":{"tf":2.0},"202":{"tf":2.0},"203":{"tf":1.4142135623730951},"204":{"tf":2.23606797749979},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"226":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"250":{"tf":1.4142135623730951},"251":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.4142135623730951},"259":{"tf":2.0},"261":{"tf":1.4142135623730951},"263":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":2.6457513110645907},"267":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.23606797749979},"275":{"tf":1.7320508075688772},"276":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.0}},"e":{"c":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772}}},"df":0,"docs":{},"r":{"df":30,"docs":{"120":{"tf":1.0},"126":{"tf":2.449489742783178},"136":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"166":{"tf":1.0},"204":{"tf":2.23606797749979},"208":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"267":{"tf":1.0},"275":{"tf":2.23606797749979},"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"121":{"tf":1.0},"163":{"tf":1.4142135623730951},"167":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"z":{"df":0,"docs":{},"u":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"213":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"147":{"tf":1.0},"218":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"v":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":3,"docs":{"233":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"5":{".":{"3":{"df":1,"docs":{"181":{"tf":1.0}}},"6":{"df":4,"docs":{"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":8,"docs":{"187":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"282":{"tf":2.0},"284":{"tf":2.0}},"u":{"df":47,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"132":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"151":{"tf":1.0},"155":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.4142135623730951},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":2.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"251":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"272":{"tf":2.449489742783178},"277":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"53":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"225":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}}}}}}},"r":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":8,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"207":{"tf":1.0},"255":{"tf":1.0},"271":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":2.449489742783178}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":1,"docs":{"251":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"267":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":17,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"116":{"tf":1.4142135623730951},"151":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"259":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}}}},"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"118":{"tf":1.4142135623730951},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":5,"docs":{"117":{"tf":1.0},"252":{"tf":1.0},"257":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":17,"docs":{"114":{"tf":1.0},"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"128":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":2.23606797749979},"283":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}}}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"122":{"tf":1.0}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":3,"docs":{"211":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"a":{"df":20,"docs":{"126":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"169":{"tf":1.0},"193":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0}}},"c":{"7":{"df":0,"docs":{},"y":{"df":0,"docs":{},"g":{"df":0,"docs":{},"j":{"0":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"l":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{":":{"df":0,"docs":{},"~":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"117":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0}},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":1,"docs":{"126":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":11,"docs":{"111":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"i":{"d":{"df":25,"docs":{"111":{"tf":2.449489742783178},"134":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"195":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"63":{"tf":1.0},"83":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"29":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":1,"docs":{"45":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"225":{"tf":1.0},"264":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"l":{"df":0,"docs":{},"k":{"df":1,"docs":{"193":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"192":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.4142135623730951}}},"m":{"df":13,"docs":{"11":{"tf":1.7320508075688772},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"2":{"tf":2.23606797749979},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0}}}},"y":{"df":8,"docs":{"133":{"tf":1.0},"163":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0}}}},"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"124":{"tf":1.0},"264":{"tf":2.449489742783178},"274":{"tf":1.4142135623730951}},"e":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}},"r":{"df":5,"docs":{"127":{"tf":1.0},"246":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":2.23606797749979},"277":{"tf":1.0}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"258":{"tf":1.0},"264":{"tf":1.0}}}},"n":{"b":{"df":0,"docs":{},"o":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"141":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"280":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"181":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"259":{"tf":1.0}}}}},"x":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"/":{".":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":1,"docs":{"262":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"285":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"239":{"tf":1.0},"242":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"259":{"tf":1.0},"274":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"195":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":7,"docs":{"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"218":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"285":{"tf":1.0}}}}}}},"l":{"d":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":2.0},"271":{"tf":2.0},"284":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":9,"docs":{"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":5,"docs":{"122":{"tf":1.0},"17":{"tf":2.0},"264":{"tf":1.0},"270":{"tf":1.0},"278":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}}}}},"x":{"0":{"1":{"\\":{"df":0,"docs":{},"x":{"1":{"b":{"]":{"0":{";":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"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":{}},"7":{"\\":{"df":0,"docs":{},"x":{"0":{"2":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"6":{"_":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"p":{"_":{"a":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"218":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"b":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"d":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"196":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":9,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":2.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"218":{"tf":3.1622776601683795},"219":{"tf":1.0},"7":{"tf":1.0}}}},"df":3,"docs":{"16":{"tf":1.4142135623730951},"248":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"120":{"tf":1.0},"181":{"tf":1.0}}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"d":{"a":{"1":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"263":{"tf":1.0}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"260":{"tf":1.0},"274":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"df":1,"docs":{"136":{"tf":1.0}}},"v":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"79":{"tf":1.0}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":11,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"188":{"tf":1.4142135623730951},"249":{"tf":1.0},"272":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.7320508075688772}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"breadcrumbs":{"root":{"0":{".":{"0":{".":{"0":{".":{"0":{"df":1,"docs":{"85":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"7":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"1":{"4":{"6":{"9":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"8":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}}},"2":{"1":{"0":{"8":{"0":{"2":{"7":{"5":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"5":{"9":{"5":{"2":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"9":{"0":{"6":{"1":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"79":{"tf":1.0}}},"5":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"4":{"0":{"0":{"5":{"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"8":{"df":1,"docs":{"264":{"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":{}},"7":{"df":0,"docs":{},"f":{"1":{"2":{"a":{"1":{"3":{"3":{"df":0,"docs":{},"e":{"8":{"3":{"0":{"df":1,"docs":{"264":{"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":{}},"3":{"1":{"d":{"7":{"6":{"c":{"3":{"2":{"5":{"1":{"df":1,"docs":{"264":{"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":{}},"c":{"5":{"6":{"5":{"2":{"a":{"d":{"9":{"b":{"0":{"df":1,"docs":{"264":{"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":1,"docs":{"34":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.4142135623730951}}},"3":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.7320508075688772}}},"4":{"d":{"4":{"b":{"2":{"7":{"4":{"df":0,"docs":{},"e":{"2":{"a":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{"26":{"tf":2.0}}},"5":{"df":1,"docs":{"23":{"tf":2.0}}},"6":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":2,"docs":{"259":{"tf":4.242640687119285},"260":{"tf":2.0}}},"1":{"0":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}}},"5":{"6":{"3":{"2":{"b":{"b":{"3":{"0":{"d":{"a":{"df":1,"docs":{"123":{"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":{}},"6":{"5":{"c":{"c":{"8":{"1":{"7":{"0":{"7":{"5":{"df":1,"docs":{"123":{"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":{},"x":{"df":1,"docs":{"260":{"tf":1.0}}}},":":{"5":{"5":{":":{"0":{"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"2":{"4":{"0":{"a":{"0":{"4":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"2":{":":{"1":{"3":{":":{"3":{"9":{".":{"6":{"0":{"1":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{".":{"5":{"3":{"4":{"df":1,"docs":{"79":{"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":{}},"3":{"df":0,"docs":{},"e":{"6":{"9":{"b":{"5":{"0":{"8":{"b":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"f":{"5":{"7":{"8":{"1":{"b":{"df":0,"docs":{},"e":{"2":{"c":{"7":{"df":1,"docs":{"116":{"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":{}}},"4":{"5":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"8":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"5":{"6":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"d":{"6":{"1":{"a":{"b":{"3":{"6":{"df":0,"docs":{},"e":{"c":{"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"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":{}}},"5":{"1":{"5":{"df":0,"docs":{},"e":{"5":{"9":{"9":{"9":{"a":{"4":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"4":{"6":{"2":{"3":{"1":{"0":{"5":{"7":{"2":{"8":{"df":1,"docs":{"116":{"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":{}},"7":{"9":{"9":{"6":{"3":{"8":{"0":{"a":{"4":{"2":{"df":1,"docs":{"121":{"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":{}},"c":{"7":{"4":{"df":0,"docs":{},"e":{"5":{"df":0,"docs":{},"e":{"5":{"3":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"7":{"3":{"df":0,"docs":{},"f":{"5":{"2":{"b":{"9":{"6":{"df":1,"docs":{"122":{"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":{}},"6":{":":{"3":{"5":{":":{"0":{"1":{"df":1,"docs":{"264":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"4":{"3":{"1":{"1":{"0":{"b":{"2":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"4":{"c":{"4":{"a":{"3":{"df":0,"docs":{},"e":{"7":{"a":{"df":1,"docs":{"123":{"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":{"79":{"tf":1.4142135623730951}}},"8":{"1":{"3":{"a":{"8":{"4":{"1":{"5":{"6":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"2":{"5":{"8":{"d":{"4":{"c":{"5":{"4":{"4":{"1":{"5":{"5":{"df":1,"docs":{"264":{"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":1,"docs":{"79":{"tf":1.4142135623730951}}},";":{"df":0,"docs":{},":":{"df":0,"docs":{},"必":{"df":0,"docs":{},"须":{"df":0,"docs":{},"这":{"df":0,"docs":{},"样":{"df":0,"docs":{},",":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"0":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}},"c":{"8":{"4":{"9":{"3":{"d":{"9":{"0":{"b":{"6":{"b":{"df":1,"docs":{"122":{"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":{}},"d":{"0":{"1":{"d":{"a":{"6":{"a":{"df":0,"docs":{},"f":{"c":{"5":{"4":{"df":1,"docs":{"118":{"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":{}},"4":{"df":0,"docs":{},"f":{"a":{"d":{"3":{"df":0,"docs":{},"e":{"5":{"7":{"d":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"5":{"1":{"d":{"a":{"7":{"a":{"8":{"df":0,"docs":{},"e":{"9":{"df":1,"docs":{"122":{"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":70,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"164":{"tf":1.0},"169":{"tf":1.0},"17":{"tf":1.7320508075688772},"195":{"tf":1.4142135623730951},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.4142135623730951},"212":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"23":{"tf":2.0},"240":{"tf":2.449489742783178},"241":{"tf":4.0},"250":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.0},"26":{"tf":2.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.4142135623730951},"264":{"tf":5.656854249492381},"265":{"tf":2.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":2.23606797749979},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":2.449489742783178},"279":{"tf":3.3166247903554},"280":{"tf":1.0},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":3.605551275463989},"41":{"tf":1.0},"46":{"tf":2.449489742783178},"47":{"tf":4.242640687119285},"5":{"tf":1.0},"52":{"tf":3.7416573867739413},"53":{"tf":2.8284271247461903},"58":{"tf":3.7416573867739413},"63":{"tf":3.7416573867739413},"69":{"tf":2.6457513110645907},"78":{"tf":2.6457513110645907},"82":{"tf":2.23606797749979},"83":{"tf":1.7320508075688772},"85":{"tf":2.23606797749979}},"e":{"3":{"3":{"6":{"6":{"1":{"d":{"df":0,"docs":{},"e":{"4":{"9":{"3":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"f":{"8":{"df":0,"docs":{},"e":{"4":{"b":{"d":{"8":{"a":{"1":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"120":{"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":{}},"x":{"0":{"8":{"0":{"0":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"2":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"4":{"df":1,"docs":{"207":{"tf":1.0}}},"8":{"df":2,"docs":{"207":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}},"1":{".":{"0":{"2":{"2":{"3":{"4":{"6":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{".":{"1":{"4":{"9":{".":{"1":{"5":{"1":{"df":1,"docs":{"71":{"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":1,"docs":{"264":{"tf":1.0}}},"2":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{".":{"1":{"0":{"df":1,"docs":{"83":{"tf":1.0}}},"5":{"3":{".":{"2":{"2":{"3":{".":{"1":{"5":{"7":{":":{"2":{"2":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"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":{}},"2":{"0":{"1":{".":{"2":{"1":{"9":{".":{"2":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{".":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":2,"docs":{"272":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}},"u":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"274":{"tf":1.0},"41":{"tf":2.6457513110645907},"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"u":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"241":{"tf":1.0},"265":{"tf":2.23606797749979},"284":{"tf":1.0}}},"2":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"0":{"df":4,"docs":{"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"37":{"tf":1.0},"52":{"tf":1.0}}},"df":13,"docs":{"169":{"tf":1.0},"173":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"284":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"4":{"1":{"4":{"0":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"e":{"b":{"6":{"2":{"9":{"df":0,"docs":{},"e":{"1":{"9":{"df":1,"docs":{"123":{"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":16,"docs":{"128":{"tf":2.23606797749979},"140":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"195":{"tf":1.0},"219":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":1.0},"278":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772}}},"1":{"0":{".":{"2":{"4":{"2":{".":{"6":{"8":{".":{"3":{"df":1,"docs":{"71":{"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":{}},"3":{"4":{"1":{"3":{"8":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"265":{"tf":2.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"128":{"tf":2.23606797749979},"141":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"220":{"tf":1.4142135623730951},"241":{"tf":1.7320508075688772},"264":{"tf":2.0},"279":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"83":{"tf":2.0}}},"2":{"3":{"1":{"df":1,"docs":{"265":{"tf":1.0}}},"4":{":":{"a":{"b":{"1":{"2":{":":{"2":{"0":{"4":{"0":{":":{"5":{"0":{"2":{"0":{":":{"2":{"2":{"9":{"9":{":":{"0":{":":{"5":{":":{"0":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"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":{}},"4":{"9":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"5":{"4":{"7":{"2":{"8":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"1":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"9":{"2":{"5":{"5":{"df":1,"docs":{"265":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"4":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{".":{"0":{".":{"1":{"df":2,"docs":{"264":{"tf":2.0},"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"8":{"2":{"0":{"3":{"df":1,"docs":{"265":{"tf":3.1622776601683795}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"240":{"tf":1.4142135623730951},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"e":{"d":{"7":{"6":{"0":{"a":{"7":{"8":{"d":{"df":1,"docs":{"123":{"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":11,"docs":{"128":{"tf":2.23606797749979},"142":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"221":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"264":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"53":{"tf":1.0}}},"3":{"0":{"9":{"2":{"4":{"3":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"7":{"1":{"df":2,"docs":{"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"1":{"2":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"7":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"4":{"9":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"6":{"4":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"4":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":2,"docs":{"17":{"tf":1.0},"269":{"tf":1.0}}},"a":{"2":{"7":{"d":{"df":0,"docs":{},"f":{"c":{"6":{"6":{"9":{"7":{"df":1,"docs":{"117":{"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":{}},"b":{"b":{"b":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"a":{"7":{"5":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"4":{"0":{"df":0,"docs":{},"f":{"7":{"8":{"9":{"df":1,"docs":{"123":{"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":8,"docs":{"128":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"222":{"tf":1.4142135623730951},"241":{"tf":1.0},"243":{"tf":1.4142135623730951},"264":{"tf":1.0},"281":{"tf":1.4142135623730951},"282":{"tf":1.0}}},"4":{"3":{"2":{"df":1,"docs":{"271":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"6":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"0":{"7":{"5":{"1":{"c":{"9":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":6,"docs":{"128":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"241":{"tf":1.0},"244":{"tf":1.4142135623730951},"253":{"tf":1.0},"282":{"tf":1.4142135623730951}}},"5":{"1":{"6":{"df":1,"docs":{"265":{"tf":1.0}}},"9":{"4":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"5":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"d":{"0":{"df":0,"docs":{},"e":{"2":{"9":{"0":{"df":0,"docs":{},"e":{"9":{"6":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"8":{"0":{"df":1,"docs":{"271":{"tf":1.0}}},"7":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":11,"docs":{"128":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"245":{"tf":1.4142135623730951},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"6":{".":{"0":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"3":{"8":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"5":{"8":{"0":{"4":{"3":{".":{"4":{"3":{"6":{"0":{"1":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"2":{"6":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"1":{"2":{"6":{"5":{"4":{"5":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"7":{"2":{"df":1,"docs":{"274":{"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":{}},"6":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"7":{"8":{"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"1":{"7":{"9":{".":{"1":{"0":{"1":{".":{"4":{"2":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}},"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":23,"docs":{"128":{"tf":1.0},"180":{"tf":1.0},"184":{"tf":1.4142135623730951},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"83":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"x":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}},"7":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{".":{"1":{"9":{".":{"0":{".":{"5":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"7":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"253":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"a":{"7":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"9":{"5":{"1":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"1":{"6":{"9":{"4":{"6":{"df":0,"docs":{},"e":{"3":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"df":1,"docs":{"253":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"d":{"a":{"b":{"2":{"7":{"2":{"3":{"1":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"185":{"tf":1.4142135623730951},"268":{"tf":1.0},"285":{"tf":1.4142135623730951}}},"8":{".":{"9":{"df":0,"docs":{},"f":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"1":{"3":{"9":{"d":{"c":{"a":{"8":{"b":{"3":{"df":1,"docs":{"117":{"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":{}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":5,"docs":{"128":{"tf":1.0},"186":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"9":{".":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{".":{"1":{"6":{"8":{".":{"5":{"6":{".":{"1":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{".":{"1":{"5":{"df":2,"docs":{"71":{"tf":2.0},"85":{"tf":2.449489742783178}}},"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":{}},"5":{"0":{"df":1,"docs":{"264":{"tf":2.0}}},"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"187":{"tf":1.4142135623730951},"241":{"tf":1.0},"53":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"7":{"5":{"d":{"1":{"6":{"6":{"8":{"df":1,"docs":{"117":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"c":{"a":{"df":0,"docs":{},"e":{"9":{"6":{"3":{"c":{"2":{"df":1,"docs":{"117":{"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":{}}},"d":{"1":{"1":{"b":{"3":{"0":{"1":{"6":{"c":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"123":{"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":49,"docs":{"1":{"tf":1.4142135623730951},"111":{"tf":1.7320508075688772},"128":{"tf":3.605551275463989},"131":{"tf":1.4142135623730951},"144":{"tf":1.4142135623730951},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.7320508075688772},"163":{"tf":1.0},"169":{"tf":1.4142135623730951},"192":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.4142135623730951},"210":{"tf":1.4142135623730951},"218":{"tf":2.6457513110645907},"224":{"tf":1.4142135623730951},"225":{"tf":1.0},"227":{"tf":1.7320508075688772},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"253":{"tf":1.7320508075688772},"256":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"263":{"tf":2.449489742783178},"264":{"tf":3.872983346207417},"265":{"tf":2.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":2.23606797749979},"280":{"tf":1.0},"282":{"tf":2.6457513110645907},"284":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":2.0},"58":{"tf":2.0}},"e":{"6":{"c":{"6":{"2":{"a":{"8":{"8":{"2":{"1":{"5":{"df":1,"docs":{"117":{"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":{}},"f":{"2":{"1":{"1":{"a":{"1":{"b":{"9":{"2":{"9":{"c":{"df":1,"docs":{"117":{"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":{}},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"2":{".":{"0":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"1":{"df":4,"docs":{"17":{"tf":1.0},"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"3":{"df":1,"docs":{"265":{"tf":1.0}}},"6":{".":{"3":{"2":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"9":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"1":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{"0":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"2":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"2":{"tf":1.0}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"5":{"7":{"1":{"5":{"6":{"7":{"3":{"8":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"6":{"0":{"5":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"2":{"0":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"188":{"tf":1.4142135623730951},"264":{"tf":1.0},"282":{"tf":1.0}}},"1":{"1":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"9":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},":":{"2":{"8":{":":{"3":{"0":{"df":1,"docs":{"41":{"tf":2.6457513110645907}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{":":{"0":{"9":{"df":1,"docs":{"47":{"tf":3.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"189":{"tf":1.4142135623730951}}},"2":{".":{"2":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"2":{"tf":1.0}}},"2":{"5":{"6":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"8":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":2.0}}},"5":{".":{"7":{"9":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"7":{"5":{"9":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"3":{"2":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"6":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"190":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"71":{"tf":1.4142135623730951}}},"3":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"3":{"df":0,"docs":{},"e":{"c":{"c":{"6":{"df":0,"docs":{},"f":{"9":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"191":{"tf":1.4142135623730951},"253":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"4":{"1":{".":{"1":{"7":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"7":{"3":{"4":{"3":{"3":{".":{"0":{"5":{"2":{"9":{"3":{"7":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"6":{"4":{"2":{"8":{"0":{"8":{"df":1,"docs":{"269":{"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":{}},"8":{"5":{"0":{"0":{"1":{".":{"1":{"7":{"4":{"8":{"8":{"5":{"9":{"9":{"9":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"7":{"1":{"0":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"9":{"9":{"1":{"9":{"7":{"6":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"2":{".":{"2":{"7":{"6":{"1":{"4":{"7":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"6":{".":{"7":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"2":{"8":{"3":{"2":{".":{"9":{"5":{"6":{"9":{"9":{"4":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"7":{".":{"7":{"2":{"6":{"5":{"0":{"0":{"9":{"9":{"9":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"1":{"1":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"0":{"3":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"2":{"9":{"4":{"9":{"9":{"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"8":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"3":{"3":{"2":{"4":{".":{"5":{"6":{"1":{"3":{"2":{"2":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"3":{"5":{".":{"3":{"4":{"3":{"4":{"0":{"1":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"4":{"0":{".":{"5":{"1":{"0":{"1":{"6":{"4":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"9":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"2":{"df":1,"docs":{"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"8":{"df":1,"docs":{"283":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"192":{"tf":1.4142135623730951},"264":{"tf":1.0}}},"5":{".":{"2":{"9":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"3":{"1":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"1":{"5":{"1":{"7":{"c":{"3":{"2":{"b":{"df":0,"docs":{},"e":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"5":{"df":5,"docs":{"240":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"6":{"df":7,"docs":{"257":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"8":{"9":{"7":{"2":{"6":{"d":{"1":{"2":{"a":{"1":{"df":1,"docs":{"117":{"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":{}},"9":{"0":{"df":1,"docs":{"251":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"193":{"tf":1.4142135623730951}}},"6":{"3":{"a":{"df":0,"docs":{},"e":{"1":{"5":{"2":{"df":0,"docs":{},"e":{"9":{"6":{"2":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"194":{"tf":1.4142135623730951},"52":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"7":{"6":{"7":{"2":{"df":0,"docs":{},"f":{"0":{"d":{"2":{"8":{"0":{"a":{"df":1,"docs":{"123":{"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":{}},"a":{"df":0,"docs":{},"e":{"7":{"9":{"9":{"7":{"a":{"6":{"6":{"1":{"df":1,"docs":{"118":{"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":{}}},"b":{"2":{"9":{"df":0,"docs":{},"f":{"6":{"3":{"0":{"5":{"8":{"d":{"df":1,"docs":{"123":{"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":3,"docs":{"128":{"tf":1.0},"195":{"tf":1.4142135623730951},"264":{"tf":1.0}}},"8":{"df":4,"docs":{"128":{"tf":1.0},"196":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}},"f":{"b":{"c":{"df":0,"docs":{},"f":{"a":{"0":{"8":{"d":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"9":{"b":{"a":{"7":{"3":{"2":{"a":{"c":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"120":{"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":4,"docs":{"128":{"tf":1.0},"197":{"tf":1.4142135623730951},"264":{"tf":1.0},"279":{"tf":1.0}}},"a":{"1":{"0":{"0":{"3":{"1":{"7":{"c":{"9":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"e":{"2":{"1":{"2":{"d":{"5":{"4":{"1":{"df":1,"docs":{"123":{"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":{}}},"c":{"1":{"6":{"d":{"6":{"0":{"3":{"3":{"2":{"6":{"4":{"df":1,"docs":{"117":{"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":{}},"d":{"0":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"3":{"0":{"df":0,"docs":{},"f":{"8":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"9":{"b":{"9":{"df":0,"docs":{},"e":{"6":{"d":{"df":0,"docs":{},"f":{"6":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{"83":{"tf":1.0}}},"df":32,"docs":{"128":{"tf":3.4641016151377544},"132":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"17":{"tf":1.0},"170":{"tf":1.4142135623730951},"195":{"tf":1.4142135623730951},"203":{"tf":1.0},"208":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"248":{"tf":1.4142135623730951},"253":{"tf":1.0},"254":{"tf":1.4142135623730951},"257":{"tf":1.4142135623730951},"264":{"tf":2.449489742783178},"265":{"tf":1.7320508075688772},"270":{"tf":1.4142135623730951},"277":{"tf":2.0},"279":{"tf":2.8284271247461903},"283":{"tf":1.0},"3":{"tf":1.4142135623730951},"41":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":2.23606797749979}},"f":{"df":1,"docs":{"272":{"tf":1.0}}},"h":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{".":{"1":{"3":{"df":1,"docs":{"274":{"tf":1.0}}},"5":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"116":{"tf":1.0}}},"8":{"df":3,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"121":{"tf":1.0}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"1":{"6":{"df":1,"docs":{"37":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"9":{"6":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"198":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"1":{"8":{"9":{"df":1,"docs":{"53":{"tf":1.0}}},"df":0,"docs":{}},"df":7,"docs":{"128":{"tf":1.0},"199":{"tf":1.4142135623730951},"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"2":{"2":{"0":{"7":{"0":{"1":{".":{"1":{"0":{"1":{"1":{"4":{"3":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"1":{"5":{"8":{"0":{"0":{"0":{"df":2,"docs":{"29":{"tf":1.0},"30":{"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":{}},"7":{"4":{"df":0,"docs":{},"f":{"5":{"2":{"0":{"7":{"3":{"d":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"9":{"df":1,"docs":{"34":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":24,"docs":{"128":{"tf":1.0},"147":{"tf":2.0},"148":{"tf":1.0},"17":{"tf":1.0},"171":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"195":{"tf":1.0},"200":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"240":{"tf":1.0},"26":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"k":{"b":{"df":2,"docs":{"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{"2":{"a":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"6":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"f":{"9":{"8":{"8":{"5":{"0":{"4":{"0":{"c":{"df":1,"docs":{"123":{"tf":2.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":2,"docs":{"128":{"tf":1.0},"201":{"tf":1.4142135623730951}}},"4":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"2":{"7":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}},"7":{"7":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"79":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"8":{"3":{"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"b":{"2":{"0":{"2":{"1":{"c":{"c":{"6":{"1":{"6":{"df":1,"docs":{"123":{"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":{}},"d":{"4":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"7":{"7":{"5":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"202":{"tf":1.4142135623730951}}},"5":{"1":{"7":{"df":3,"docs":{"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"1":{"5":{"8":{"1":{"3":{"9":{"5":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"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":{"7":{"8":{"d":{"7":{"9":{"8":{"4":{"0":{"0":{"df":1,"docs":{"123":{"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":{}},"6":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"2":{"c":{"7":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"0":{"4":{"0":{"df":0,"docs":{},"e":{"4":{"7":{"3":{"3":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"4":{"0":{"3":{"4":{"5":{"df":3,"docs":{"17":{"tf":2.0},"29":{"tf":2.0},"30":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"280":{"tf":1.0}}},"6":{"1":{"7":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"d":{"6":{"5":{"5":{"df":0,"docs":{},"f":{"4":{"d":{"4":{"df":1,"docs":{"123":{"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":{}},"9":{"7":{"5":{"5":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"4":{"0":{"8":{"4":{"7":{"0":{"8":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"1":{"3":{"c":{"2":{"0":{"4":{"b":{"b":{"1":{"df":1,"docs":{"116":{"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":{}},"a":{"0":{"8":{"c":{"2":{"df":0,"docs":{},"f":{"d":{"7":{"6":{"3":{"4":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"f":{"8":{"df":0,"docs":{},"f":{"d":{"6":{"1":{"df":0,"docs":{},"f":{"9":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772},"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"e":{"a":{"0":{"8":{"9":{"2":{"4":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"2":{"5":{"3":{"c":{"2":{"df":0,"docs":{},"e":{"6":{"5":{"2":{"df":1,"docs":{"123":{"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":{}},"c":{"a":{"1":{"0":{"3":{"2":{"a":{"b":{"7":{"a":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"7":{"8":{"4":{"1":{"7":{"b":{"6":{"0":{"df":0,"docs":{},"f":{"b":{"df":1,"docs":{"123":{"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":25,"docs":{"1":{"tf":1.0},"128":{"tf":2.8284271247461903},"133":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"159":{"tf":1.0},"161":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"63":{"tf":1.0}},"e":{"8":{"7":{"df":0,"docs":{},"f":{"1":{"9":{"2":{"b":{"4":{"0":{"5":{"df":1,"docs":{"121":{"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":{}},"f":{"3":{"6":{"4":{"2":{"2":{"2":{"d":{"0":{"3":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"7":{"1":{"9":{"c":{"7":{"b":{"6":{"2":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{},"n":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"h":{"df":1,"docs":{"4":{"tf":1.0}}},"r":{"d":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}},"4":{".":{"1":{"0":{"df":5,"docs":{"117":{"tf":2.0},"118":{"tf":2.23606797749979},"120":{"tf":1.4142135623730951},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"1":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}},"2":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.4142135623730951}}},"3":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.7320508075688772},"150":{"tf":1.0}}},"4":{"df":7,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":5,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"6":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"7":{"df":4,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"8":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":2.6457513110645907},"118":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"123":{"tf":4.0},"186":{"tf":1.0}}},"9":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903}}},"2":{"0":{"df":7,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0}}},"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"3":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.449489742783178}}},"4":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":2,"docs":{"117":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}},"6":{"df":3,"docs":{"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"280":{"tf":1.0}}},"8":{".":{"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":2.449489742783178},"123":{"tf":2.449489742783178}}},"9":{".":{"1":{"0":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.7320508075688772},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"df":0,"docs":{},"x":{"df":1,"docs":{"261":{"tf":1.0}}}},"0":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"3":{"0":{"4":{"b":{"2":{"a":{"1":{"5":{"6":{"7":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"7":{"4":{"7":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"41":{"tf":1.0}}},"9":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"41":{"tf":1.0}}},"1":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":6,"docs":{"264":{"tf":3.1622776601683795},"274":{"tf":2.0},"279":{"tf":1.0},"53":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":1.0}}},"1":{"5":{"9":{"6":{"df":1,"docs":{"85":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"8":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"4":{"9":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"47":{"tf":1.0}}},"1":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"47":{"tf":1.0}}},"4":{"df":1,"docs":{"47":{"tf":2.23606797749979}}},"5":{"df":1,"docs":{"47":{"tf":1.0}}},"6":{"df":1,"docs":{"47":{"tf":1.0}}},"7":{"df":1,"docs":{"47":{"tf":1.0}}},"8":{"df":1,"docs":{"47":{"tf":1.0}}},"9":{"df":1,"docs":{"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"4":{"9":{"6":{"7":{"2":{"9":{"5":{"df":1,"docs":{"53":{"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":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"3":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":2.449489742783178}}},"df":1,"docs":{"264":{"tf":1.0}}},"5":{"7":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"6":{"3":{"a":{"8":{"8":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"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":{}},"6":{"3":{"7":{".":{"7":{"9":{"8":{"6":{"9":{"8":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"3":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"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":1,"docs":{"268":{"tf":1.0}},"f":{"8":{"b":{"c":{"9":{"2":{"7":{"5":{"8":{"c":{"df":1,"docs":{"123":{"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":{}}},"7":{"1":{"0":{".":{"9":{"5":{"1":{"6":{"9":{"6":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"9":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"5":{"2":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"9":{"5":{"df":1,"docs":{"23":{"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":{}},"8":{"c":{"df":0,"docs":{},"f":{"b":{"d":{"df":0,"docs":{},"f":{"5":{"df":0,"docs":{},"f":{"1":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"7":{"5":{"2":{"b":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"264":{"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":{}},"3":{"8":{"df":0,"docs":{},"e":{"1":{"5":{"5":{"0":{"3":{"7":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"8":{"4":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"9":{"2":{"df":0,"docs":{},"e":{"6":{"3":{"9":{"df":0,"docs":{},"f":{"0":{"c":{"2":{"2":{"df":1,"docs":{"123":{"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":{"df":0,"docs":{},"e":{"0":{"5":{"1":{"7":{"0":{"9":{"5":{"8":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"a":{"4":{"8":{"2":{"df":0,"docs":{},"f":{"3":{"4":{"a":{"df":0,"docs":{},"f":{"c":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"f":{"6":{"c":{"0":{"b":{"8":{"4":{"c":{"9":{"df":1,"docs":{"122":{"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":{}},"b":{"df":0,"docs":{},"e":{"b":{"d":{"c":{"7":{"a":{"8":{"5":{"a":{"a":{"df":1,"docs":{"123":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"b":{"c":{"1":{"df":0,"docs":{},"f":{"1":{"0":{"4":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"2":{"2":{"0":{"df":0,"docs":{},"e":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"1":{"4":{"df":1,"docs":{"117":{"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":20,"docs":{"128":{"tf":2.6457513110645907},"134":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"234":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"250":{"tf":1.4142135623730951},"260":{"tf":1.0},"264":{"tf":3.3166247903554},"272":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":2.449489742783178},"53":{"tf":1.4142135623730951},"71":{"tf":2.0},"79":{"tf":2.449489742783178},"83":{"tf":1.0}},"e":{"1":{"0":{"d":{"df":0,"docs":{},"f":{"9":{"a":{"6":{"0":{"d":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"5":{"6":{"c":{"d":{"c":{"5":{"9":{"df":1,"docs":{"123":{"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":{}}},"6":{"3":{"a":{"c":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"c":{"5":{"2":{"1":{"df":0,"docs":{},"e":{"d":{"5":{"df":1,"docs":{"120":{"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":{}},"f":{"1":{"9":{"c":{"a":{"b":{"7":{"6":{"1":{"3":{"6":{"df":1,"docs":{"123":{"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":{}},"3":{"4":{"4":{"6":{"b":{"b":{"8":{"0":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"7":{"3":{"8":{"a":{"d":{"b":{"a":{"3":{"0":{"a":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"b":{"a":{"c":{"7":{"7":{"d":{"2":{"d":{"0":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"m":{"b":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}},"5":{".":{"0":{"df":3,"docs":{"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"1":{"0":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":3.7416573867739413}}},"1":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"3":{"df":2,"docs":{"116":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"118":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":1,"docs":{"123":{"tf":2.449489742783178}}},"8":{"df":1,"docs":{"123":{"tf":2.8284271247461903}}},"9":{"df":1,"docs":{"123":{"tf":3.1622776601683795}}},"df":3,"docs":{"116":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":2.449489742783178}}},"2":{"df":5,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":3.1622776601683795}}},"3":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"120":{"tf":1.0}}},"5":{"df":6,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903},"26":{"tf":1.0}}},"6":{"df":5,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"7":{"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":2.6457513110645907},"141":{"tf":1.0}}},"8":{"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0},"163":{"tf":1.0},"242":{"tf":1.0}},"开":{"df":0,"docs":{},"始":{"df":0,"docs":{},",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"提":{"df":0,"docs":{},"供":{"df":0,"docs":{},"了":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"新":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"结":{"df":0,"docs":{},"构":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0}}},"df":0,"docs":{}},"0":{"9":{"6":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"c":{"6":{"6":{"a":{"d":{"8":{"4":{"9":{"a":{"7":{"df":1,"docs":{"116":{"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":{}},"2":{".":{"1":{"7":{"8":{".":{"1":{"7":{".":{"2":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"6":{"2":{"d":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"3":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"8":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"4":{".":{"2":{"4":{"5":{".":{"1":{"0":{"5":{".":{"2":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"7":{".":{"1":{"0":{"1":{".":{"1":{"4":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"a":{"c":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"b":{"7":{"0":{"d":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"6":{"b":{"9":{"9":{"1":{"df":0,"docs":{},"e":{"9":{"c":{"1":{"df":1,"docs":{"123":{"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":{}},"6":{"df":1,"docs":{"264":{"tf":1.0}},"f":{"6":{"6":{"8":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"0":{"d":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"df":1,"docs":{"53":{"tf":1.0}}},"8":{"3":{"c":{"1":{"df":0,"docs":{},"f":{"4":{"2":{"0":{"1":{"7":{"3":{"df":1,"docs":{"120":{"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":{}},"9":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"9":{"8":{"8":{"8":{"d":{"7":{"8":{"df":1,"docs":{"121":{"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":{}},"d":{"8":{"b":{"5":{"8":{"3":{"d":{"0":{"4":{"a":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"c":{"4":{"b":{"7":{"d":{"4":{"df":0,"docs":{},"e":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"5":{"5":{"2":{"0":{"c":{"4":{"d":{"df":1,"docs":{"116":{"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":1,"docs":{"83":{"tf":2.0}}},"df":15,"docs":{"128":{"tf":2.6457513110645907},"135":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"163":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"194":{"tf":1.0},"214":{"tf":1.4142135623730951},"224":{"tf":1.0},"235":{"tf":1.4142135623730951},"241":{"tf":1.0},"251":{"tf":1.4142135623730951},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"273":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951}},"f":{"3":{"1":{"6":{"b":{"6":{"5":{"df":0,"docs":{},"e":{"9":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{".":{"0":{"df":1,"docs":{"123":{"tf":2.0}}},"1":{"df":3,"docs":{"116":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{",":{"0":{"0":{"0":{"df":1,"docs":{"263":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"2":{"7":{"4":{"c":{"5":{"a":{"b":{"d":{"8":{"df":1,"docs":{"123":{"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":{}},"d":{"2":{"0":{"df":0,"docs":{},"f":{"9":{"1":{"9":{"5":{"b":{"2":{"df":1,"docs":{"123":{"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":{}},"1":{"0":{"2":{"3":{"6":{"5":{"8":{"7":{"6":{"0":{"0":{"df":1,"docs":{"118":{"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":{}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"8":{"df":1,"docs":{"30":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"2":{"5":{"8":{"2":{"7":{"8":{"6":{"c":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"116":{"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":{}},"4":{"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"7":{"9":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"d":{"9":{"b":{"8":{"0":{"d":{"c":{"df":0,"docs":{},"f":{"2":{"c":{"df":1,"docs":{"123":{"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":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"4":{"0":{"0":{"1":{".":{"3":{"7":{"5":{"7":{"4":{"8":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"0":{"5":{"6":{"9":{"5":{"1":{"df":1,"docs":{"34":{"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":{}},"1":{"c":{"d":{"7":{"b":{"0":{"6":{"c":{"9":{"1":{"df":1,"docs":{"117":{"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":{}},"5":{"3":{"0":{"7":{"3":{"9":{"8":{"7":{"b":{"a":{"df":1,"docs":{"122":{"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":9,"docs":{"112":{"tf":2.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"5":{"5":{"3":{"5":{"df":3,"docs":{"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"6":{"df":4,"docs":{"257":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"a":{"5":{"1":{"df":0,"docs":{},"e":{"5":{"3":{"6":{"c":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"8":{"1":{"7":{"1":{"a":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"0":{"df":0,"docs":{},"e":{"1":{"1":{"2":{"6":{"9":{"3":{"4":{"df":1,"docs":{"120":{"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":{}},"9":{".":{"5":{"3":{".":{"2":{"4":{"5":{".":{"4":{"0":{":":{"2":{"2":{"9":{"5":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"4":{"6":{"1":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"b":{"6":{"9":{"3":{"df":0,"docs":{},"f":{"0":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"8":{"7":{"b":{"a":{"6":{"2":{"2":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.0}}},"a":{"7":{"7":{"3":{"a":{"1":{"5":{"a":{"1":{"df":0,"docs":{},"e":{"8":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"9":{"9":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"2":{"3":{"d":{"4":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"9":{"1":{"0":{"6":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"b":{"4":{"3":{"2":{"df":0,"docs":{},"e":{"6":{"7":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{},"e":{"0":{"8":{"a":{"df":0,"docs":{},"e":{"3":{"d":{"df":0,"docs":{},"e":{"a":{"2":{"df":1,"docs":{"123":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"5":{"a":{"a":{"6":{"df":0,"docs":{},"f":{"c":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"5":{"9":{"8":{"1":{"7":{"4":{"3":{"2":{"df":1,"docs":{"121":{"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":{},"e":{"9":{"6":{"c":{"a":{"3":{"4":{"8":{"a":{"9":{"df":1,"docs":{"122":{"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":{}}},"d":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"136":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"164":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"215":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":2.0},"274":{"tf":1.4142135623730951},"279":{"tf":1.4142135623730951},"283":{"tf":1.0},"53":{"tf":1.0},"83":{"tf":1.0}},"e":{"2":{"2":{"a":{"b":{"9":{"d":{"a":{"7":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"b":{"0":{"4":{"a":{"8":{"2":{"2":{"4":{"df":1,"docs":{"121":{"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":{}},"f":{"9":{"d":{"4":{"5":{"1":{"a":{"b":{"1":{"a":{"3":{"df":1,"docs":{"120":{"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":{},"f":{"df":0,"docs":{},"f":{"6":{"0":{"7":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"1":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"7":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"d":{"6":{"6":{"2":{"4":{"4":{"3":{"1":{"7":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"1":{"b":{"b":{"4":{"2":{"8":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"2":{"c":{"1":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"1":{"9":{"2":{"1":{"4":{"7":{"7":{"6":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"2":{"4":{"6":{"d":{"8":{"df":0,"docs":{},"e":{"d":{"4":{"d":{"c":{"c":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"1":{"8":{"7":{"6":{"c":{"8":{"5":{"7":{"c":{"b":{"df":1,"docs":{"122":{"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":{}},"7":{"2":{"3":{"6":{"2":{"8":{"1":{"0":{"1":{"a":{"a":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.0}}},"9":{"7":{"0":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"a":{"7":{"df":0,"docs":{},"f":{"8":{"b":{"d":{"b":{"1":{"5":{"9":{"df":2,"docs":{"118":{"tf":1.0},"123":{"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":2,"docs":{"112":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"a":{"1":{"2":{"b":{"5":{"0":{"3":{"1":{"c":{"6":{"b":{"df":1,"docs":{"116":{"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":{}},"4":{"b":{"2":{"8":{"c":{"6":{"c":{"c":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"f":{"c":{"6":{"c":{"9":{"b":{"3":{"1":{"5":{"df":1,"docs":{"123":{"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":{}},"b":{"1":{"4":{"6":{"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"2":{"3":{"a":{"9":{"8":{"9":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"5":{"0":{"9":{"df":0,"docs":{},"e":{"3":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"117":{"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":{}},"c":{"7":{"df":0,"docs":{},"e":{"3":{"d":{"3":{"1":{"df":0,"docs":{},"e":{"7":{"8":{"5":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"e":{"c":{"5":{"4":{"df":0,"docs":{},"f":{"9":{"7":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"d":{"6":{"7":{"2":{"3":{"4":{"5":{"df":0,"docs":{},"e":{"d":{"2":{"9":{"df":1,"docs":{"123":{"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":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"137":{"tf":1.4142135623730951},"150":{"tf":1.4142135623730951},"165":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"216":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":2.0},"53":{"tf":1.4142135623730951}},"e":{"2":{"7":{"3":{"a":{"8":{"df":0,"docs":{},"e":{"b":{"d":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"h":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}},"8":{"0":{"0":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"8":{"6":{"4":{"9":{"df":0,"docs":{},"f":{"b":{"7":{"8":{"7":{"d":{"df":1,"docs":{"123":{"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":{}},"9":{"6":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":4,"docs":{"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"34":{"tf":1.0},"71":{"tf":1.0}}},"1":{"1":{"1":{"0":{"3":{"8":{"4":{"4":{"4":{"1":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"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":{}},"4":{"2":{"8":{"8":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"4":{"b":{"d":{"0":{"c":{"df":0,"docs":{},"e":{"6":{"c":{"7":{"c":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"5":{".":{"7":{"9":{"8":{"1":{"9":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"9":{"2":{"2":{"7":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"0":{"0":{"1":{"3":{"6":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"6":{"1":{"0":{"8":{"5":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"7":{"2":{"0":{"df":1,"docs":{"37":{"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":{}},"3":{"8":{"c":{"9":{"3":{"d":{"c":{"5":{"4":{"4":{"9":{"df":1,"docs":{"122":{"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":1,"docs":{"53":{"tf":1.0}}},"4":{"8":{"2":{"9":{"4":{"1":{"df":0,"docs":{},"f":{"0":{"9":{"0":{"6":{"df":1,"docs":{"123":{"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":{}},"5":{"6":{"c":{"0":{"2":{"d":{"b":{"c":{"df":0,"docs":{},"e":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"3":{"d":{"df":0,"docs":{},"f":{"3":{"5":{"7":{"b":{"6":{"df":1,"docs":{"120":{"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":2,"docs":{"253":{"tf":1.0},"254":{"tf":1.0}}},"6":{"9":{"9":{"4":{"1":{"5":{"6":{"c":{"7":{"3":{"6":{"df":1,"docs":{"122":{"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":{}},"7":{"3":{"7":{"8":{"3":{"1":{".":{"6":{"7":{"1":{"0":{"7":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"3":{"3":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"4":{"9":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"0":{"df":1,"docs":{"112":{"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":{}},"d":{"df":0,"docs":{},"f":{"1":{"5":{"d":{"df":0,"docs":{},"e":{"4":{"4":{"1":{"b":{"df":1,"docs":{"121":{"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":{},"f":{"5":{"df":0,"docs":{},"f":{"c":{"7":{"df":0,"docs":{},"e":{"4":{"8":{"d":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"8":{"7":{"5":{"0":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"a":{"a":{"0":{"7":{"5":{"8":{"3":{"2":{"b":{"0":{"df":1,"docs":{"117":{"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":{}},"b":{"4":{"0":{"1":{"df":0,"docs":{},"f":{"9":{"df":0,"docs":{},"e":{"d":{"2":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"4":{"c":{"7":{"df":0,"docs":{},"e":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"2":{"0":{"a":{"a":{"b":{"df":0,"docs":{},"e":{"1":{"c":{"7":{"6":{"df":1,"docs":{"123":{"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":24,"docs":{"128":{"tf":2.449489742783178},"138":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"163":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"181":{"tf":1.0},"217":{"tf":1.4142135623730951},"232":{"tf":1.0},"238":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"254":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"264":{"tf":1.7320508075688772},"276":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":2.23606797749979},"282":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.7320508075688772},"63":{"tf":1.0}},"e":{"a":{"6":{"3":{"6":{"8":{"4":{"8":{"a":{"c":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"f":{"8":{"4":{"4":{"9":{"3":{"8":{"4":{"df":0,"docs":{},"e":{"c":{"3":{"df":1,"docs":{"120":{"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":{},"e":{"4":{"5":{"9":{"2":{"4":{"3":{"8":{"7":{"b":{"df":1,"docs":{"121":{"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":{}}},"s":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}}},"9":{"0":{"1":{".":{"4":{"5":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"8":{"4":{"3":{"2":{"c":{"a":{"8":{"4":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"123":{"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":{}},"1":{"8":{"4":{"3":{"d":{"5":{"4":{"0":{"a":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"8":{"2":{"7":{"0":{"df":0,"docs":{},"f":{"2":{"a":{"4":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"8":{"2":{"2":{"c":{"3":{"d":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"2":{".":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"7":{"0":{"8":{"0":{"8":{"1":{"6":{"2":{"9":{"df":1,"docs":{"122":{"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":{}},"9":{"0":{"df":1,"docs":{"26":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"3":{"0":{"9":{"8":{"6":{"c":{"0":{"3":{"0":{"0":{"df":1,"docs":{"120":{"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":{}},"4":{"6":{"df":1,"docs":{"23":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"c":{"3":{"1":{"2":{"d":{"df":1,"docs":{"118":{"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":{}},"5":{"df":1,"docs":{"272":{"tf":1.0}}},"6":{"0":{"4":{"9":{"df":0,"docs":{},"f":{"3":{"a":{"df":0,"docs":{},"f":{"d":{"5":{"0":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"7":{"8":{"b":{"6":{"3":{"4":{"7":{"4":{"df":1,"docs":{"120":{"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":{}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"b":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"e":{"b":{"3":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"e":{"5":{"2":{"2":{"7":{"9":{"5":{"9":{"4":{"df":1,"docs":{"123":{"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":{}}},"b":{"3":{"b":{"6":{"c":{"9":{"0":{"9":{"1":{"d":{"df":1,"docs":{"121":{"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":{},"e":{"4":{"3":{"2":{"5":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"df":1,"docs":{"118":{"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":{"272":{"tf":1.0}},"e":{"a":{"b":{"df":0,"docs":{},"e":{"7":{"a":{"4":{"0":{"a":{"a":{"df":1,"docs":{"121":{"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":{}}},"7":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{},"f":{"9":{"1":{"a":{"7":{"c":{"df":0,"docs":{},"f":{"0":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"8":{"0":{"2":{"d":{"8":{"6":{"5":{"8":{"5":{"d":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"5":{"c":{"2":{"c":{"6":{"5":{"c":{"2":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"9":{"c":{"5":{"5":{"df":0,"docs":{},"f":{"7":{"d":{"4":{"7":{"c":{"0":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}},"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":{}},"a":{"a":{"1":{"2":{"0":{"6":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"4":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"b":{"9":{"8":{"4":{"df":0,"docs":{},"f":{"2":{"8":{"d":{"5":{"b":{"df":1,"docs":{"123":{"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":{}},"c":{"9":{"5":{"9":{"c":{"8":{"6":{"3":{"df":0,"docs":{},"f":{"8":{"2":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"9":{"4":{"8":{"b":{"5":{"a":{"2":{"0":{"df":1,"docs":{"122":{"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":{}},"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}},"f":{"1":{"c":{"2":{"8":{"b":{"b":{"7":{"5":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":12,"docs":{"128":{"tf":2.449489742783178},"139":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"239":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}},"e":{"d":{"4":{"0":{"5":{"0":{"c":{"0":{"d":{"7":{"5":{"df":1,"docs":{"122":{"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":{},"e":{"b":{"3":{"a":{"a":{"3":{"3":{"a":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"123":{"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":{}}},"s":{"df":2,"docs":{"236":{"tf":1.7320508075688772},"237":{"tf":1.7320508075688772}}}},"_":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"46":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}}},"o":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"p":{"df":1,"docs":{"138":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"_":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"b":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"111":{"tf":1.0},"161":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"c":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"v":{"6":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"d":{"d":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"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":{}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"u":{"3":{"2":{")":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":4,"docs":{"37":{"tf":1.7320508075688772},"38":{"tf":1.0},"52":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":2,"docs":{"37":{"tf":1.4142135623730951},"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"d":{"_":{"_":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"138":{"tf":2.23606797749979}}}}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"6":{"4":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"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":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"169":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"a":{".":{"df":0,"docs":{},"k":{".":{"a":{"df":2,"docs":{"117":{"tf":1.0},"119":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{"0":{"4":{"2":{"3":{"b":{"8":{"7":{"a":{"7":{"df":1,"docs":{"120":{"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":{}},"4":{"0":{"df":0,"docs":{},"z":{"d":{"7":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"c":{"3":{"0":{"4":{"2":{"5":{"9":{"df":1,"docs":{"123":{"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":{}},"5":{"df":0,"docs":{},"e":{"8":{"c":{"0":{"7":{"0":{"5":{"9":{"d":{"0":{"df":1,"docs":{"123":{"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":{}}},"6":{"7":{"df":0,"docs":{},"e":{"d":{"b":{"df":0,"docs":{},"f":{"4":{"df":0,"docs":{},"f":{"b":{"6":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"6":{"5":{"8":{"df":0,"docs":{},"e":{"1":{"a":{"4":{"1":{"6":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}}}},"a":{"2":{"df":0,"docs":{},"e":{"9":{"3":{"b":{"8":{"df":0,"docs":{},"e":{"5":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"df":0,"docs":{},"f":{"c":{"3":{"2":{"0":{"d":{"9":{"4":{"df":1,"docs":{"117":{"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":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":7,"docs":{"133":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"265":{"tf":2.0},"280":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"256":{"tf":1.0}},"e":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"t":{"df":4,"docs":{"126":{"tf":1.0},"264":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":11,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":2.23606797749979},"249":{"tf":1.0},"253":{"tf":1.7320508075688772},"284":{"tf":2.0}}}}},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":4,"docs":{"68":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"178":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":2.0},"126":{"tf":1.0},"58":{"tf":3.1622776601683795}}}},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"d":{"5":{"b":{"1":{"7":{"7":{"b":{"d":{"7":{"3":{"df":0,"docs":{},"f":{"df":1,"docs":{"121":{"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":{}},"d":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"200":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"123":{"tf":1.0},"207":{"tf":1.7320508075688772},"265":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":3,"docs":{"136":{"tf":2.0},"213":{"tf":1.4142135623730951},"283":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":17,"docs":{"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"187":{"tf":1.0},"204":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"264":{"tf":1.7320508075688772},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}}}}},"df":5,"docs":{"142":{"tf":1.0},"200":{"tf":1.0},"259":{"tf":1.0},"261":{"tf":1.0},"273":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"163":{"tf":1.0},"212":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"7":{"df":0,"docs":{},"e":{"c":{"1":{"3":{"8":{"3":{"3":{"6":{"1":{"df":1,"docs":{"123":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"82":{"tf":1.0}}},"df":4,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0},"83":{"tf":1.0}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"181":{"tf":2.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":1,"docs":{"272":{"tf":2.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":6,"docs":{"121":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0}}},"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":8,"docs":{"118":{"tf":1.0},"126":{"tf":2.449489742783178},"141":{"tf":1.4142135623730951},"157":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"264":{"tf":1.0},"284":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"162":{"tf":1.0},"257":{"tf":1.0},"282":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"h":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":5,"docs":{"200":{"tf":1.4142135623730951},"218":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"164":{"tf":1.0},"264":{"tf":1.0}}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"131":{"tf":1.0},"138":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}}}}},"d":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"242":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":6,"docs":{"195":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"218":{"tf":1.0},"272":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":14,"docs":{"121":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"128":{"tf":1.4142135623730951},"133":{"tf":1.0},"136":{"tf":1.0},"163":{"tf":1.7320508075688772},"19":{"tf":1.0},"2":{"tf":1.0},"226":{"tf":1.4142135623730951},"230":{"tf":1.4142135623730951},"280":{"tf":1.0},"38":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"1":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"c":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":3,"docs":{"275":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"136":{"tf":1.0},"204":{"tf":1.0},"264":{"tf":2.6457513110645907}}},"df":1,"docs":{"126":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"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":3,"docs":{"116":{"tf":1.0},"126":{"tf":1.4142135623730951},"2":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"116":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"204":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"1":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"2":{"df":2,"docs":{"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"3":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":14,"docs":{"133":{"tf":2.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"212":{"tf":1.7320508075688772},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.6457513110645907},"269":{"tf":1.0},"280":{"tf":2.0},"283":{"tf":1.0},"284":{"tf":1.0}},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{".":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"[":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"1":{"df":2,"docs":{"137":{"tf":1.0},"37":{"tf":1.0}}},"2":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"1":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}}},"df":43,"docs":{"128":{"tf":1.0},"130":{"tf":1.4142135623730951},"131":{"tf":2.23606797749979},"133":{"tf":2.0},"134":{"tf":1.7320508075688772},"136":{"tf":1.7320508075688772},"137":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.7320508075688772},"140":{"tf":2.0},"141":{"tf":1.0},"142":{"tf":1.0},"149":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.0},"210":{"tf":1.0},"212":{"tf":1.7320508075688772},"213":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":2.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"x":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}},"m":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"y":{"df":23,"docs":{"120":{"tf":2.6457513110645907},"121":{"tf":1.0},"149":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":2.0},"174":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"176":{"tf":2.0},"178":{"tf":1.7320508075688772},"182":{"tf":1.4142135623730951},"183":{"tf":1.0},"186":{"tf":1.0},"207":{"tf":1.4142135623730951},"233":{"tf":1.0},"234":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"272":{"tf":1.0},"39":{"tf":2.23606797749979},"40":{"tf":1.0},"41":{"tf":1.4142135623730951},"42":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.0}}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":18,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"167":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"200":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"261":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"264":{"tf":1.0},"272":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"128":{"tf":1.0},"219":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"210":{"tf":2.0},"271":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"211":{"tf":2.0}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"\"":{":":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"217":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"216":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"212":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.4142135623730951},"220":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"213":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"214":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"218":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.7320508075688772},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":24,"docs":{"117":{"tf":3.1622776601683795},"126":{"tf":2.0},"133":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"196":{"tf":1.0},"200":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"250":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"153":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.0}}}}}},"r":{"df":1,"docs":{"141":{"tf":1.0}},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"o":{"df":4,"docs":{"212":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"t":{"df":6,"docs":{"133":{"tf":1.0},"144":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":15,"docs":{"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"b":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"210":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"b":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"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":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"212":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"214":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":1,"docs":{"214":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"1":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"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":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"221":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"222":{"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":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"231":{"tf":1.0},"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"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":{}}}},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"248":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":1,"docs":{"196":{"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":{}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"242":{"tf":1.0}},"l":{"(":{"3":{"0":{"df":1,"docs":{"228":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":4,"docs":{"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"{":{"1":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":1,"docs":{"224":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"0":{"0":{"5":{"df":0,"docs":{},"f":{"d":{"1":{"8":{"9":{"c":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"2":{"8":{"b":{"1":{"c":{"7":{"d":{"5":{"df":1,"docs":{"123":{"tf":2.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":{"3":{"d":{"8":{"8":{"0":{"7":{"2":{"1":{"7":{"2":{"df":1,"docs":{"123":{"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":{}},"2":{"1":{"9":{"7":{"7":{"5":{"5":{"b":{"2":{"6":{"3":{"df":1,"docs":{"117":{"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":{}},"3":{"2":{"c":{"c":{"5":{"b":{"9":{"a":{"3":{"4":{"6":{"df":1,"docs":{"123":{"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":{}},"4":{"2":{"6":{"c":{"df":0,"docs":{},"e":{"8":{"3":{"b":{"a":{"a":{"7":{"df":1,"docs":{"123":{"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":{}},"4":{"1":{"2":{"3":{"b":{"4":{"a":{"3":{"d":{"c":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"c":{"5":{"c":{"4":{"df":0,"docs":{},"e":{"0":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"b":{"3":{"1":{"4":{"1":{"4":{"9":{"7":{"0":{"df":1,"docs":{"123":{"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":{}},"5":{"c":{"d":{"a":{"df":0,"docs":{},"e":{"3":{"2":{"9":{"1":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"122":{"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":{}},"7":{"4":{"1":{"df":0,"docs":{},"f":{"1":{"6":{"3":{"0":{"3":{"4":{"6":{"df":1,"docs":{"120":{"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":{}},"b":{"7":{"0":{"1":{"3":{"c":{"a":{"c":{"5":{"5":{"df":1,"docs":{"116":{"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":{}},"9":{"5":{"a":{"5":{"c":{"4":{"d":{"b":{"0":{"9":{"b":{"df":1,"docs":{"120":{"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":{}},"[":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"231":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"[":{"\"":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"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":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"\"":{"]":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"241":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}},"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":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"228":{"tf":1.0},"229":{"tf":1.0},"242":{"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":{}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"2":{"b":{"2":{"3":{"2":{"1":{"0":{"8":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"124":{"tf":3.7416573867739413},"126":{"tf":2.6457513110645907},"186":{"tf":1.4142135623730951},"196":{"tf":1.0},"265":{"tf":1.0},"271":{"tf":1.0}}},"h":{"df":10,"docs":{"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"32":{"tf":2.0},"33":{"tf":1.0},"34":{"tf":3.4641016151377544},"35":{"tf":1.7320508075688772}},"r":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"263":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"168":{"tf":1.0}}}}},"c":{"3":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"6":{"5":{"a":{"6":{"5":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"6":{"b":{"1":{"b":{"7":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"256":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}},"e":{"=":{"2":{"6":{"4":{"4":{"5":{"8":{"df":1,"docs":{"257":{"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":167,"docs":{"11":{"tf":1.0},"119":{"tf":1.4142135623730951},"12":{"tf":1.0},"127":{"tf":2.0},"128":{"tf":1.4142135623730951},"129":{"tf":1.4142135623730951},"130":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"14":{"tf":2.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"143":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"156":{"tf":1.0},"157":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.7320508075688772},"204":{"tf":1.0},"205":{"tf":1.7320508075688772},"206":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"223":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.4142135623730951},"231":{"tf":1.0},"232":{"tf":1.4142135623730951},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.4142135623730951},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0},"255":{"tf":1.0},"256":{"tf":1.7320508075688772},"257":{"tf":1.4142135623730951},"259":{"tf":1.7320508075688772},"261":{"tf":2.449489742783178},"262":{"tf":1.0},"263":{"tf":2.0},"264":{"tf":2.0},"265":{"tf":1.4142135623730951},"266":{"tf":1.0},"267":{"tf":2.6457513110645907},"268":{"tf":1.0},"269":{"tf":2.0},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951},"276":{"tf":1.0},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.4142135623730951},"281":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"285":{"tf":1.7320508075688772},"286":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"13":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"上":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"、":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"全":{"df":0,"docs":{},"称":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"d":{"4":{"c":{"df":0,"docs":{},"f":{"0":{"df":0,"docs":{},"e":{"d":{"3":{"3":{"1":{"a":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"1":{"3":{"c":{"d":{"0":{"8":{"df":0,"docs":{},"f":{"1":{"0":{"df":1,"docs":{"121":{"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":20,"docs":{"138":{"tf":1.0},"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"8":{"7":{"0":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"7":{"d":{"2":{"df":1,"docs":{"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"141":{"tf":1.0},"277":{"tf":1.0}}}}},"df":6,"docs":{"200":{"tf":1.0},"207":{"tf":1.0},"217":{"tf":1.0},"265":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"136":{"tf":1.0},"139":{"tf":1.0},"150":{"tf":1.0},"229":{"tf":1.0},"244":{"tf":1.0},"263":{"tf":1.7320508075688772},"272":{"tf":1.4142135623730951}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"121":{"tf":1.0},"249":{"tf":1.0},"269":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}},"w":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"203":{"tf":1.0},"265":{"tf":1.7320508075688772},"284":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":11,"docs":{"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"239":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"6":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"8":{"9":{"3":{"c":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.0}}},"m":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":1,"docs":{"260":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"213":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"126":{"tf":1.0},"208":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"215":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}}},"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"181":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":5,"docs":{"100":{"tf":2.0},"101":{"tf":1.0},"102":{"tf":1.4142135623730951},"98":{"tf":1.7320508075688772},"99":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"264":{"tf":2.0}}}}}}}},"t":{"df":5,"docs":{"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":2,"docs":{"277":{"tf":1.7320508075688772},"278":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{":":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":2.449489742783178},"53":{"tf":2.23606797749979},"58":{"tf":2.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"df":1,"docs":{"146":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"63":{"tf":1.0}}}},"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":20,"docs":{"10":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772},"64":{"tf":1.0},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0},"70":{"tf":2.6457513110645907},"71":{"tf":1.0},"72":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.0},"84":{"tf":2.6457513110645907},"85":{"tf":1.0},"86":{"tf":1.0}},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"基":{"df":0,"docs":{},"于":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"库":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"用":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"将":{"*":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"10":{"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":{},"用":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"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":{},"代":{"df":0,"docs":{},"码":{"df":0,"docs":{},":":{"2":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":5,"docs":{"163":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"273":{"tf":1.0}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"285":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"117":{"tf":1.0},"217":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"'":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"269":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"138":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"253":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"df":7,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}}}}}},"{":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"210":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"132":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"211":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"217":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"134":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"213":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"135":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"214":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"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":{}}}},"c":{"df":1,"docs":{"16":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"221":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"222":{"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"b":{"'":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"251":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"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":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"231":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"h":{"df":1,"docs":{"137":{"tf":1.0}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":2,"docs":{"195":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"248":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"228":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"225":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"196":{"tf":1.4142135623730951},"218":{"tf":1.0}}}},"df":0,"docs":{}}},"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"23":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":13,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"h":{"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":12,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"27":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":23,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"/":{"df":0,"docs":{},"e":{"c":{"c":{"df":1,"docs":{"16":{"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":{}}}}}},"2":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"136":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"231":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":6,"docs":{"200":{"tf":1.0},"37":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"171":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"1":{"df":1,"docs":{"183":{"tf":1.0}}},"2":{"df":1,"docs":{"183":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"171":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"182":{"tf":1.4142135623730951}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"171":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"&":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":4,"docs":{"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"180":{"tf":1.4142135623730951},"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772}}}},"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":{}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"179":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"179":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"179":{"tf":1.4142135623730951},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"200":{"tf":1.0}}}}}}},"f":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"177":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"169":{"tf":1.0}},"e":{"(":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"219":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"c":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"123":{"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":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"d":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"b":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.449489742783178}}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"t":{"a":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"3":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.8284271247461903}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"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":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"c":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"k":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"b":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"c":{"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"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":{}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"y":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}}},"v":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"(":{"&":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"149":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"128":{"tf":1.0},"149":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"147":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":21,"docs":{"128":{"tf":1.0},"147":{"tf":1.4142135623730951},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772},"27":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"150":{"tf":2.0},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"148":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"155":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"155":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"128":{"tf":1.0},"152":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"#":{"2":{"7":{"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"282":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"170":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"170":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"183":{"tf":1.4142135623730951}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"183":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.4142135623730951},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"(":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"172":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"142":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":13,"docs":{"128":{"tf":1.0},"146":{"tf":1.4142135623730951},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":2,"docs":{"203":{"tf":1.7320508075688772},"254":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"151":{"tf":1.0}}}}}}}}},"df":4,"docs":{"128":{"tf":1.0},"151":{"tf":1.4142135623730951},"240":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":2,"docs":{"128":{"tf":1.0},"177":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"121":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"38":{"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":{}}}}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}},"e":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"120":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":9,"docs":{"120":{"tf":1.0},"192":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"120":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":3,"docs":{"120":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"120":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.0},"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"142":{"tf":1.0},"37":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"l":{"3":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"128":{"tf":1.0},"157":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"176":{"tf":1.0}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"176":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"176":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"175":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"128":{"tf":1.0},"175":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"41":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"160":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"160":{"tf":1.0}}}},"df":0,"docs":{}}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"155":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"26":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"34":{"tf":1.0},"37":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"29":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"144":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"145":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"145":{"tf":1.4142135623730951}}}}}},"df":5,"docs":{"128":{"tf":1.0},"144":{"tf":2.0},"204":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"41":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":3,"docs":{"128":{"tf":1.0},"153":{"tf":1.7320508075688772},"204":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"(":{"&":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"153":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"154":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"154":{"tf":1.4142135623730951},"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}},"y":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"178":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.4142135623730951},"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"118":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"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":1,"docs":{"118":{"tf":1.0}}}}}}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":3,"docs":{"118":{"tf":1.0},"124":{"tf":1.0},"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"217":{"tf":1.4142135623730951}},"r":{"a":{"df":0,"docs":{},"m":{"_":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"185":{"tf":1.0}}}},"df":0,"docs":{}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"185":{"tf":1.0}}}}}}},"df":2,"docs":{"128":{"tf":1.0},"185":{"tf":1.4142135623730951}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"163":{"tf":1.0},"242":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}},"df":7,"docs":{"128":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"242":{"tf":1.4142135623730951}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"来":{"df":0,"docs":{},"轮":{"df":0,"docs":{},"询":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"186":{"tf":2.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":2,"docs":{"128":{"tf":1.0},"173":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"173":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"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":2,"docs":{"128":{"tf":1.0},"184":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"169":{"tf":1.4142135623730951}},"e":{"(":{"\"":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"171":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"170":{"tf":1.0},"182":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"176":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"178":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"(":{"\"":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"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":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"283":{"tf":1.0}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"%":{"d":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":4,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"s":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.4142135623730951},"17":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"26":{"tf":2.0},"269":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"6":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"181":{"tf":1.4142135623730951},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"219":{"tf":1.0},"220":{"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":119,"docs":{"108":{"tf":1.0},"11":{"tf":3.0},"111":{"tf":1.0},"112":{"tf":1.4142135623730951},"114":{"tf":1.7320508075688772},"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":5.656854249492381},"118":{"tf":1.0},"119":{"tf":1.0},"12":{"tf":1.7320508075688772},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"125":{"tf":1.7320508075688772},"126":{"tf":5.291502622129181},"128":{"tf":2.0},"129":{"tf":1.4142135623730951},"13":{"tf":1.0},"131":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":2.6457513110645907},"142":{"tf":2.449489742783178},"144":{"tf":1.7320508075688772},"145":{"tf":1.4142135623730951},"15":{"tf":3.4641016151377544},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.0},"16":{"tf":2.23606797749979},"160":{"tf":1.0},"163":{"tf":1.7320508075688772},"168":{"tf":1.0},"17":{"tf":1.0},"178":{"tf":1.7320508075688772},"18":{"tf":2.23606797749979},"186":{"tf":1.7320508075688772},"192":{"tf":1.0},"195":{"tf":1.4142135623730951},"2":{"tf":1.7320508075688772},"20":{"tf":2.23606797749979},"203":{"tf":1.7320508075688772},"204":{"tf":1.0},"207":{"tf":2.449489742783178},"210":{"tf":2.0},"211":{"tf":2.0},"212":{"tf":2.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"219":{"tf":1.4142135623730951},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"24":{"tf":1.4142135623730951},"240":{"tf":1.0},"242":{"tf":1.7320508075688772},"252":{"tf":1.4142135623730951},"253":{"tf":2.23606797749979},"254":{"tf":2.449489742783178},"259":{"tf":2.23606797749979},"26":{"tf":2.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"271":{"tf":2.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"282":{"tf":1.4142135623730951},"283":{"tf":2.23606797749979},"284":{"tf":1.7320508075688772},"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"34":{"tf":2.0},"35":{"tf":1.4142135623730951},"37":{"tf":2.0},"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.7320508075688772},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"45":{"tf":2.6457513110645907},"46":{"tf":2.449489742783178},"47":{"tf":2.0},"48":{"tf":2.23606797749979},"49":{"tf":1.7320508075688772},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"51":{"tf":1.0},"52":{"tf":2.23606797749979},"53":{"tf":2.6457513110645907},"54":{"tf":2.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":2.0},"6":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"64":{"tf":1.4142135623730951},"7":{"tf":1.0}},"f":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"181":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"117":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":3,"docs":{"56":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"a":{"d":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}}}}},"s":{"=":{"8":{"df":0,"docs":{},"k":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"f":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":2.0}}},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":7,"docs":{"135":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"f":{"[":{"6":{"4":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"134":{"tf":1.0},"149":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":22,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.7320508075688772},"275":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"43":{"tf":1.7320508075688772},"44":{"tf":2.23606797749979},"45":{"tf":1.0},"46":{"tf":2.0},"47":{"tf":1.0},"48":{"tf":1.4142135623730951},"83":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},")":{"df":0,"docs":{},"来":{"df":0,"docs":{},"实":{"df":0,"docs":{},"现":{"df":0,"docs":{},"。":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}},"g":{"df":1,"docs":{"272":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"126":{"tf":1.4142135623730951},"259":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"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":{},"多":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"y":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":8,"docs":{"144":{"tf":1.0},"145":{"tf":1.7320508075688772},"153":{"tf":1.0},"154":{"tf":1.7320508075688772},"162":{"tf":1.0},"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}},"c":{"/":{"c":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}},"0":{"4":{"1":{"6":{"7":{"c":{"df":0,"docs":{},"e":{"2":{"c":{"a":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"d":{"2":{"b":{"9":{"6":{"8":{"a":{"df":1,"docs":{"117":{"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":{}},"a":{"5":{"a":{"2":{"1":{"c":{"2":{"5":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"123":{"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":{}},"4":{"6":{"6":{"4":{"6":{"d":{"0":{"4":{"8":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"df":0,"docs":{},"f":{"b":{"3":{"8":{"a":{"9":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"0":{"b":{"df":0,"docs":{},"f":{"b":{"4":{"5":{"0":{"6":{"8":{"df":1,"docs":{"123":{"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":{},"f":{"6":{"6":{"9":{"9":{"d":{"df":0,"docs":{},"f":{"c":{"b":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"5":{"df":0,"docs":{},"f":{"b":{"1":{"9":{"9":{"3":{"7":{"4":{"5":{"5":{"df":1,"docs":{"123":{"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":{}}},"6":{"d":{"3":{"0":{"df":0,"docs":{},"e":{"8":{"3":{"9":{"1":{"b":{"8":{"df":1,"docs":{"122":{"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":{}},"7":{"a":{"df":0,"docs":{},"e":{"c":{"5":{"9":{"6":{"5":{"7":{"b":{"6":{"df":1,"docs":{"122":{"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":{}},"8":{"9":{"9":{"6":{"c":{"9":{"8":{"df":0,"docs":{},"f":{"7":{"0":{"3":{"df":1,"docs":{"123":{"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":{}},"[":{"8":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"f":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"16":{"tf":1.0},"249":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"d":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"174":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":6,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.7320508075688772},"229":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":43,"docs":{"117":{"tf":2.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":2.0},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"171":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.23606797749979},"2":{"tf":1.4142135623730951},"210":{"tf":2.23606797749979},"211":{"tf":2.23606797749979},"213":{"tf":2.23606797749979},"214":{"tf":1.7320508075688772},"218":{"tf":1.0},"219":{"tf":1.0},"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":2.449489742783178},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":2.0},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"258":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"274":{"tf":1.0}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"34":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":14,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.0},"213":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.0},"258":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"280":{"tf":1.0}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"211":{"tf":1.0},"264":{"tf":1.0}}}},"df":11,"docs":{"112":{"tf":1.4142135623730951},"133":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"280":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.7320508075688772},"216":{"tf":1.0}}},"y":{">":{":":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}},"s":{"df":9,"docs":{"141":{"tf":1.7320508075688772},"157":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"204":{"tf":1.0},"243":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}}},"b":{"2":{"0":{"b":{"0":{"8":{"df":0,"docs":{},"e":{"a":{"d":{"4":{"0":{"df":1,"docs":{"123":{"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":{}},"4":{"d":{"0":{"3":{"a":{"b":{"4":{"9":{"9":{"d":{"df":1,"docs":{"121":{"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":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"c":{"8":{"b":{"0":{"b":{"9":{"2":{"a":{"1":{"6":{"9":{"df":1,"docs":{"117":{"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":{}},"d":{"3":{"3":{"9":{"4":{"3":{"1":{"7":{"6":{"5":{"3":{"df":1,"docs":{"123":{"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":{}},"8":{"6":{"d":{"1":{"df":0,"docs":{},"f":{"d":{"2":{"1":{"0":{"2":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"df":36,"docs":{"128":{"tf":1.0},"129":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"26":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":2.0},"282":{"tf":2.449489742783178},"283":{"tf":1.0},"284":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{}}}},"f":{"7":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"6":{"6":{"0":{"df":0,"docs":{},"f":{"2":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"174":{"tf":1.0},"207":{"tf":1.4142135623730951}},"s":{"=":{"[":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":6,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":2.449489742783178},"120":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"219":{"tf":1.0},"259":{"tf":3.3166247903554}},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"7":{"7":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"259":{"tf":1.0}}}}}},"df":1,"docs":{"259":{"tf":2.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":2.23606797749979}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":4,"docs":{"141":{"tf":1.0},"211":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"r":{"df":28,"docs":{"111":{"tf":1.0},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"149":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"26":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"83":{"tf":1.0}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":11,"docs":{"123":{"tf":1.0},"126":{"tf":1.0},"127":{"tf":1.0},"181":{"tf":1.0},"203":{"tf":1.0},"215":{"tf":1.4142135623730951},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"264":{"tf":1.0},"272":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}},"s":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}},"i":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"s":{"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"37":{"tf":1.0},"52":{"tf":1.7320508075688772},"69":{"tf":1.7320508075688772},"78":{"tf":1.7320508075688772},"83":{"tf":1.0}}}}},"r":{"df":5,"docs":{"128":{"tf":1.0},"235":{"tf":1.7320508075688772},"236":{"tf":1.0},"238":{"tf":1.0},"279":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"251":{"tf":1.0},"271":{"tf":1.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":2.0}}}},"u":{"d":{"df":1,"docs":{"109":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":2,"docs":{"141":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{"df":25,"docs":{"123":{"tf":1.0},"126":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"203":{"tf":1.4142135623730951},"212":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"246":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},",":{"df":0,"docs":{},"该":{"df":0,"docs":{},"项":{"df":0,"docs":{},"目":{"df":0,"docs":{},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"=":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"[":{"0":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":11,"docs":{"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":1,"docs":{"141":{"tf":1.0}},"n":{"d":{"df":7,"docs":{"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"263":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":25,"docs":{"142":{"tf":1.0},"163":{"tf":1.4142135623730951},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":2.23606797749979},"265":{"tf":2.23606797749979},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":1.0},"71":{"tf":1.0},"78":{"tf":1.0},"79":{"tf":1.0},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"203":{"tf":1.0},"280":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":8,"docs":{"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":5,"docs":{"159":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":1,"docs":{"265":{"tf":1.0}}},"t":{"df":3,"docs":{"123":{"tf":1.7320508075688772},"203":{"tf":1.4142135623730951},"254":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":20,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"116":{"tf":1.4142135623730951},"12":{"tf":1.0},"126":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"207":{"tf":1.4142135623730951},"23":{"tf":1.0},"256":{"tf":1.4142135623730951},"26":{"tf":1.0},"271":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":2.0},"53":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"272":{"tf":1.0}}},"x":{"df":2,"docs":{"274":{"tf":1.0},"284":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"122":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"150":{"tf":1.0},"218":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":5,"docs":{"159":{"tf":1.0},"192":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"200":{"tf":1.0},"265":{"tf":2.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"126":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"=":{"df":0,"docs":{},"i":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"126":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{",":{"df":0,"docs":{},"y":{"a":{"df":0,"docs":{},"m":{"a":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"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":1,"docs":{"141":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}},"p":{"a":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":15,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"204":{"tf":1.4142135623730951},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"u":{"df":1,"docs":{"141":{"tf":1.0}},"r":{"df":5,"docs":{"125":{"tf":1.7320508075688772},"126":{"tf":2.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"127":{"tf":1.0},"265":{"tf":1.4142135623730951}}}}}},"n":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"108":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"108":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"264":{"tf":2.449489742783178},"66":{"tf":1.0},"69":{"tf":1.0},"75":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"254":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"116":{"tf":1.4142135623730951},"274":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":14,"docs":{"138":{"tf":2.23606797749979},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"151":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"206":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":3,"docs":{"163":{"tf":1.0},"229":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"229":{"tf":1.0}}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":8,"docs":{"137":{"tf":1.0},"141":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"239":{"tf":1.0},"258":{"tf":1.0},"268":{"tf":1.0},"285":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.4142135623730951},"224":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"131":{"tf":1.0},"133":{"tf":1.0},"265":{"tf":1.7320508075688772},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":7,"docs":{"195":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"207":{"tf":1.0},"249":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"155":{"tf":1.0}}},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":7,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"217":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"138":{"tf":1.0},"251":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"134":{"tf":1.0},"135":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"=":{"5":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":19,"docs":{"171":{"tf":1.4142135623730951},"173":{"tf":1.0},"174":{"tf":1.0},"176":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.7320508075688772},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"265":{"tf":1.7320508075688772},"273":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.6457513110645907},"53":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"126":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"[":{"1":{"]":{".":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":29,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"269":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"37":{"tf":1.4142135623730951},"53":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"122":{"tf":1.0}}}},"u":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{".":{"1":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":24,"docs":{"120":{"tf":2.0},"150":{"tf":1.0},"163":{"tf":2.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.7320508075688772},"194":{"tf":1.0},"196":{"tf":1.4142135623730951},"225":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.4142135623730951},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"83":{"tf":2.0}},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":32,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"151":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"207":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"121":{"tf":1.7320508075688772},"283":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":2.23606797749979}}}}},"t":{".":{"c":{"_":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}}}}}}}},"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{")":{")":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}},"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":{},"r":{"df":0,"docs":{},"l":{"df":8,"docs":{"127":{"tf":1.0},"264":{"tf":2.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.7320508075688772},"279":{"tf":1.0},"282":{"tf":1.7320508075688772},"79":{"tf":1.0}}}},"x":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"242":{"tf":1.0}}}}}}},"df":44,"docs":{"111":{"tf":1.4142135623730951},"131":{"tf":1.7320508075688772},"132":{"tf":1.4142135623730951},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.4142135623730951},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"193":{"tf":1.4142135623730951},"195":{"tf":1.7320508075688772},"196":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"282":{"tf":1.0},"283":{"tf":1.7320508075688772},"284":{"tf":1.0},"29":{"tf":1.0},"37":{"tf":2.0},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":2.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951}},":":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":13,"docs":{"123":{"tf":1.0},"142":{"tf":1.0},"147":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"155":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"195":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"237":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"183":{"tf":1.0}}}}}},"df":9,"docs":{"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}}}}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{".":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"3":{"1":{"df":2,"docs":{"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}},"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"0":{"0":{"3":{"df":0,"docs":{},"e":{"c":{"0":{"1":{"c":{"6":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"1":{"2":{"6":{"1":{"8":{"0":{"5":{"6":{"df":1,"docs":{"123":{"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":{}},"2":{"4":{"8":{"5":{"c":{"4":{"2":{"4":{"2":{"a":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"a":{"0":{"9":{"c":{"1":{"7":{"a":{"0":{"6":{"df":1,"docs":{"117":{"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":{}},"3":{"a":{"a":{"4":{"5":{"c":{"df":0,"docs":{},"e":{"6":{"b":{"9":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"4":{"4":{"5":{"5":{"1":{"6":{"9":{"6":{"6":{"d":{"c":{"df":1,"docs":{"122":{"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":{}},"5":{"8":{"df":0,"docs":{},"e":{"4":{"6":{"8":{"b":{"1":{"1":{"1":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"a":{"3":{"b":{"1":{"df":0,"docs":{},"f":{"6":{"9":{"1":{"8":{"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"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":{}},"6":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"0":{"8":{"a":{"8":{"7":{"2":{"b":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"9":{"6":{"2":{"df":0,"docs":{},"f":{"3":{"df":0,"docs":{},"e":{"6":{"2":{"7":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"b":{"a":{"d":{"4":{"df":0,"docs":{},"e":{"7":{"4":{"df":0,"docs":{},"e":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"4":{"c":{"b":{"9":{"b":{"6":{"7":{"0":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"8":{"3":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"4":{"b":{"df":0,"docs":{},"f":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"5":{"2":{"5":{"c":{"a":{"6":{"2":{"c":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":{}},"9":{"8":{"4":{"7":{"d":{"3":{"1":{"0":{"a":{"b":{"4":{"df":1,"docs":{"123":{"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":{},"n":{"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":1,"docs":{"117":{"tf":1.0}},"n":{"df":1,"docs":{"260":{"tf":1.0}}},"t":{"a":{"(":{"c":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"111":{"tf":2.0}}},"df":0,"docs":{}}},"s":{"df":4,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0}},"z":{"df":1,"docs":{"83":{"tf":1.0}}}},"t":{"df":5,"docs":{"160":{"tf":1.4142135623730951},"163":{"tf":2.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.23606797749979}}}},"df":29,"docs":{"111":{"tf":1.7320508075688772},"117":{"tf":1.0},"122":{"tf":1.0},"128":{"tf":1.0},"143":{"tf":1.4142135623730951},"160":{"tf":2.23606797749979},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":3.0},"164":{"tf":2.0},"165":{"tf":1.4142135623730951},"166":{"tf":2.23606797749979},"167":{"tf":2.449489742783178},"168":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"232":{"tf":3.3166247903554},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":3.3166247903554},"264":{"tf":1.0},"275":{"tf":2.449489742783178},"277":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"246":{"tf":1.0}}}}}}},"y":{"df":2,"docs":{"109":{"tf":1.0},"272":{"tf":1.0}}}},"b":{"2":{"0":{"df":0,"docs":{},"f":{"d":{"2":{"b":{"0":{"1":{"0":{"8":{"df":1,"docs":{"121":{"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":{}},"a":{"df":0,"docs":{},"f":{"d":{"7":{"d":{"d":{"d":{"6":{"2":{"3":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"b":{"0":{"df":0,"docs":{},"e":{"2":{"3":{"5":{"6":{"1":{"df":1,"docs":{"117":{"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":{}},"d":{"6":{"df":0,"docs":{},"e":{"1":{"0":{"df":0,"docs":{},"f":{"b":{"d":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"8":{"7":{"2":{"b":{"c":{"3":{"0":{"9":{"8":{"df":1,"docs":{"118":{"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":2,"docs":{"264":{"tf":1.0},"280":{"tf":2.449489742783178}}},"df":12,"docs":{"111":{"tf":1.4142135623730951},"134":{"tf":1.0},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"265":{"tf":3.4641016151377544},"269":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":2.0}},"e":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"f":{"4":{"8":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"8":{"df":0,"docs":{},"f":{"3":{"a":{"8":{"3":{"b":{"0":{"a":{"0":{"df":1,"docs":{"123":{"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":{}}},"9":{"c":{"b":{"b":{"a":{"a":{"d":{"b":{"a":{"5":{"df":1,"docs":{"120":{"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":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"207":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":10,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"156":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"215":{"tf":1.0},"223":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"r":{"df":11,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"0":{"9":{"2":{"c":{"d":{"7":{"3":{"c":{"2":{"df":1,"docs":{"123":{"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":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":22,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.0},"172":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.0},"177":{"tf":1.4142135623730951},"186":{"tf":1.0},"192":{"tf":1.0},"204":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"238":{"tf":1.0},"249":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":3,"docs":{"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":38,"docs":{"111":{"tf":1.4142135623730951},"133":{"tf":1.4142135623730951},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"17":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"232":{"tf":2.0},"242":{"tf":2.0},"254":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":2.0},"277":{"tf":1.0},"283":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"274":{"tf":1.0},"34":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":9,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"189":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"82":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}}},"df":6,"docs":{"272":{"tf":2.0},"274":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"i":{"df":2,"docs":{"141":{"tf":1.4142135623730951},"253":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"169":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"c":{"df":5,"docs":{"144":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"272":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"129":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"274":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"29":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"178":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}},"t":{"df":1,"docs":{"79":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":3,"docs":{"128":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"221":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"222":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}}},"df":4,"docs":{"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"250":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}}},"df":4,"docs":{"155":{"tf":1.7320508075688772},"217":{"tf":1.7320508075688772},"218":{"tf":1.0},"263":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":33,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":1.0},"267":{"tf":2.0},"268":{"tf":1.0},"269":{"tf":1.0},"27":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0},"286":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"c":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"179":{"tf":1.0},"218":{"tf":2.0},"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"[":{"c":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"3":{"2":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"f":{"d":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"181":{"tf":1.0},"186":{"tf":1.0},"195":{"tf":1.0},"207":{"tf":1.0},"251":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}}}}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"g":{"df":1,"docs":{"265":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"150":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"147":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"128":{"tf":1.0},"137":{"tf":1.0},"256":{"tf":1.4142135623730951},"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":7,"docs":{"147":{"tf":1.0},"167":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"217":{"tf":1.0},"243":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"142":{"tf":1.0},"259":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.0}}}}}}},"k":{"df":4,"docs":{"264":{"tf":2.8284271247461903},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"278":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":4,"docs":{"170":{"tf":1.0},"274":{"tf":1.7320508075688772},"278":{"tf":1.0},"281":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"249":{"tf":1.4142135623730951},"259":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"277":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"241":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"235":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"277":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"=":{"%":{"d":{"df":1,"docs":{"174":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":3,"docs":{"210":{"tf":1.0},"216":{"tf":1.0},"283":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"136":{"tf":1.0},"149":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"150":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":1.0},"27":{"tf":1.0}}}}}}},"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":2.0},"27":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"259":{"tf":1.7320508075688772},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":2.449489742783178}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"252":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"211":{"tf":1.0}}}}}}}},"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"169":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{},"’":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":5,"docs":{"131":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"155":{"tf":1.0},"218":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"240":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{")":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"a":{"2":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":3,"docs":{"122":{"tf":4.795831523312719},"124":{"tf":1.0},"218":{"tf":2.449489742783178}}}}}},"o":{"df":0,"docs":{},"p":{"df":4,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.7320508075688772},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":4,"docs":{"150":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"253":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":3,"docs":{"46":{"tf":2.0},"47":{"tf":1.0},"63":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"146":{"tf":1.0},"264":{"tf":1.0}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"269":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":3,"docs":{"188":{"tf":1.0},"207":{"tf":1.0},"265":{"tf":1.4142135623730951}}}},"2":{"df":0,"docs":{},"e":{"9":{"b":{"6":{"5":{"4":{"1":{"d":{"d":{"4":{"df":1,"docs":{"117":{"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":{}}},"5":{"4":{"b":{"c":{"d":{"df":0,"docs":{},"e":{"3":{"d":{"6":{"9":{"d":{"df":1,"docs":{"116":{"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":{}},"6":{"df":0,"docs":{},"f":{"2":{"d":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"0":{"6":{"7":{"df":1,"docs":{"123":{"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":{}}},"9":{"d":{"d":{"b":{"b":{"7":{"7":{"0":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"a":{"3":{"1":{"7":{"b":{"2":{"6":{"7":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"120":{"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":{}},"a":{"6":{"b":{"c":{"b":{"7":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"h":{"df":21,"docs":{"126":{"tf":1.4142135623730951},"133":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"218":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"284":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"63":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"277":{"tf":1.0}}}}}}}},"b":{"4":{"1":{"1":{"3":{"7":{"7":{"a":{"df":0,"docs":{},"e":{"d":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"a":{"3":{"6":{"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"6":{"1":{"4":{"df":0,"docs":{},"f":{"6":{"8":{"7":{"3":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{},"p":{"df":0,"docs":{},"f":{"df":122,"docs":{"0":{"tf":2.449489742783178},"1":{"tf":2.449489742783178},"10":{"tf":1.4142135623730951},"100":{"tf":1.7320508075688772},"101":{"tf":2.0},"102":{"tf":1.4142135623730951},"104":{"tf":1.7320508075688772},"105":{"tf":1.0},"106":{"tf":1.0},"107":{"tf":1.7320508075688772},"108":{"tf":1.4142135623730951},"109":{"tf":1.4142135623730951},"11":{"tf":3.605551275463989},"110":{"tf":2.449489742783178},"111":{"tf":2.23606797749979},"112":{"tf":1.7320508075688772},"113":{"tf":1.4142135623730951},"115":{"tf":1.4142135623730951},"117":{"tf":1.0},"12":{"tf":1.7320508075688772},"126":{"tf":1.0},"13":{"tf":2.6457513110645907},"14":{"tf":3.605551275463989},"15":{"tf":4.123105625617661},"16":{"tf":2.0},"17":{"tf":2.449489742783178},"18":{"tf":2.0},"19":{"tf":1.0},"2":{"tf":3.872983346207417},"20":{"tf":4.795831523312719},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"21":{"tf":3.0},"22":{"tf":1.4142135623730951},"23":{"tf":2.449489742783178},"24":{"tf":2.23606797749979},"25":{"tf":3.0},"252":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"26":{"tf":2.6457513110645907},"27":{"tf":2.0},"28":{"tf":3.0},"29":{"tf":3.3166247903554},"3":{"tf":2.23606797749979},"30":{"tf":2.449489742783178},"31":{"tf":2.23606797749979},"32":{"tf":2.8284271247461903},"33":{"tf":1.4142135623730951},"34":{"tf":2.8284271247461903},"35":{"tf":1.7320508075688772},"36":{"tf":2.449489742783178},"37":{"tf":2.6457513110645907},"38":{"tf":1.4142135623730951},"39":{"tf":2.449489742783178},"4":{"tf":3.3166247903554},"40":{"tf":1.7320508075688772},"41":{"tf":2.0},"42":{"tf":1.0},"43":{"tf":3.0},"44":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"46":{"tf":2.0},"47":{"tf":2.23606797749979},"48":{"tf":1.4142135623730951},"49":{"tf":2.0},"5":{"tf":3.0},"50":{"tf":1.0},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":2.23606797749979},"54":{"tf":1.0},"55":{"tf":3.0},"56":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979},"6":{"tf":2.23606797749979},"60":{"tf":1.4142135623730951},"61":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"63":{"tf":2.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":2.0},"7":{"tf":2.6457513110645907},"70":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":2.449489742783178},"74":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951},"76":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"78":{"tf":2.23606797749979},"79":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951},"80":{"tf":2.0},"81":{"tf":1.4142135623730951},"82":{"tf":2.0},"83":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0},"86":{"tf":1.0},"87":{"tf":2.449489742783178},"88":{"tf":1.4142135623730951},"89":{"tf":2.0},"9":{"tf":2.6457513110645907},"90":{"tf":1.4142135623730951},"91":{"tf":1.4142135623730951},"92":{"tf":2.449489742783178},"93":{"tf":1.4142135623730951},"94":{"tf":1.4142135623730951},"95":{"tf":2.0},"96":{"tf":1.4142135623730951},"97":{"tf":1.4142135623730951},"98":{"tf":2.449489742783178},"99":{"tf":1.4142135623730951}},"(":{"2":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"c":{"c":{"df":18,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"16":{"tf":1.7320508075688772},"17":{"tf":1.7320508075688772},"20":{"tf":1.0},"23":{"tf":1.7320508075688772},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.7320508075688772},"63":{"tf":1.0},"64":{"tf":1.0}}},"d":{"6":{"3":{"a":{"0":{"2":{"1":{"7":{"d":{"5":{"df":1,"docs":{"122":{"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":{},"l":{"df":0,"docs":{},"i":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":2.449489742783178},"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":2.0},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.0}}}}},"d":{"b":{"df":0,"docs":{},"f":{"8":{"c":{"0":{"1":{"d":{"df":0,"docs":{},"e":{"5":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"117":{"tf":1.0},"46":{"tf":2.6457513110645907},"63":{"tf":3.7416573867739413},"83":{"tf":3.7416573867739413}},"f":{"c":{"2":{"2":{"1":{"4":{"b":{"6":{"0":{"4":{"7":{"df":1,"docs":{"122":{"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":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":5,"docs":{"231":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":2.0},"269":{"tf":1.0},"280":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"155":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":1,"docs":{"265":{"tf":2.23606797749979}}}},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":11,"docs":{"142":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.4142135623730951},"199":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"126":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"63":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"195":{"tf":1.0},"275":{"tf":1.0}}},"y":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"218":{"tf":1.0}}}}},"n":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"126":{"tf":4.0},"215":{"tf":1.0},"283":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"122":{"tf":1.0}}},"c":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}}},"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"d":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":11,"docs":{"195":{"tf":1.0},"218":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":2.23606797749979},"267":{"tf":1.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}},"i":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"169":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"261":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"157":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"63":{"tf":1.0}}}}}},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":2,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"218":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"136":{"tf":1.0},"207":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":32,"docs":{"126":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"195":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"200":{"tf":2.23606797749979},"210":{"tf":1.0},"213":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}},"y":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"6":{"4":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"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":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"118":{"tf":1.0},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"268":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"128":{"tf":1.0},"255":{"tf":1.4142135623730951}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":1.0}}}}},"q":{"df":1,"docs":{"260":{"tf":1.0}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"136":{"tf":1.0},"231":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"r":{"df":2,"docs":{"264":{"tf":1.0},"83":{"tf":2.449489742783178}},"o":{"df":0,"docs":{},"r":{"df":14,"docs":{"128":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.4142135623730951},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"252":{"tf":1.4142135623730951},"254":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}}}}},"s":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"126":{"tf":1.0},"264":{"tf":2.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"c":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":30,"docs":{"11":{"tf":2.8284271247461903},"12":{"tf":1.0},"15":{"tf":3.3166247903554},"16":{"tf":2.0},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"47":{"tf":1.4142135623730951},"48":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0},"7":{"tf":1.0},"79":{"tf":2.0},"80":{"tf":1.0}}},"df":0,"docs":{}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"265":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"a":{"df":0,"docs":{},"f":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"275":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}},"k":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"t":{"df":1,"docs":{"275":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"df":43,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":2.6457513110645907},"128":{"tf":1.4142135623730951},"130":{"tf":1.4142135623730951},"133":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"140":{"tf":1.0},"141":{"tf":1.0},"160":{"tf":1.7320508075688772},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.4142135623730951},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"20":{"tf":1.0},"209":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":2.23606797749979},"242":{"tf":2.449489742783178},"275":{"tf":3.0},"284":{"tf":1.0},"37":{"tf":2.449489742783178},"38":{"tf":1.0},"39":{"tf":2.23606797749979},"40":{"tf":1.0},"41":{"tf":2.8284271247461903},"42":{"tf":2.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.7320508075688772}},"p":{"df":1,"docs":{"37":{"tf":2.8284271247461903}}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"&":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"163":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"127":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"264":{"tf":1.0},"270":{"tf":1.0}}}}}}}},"x":{"1":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.0}}},"2":{"df":1,"docs":{"182":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"134":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}},"p":{"df":0,"docs":{},"l":{"df":118,"docs":{"126":{"tf":1.0},"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"133":{"tf":1.7320508075688772},"134":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":2.0},"142":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.7320508075688772},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"157":{"tf":1.0},"159":{"tf":1.7320508075688772},"160":{"tf":1.7320508075688772},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"164":{"tf":1.4142135623730951},"165":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.7320508075688772},"170":{"tf":2.0},"171":{"tf":2.0},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.4142135623730951},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.7320508075688772},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.7320508075688772},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":2.0},"215":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"219":{"tf":1.7320508075688772},"220":{"tf":1.7320508075688772},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.7320508075688772},"225":{"tf":1.7320508075688772},"227":{"tf":1.7320508075688772},"228":{"tf":1.7320508075688772},"229":{"tf":1.7320508075688772},"231":{"tf":1.0},"232":{"tf":2.0},"233":{"tf":2.0},"235":{"tf":1.7320508075688772},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.7320508075688772},"242":{"tf":2.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.7320508075688772},"248":{"tf":1.7320508075688772},"249":{"tf":1.7320508075688772},"250":{"tf":1.7320508075688772},"251":{"tf":1.7320508075688772},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":3.3166247903554},"265":{"tf":2.8284271247461903},"269":{"tf":1.0},"272":{"tf":1.0},"279":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"108":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"53":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"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":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":1,"docs":{"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"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":{}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":16,"docs":{"182":{"tf":1.0},"183":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"253":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":5,"docs":{"264":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.7320508075688772},"64":{"tf":1.0}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":5,"docs":{"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"261":{"tf":1.0},"264":{"tf":2.0},"41":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"t":{"df":12,"docs":{"118":{"tf":1.0},"126":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"157":{"tf":1.0},"195":{"tf":1.4142135623730951},"213":{"tf":1.0},"218":{"tf":1.0},"260":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"282":{"tf":1.0},"63":{"tf":1.0}}}},"v":{"df":2,"docs":{"138":{"tf":1.0},"41":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"155":{"tf":1.0},"169":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.7320508075688772},"204":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0}}}},"t":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":3,"docs":{"46":{"tf":1.7320508075688772},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.4142135623730951}}}}},"df":18,"docs":{"219":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"250":{"tf":1.4142135623730951},"283":{"tf":1.0},"30":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.7320508075688772},"64":{"tf":1.0},"79":{"tf":1.0},"83":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"46":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":6,"docs":{"43":{"tf":2.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":2.0},"47":{"tf":1.0},"48":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"219":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"229":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.0},"204":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":6,"docs":{"16":{"tf":1.0},"257":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}}},"t":{"4":{"_":{"d":{"a":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":2.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":12,"docs":{"126":{"tf":1.4142135623730951},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":2,"docs":{"118":{"tf":1.0},"264":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":1,"docs":{"249":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"f":{"1":{"a":{"2":{"df":0,"docs":{},"e":{"4":{"4":{"a":{"3":{"a":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"9":{"5":{"0":{"9":{"c":{"2":{"df":0,"docs":{},"f":{"b":{"0":{"df":1,"docs":{"118":{"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":{}},"3":{"0":{"7":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"b":{"4":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{"8":{"9":{"0":{"3":{"c":{"0":{"b":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"1":{"b":{"df":0,"docs":{},"f":{"6":{"d":{"8":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"116":{"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":{}},"4":{"3":{"6":{"4":{"d":{"c":{"df":0,"docs":{},"f":{"c":{"8":{"6":{"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"0":{"0":{"b":{"6":{"9":{"0":{"5":{"0":{"1":{"5":{"df":1,"docs":{"122":{"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":{}},"7":{"c":{"9":{"1":{"7":{"b":{"a":{"1":{"1":{"a":{"6":{"df":1,"docs":{"123":{"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":{}},"9":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"1":{"8":{"3":{"6":{"0":{"4":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"a":{"2":{"8":{"d":{"c":{"b":{"8":{"2":{"a":{"3":{"8":{"df":1,"docs":{"123":{"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":{}},"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":8,"docs":{"136":{"tf":1.7320508075688772},"141":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"155":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"l":{"df":0,"docs":{},"s":{"df":6,"docs":{"225":{"tf":1.0},"249":{"tf":1.0},"29":{"tf":1.0},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"63":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":4,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":2.449489742783178}}}}}},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}}}}}}},"b":{"df":0,"docs":{},"f":{"c":{"5":{"0":{"4":{"a":{"2":{"4":{"df":0,"docs":{},"f":{"5":{"df":2,"docs":{"117":{"tf":1.0},"120":{"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":{}}},"c":{"6":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"2":{"1":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"7":{"0":{"2":{"2":{"7":{"3":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"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":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"df":3,"docs":{"178":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}},"df":1,"docs":{"127":{"tf":1.0}},"e":{"8":{"0":{":":{":":{"2":{"0":{"0":{"0":{":":{"b":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"8":{"2":{":":{"3":{"a":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"9":{"4":{"c":{"c":{"2":{"9":{"0":{"df":0,"docs":{},"f":{"5":{"3":{"df":1,"docs":{"123":{"tf":2.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":{}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":15,"docs":{"114":{"tf":1.7320508075688772},"115":{"tf":1.0},"116":{"tf":1.4142135623730951},"117":{"tf":2.23606797749979},"118":{"tf":1.0},"119":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.4142135623730951},"123":{"tf":1.0},"124":{"tf":1.0},"125":{"tf":1.7320508075688772},"126":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.0}}}}}},"c":{"5":{"6":{"df":0,"docs":{},"f":{"5":{"8":{"9":{"0":{"d":{"9":{"df":1,"docs":{"117":{"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":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"127":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"24":{"tf":1.0},"25":{"tf":2.0},"26":{"tf":2.8284271247461903},"27":{"tf":1.4142135623730951},"29":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":6,"docs":{"174":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"275":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":2.449489742783178},"27":{"tf":1.0}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"a":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"f":{"0":{"2":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"f":{"7":{"b":{"6":{"4":{"3":{"5":{"5":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"123":{"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":{"34":{"tf":1.4142135623730951}},"f":{"9":{"b":{"df":0,"docs":{},"f":{"6":{"1":{"b":{"b":{"6":{"2":{"b":{"c":{"0":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"8":{"c":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"0":{"9":{"d":{"6":{"9":{"0":{"0":{"df":1,"docs":{"85":{"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":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"1":{"0":{"3":{"6":{"5":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"d":{"df":0,"docs":{},"f":{"5":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"df":0,"docs":{},"e":{"b":{"6":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"a":{"5":{"a":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"0":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"0":{"b":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"8":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"7":{"8":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"d":{"0":{"a":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"2":{"7":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"df":0,"docs":{},"e":{"c":{"5":{"df":0,"docs":{},"f":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"c":{"c":{"0":{"7":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"2":{"a":{"d":{"c":{"0":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"d":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}}}}}}}},"df":5,"docs":{"137":{"tf":1.0},"150":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"e":{"=":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"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":21,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"133":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"178":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"253":{"tf":2.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":3.4641016151377544},"265":{"tf":3.3166247903554},"267":{"tf":1.0},"279":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":2.6457513110645907},"26":{"tf":2.8284271247461903},"264":{"tf":1.0},"34":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":3,"docs":{"52":{"tf":2.0},"53":{"tf":1.7320508075688772},"58":{"tf":2.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"126":{"tf":2.0},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"258":{"tf":2.0},"259":{"tf":2.0},"260":{"tf":2.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"61":{"tf":1.0}},")":{"df":0,"docs":{},"程":{"df":0,"docs":{},"序":{"df":0,"docs":{},"。":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"n":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}},"d":{"df":5,"docs":{"142":{"tf":1.0},"256":{"tf":1.0},"259":{"tf":1.0},"265":{"tf":1.7320508075688772},"285":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.0}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":15,"docs":{"131":{"tf":1.4142135623730951},"134":{"tf":1.0},"138":{"tf":1.0},"149":{"tf":1.0},"162":{"tf":1.0},"212":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0}}}}},"x":{"df":7,"docs":{"127":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"281":{"tf":1.4142135623730951}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":26,"docs":{"121":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.4142135623730951},"200":{"tf":1.4142135623730951},"201":{"tf":2.0},"202":{"tf":2.0},"207":{"tf":1.0},"218":{"tf":2.6457513110645907},"219":{"tf":1.0},"225":{"tf":1.0},"243":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}},"s":{"=":{"0":{"df":1,"docs":{"243":{"tf":1.0}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"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":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}},"o":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"w":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":3,"docs":{"159":{"tf":1.0},"224":{"tf":1.0},"280":{"tf":1.0}}}},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"217":{"tf":2.0}}}},"df":0,"docs":{}}}},"=":{"b":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"\"":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"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":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"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":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"213":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"211":{"tf":1.0},"214":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":4,"docs":{"210":{"tf":1.0},"215":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"250":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"221":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"222":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"215":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"218":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.7320508075688772}}}}}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":4,"docs":{"123":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":12,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":1.0},"155":{"tf":1.0},"163":{"tf":1.0},"218":{"tf":1.0},"236":{"tf":1.0},"265":{"tf":2.0},"272":{"tf":1.0},"277":{"tf":1.0},"52":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}},"k":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"269":{"tf":1.0}}},"t":{"df":8,"docs":{"117":{"tf":1.0},"133":{"tf":1.4142135623730951},"224":{"tf":1.0},"257":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}},"df":1,"docs":{"217":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"137":{"tf":1.0},"141":{"tf":1.0},"193":{"tf":1.0},"278":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":1,"docs":{"186":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"195":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":3,"docs":{"126":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"263":{"tf":1.0},"275":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"186":{"tf":1.0}}}},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"121":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}},"df":0,"docs":{},"t":{"df":1,"docs":{"242":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":7,"docs":{"126":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"213":{"tf":1.4142135623730951},"217":{"tf":1.0},"243":{"tf":1.0},"34":{"tf":1.0}}}},"n":{"c":{"_":{"a":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"171":{"tf":1.0}}}}},"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"265":{"tf":2.23606797749979}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"135":{"tf":1.0}}}},"df":0,"docs":{}}},"df":57,"docs":{"117":{"tf":1.0},"124":{"tf":5.291502622129181},"126":{"tf":2.6457513110645907},"128":{"tf":1.0},"131":{"tf":2.6457513110645907},"132":{"tf":2.449489742783178},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":2.449489742783178},"140":{"tf":2.449489742783178},"141":{"tf":1.0},"157":{"tf":2.23606797749979},"171":{"tf":1.0},"188":{"tf":1.0},"196":{"tf":1.0},"210":{"tf":3.1622776601683795},"211":{"tf":3.3166247903554},"212":{"tf":1.0},"213":{"tf":3.0},"214":{"tf":2.8284271247461903},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.7320508075688772},"254":{"tf":1.7320508075688772},"265":{"tf":2.8284271247461903},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.8284271247461903},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.23606797749979},"283":{"tf":1.0},"284":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0},"285":{"tf":1.7320508075688772}}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":15,"docs":{"122":{"tf":1.0},"126":{"tf":2.0},"218":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":2.0},"275":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"251":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"231":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"e":{"df":1,"docs":{"11":{"tf":1.0}}},"h":{"df":0,"docs":{},"u":{"b":{"df":3,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"238":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"n":{"df":6,"docs":{"132":{"tf":1.0},"135":{"tf":1.0},"213":{"tf":1.7320508075688772},"215":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"159":{"tf":1.0},"219":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.4142135623730951}},"e":{"df":1,"docs":{"195":{"tf":1.0}}},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"d":{"df":2,"docs":{"142":{"tf":1.0},"285":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"t":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"280":{"tf":2.449489742783178}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":4,"docs":{"52":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"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":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"111":{"tf":1.0},"123":{"tf":6.0},"128":{"tf":1.0},"203":{"tf":2.8284271247461903},"254":{"tf":3.1622776601683795},"29":{"tf":1.0},"34":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"n":{"a":{"df":2,"docs":{"72":{"tf":1.0},"80":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}},"df":0,"docs":{},"p":{"df":8,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"265":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":4,"docs":{"124":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"275":{"tf":1.0}}}}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":131,"docs":{"127":{"tf":2.0},"128":{"tf":1.0},"129":{"tf":1.0},"130":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"143":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"156":{"tf":1.0},"157":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"204":{"tf":1.0},"205":{"tf":1.0},"206":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"223":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0},"255":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.0}}},"df":0,"docs":{}}},"z":{"df":0,"docs":{},"p":{"4":{"1":{"3":{"df":0,"docs":{},"o":{"_":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"271":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"280":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"218":{"tf":1.7320508075688772}},"i":{"df":1,"docs":{"271":{"tf":1.0}}},"l":{"df":4,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}},"e":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"e":{"c":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"58":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}}}}},"df":1,"docs":{"51":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":3,"docs":{"126":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"144":{"tf":1.0},"254":{"tf":1.0}}}},"i":{"df":1,"docs":{"285":{"tf":1.0}}}}},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":6,"docs":{"55":{"tf":1.7320508075688772},"56":{"tf":2.23606797749979},"57":{"tf":1.4142135623730951},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"117":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":20,"docs":{"120":{"tf":2.23606797749979},"121":{"tf":1.0},"168":{"tf":1.0},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.4142135623730951},"186":{"tf":1.7320508075688772},"189":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0},"259":{"tf":2.449489742783178},"260":{"tf":1.7320508075688772},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.0},"38":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"116":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"16":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}},"e":{"a":{"d":{"df":2,"docs":{"199":{"tf":1.0},"245":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":8,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"256":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"207":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":12,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.7320508075688772},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"269":{"tf":2.23606797749979},"271":{"tf":2.449489742783178},"275":{"tf":2.23606797749979},"284":{"tf":1.0}}}},"p":{"df":5,"docs":{"127":{"tf":1.0},"16":{"tf":1.0},"264":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"117":{"tf":1.4142135623730951},"123":{"tf":2.23606797749979},"124":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"150":{"tf":1.0},"159":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.7320508075688772},"20":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.4142135623730951},"246":{"tf":1.7320508075688772},"251":{"tf":1.0},"254":{"tf":2.0},"271":{"tf":1.0},"4":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"n":{"c":{"df":2,"docs":{"265":{"tf":1.4142135623730951},"271":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"269":{"tf":1.0}}},"df":4,"docs":{"218":{"tf":1.0},"264":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}}},"t":{"df":0,"docs":{},"z":{"df":1,"docs":{"264":{"tf":1.0}}}}},"x":{"a":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"259":{"tf":2.0},"260":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"155":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"168":{"tf":1.0},"169":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"270":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":2.23606797749979}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":12,"docs":{"135":{"tf":1.0},"151":{"tf":1.4142135623730951},"168":{"tf":1.0},"172":{"tf":1.4142135623730951},"192":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":2.449489742783178},"278":{"tf":1.4142135623730951},"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"df":1,"docs":{"52":{"tf":2.0}}}}},"t":{"df":7,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"264":{"tf":2.23606797749979},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"52":{"tf":2.449489742783178}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"117":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"141":{"tf":2.8284271247461903},"219":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"m":{"d":{"=":{"c":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"c":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"259":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{":":{"/":{"/":{"c":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"/":{"2":{"0":{"2":{"0":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"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":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{":":{"/":{"/":{"a":{"df":0,"docs":{},"k":{"a":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"(":{"3":{"0":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":25,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.4142135623730951},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.4142135623730951},"37":{"tf":1.0},"38":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.4142135623730951},"5":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"54":{"tf":1.0},"72":{"tf":1.0},"86":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"3":{"9":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"o":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"109":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"5":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"/":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"4":{"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":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{".":{"5":{"1":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"6":{"4":{"0":{"6":{"3":{"1":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"81":{"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":{}}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}}}},"w":{"df":0,"docs":{},"w":{"df":0,"docs":{},"w":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"b":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"/":{"d":{"b":{"/":{"3":{"9":{"1":{"5":{"7":{"0":{"df":0,"docs":{},"(":{"1":{"df":0,"docs":{},"h":{"df":1,"docs":{"4":{"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":{}}}}},"v":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"i":{".":{"df":3,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"265":{"tf":1.0}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"o":{"df":11,"docs":{"100":{"tf":1.0},"101":{"tf":1.0},"102":{"tf":1.0},"170":{"tf":1.0},"19":{"tf":1.0},"264":{"tf":3.0},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"98":{"tf":1.7320508075688772},"99":{"tf":1.4142135623730951}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"4":{"0":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"122":{"tf":1.0}}},"d":{"df":25,"docs":{"117":{"tf":1.0},"147":{"tf":1.7320508075688772},"148":{"tf":1.4142135623730951},"169":{"tf":1.0},"17":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.7320508075688772},"193":{"tf":1.0},"208":{"tf":1.0},"259":{"tf":2.23606797749979},"26":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.4142135623730951},"27":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"280":{"tf":1.0},"29":{"tf":2.6457513110645907},"30":{"tf":1.7320508075688772},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":8,"docs":{"150":{"tf":1.0},"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"264":{"tf":2.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"179":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{}}},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"186":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0}}}}}}},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":11,"docs":{"246":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.7320508075688772},"284":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"270":{"tf":1.0}}}}}}},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":34,"docs":{"111":{"tf":2.0},"133":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"154":{"tf":1.0},"168":{"tf":1.0},"17":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.7320508075688772},"264":{"tf":2.23606797749979},"272":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"37":{"tf":1.7320508075688772},"41":{"tf":2.0},"46":{"tf":2.23606797749979},"52":{"tf":2.8284271247461903},"58":{"tf":2.6457513110645907},"63":{"tf":2.23606797749979}},"e":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"126":{"tf":1.0},"196":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"127":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"242":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"135":{"tf":1.0},"192":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}}}}},"x":{"df":12,"docs":{"135":{"tf":1.0},"136":{"tf":1.0},"151":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"273":{"tf":1.0},"277":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"(":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"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":{"195":{"tf":1.0}}}}}},"o":{"df":3,"docs":{"126":{"tf":1.0},"58":{"tf":3.7416573867739413},"79":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"m":{"df":6,"docs":{"126":{"tf":1.4142135623730951},"150":{"tf":1.0},"169":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"111":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.4142135623730951}},"i":{"df":5,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"188":{"tf":1.4142135623730951},"206":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"269":{"tf":1.0},"271":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":2,"docs":{"182":{"tf":1.0},"183":{"tf":1.0}}}}},"o":{"d":{"df":3,"docs":{"120":{"tf":1.0},"155":{"tf":1.0},"265":{"tf":2.23606797749979}}},"df":1,"docs":{"155":{"tf":1.0}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"225":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"188":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"211":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.0}},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"261":{"tf":1.0},"269":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":8,"docs":{"141":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"192":{"tf":1.0},"213":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.4142135623730951},"249":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":27,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"138":{"tf":1.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"269":{"tf":1.0},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}}}}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":66,"docs":{"111":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.7320508075688772},"140":{"tf":2.23606797749979},"141":{"tf":1.4142135623730951},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"151":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"17":{"tf":1.7320508075688772},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"18":{"tf":1.0},"182":{"tf":2.0},"183":{"tf":1.4142135623730951},"193":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":2.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"23":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"26":{"tf":2.0},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":3.3166247903554},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"52":{"tf":2.8284271247461903},"58":{"tf":3.1622776601683795},"63":{"tf":1.4142135623730951},"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979},"82":{"tf":1.0},"83":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"134":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"241":{"tf":1.0}},"r":{"df":1,"docs":{"259":{"tf":1.0}}}},"l":{"df":1,"docs":{"122":{"tf":2.23606797749979}}},"n":{"d":{"df":4,"docs":{"127":{"tf":1.0},"131":{"tf":1.0},"138":{"tf":1.0},"241":{"tf":1.0}}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"218":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}},"f":{"a":{"c":{"df":13,"docs":{"126":{"tf":1.0},"142":{"tf":1.0},"159":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"217":{"tf":1.0},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"111":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.7320508075688772}}}}}},"v":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"52":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":3,"docs":{"142":{"tf":1.0},"204":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"155":{"tf":1.0},"52":{"tf":1.7320508075688772}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"128":{"tf":1.0},"157":{"tf":1.0},"253":{"tf":1.7320508075688772},"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"253":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"195":{"tf":1.0},"284":{"tf":1.0}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"157":{"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":2,"docs":{"100":{"tf":1.0},"2":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"1":{"\"":{")":{"[":{"0":{"df":1,"docs":{"196":{"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":6,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"71":{"tf":1.0},"79":{"tf":1.0}},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"4":{"df":1,"docs":{"111":{"tf":1.0}}},"6":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":1,"docs":{"207":{"tf":1.0}},"q":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.7320508075688772}}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":5,"docs":{"150":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0}}}}},"t":{"'":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"270":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.4142135623730951}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"238":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"236":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"237":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"239":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":6,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"142":{"tf":2.449489742783178},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"j":{"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"126":{"tf":1.0}}},"df":2,"docs":{"116":{"tf":1.7320508075688772},"126":{"tf":1.7320508075688772}}}},"o":{"b":{"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.4142135623730951}}}}}},"k":{".":{"c":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"(":{"'":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":5,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}},".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"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":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":67,"docs":{"114":{"tf":1.7320508075688772},"115":{"tf":1.4142135623730951},"116":{"tf":1.7320508075688772},"117":{"tf":2.23606797749979},"118":{"tf":1.4142135623730951},"119":{"tf":1.0},"120":{"tf":1.7320508075688772},"121":{"tf":1.7320508075688772},"122":{"tf":1.7320508075688772},"123":{"tf":2.23606797749979},"124":{"tf":1.4142135623730951},"125":{"tf":1.7320508075688772},"126":{"tf":3.4641016151377544},"127":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":2.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.7320508075688772},"144":{"tf":1.7320508075688772},"145":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"2":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.7320508075688772},"210":{"tf":2.449489742783178},"211":{"tf":2.6457513110645907},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.7320508075688772},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"252":{"tf":1.0},"253":{"tf":1.4142135623730951},"256":{"tf":2.23606797749979},"257":{"tf":3.0},"264":{"tf":2.23606797749979},"265":{"tf":2.0},"269":{"tf":1.7320508075688772},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":2.0}}}}}},"y":{"'":{"df":2,"docs":{"188":{"tf":1.0},"192":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"/":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"272":{"tf":1.0}}}}},"df":0,"docs":{}}},"=":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":4,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"282":{"tf":2.0},"284":{"tf":1.7320508075688772}},"y":{"df":0,"docs":{},"p":{"df":6,"docs":{"170":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"183":{"tf":1.0},"186":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"172":{"tf":1.0}}}}},"u":{"3":{"2":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":3,"docs":{"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"6":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":7,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":31,"docs":{"170":{"tf":1.4142135623730951},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.7320508075688772},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":2.23606797749979},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"238":{"tf":2.0},"239":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"272":{"tf":2.8284271247461903},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"282":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":1.4142135623730951},"58":{"tf":2.449489742783178},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"244":{"tf":1.0}}}}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"139":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"139":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"139":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"、":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"265":{"tf":1.0},"269":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"277":{"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":4,"docs":{"131":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"157":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"131":{"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":24,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":3.0},"128":{"tf":1.0},"131":{"tf":2.23606797749979},"138":{"tf":1.0},"157":{"tf":1.7320508075688772},"161":{"tf":1.0},"21":{"tf":2.0},"210":{"tf":1.0},"211":{"tf":1.0},"22":{"tf":2.0},"221":{"tf":1.0},"23":{"tf":3.4641016151377544},"24":{"tf":1.4142135623730951},"257":{"tf":1.0},"26":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"284":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"140":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"140":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"128":{"tf":1.0},"132":{"tf":2.23606797749979},"161":{"tf":1.0},"211":{"tf":1.4142135623730951},"222":{"tf":1.0},"23":{"tf":1.4142135623730951},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"279":{"tf":1.0}},"e":{"_":{"_":{"df":1,"docs":{"132":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"132":{"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":{}}}}}},"p":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":3,"docs":{"128":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"248":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"v":{"[":{"0":{"]":{")":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"u":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"2":{"df":1,"docs":{"111":{"tf":2.0}}},"3":{"df":1,"docs":{"111":{"tf":2.0}}},"a":{"b":{"df":1,"docs":{"285":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"224":{"tf":1.0},"225":{"tf":1.0}}}},"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"240":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"85":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"140":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":2.0}}}},"t":{"(":{"df":0,"docs":{},"m":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"163":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":3.1622776601683795},"278":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":28,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"196":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"181":{"tf":1.0},"34":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"c":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"23":{"tf":1.0},"26":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"122":{"tf":1.0},"265":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":7,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951}},"e":{"=":{"df":0,"docs":{},"u":{"6":{"4":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"244":{"tf":1.0},"245":{"tf":1.0}}},"r":{"df":0,"docs":{},"n":{"df":12,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"145":{"tf":1.7320508075688772},"154":{"tf":1.7320508075688772},"239":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"249":{"tf":1.0},"272":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"df":18,"docs":{"268":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.7320508075688772},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"276":{"tf":1.7320508075688772},"277":{"tf":1.7320508075688772},"278":{"tf":2.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"281":{"tf":1.7320508075688772},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"285":{"tf":1.4142135623730951}}}}}},"t":{"'":{"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"]":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":11,"docs":{"136":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"230":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}}},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":3,"docs":{"17":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":26,"docs":{"10":{"tf":2.6457513110645907},"11":{"tf":2.23606797749979},"15":{"tf":1.0},"207":{"tf":1.0},"30":{"tf":1.0},"42":{"tf":1.0},"5":{"tf":1.4142135623730951},"53":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0},"70":{"tf":2.449489742783178},"71":{"tf":1.0},"72":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":1.0},"84":{"tf":2.449489742783178},"85":{"tf":1.0},"86":{"tf":1.0},"9":{"tf":1.0}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"214":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.4142135623730951}},"p":{"c":{"a":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"126":{"tf":1.0},"136":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"246":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"6":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":15,"docs":{"123":{"tf":2.0},"128":{"tf":1.0},"17":{"tf":1.4142135623730951},"203":{"tf":2.8284271247461903},"23":{"tf":1.0},"254":{"tf":1.4142135623730951},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"df":1,"docs":{"249":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"117":{"tf":1.0},"159":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"211":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"239":{"tf":1.0},"269":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":7,"docs":{"207":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":2.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0}}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"119":{"tf":1.4142135623730951}}}},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"274":{"tf":1.0}}}},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"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":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"m":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{".":{"c":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":57,"docs":{"1":{"tf":1.0},"111":{"tf":1.0},"114":{"tf":1.7320508075688772},"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"119":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"126":{"tf":1.0},"13":{"tf":1.0},"137":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":2.23606797749979},"20":{"tf":1.0},"21":{"tf":1.0},"242":{"tf":1.0},"25":{"tf":1.0},"251":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.4142135623730951},"28":{"tf":1.0},"280":{"tf":1.0},"285":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":2.0},"50":{"tf":2.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.7320508075688772},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"55":{"tf":1.0},"56":{"tf":1.4142135623730951},"57":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"80":{"tf":1.4142135623730951}}}}},"r":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":13,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"133":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":1.0},"280":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"63":{"tf":1.0}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"83":{"tf":1.0}}},"v":{"df":0,"docs":{},"m":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"207":{"tf":1.0}}}},"x":{"df":1,"docs":{"265":{"tf":1.0}}}},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":1,"docs":{"120":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":4,"docs":{"169":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"256":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"2":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":1,"docs":{"240":{"tf":1.4142135623730951}},"l":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":5,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"151":{"tf":1.0},"157":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"231":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"112":{"tf":1.0},"264":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":10,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"df":8,"docs":{"117":{"tf":1.0},"195":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"_":{"c":{"b":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":1,"docs":{"232":{"tf":1.4142135623730951}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":4,"docs":{"155":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.0}}},"w":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"m":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}}},"s":{"df":2,"docs":{"269":{"tf":1.0},"282":{"tf":1.0}},"m":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":11,"docs":{"104":{"tf":1.7320508075688772},"105":{"tf":1.0},"106":{"tf":1.7320508075688772},"107":{"tf":1.0},"108":{"tf":1.4142135623730951},"109":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.0},"141":{"tf":2.23606797749979}}}},"t":{"df":1,"docs":{"257":{"tf":1.0}}},"u":{"a":{"df":1,"docs":{"267":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"t":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"124":{"tf":2.23606797749979},"219":{"tf":1.0}}}}},"m":{"a":{"c":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"116":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"df":18,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"203":{"tf":1.7320508075688772},"242":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":6,"docs":{"117":{"tf":1.7320508075688772},"207":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.4142135623730951},"282":{"tf":1.0},"285":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":8,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0},"277":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"163":{"tf":1.0},"259":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":6,"docs":{"150":{"tf":1.0},"211":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":2.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":1.4142135623730951}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"189":{"tf":1.4142135623730951}},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"189":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"193":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"173":{"tf":1.0},"193":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"192":{"tf":2.23606797749979}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"191":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"191":{"tf":1.4142135623730951}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"187":{"tf":1.0}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"188":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.4142135623730951}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"201":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"201":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"199":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"199":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"198":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"198":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"197":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"197":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":5,"docs":{"128":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"196":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"163":{"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":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"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":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"202":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"202":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"200":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"190":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"190":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":50,"docs":{"117":{"tf":2.23606797749979},"119":{"tf":1.4142135623730951},"120":{"tf":2.449489742783178},"121":{"tf":2.449489742783178},"128":{"tf":1.4142135623730951},"142":{"tf":1.0},"168":{"tf":1.7320508075688772},"169":{"tf":2.449489742783178},"170":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.7320508075688772},"174":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":2.6457513110645907},"183":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.4142135623730951},"192":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.7320508075688772},"200":{"tf":2.0},"201":{"tf":1.0},"202":{"tf":1.0},"226":{"tf":1.4142135623730951},"230":{"tf":1.7320508075688772},"233":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.4142135623730951},"238":{"tf":1.4142135623730951},"239":{"tf":1.0},"259":{"tf":2.6457513110645907},"260":{"tf":2.0},"265":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"277":{"tf":1.0},"284":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.0},"38":{"tf":1.7320508075688772},"52":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"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":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}}},",":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},",":{"df":0,"docs":{},"最":{"df":0,"docs":{},"大":{"df":0,"docs":{},"条":{"df":0,"docs":{},"目":{"df":0,"docs":{},"数":{"df":0,"docs":{},"为":{"2":{"5":{"6":{"df":1,"docs":{"63":{"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":{}}}}}}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"265":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":9,"docs":{"120":{"tf":1.0},"126":{"tf":1.0},"155":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"250":{"tf":1.7320508075688772},"264":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"173":{"tf":1.0},"174":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"=":{"1":{"0":{"2":{"4":{"0":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"269":{"tf":1.0}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":4,"docs":{"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"195":{"tf":1.0},"239":{"tf":1.0}}}}}}}},"df":2,"docs":{"260":{"tf":1.0},"263":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"163":{"tf":1.0},"218":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":6,"docs":{"126":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"258":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0}}}}},"df":2,"docs":{"128":{"tf":1.0},"253":{"tf":1.7320508075688772}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":6,"docs":{"92":{"tf":1.7320508075688772},"93":{"tf":1.0},"94":{"tf":2.0},"95":{"tf":1.0},"96":{"tf":1.0},"97":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"204":{"tf":2.23606797749979},"247":{"tf":1.0},"249":{"tf":1.0},"253":{"tf":2.0}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":9,"docs":{"201":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.0},"232":{"tf":1.0},"252":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":3,"docs":{"142":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":35,"docs":{"136":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"229":{"tf":1.0},"233":{"tf":1.0},"246":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"285":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"263":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":2.23606797749979}},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"常":{"df":0,"docs":{},"量":{"df":0,"docs":{},",":{"df":0,"docs":{},"其":{"df":0,"docs":{},"值":{"df":0,"docs":{},"为":{"0":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"17":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"116":{"tf":1.0}}},"s":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":2,"docs":{"127":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}}}},"t":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"x":{"4":{"df":1,"docs":{"122":{"tf":1.0}}},"5":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"o":{"d":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"240":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0}}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"126":{"tf":2.0},"249":{"tf":1.0},"253":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"117":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":18,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"192":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":3.7416573867739413},"265":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.23606797749979}}}}}},"p":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"q":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":2.23606797749979},"85":{"tf":1.0}},"g":{"df":5,"docs":{"118":{"tf":1.0},"201":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"v":{"b":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":50,"docs":{"121":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":2.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.7320508075688772},"171":{"tf":1.7320508075688772},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.7320508075688772},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"184":{"tf":1.7320508075688772},"185":{"tf":1.7320508075688772},"186":{"tf":1.7320508075688772},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"216":{"tf":1.0},"23":{"tf":1.4142135623730951},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":2.449489742783178},"260":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"58":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"155":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.23606797749979},"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"146":{"tf":1.0},"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":2,"docs":{"109":{"tf":1.0},"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"215":{"tf":1.0},"263":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"144":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"138":{"tf":1.0},"150":{"tf":1.0},"203":{"tf":1.0},"212":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"283":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":5,"docs":{"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"228":{"tf":1.0}}},"t":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"124":{"tf":1.0},"219":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":11,"docs":{"126":{"tf":1.0},"162":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"261":{"tf":1.0},"264":{"tf":1.0},"266":{"tf":1.4142135623730951},"267":{"tf":1.0},"286":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}},"w":{"df":20,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"242":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":3,"docs":{"137":{"tf":2.0},"274":{"tf":1.0},"52":{"tf":2.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"f":{"df":0,"docs":{},"p":{"df":1,"docs":{"122":{"tf":1.0}}}},"i":{"c":{"'":{"df":1,"docs":{"181":{"tf":1.0}}},"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":6,"docs":{"112":{"tf":1.4142135623730951},"121":{"tf":1.0},"283":{"tf":1.7320508075688772},"37":{"tf":2.8284271247461903},"41":{"tf":1.7320508075688772},"85":{"tf":2.0}},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"225":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"141":{"tf":1.0},"204":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"254":{"tf":1.0},"256":{"tf":1.0}},"e":{"df":5,"docs":{"224":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}},"y":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"195":{"tf":1.4142135623730951},"226":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"133":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":19,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"159":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"188":{"tf":1.0},"192":{"tf":1.0},"195":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"251":{"tf":1.0},"264":{"tf":1.0}}},"h":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951}}}},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":8,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"231":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"$":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"260":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":1,"docs":{"155":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":8,"docs":{"121":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"165":{"tf":1.0},"178":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":2.0}}}},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":3,"docs":{"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"250":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"a":{"df":1,"docs":{"121":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":8,"docs":{"146":{"tf":1.0},"155":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":2.0},"195":{"tf":1.0},"232":{"tf":1.0},"250":{"tf":1.0},"265":{"tf":1.0}},"s":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"v":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":25,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"150":{"tf":1.0},"16":{"tf":1.4142135623730951},"168":{"tf":1.0},"17":{"tf":1.4142135623730951},"207":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"257":{"tf":1.0},"26":{"tf":1.4142135623730951},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"217":{"tf":1.0},"262":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"267":{"tf":1.0},"268":{"tf":1.7320508075688772}}}}}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"16":{"tf":1.0}},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"k":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"1":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"6":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"3":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":1.0}}},"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"213":{"tf":1.4142135623730951},"249":{"tf":1.0}}}}}}},"k":{"df":3,"docs":{"136":{"tf":1.0},"159":{"tf":1.0},"269":{"tf":1.0}}},"l":{"d":{"df":4,"docs":{"188":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"c":{"df":6,"docs":{"126":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"271":{"tf":1.0}}},"df":17,"docs":{"133":{"tf":1.0},"155":{"tf":1.0},"165":{"tf":1.0},"174":{"tf":1.0},"181":{"tf":1.0},"200":{"tf":1.0},"204":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"225":{"tf":1.0},"238":{"tf":1.0},"251":{"tf":1.0},"259":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"277":{"tf":1.0}},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"p":{"df":2,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":3,"docs":{"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.0}}}},"df":8,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"250":{"tf":1.0},"264":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":2.449489742783178}}}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"30":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"259":{"tf":1.0},"264":{"tf":2.23606797749979},"30":{"tf":1.0}}}}}}}},"r":{"df":15,"docs":{"121":{"tf":1.0},"141":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"192":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":24,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"16":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.4142135623730951},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"r":{"'":{"df":1,"docs":{"207":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"123":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"159":{"tf":1.0},"272":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"2":{"tf":1.0}}},"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":6,"docs":{"169":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"df":9,"docs":{"118":{"tf":1.0},"127":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"34":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"126":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":33,"docs":{"112":{"tf":1.4142135623730951},"128":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.4142135623730951},"138":{"tf":1.0},"158":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"207":{"tf":1.4142135623730951},"223":{"tf":1.4142135623730951},"224":{"tf":1.0},"226":{"tf":1.7320508075688772},"232":{"tf":1.4142135623730951},"233":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"264":{"tf":2.6457513110645907},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"163":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"192":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"f":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"126":{"tf":1.4142135623730951},"128":{"tf":1.0},"257":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"190":{"tf":1.0},"272":{"tf":1.0}}}}}}}}},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}}}},"p":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":14,"docs":{"108":{"tf":1.0},"112":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.4142135623730951},"53":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"z":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"s":{"/":{"b":{"c":{"c":{"/":{"_":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}},"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":13,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"181":{"tf":1.4142135623730951}}},"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"162":{"tf":1.4142135623730951}}}},"df":26,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0},"117":{"tf":1.0},"122":{"tf":1.0},"126":{"tf":2.449489742783178},"13":{"tf":1.0},"162":{"tf":1.0},"181":{"tf":1.4142135623730951},"196":{"tf":2.449489742783178},"21":{"tf":1.0},"217":{"tf":2.23606797749979},"218":{"tf":1.7320508075688772},"25":{"tf":1.0},"264":{"tf":1.4142135623730951},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"d":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}},"df":2,"docs":{"163":{"tf":1.0},"232":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":18,"docs":{"137":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0},"284":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"200":{"tf":1.0}}}}},"t":{"df":5,"docs":{"129":{"tf":1.0},"141":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"267":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"187":{"tf":1.0},"197":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"243":{"tf":1.0},"253":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"260":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":1,"docs":{"174":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"h":{":":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"~":{"/":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"208":{"tf":1.0}}}}},"df":0,"docs":{}}},"[":{"1":{"2":{"8":{"]":{"=":{"df":0,"docs":{},"{":{"0":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"136":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"256":{"tf":1.0},"264":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"282":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"260":{"tf":1.0},"264":{"tf":1.0}}}}}},"df":5,"docs":{"217":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"52":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":2.0}}}},"r":{"df":10,"docs":{"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"174":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"236":{"tf":1.0},"242":{"tf":1.0},"265":{"tf":1.4142135623730951}},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"b":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"250":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"(":{"0":{"df":0,"docs":{},"x":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"d":{"9":{"6":{"8":{"2":{"1":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"265":{"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":1,"docs":{"265":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"226":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"_":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":2.23606797749979}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"161":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"162":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"162":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":4,"docs":{"128":{"tf":1.0},"133":{"tf":1.0},"161":{"tf":1.4142135623730951},"164":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":2.0}}}}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":1.4142135623730951},"160":{"tf":1.0},"174":{"tf":1.4142135623730951},"227":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"39":{"tf":2.23606797749979},"40":{"tf":2.0},"41":{"tf":1.7320508075688772},"42":{"tf":1.7320508075688772},"44":{"tf":1.4142135623730951},"45":{"tf":1.0},"46":{"tf":1.0},"83":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"174":{"tf":1.0},"194":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.4142135623730951}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"l":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}}}},"i":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.7320508075688772}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":2.23606797749979},"31":{"tf":1.0}}}}}}},"df":9,"docs":{"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.7320508075688772}},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979}},"p":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":42,"docs":{"142":{"tf":1.0},"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":2.449489742783178},"208":{"tf":1.0},"215":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":3.3166247903554},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.4142135623730951},"249":{"tf":2.0},"26":{"tf":3.4641016151377544},"260":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":2.6457513110645907},"271":{"tf":2.0},"272":{"tf":1.0},"275":{"tf":2.8284271247461903},"28":{"tf":2.0},"280":{"tf":2.0},"283":{"tf":2.23606797749979},"284":{"tf":1.4142135623730951},"29":{"tf":2.0},"30":{"tf":2.23606797749979},"31":{"tf":1.4142135623730951},"34":{"tf":2.23606797749979},"37":{"tf":3.605551275463989},"41":{"tf":2.0},"46":{"tf":2.6457513110645907},"47":{"tf":1.0},"52":{"tf":4.242640687119285},"63":{"tf":3.7416573867739413},"71":{"tf":1.0},"79":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0},"94":{"tf":1.0}},"n":{"df":1,"docs":{"155":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"150":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.0}}},"n":{"df":4,"docs":{"169":{"tf":2.0},"181":{"tf":1.0},"259":{"tf":1.7320508075688772},"260":{"tf":1.0}},"g":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":5,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"213":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"285":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"137":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"165":{"tf":1.0},"170":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"274":{"tf":2.0}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":5,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.0},"242":{"tf":1.0},"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.4142135623730951},"199":{"tf":1.0},"244":{"tf":2.0},"245":{"tf":1.0}},"u":{"df":0,"docs":{},"l":{"df":5,"docs":{"149":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"122":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"256":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"263":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"277":{"tf":1.4142135623730951}},"p":{"c":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":5,"docs":{"260":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":4,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"207":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"137":{"tf":1.0},"265":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0}}}},"i":{"df":0,"docs":{},"x":{"df":9,"docs":{"120":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"142":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"251":{"tf":1.0},"277":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"147":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"s":{"df":1,"docs":{"79":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":4,"docs":{"137":{"tf":2.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"52":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":8,"docs":{"190":{"tf":1.0},"191":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"272":{"tf":1.0},"281":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"%":{"1":{"0":{"d":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"9":{"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"250":{"tf":1.0}}},"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"247":{"tf":1.0},"248":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"[":{"%":{"5":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"251":{"tf":1.0}}},"r":{"a":{"c":{"df":3,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":2,"docs":{"232":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"242":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"241":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"240":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":28,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.7320508075688772},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"259":{"tf":1.0},"264":{"tf":3.3166247903554},"265":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"280":{"tf":2.0},"282":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}},"f":{"(":{"\"":{"%":{"8":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"260":{"tf":1.0},"269":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"273":{"tf":1.0},"276":{"tf":1.0},"278":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"111":{"tf":1.0}}},"y":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"37":{"tf":1.0}}},"y":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":13,"docs":{"126":{"tf":2.0},"128":{"tf":1.4142135623730951},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":2.23606797749979},"140":{"tf":1.0},"141":{"tf":2.0},"208":{"tf":1.4142135623730951},"215":{"tf":2.0},"250":{"tf":1.0},"271":{"tf":1.4142135623730951},"283":{"tf":2.0}}},"l":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"c":{"/":{"1":{"5":{"6":{"5":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"/":{"<":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"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":{},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"6":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"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":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"126":{"tf":1.0},"147":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"196":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.7320508075688772},"282":{"tf":1.0},"29":{"tf":2.0},"30":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":2.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"264":{"tf":2.23606797749979}}}}},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{".":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"195":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"[":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"120":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}},"r":{"a":{"df":0,"docs":{},"m":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":59,"docs":{"112":{"tf":1.0},"117":{"tf":2.8284271247461903},"118":{"tf":1.7320508075688772},"122":{"tf":1.0},"124":{"tf":2.0},"126":{"tf":3.0},"128":{"tf":1.0},"129":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":2.23606797749979},"144":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.7320508075688772},"178":{"tf":2.0},"186":{"tf":1.0},"195":{"tf":1.7320508075688772},"200":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"218":{"tf":2.6457513110645907},"219":{"tf":1.4142135623730951},"225":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"254":{"tf":2.8284271247461903},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.7320508075688772},"270":{"tf":1.7320508075688772},"271":{"tf":2.23606797749979},"272":{"tf":1.4142135623730951},"273":{"tf":1.4142135623730951},"274":{"tf":2.23606797749979},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":2.23606797749979},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":3,"docs":{"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"80":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"265":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"128":{"tf":1.0},"254":{"tf":2.449489742783178}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"284":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":19,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"151":{"tf":1.0},"161":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"213":{"tf":1.4142135623730951},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"239":{"tf":1.0},"246":{"tf":1.0},"256":{"tf":1.0},"265":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":1,"docs":{"47":{"tf":1.0}},"e":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"o":{"df":1,"docs":{"152":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":22,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"149":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"193":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"1":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"134":{"tf":1.0},"282":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"132":{"tf":1.4142135623730951},"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"259":{"tf":1.0}}},"r":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"127":{"tf":1.0},"136":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":5,"docs":{"128":{"tf":1.0},"160":{"tf":1.7320508075688772},"163":{"tf":1.7320508075688772},"197":{"tf":1.0},"243":{"tf":1.7320508075688772}}}}},"w":{"d":{"`":{"/":{":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"y":{"df":1,"docs":{"264":{"tf":1.0}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"2":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{".":{"6":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":32,"docs":{"128":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"205":{"tf":1.4142135623730951},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"246":{"tf":1.4142135623730951},"267":{"tf":2.0},"268":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":2.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"286":{"tf":1.0}}}}}}}},"q":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"217":{"tf":1.7320508075688772}},"e":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"275":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":13,"docs":{"120":{"tf":1.0},"150":{"tf":1.0},"181":{"tf":2.0},"184":{"tf":1.0},"185":{"tf":2.0},"196":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"264":{"tf":1.7320508075688772}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"243":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"i":{"c":{"df":2,"docs":{"66":{"tf":1.0},"75":{"tf":1.0}},"k":{"df":8,"docs":{"159":{"tf":1.0},"262":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"272":{"tf":1.4142135623730951},"66":{"tf":1.0},"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"272":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}}}},"r":{"0":{"df":1,"docs":{"253":{"tf":1.0}}},"1":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}},"8":{"df":1,"docs":{"253":{"tf":1.0}}},":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":4,"docs":{"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0}}}},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"150":{"tf":1.0},"152":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"150":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"150":{"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":{},"g":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"(":{"0":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"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":2,"docs":{"236":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"137":{"tf":1.0},"216":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"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":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"137":{"tf":2.0},"216":{"tf":1.4142135623730951},"217":{"tf":1.0}}}},"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"157":{"tf":1.4142135623730951}},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"274":{"tf":1.4142135623730951}},"e":{"a":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":18,"docs":{"134":{"tf":1.0},"136":{"tf":1.4142135623730951},"144":{"tf":1.0},"153":{"tf":1.4142135623730951},"217":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"231":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"269":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.4142135623730951},"279":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"34":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"215":{"tf":1.0}}}},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"32":{"tf":2.0},"33":{"tf":1.0},"34":{"tf":2.8284271247461903},"35":{"tf":2.23606797749979}}}}},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"285":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"271":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":1,"docs":{"280":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":5,"docs":{"188":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"r":{"d":{"df":5,"docs":{"272":{"tf":1.0},"273":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"v":{"df":1,"docs":{"217":{"tf":2.0}}}},"d":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"85":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"122":{"tf":1.0},"181":{"tf":1.0},"186":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"c":{"df":1,"docs":{"229":{"tf":1.0}}},"df":0,"docs":{}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"246":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":135,"docs":{"120":{"tf":2.449489742783178},"126":{"tf":1.0},"127":{"tf":2.0},"128":{"tf":1.0},"129":{"tf":1.0},"130":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"143":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"156":{"tf":1.0},"157":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.4142135623730951},"204":{"tf":1.0},"205":{"tf":1.0},"206":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"223":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0},"255":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.0},"263":{"tf":1.0},"271":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"207":{"tf":1.4142135623730951},"274":{"tf":1.0},"277":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"213":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}}},"df":1,"docs":{"213":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"133":{"tf":1.0},"283":{"tf":1.0}}}},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"254":{"tf":1.0}}}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"138":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"v":{"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"264":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":3,"docs":{"180":{"tf":1.0},"181":{"tf":1.0},"265":{"tf":1.0}}}}}},"q":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.7320508075688772}}}}}}},"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":2.449489742783178},"277":{"tf":2.0}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":7,"docs":{"127":{"tf":1.0},"170":{"tf":2.0},"175":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":3.0},"277":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"r":{"df":13,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"141":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"203":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":6,"docs":{"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"34":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":2,"docs":{"269":{"tf":1.0},"277":{"tf":1.0}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"192":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.0},"259":{"tf":1.4142135623730951},"79":{"tf":1.0}}}}}},"t":{"df":9,"docs":{"132":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"23":{"tf":2.23606797749979},"26":{"tf":2.23606797749979},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"34":{"tf":2.23606797749979},"37":{"tf":3.4641016151377544}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"116":{"tf":1.0},"122":{"tf":1.0},"124":{"tf":1.0},"150":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"0":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":92,"docs":{"111":{"tf":2.0},"126":{"tf":1.0},"132":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.7320508075688772},"136":{"tf":1.0},"140":{"tf":1.4142135623730951},"141":{"tf":2.6457513110645907},"142":{"tf":1.4142135623730951},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.4142135623730951},"157":{"tf":1.7320508075688772},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.7320508075688772},"174":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":2.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"211":{"tf":2.449489742783178},"212":{"tf":1.0},"214":{"tf":2.23606797749979},"225":{"tf":1.0},"228":{"tf":1.0},"23":{"tf":1.4142135623730951},"231":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"244":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"259":{"tf":1.0},"26":{"tf":1.4142135623730951},"265":{"tf":2.23606797749979},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979},"41":{"tf":1.0},"46":{"tf":1.7320508075688772},"52":{"tf":3.4641016151377544},"58":{"tf":3.605551275463989},"63":{"tf":3.0},"69":{"tf":2.8284271247461903},"78":{"tf":2.8284271247461903},"82":{"tf":2.0},"83":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"41":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"195":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"120":{"tf":1.0}}}}}}}}},"v":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"248":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"204":{"tf":2.0},"253":{"tf":1.0},"274":{"tf":1.0},"276":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"251":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"229":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"228":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"167":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"167":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"164":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.4142135623730951},"166":{"tf":1.0},"167":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"165":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"166":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"120":{"tf":1.0},"163":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.4142135623730951},"45":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"解":{"df":0,"docs":{},"决":{"df":0,"docs":{},"了":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":18,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"275":{"tf":1.0},"43":{"tf":1.7320508075688772},"44":{"tf":2.0},"45":{"tf":1.0},"46":{"tf":1.7320508075688772},"47":{"tf":1.0},"48":{"tf":1.4142135623730951}}}},"s":{"c":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"m":{"df":3,"docs":{"23":{"tf":2.449489742783178},"259":{"tf":1.0},"26":{"tf":2.449489742783178}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"df":0,"docs":{},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}}}}}},"df":2,"docs":{"117":{"tf":1.0},"282":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"s":{"df":1,"docs":{"11":{"tf":1.0}}},"u":{"df":0,"docs":{},"n":{"df":30,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"126":{"tf":1.0},"150":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":2.0},"257":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":2.0},"261":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"47":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"79":{"tf":1.4142135623730951}},"e":{"df":7,"docs":{"17":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"63":{"tf":1.0}}},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"53":{"tf":1.0}}}}},"df":0,"docs":{}},"df":5,"docs":{"264":{"tf":2.0},"50":{"tf":2.0},"51":{"tf":1.7320508075688772},"52":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"3":{"2":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"6":{"4":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"/":{".":{"\\":{"df":0,"docs":{},"{":{"2":{"\\":{"df":0,"docs":{},"}":{"/":{"&":{"\\":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"g":{"df":1,"docs":{"260":{"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":{}},"1":{"df":1,"docs":{"112":{"tf":2.0}}},"3":{"2":{"df":1,"docs":{"137":{"tf":1.0}}},"9":{"0":{"df":2,"docs":{"116":{"tf":1.0},"204":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{")":{"(":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"153":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"144":{"tf":1.0},"153":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"239":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"142":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0}}}}},"r":{"df":1,"docs":{"263":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"a":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"193":{"tf":1.0},"284":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"250":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"161":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":15,"docs":{"159":{"tf":1.0},"233":{"tf":1.4142135623730951},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"253":{"tf":1.0},"26":{"tf":1.0},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":93,"docs":{"127":{"tf":1.0},"133":{"tf":1.4142135623730951},"136":{"tf":1.4142135623730951},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"159":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"208":{"tf":1.4142135623730951},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"214":{"tf":1.4142135623730951},"215":{"tf":1.4142135623730951},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"227":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"235":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951},"250":{"tf":1.4142135623730951},"251":{"tf":1.4142135623730951},"265":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"(":{"\"":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":12,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"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":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}},".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"2":{"6":{"7":{"5":{"2":{"2":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"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":6,"docs":{"17":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.7320508075688772},"35":{"tf":1.0},"37":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":10,"docs":{"134":{"tf":1.0},"159":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"=":{"\"":{"b":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":11,"docs":{"129":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"226":{"tf":1.0},"252":{"tf":1.0},"34":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"141":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"d":{"df":2,"docs":{"260":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":22,"docs":{"112":{"tf":1.0},"117":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"203":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.4142135623730951},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"280":{"tf":1.0},"285":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"m":{"df":1,"docs":{"265":{"tf":1.0}}},"n":{"df":1,"docs":{"155":{"tf":1.0}}}},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"f":{".":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"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":{}}},"n":{"d":{"df":6,"docs":{"127":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":5,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"196":{"tf":1.7320508075688772},"37":{"tf":2.449489742783178}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"141":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"279":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"142":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"274":{"tf":1.0}}},"v":{"df":1,"docs":{"85":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"t":{"df":14,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.0},"154":{"tf":1.0},"203":{"tf":1.0},"204":{"tf":1.7320508075688772},"213":{"tf":1.0},"225":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"53":{"tf":2.449489742783178}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"163":{"tf":1.0}}}}}},"f":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":5,"docs":{"159":{"tf":1.0},"163":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}},"df":2,"docs":{"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"259":{"tf":2.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":3,"docs":{"264":{"tf":1.0},"269":{"tf":1.0},"280":{"tf":1.0}}}},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"249":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"249":{"tf":1.0}}}}}}}}},"df":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"n":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"121":{"tf":1.4142135623730951},"188":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":2.449489742783178}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":2.449489742783178}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"264":{"tf":1.0}},"e":{"d":{":":{"0":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}},"1":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":1,"docs":{"37":{"tf":1.4142135623730951}}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"126":{"tf":1.0},"192":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":4,"docs":{"159":{"tf":1.0},"253":{"tf":1.0},"269":{"tf":1.0},"53":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"159":{"tf":1.0}}}},"i":{"df":1,"docs":{"141":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"165":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":95,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"x":{"df":1,"docs":{"269":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"136":{"tf":1.0}}}}},"z":{"df":0,"docs":{},"e":{":":{"1":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"=":{"1":{"0":{"2":{"4":{"0":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"172":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"149":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":23,"docs":{"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":2.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":2.0},"155":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.0},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.23606797749979},"275":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"*":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":4,"docs":{"37":{"tf":1.0},"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}},"u":{"3":{"2":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"k":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"202":{"tf":1.4142135623730951}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"201":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"df":3,"docs":{"117":{"tf":1.0},"161":{"tf":1.0},"202":{"tf":1.7320508075688772}},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":4,"docs":{"131":{"tf":1.4142135623730951},"69":{"tf":3.3166247903554},"78":{"tf":3.3166247903554},"82":{"tf":2.6457513110645907}},"h":{"df":1,"docs":{"186":{"tf":1.0}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"157":{"tf":1.0}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"0":{".":{"0":{"1":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"236":{"tf":1.0}}},"9":{"9":{"9":{"9":{"9":{"9":{"9":{"9":{"df":2,"docs":{"277":{"tf":1.0},"282":{"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":{}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"(":{"1":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"257":{"tf":1.0},"284":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":2.0},"58":{"tf":2.0}},"s":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"w":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"267":{"tf":1.0},"274":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"o":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}}}}}},"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}},"k":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"186":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":5,"docs":{"118":{"tf":1.4142135623730951},"131":{"tf":1.4142135623730951},"186":{"tf":1.0},"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"161":{"tf":1.0}}}}}}},"df":13,"docs":{"117":{"tf":2.6457513110645907},"118":{"tf":2.449489742783178},"120":{"tf":2.0},"126":{"tf":1.0},"142":{"tf":1.0},"181":{"tf":1.7320508075688772},"186":{"tf":1.0},"196":{"tf":1.0},"200":{"tf":1.7320508075688772},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"217":{"tf":1.0},"246":{"tf":1.0}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"200":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":6,"docs":{"55":{"tf":1.7320508075688772},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"261":{"tf":1.0},"265":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"112":{"tf":1.0},"127":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":5,"docs":{"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"233":{"tf":1.4142135623730951}},"e":{"d":{"(":{"b":{"[":{"'":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"'":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"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":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":13,"docs":{"117":{"tf":1.0},"123":{"tf":1.0},"127":{"tf":1.0},"128":{"tf":1.0},"157":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.4142135623730951},"252":{"tf":1.0},"256":{"tf":2.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"279":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":23,"docs":{"126":{"tf":2.0},"144":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.4142135623730951},"167":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.0},"277":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"c":{"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"x":{"df":6,"docs":{"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":8,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"203":{"tf":1.4142135623730951},"258":{"tf":2.0},"259":{"tf":1.0},"260":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":2,"docs":{"126":{"tf":1.0},"265":{"tf":1.0}},"i":{"df":22,"docs":{"121":{"tf":1.0},"131":{"tf":1.4142135623730951},"133":{"tf":1.0},"138":{"tf":1.4142135623730951},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"186":{"tf":1.0},"192":{"tf":1.0},"203":{"tf":2.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"272":{"tf":1.0},"34":{"tf":1.7320508075688772},"63":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"207":{"tf":1.0},"279":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"c":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"207":{"tf":1.0}}}}}}},"df":5,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}},"s":{"df":1,"docs":{"217":{"tf":1.0}},"h":{"d":{"df":3,"docs":{"112":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951}}},"df":2,"docs":{"264":{"tf":1.0},"71":{"tf":1.4142135623730951}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":21,"docs":{"120":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"173":{"tf":2.0},"184":{"tf":2.0},"185":{"tf":1.0},"193":{"tf":1.7320508075688772},"195":{"tf":1.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"218":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":2.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"256":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":1,"docs":{"215":{"tf":1.0}}},"r":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":2.0}}}},"df":20,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"146":{"tf":1.0},"163":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"272":{"tf":2.0},"274":{"tf":1.0},"275":{"tf":2.23606797749979},"284":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"136":{"tf":1.0},"208":{"tf":1.0},"271":{"tf":1.0},"283":{"tf":1.0},"37":{"tf":1.4142135623730951},"52":{"tf":2.0},"58":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"163":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"274":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"146":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":2.23606797749979}}}},"df":0,"docs":{},"e":{"df":9,"docs":{"132":{"tf":1.0},"168":{"tf":1.0},"173":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"251":{"tf":1.0},"34":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"134":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"207":{"tf":1.0},"224":{"tf":1.0},"233":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"282":{"tf":2.23606797749979},"283":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":2.449489742783178}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":48,"docs":{"111":{"tf":1.7320508075688772},"118":{"tf":1.0},"120":{"tf":1.0},"131":{"tf":2.23606797749979},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"135":{"tf":1.0},"137":{"tf":2.8284271247461903},"138":{"tf":1.0},"142":{"tf":1.4142135623730951},"150":{"tf":2.0},"155":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"163":{"tf":1.7320508075688772},"165":{"tf":1.4142135623730951},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":2.0},"193":{"tf":1.0},"212":{"tf":1.7320508075688772},"23":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.4142135623730951},"274":{"tf":3.4641016151377544},"275":{"tf":2.449489742783178},"277":{"tf":1.7320508075688772},"282":{"tf":1.7320508075688772},"284":{"tf":2.0},"37":{"tf":2.23606797749979},"38":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"42":{"tf":1.0},"46":{"tf":2.23606797749979},"52":{"tf":3.872983346207417},"58":{"tf":4.0},"63":{"tf":3.0},"69":{"tf":3.1622776601683795},"78":{"tf":3.1622776601683795},"83":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"u":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"285":{"tf":2.0}}}},"df":0,"docs":{}}},"u":{"b":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"63":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"238":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":6,"docs":{"141":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0}},"s":{"df":0,"docs":{},"s":{"df":18,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"112":{"tf":1.0},"196":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.0},"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"o":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"260":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.7320508075688772},"59":{"tf":1.0},"63":{"tf":1.0},"70":{"tf":1.0},"79":{"tf":1.4142135623730951},"84":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"163":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"i":{"df":3,"docs":{"226":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"163":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":2.8284271247461903}}}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":3,"docs":{"155":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":19,"docs":{"115":{"tf":1.4142135623730951},"116":{"tf":1.0},"117":{"tf":2.0},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.7320508075688772},"123":{"tf":1.0},"124":{"tf":1.0},"126":{"tf":2.6457513110645907},"136":{"tf":1.0},"142":{"tf":1.7320508075688772},"163":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":2.23606797749979},"224":{"tf":1.0},"225":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"219":{"tf":1.0}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"c":{"/":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"246":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"m":{"=":{"\"":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":1,"docs":{"213":{"tf":1.0}}}}},"r":{"df":1,"docs":{"213":{"tf":1.0}},"e":{"=":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"126":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.0},"249":{"tf":1.7320508075688772},"265":{"tf":1.0}}}}},"df":3,"docs":{"128":{"tf":1.0},"213":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951}}},"n":{"+":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}}},"c":{"'":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}},";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"273":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"276":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":3,"docs":{"270":{"tf":1.0},"272":{"tf":2.449489742783178},"273":{"tf":1.0}},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"272":{"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":{},"过":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":6,"docs":{"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}},"t":{"a":{"df":0,"docs":{},"x":{"df":105,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.4142135623730951},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"[":{"1":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"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":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":2,"docs":{"169":{"tf":1.0},"181":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}},"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":{}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":14,"docs":{"112":{"tf":1.7320508075688772},"159":{"tf":1.0},"17":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"269":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"39":{"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":{},"f":{"df":0,"docs":{},"|":{"df":0,"docs":{},"l":{"]":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"210":{"tf":1.0},"251":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"29":{"tf":1.0},"31":{"tf":1.0}}}},"df":1,"docs":{"31":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"270":{"tf":2.23606797749979}}},"df":0,"docs":{}}}}},"a":{"d":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":11,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"126":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"251":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":2.0},"29":{"tf":1.0},"30":{"tf":1.0}},"l":{"_":{"_":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"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":{},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"d":{"df":3,"docs":{"259":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":13,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"138":{"tf":2.0},"146":{"tf":1.0},"17":{"tf":1.4142135623730951},"174":{"tf":1.0},"238":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0}}}}}}}},"t":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":31,"docs":{"117":{"tf":1.0},"119":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"186":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"230":{"tf":1.4142135623730951},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}},"e":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":3,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"238":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"239":{"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":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"232":{"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":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"242":{"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":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"245":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"244":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"241":{"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":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"240":{"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":{}}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"243":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"234":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"117":{"tf":1.0},"157":{"tf":1.0},"274":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.4142135623730951}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":4,"docs":{"117":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.0},"263":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":4,"docs":{"141":{"tf":1.4142135623730951},"169":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0}},"n":{"df":1,"docs":{"267":{"tf":1.0}}}}},"p":{"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"g":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"m":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"n":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"52":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":6,"docs":{"133":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.0},"264":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":8,"docs":{"149":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"*":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"41":{"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":8,"docs":{"137":{"tf":2.449489742783178},"142":{"tf":1.0},"150":{"tf":2.0},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":2.6457513110645907},"63":{"tf":2.0}}}},"df":0,"docs":{}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":14,"docs":{"120":{"tf":1.0},"142":{"tf":3.0},"150":{"tf":1.0},"155":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0},"83":{"tf":1.4142135623730951}}}}},"c":{"'":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":2.23606797749979}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"df":7,"docs":{"110":{"tf":1.7320508075688772},"111":{"tf":2.23606797749979},"112":{"tf":1.4142135623730951},"113":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"219":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"p":{",":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"/":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":1,"docs":{"83":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"253":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"259":{"tf":1.0},"264":{"tf":2.0}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":14,"docs":{"67":{"tf":1.7320508075688772},"68":{"tf":1.0},"70":{"tf":1.7320508075688772},"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"75":{"tf":1.0},"76":{"tf":2.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.0},"79":{"tf":1.4142135623730951},"80":{"tf":1.4142135623730951},"81":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"df":29,"docs":{"126":{"tf":1.0},"264":{"tf":2.23606797749979},"65":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951},"68":{"tf":2.0},"69":{"tf":2.0},"70":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.4142135623730951},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"75":{"tf":1.4142135623730951},"76":{"tf":1.4142135623730951},"77":{"tf":2.0},"78":{"tf":2.0},"79":{"tf":1.0},"80":{"tf":1.4142135623730951},"81":{"tf":1.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0},"86":{"tf":1.0},"87":{"tf":1.7320508075688772},"88":{"tf":1.4142135623730951},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"t":{"df":5,"docs":{"87":{"tf":1.7320508075688772},"88":{"tf":1.4142135623730951},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"82":{"tf":1.0},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":5,"docs":{"150":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.7320508075688772},"274":{"tf":1.0},"83":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.0},"265":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"26":{"tf":2.0}},"e":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":21,"docs":{"117":{"tf":1.0},"141":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0},"270":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"174":{"tf":1.0},"207":{"tf":1.0},"269":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"d":{"df":11,"docs":{"137":{"tf":2.23606797749979},"142":{"tf":1.0},"147":{"tf":1.0},"155":{"tf":1.0},"275":{"tf":1.4142135623730951},"41":{"tf":2.0},"46":{"tf":1.0},"52":{"tf":2.449489742783178},"63":{"tf":1.4142135623730951},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"163":{"tf":1.0}}}},"t":{"'":{"df":2,"docs":{"257":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"204":{"tf":1.0}}}}},"’":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":11,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"k":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"d":{"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"126":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"238":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":7,"docs":{"147":{"tf":1.4142135623730951},"150":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":2,"docs":{"265":{"tf":1.0},"272":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"144":{"tf":1.0},"153":{"tf":1.0},"284":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"u":{"df":1,"docs":{"280":{"tf":1.0}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":4,"docs":{"265":{"tf":2.23606797749979},"37":{"tf":2.449489742783178},"46":{"tf":2.0},"63":{"tf":2.0}}},"df":1,"docs":{"122":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":6,"docs":{"264":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0}}},".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"1":{"df":1,"docs":{"235":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"%":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"235":{"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":{"275":{"tf":1.4142135623730951}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":22,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"146":{"tf":1.0},"150":{"tf":1.0},"169":{"tf":1.0},"174":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"246":{"tf":1.0},"264":{"tf":3.1622776601683795},"271":{"tf":1.0},"272":{"tf":2.8284271247461903},"274":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"63":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":4,"docs":{"170":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.7320508075688772},"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"m":{"df":1,"docs":{"83":{"tf":2.0}},"p":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"o":{"df":16,"docs":{"101":{"tf":1.0},"102":{"tf":1.0},"103":{"tf":1.0},"105":{"tf":1.0},"106":{"tf":1.0},"107":{"tf":1.0},"109":{"tf":1.0},"113":{"tf":1.0},"63":{"tf":1.0},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0},"95":{"tf":1.0},"96":{"tf":1.0},"97":{"tf":1.0},"99":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"140":{"tf":1.0},"207":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"l":{"df":72,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"258":{"tf":1.0},"259":{"tf":2.0},"260":{"tf":1.0},"261":{"tf":1.7320508075688772},"264":{"tf":3.0},"265":{"tf":2.449489742783178},"267":{"tf":1.4142135623730951},"271":{"tf":1.0},"277":{"tf":1.0},"285":{"tf":1.7320508075688772},"50":{"tf":1.4142135623730951},"54":{"tf":1.0},"56":{"tf":1.0}},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"86":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":1,"docs":{"142":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"p":{"df":2,"docs":{"230":{"tf":1.0},"263":{"tf":1.0}}},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":3.0}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"128":{"tf":1.0},"225":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":5,"docs":{"159":{"tf":1.4142135623730951},"17":{"tf":1.0},"224":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"128":{"tf":1.0},"224":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"271":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":34,"docs":{"11":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"124":{"tf":2.23606797749979},"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.0},"173":{"tf":2.0},"193":{"tf":1.4142135623730951},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":3.1622776601683795},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"270":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.0},"285":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"100":{"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":{}},"_":{"_":{"<":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{">":{"_":{"_":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"tf":1.4142135623730951}}},"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":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}},"df":2,"docs":{"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"133":{"tf":1.0},"212":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":22,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"126":{"tf":2.449489742783178},"128":{"tf":1.7320508075688772},"133":{"tf":3.3166247903554},"136":{"tf":1.0},"137":{"tf":2.23606797749979},"138":{"tf":1.4142135623730951},"17":{"tf":1.0},"19":{"tf":1.4142135623730951},"212":{"tf":2.449489742783178},"216":{"tf":2.0},"265":{"tf":1.4142135623730951},"280":{"tf":2.0},"281":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0},"94":{"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":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}},"r":{"df":1,"docs":{"126":{"tf":1.4142135623730951}}}},"k":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"118":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0}}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":5,"docs":{"117":{"tf":1.0},"121":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"142":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"269":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"137":{"tf":1.0},"157":{"tf":1.0}}}},"i":{"df":13,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"251":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"e":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.7320508075688772}}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"251":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"261":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":6,"docs":{"225":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"265":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"[":{"3":{"2":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":18,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":3.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":2.0},"83":{"tf":1.0}},"p":{"df":5,"docs":{"272":{"tf":2.23606797749979},"274":{"tf":2.0},"52":{"tf":2.0},"58":{"tf":2.0},"82":{"tf":1.7320508075688772}}}},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"204":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"127":{"tf":1.0},"267":{"tf":1.0}}},"df":0,"docs":{}}},"_":{"b":{"c":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"261":{"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":39,"docs":{"12":{"tf":1.0},"127":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":2.449489742783178},"262":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"266":{"tf":1.0},"267":{"tf":2.23606797749979},"268":{"tf":1.4142135623730951},"269":{"tf":1.0},"27":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"286":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"o":{"df":6,"docs":{"150":{"tf":1.0},"163":{"tf":1.7320508075688772},"232":{"tf":1.0},"239":{"tf":1.0},"267":{"tf":1.0},"274":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":30,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.7320508075688772},"120":{"tf":2.0},"124":{"tf":2.0},"126":{"tf":1.4142135623730951},"141":{"tf":1.0},"162":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.4142135623730951},"172":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"192":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"217":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"37":{"tf":1.0},"47":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"2":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}}}}},"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":{"6":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"3":{"2":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"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":{},"i":{"d":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"df":20,"docs":{"147":{"tf":1.0},"152":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"186":{"tf":2.0},"212":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"34":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.23606797749979},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":36,"docs":{"146":{"tf":1.4142135623730951},"147":{"tf":1.0},"148":{"tf":1.0},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":2.23606797749979},"63":{"tf":1.7320508075688772},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"[":{"+":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}},"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"h":{"df":7,"docs":{"212":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"d":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"p":{"df":2,"docs":{"66":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951}}}},"df":4,"docs":{"207":{"tf":1.4142135623730951},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.7320508075688772}},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":2,"docs":{"265":{"tf":2.0},"41":{"tf":2.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"6":{"4":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"161":{"tf":1.0},"162":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"133":{"tf":1.0},"252":{"tf":1.0},"254":{"tf":1.0},"264":{"tf":1.4142135623730951},"265":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"252":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"141":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":3,"docs":{"193":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":2,"docs":{"259":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"248":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":8,"docs":{"141":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"257":{"tf":1.0}}},"n":{"df":0,"docs":{},"k":{"df":7,"docs":{"21":{"tf":2.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":2.0},"26":{"tf":1.0},"27":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":8,"docs":{"141":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"229":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"228":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":10,"docs":{"121":{"tf":1.4142135623730951},"171":{"tf":1.0},"176":{"tf":1.0},"200":{"tf":1.0},"239":{"tf":1.4142135623730951},"257":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"126":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"264":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"b":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"126":{"tf":2.23606797749979},"128":{"tf":1.0},"134":{"tf":1.7320508075688772},"213":{"tf":1.4142135623730951},"265":{"tf":1.7320508075688772},"32":{"tf":2.0},"33":{"tf":1.7320508075688772},"34":{"tf":3.0},"35":{"tf":1.4142135623730951}},"e":{"_":{"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":1,"docs":{"265":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":4,"docs":{"128":{"tf":1.0},"135":{"tf":1.7320508075688772},"214":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"d":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"{":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"208":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"215":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"215":{"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":{}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"=":{"[":{"df":0,"docs":{},"u":{"df":3,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"283":{"tf":1.4142135623730951}},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"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":6,"docs":{"128":{"tf":1.4142135623730951},"136":{"tf":3.1622776601683795},"207":{"tf":1.0},"208":{"tf":2.23606797749979},"215":{"tf":1.7320508075688772},"283":{"tf":2.6457513110645907}}}},"df":68,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.7320508075688772},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"141":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.4142135623730951},"161":{"tf":1.0},"165":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"186":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.7320508075688772},"200":{"tf":1.0},"201":{"tf":2.0},"202":{"tf":2.0},"203":{"tf":1.4142135623730951},"204":{"tf":2.23606797749979},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"226":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"250":{"tf":1.4142135623730951},"251":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.4142135623730951},"259":{"tf":2.0},"261":{"tf":1.4142135623730951},"263":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":2.6457513110645907},"267":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.23606797749979},"275":{"tf":1.7320508075688772},"276":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.0}},"e":{"c":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772}}},"df":0,"docs":{},"r":{"df":30,"docs":{"120":{"tf":1.0},"126":{"tf":2.449489742783178},"136":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"166":{"tf":1.0},"204":{"tf":2.23606797749979},"208":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"267":{"tf":1.0},"275":{"tf":2.23606797749979},"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"121":{"tf":1.4142135623730951},"163":{"tf":1.4142135623730951},"167":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"z":{"df":0,"docs":{},"u":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"213":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"147":{"tf":1.0},"218":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"v":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":3,"docs":{"233":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"5":{".":{"3":{"df":1,"docs":{"181":{"tf":1.0}}},"6":{"df":4,"docs":{"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":8,"docs":{"187":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"282":{"tf":2.0},"284":{"tf":2.0}},"u":{"df":47,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"132":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"151":{"tf":1.0},"155":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.7320508075688772},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":2.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"251":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"272":{"tf":2.449489742783178},"277":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"53":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"225":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}}}}}}},"r":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":8,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"207":{"tf":1.0},"255":{"tf":1.4142135623730951},"271":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":2.449489742783178}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":1,"docs":{"251":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"267":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":17,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"116":{"tf":1.4142135623730951},"151":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"259":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}}}},"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"118":{"tf":1.4142135623730951},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":5,"docs":{"117":{"tf":1.0},"252":{"tf":1.0},"257":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":19,"docs":{"114":{"tf":1.7320508075688772},"115":{"tf":1.4142135623730951},"116":{"tf":1.4142135623730951},"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"119":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"128":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":2.449489742783178},"283":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}}}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"122":{"tf":1.0}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":3,"docs":{"211":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"a":{"df":20,"docs":{"126":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"169":{"tf":1.0},"193":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0}}},"c":{"7":{"df":0,"docs":{},"y":{"df":0,"docs":{},"g":{"df":0,"docs":{},"j":{"0":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"l":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{":":{"df":0,"docs":{},"~":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"117":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0}},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":1,"docs":{"126":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":11,"docs":{"111":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"i":{"d":{"df":25,"docs":{"111":{"tf":2.449489742783178},"134":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"195":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"63":{"tf":1.0},"83":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"29":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"225":{"tf":1.0},"264":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"l":{"df":0,"docs":{},"k":{"df":1,"docs":{"193":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"192":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.4142135623730951}}},"m":{"df":13,"docs":{"11":{"tf":1.7320508075688772},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"2":{"tf":2.23606797749979},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0}}}},"y":{"df":8,"docs":{"133":{"tf":1.0},"163":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0}}}},"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"124":{"tf":1.0},"264":{"tf":2.449489742783178},"274":{"tf":1.4142135623730951}},"e":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}},"r":{"df":5,"docs":{"127":{"tf":1.0},"246":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":2.23606797749979},"277":{"tf":1.0}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"258":{"tf":1.0},"264":{"tf":1.0}}}},"n":{"b":{"df":0,"docs":{},"o":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"141":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"280":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"181":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"259":{"tf":1.0}}}}},"x":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"/":{".":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":1,"docs":{"262":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"285":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"239":{"tf":1.0},"242":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"259":{"tf":1.0},"274":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"195":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":7,"docs":{"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"218":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"285":{"tf":1.0}}}}}}},"l":{"d":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":11,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.7320508075688772},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"269":{"tf":2.23606797749979},"271":{"tf":2.0},"284":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":9,"docs":{"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":5,"docs":{"122":{"tf":1.0},"17":{"tf":2.0},"264":{"tf":1.0},"270":{"tf":1.0},"278":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}}}}},"x":{"0":{"1":{"\\":{"df":0,"docs":{},"x":{"1":{"b":{"]":{"0":{";":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"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":{}},"7":{"\\":{"df":0,"docs":{},"x":{"0":{"2":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"6":{"_":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"p":{"_":{"a":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"218":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"b":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"d":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"196":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":9,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":2.23606797749979},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"218":{"tf":3.1622776601683795},"219":{"tf":1.0},"7":{"tf":1.0}}}},"df":3,"docs":{"16":{"tf":1.4142135623730951},"248":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"120":{"tf":1.0},"181":{"tf":1.0}}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"d":{"a":{"1":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"263":{"tf":1.0}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"260":{"tf":1.0},"274":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"df":1,"docs":{"136":{"tf":1.0}}},"v":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"79":{"tf":1.0}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":11,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"188":{"tf":1.4142135623730951},"249":{"tf":1.0},"272":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.7320508075688772}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"title":{"root":{"0":{"df":1,"docs":{"263":{"tf":1.0}}},"1":{"0":{"df":7,"docs":{"140":{"tf":1.0},"153":{"tf":1.0},"178":{"tf":1.0},"219":{"tf":1.0},"240":{"tf":1.0},"278":{"tf":1.0},"5":{"tf":1.0}}},"1":{"df":6,"docs":{"141":{"tf":1.0},"154":{"tf":1.0},"179":{"tf":1.0},"220":{"tf":1.0},"241":{"tf":1.0},"279":{"tf":1.0}}},"2":{"df":6,"docs":{"142":{"tf":1.0},"155":{"tf":1.0},"180":{"tf":1.0},"221":{"tf":1.0},"242":{"tf":1.0},"280":{"tf":1.0}}},"3":{"df":4,"docs":{"181":{"tf":1.0},"222":{"tf":1.0},"243":{"tf":1.0},"281":{"tf":1.0}}},"4":{"df":3,"docs":{"182":{"tf":1.0},"244":{"tf":1.0},"282":{"tf":1.0}}},"5":{"df":3,"docs":{"183":{"tf":1.0},"245":{"tf":1.0},"283":{"tf":1.0}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{"df":2,"docs":{"184":{"tf":1.0},"284":{"tf":1.0}}},"7":{"df":2,"docs":{"185":{"tf":1.0},"285":{"tf":1.0}}},"8":{"df":1,"docs":{"186":{"tf":1.0}}},"9":{"df":1,"docs":{"187":{"tf":1.0}}},"df":16,"docs":{"1":{"tf":1.0},"131":{"tf":1.0},"144":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"169":{"tf":1.0},"207":{"tf":1.0},"210":{"tf":1.0},"224":{"tf":1.0},"227":{"tf":1.0},"231":{"tf":1.0},"247":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.0},"264":{"tf":1.0},"269":{"tf":1.0}}},"2":{"0":{"df":1,"docs":{"188":{"tf":1.0}}},"1":{"df":1,"docs":{"189":{"tf":1.0}}},"2":{"df":1,"docs":{"190":{"tf":1.0}}},"3":{"df":1,"docs":{"191":{"tf":1.0}}},"4":{"df":1,"docs":{"192":{"tf":1.0}}},"5":{"df":1,"docs":{"193":{"tf":1.0}}},"6":{"df":1,"docs":{"194":{"tf":1.0}}},"7":{"df":1,"docs":{"195":{"tf":1.0}}},"8":{"df":1,"docs":{"196":{"tf":1.0}}},"9":{"df":1,"docs":{"197":{"tf":1.0}}},"df":15,"docs":{"132":{"tf":1.0},"145":{"tf":1.0},"160":{"tf":1.0},"170":{"tf":1.0},"208":{"tf":1.0},"211":{"tf":1.0},"225":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"248":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"265":{"tf":1.0},"270":{"tf":1.0},"3":{"tf":1.0}}},"3":{"0":{"df":1,"docs":{"198":{"tf":1.0}}},"1":{"df":1,"docs":{"199":{"tf":1.0}}},"2":{"df":1,"docs":{"200":{"tf":1.0}}},"3":{"df":1,"docs":{"201":{"tf":1.0}}},"4":{"df":1,"docs":{"202":{"tf":1.0}}},"df":10,"docs":{"133":{"tf":1.0},"146":{"tf":1.0},"161":{"tf":1.0},"171":{"tf":1.0},"212":{"tf":1.0},"229":{"tf":1.0},"233":{"tf":1.0},"249":{"tf":1.0},"271":{"tf":1.0},"6":{"tf":1.0}}},"4":{"df":8,"docs":{"134":{"tf":1.0},"147":{"tf":1.0},"162":{"tf":1.0},"172":{"tf":1.0},"213":{"tf":1.0},"234":{"tf":1.0},"250":{"tf":1.0},"272":{"tf":1.0}}},"5":{"df":9,"docs":{"135":{"tf":1.0},"148":{"tf":1.0},"163":{"tf":1.0},"173":{"tf":1.0},"214":{"tf":1.0},"235":{"tf":1.0},"251":{"tf":1.0},"273":{"tf":1.0},"4":{"tf":1.0}}},"6":{"df":7,"docs":{"136":{"tf":1.0},"149":{"tf":1.0},"164":{"tf":1.0},"174":{"tf":1.0},"215":{"tf":1.0},"236":{"tf":1.0},"274":{"tf":1.0}}},"7":{"df":7,"docs":{"137":{"tf":1.0},"150":{"tf":1.0},"165":{"tf":1.0},"175":{"tf":1.0},"216":{"tf":1.0},"237":{"tf":1.0},"275":{"tf":1.0}},"h":{"df":1,"docs":{"4":{"tf":1.0}}}},"8":{"df":7,"docs":{"138":{"tf":1.0},"151":{"tf":1.0},"166":{"tf":1.0},"176":{"tf":1.0},"217":{"tf":1.0},"238":{"tf":1.0},"276":{"tf":1.0}}},"9":{"df":7,"docs":{"139":{"tf":1.0},"152":{"tf":1.0},"167":{"tf":1.0},"177":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.0},"277":{"tf":1.0}}},"a":{".":{"df":0,"docs":{},"k":{".":{"a":{"df":1,"docs":{"119":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"121":{"tf":1.0},"226":{"tf":1.0},"230":{"tf":1.0}}}},"r":{"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":1,"docs":{"130":{"tf":1.0}}}}}}}},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"219":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"210":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"211":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"216":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"213":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"214":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"32":{"tf":1.0},"34":{"tf":1.0}}}}},"c":{"c":{"df":7,"docs":{"119":{"tf":1.0},"127":{"tf":1.0},"205":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"267":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"98":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":5,"docs":{"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"65":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"171":{"tf":1.0}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"179":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"149":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"147":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"150":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"155":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"152":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"170":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"k":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"146":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"df":1,"docs":{"151":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":1,"docs":{"177":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"157":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"176":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"160":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"145":{"tf":1.0}}}}}},"df":1,"docs":{"144":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"153":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"154":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"178":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"185":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"169":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":1,"docs":{"159":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":12,"docs":{"11":{"tf":1.0},"114":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":1.0},"129":{"tf":1.0},"142":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"207":{"tf":1.0},"252":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":1.0}}}},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0}}}}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"138":{"tf":1.0},"254":{"tf":1.0}}}}},"df":1,"docs":{"129":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"116":{"tf":1.0},"47":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"125":{"tf":1.0},"126":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"128":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"u":{"df":1,"docs":{"49":{"tf":1.0}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"143":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":2,"docs":{"156":{"tf":1.0},"223":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"220":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"221":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"222":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"267":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"256":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"278":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":2,"docs":{"274":{"tf":1.0},"281":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":41,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"101":{"tf":1.0},"104":{"tf":1.0},"107":{"tf":1.0},"110":{"tf":1.4142135623730951},"115":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.0},"3":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.4142135623730951},"36":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"43":{"tf":1.4142135623730951},"49":{"tf":1.0},"5":{"tf":1.0},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"65":{"tf":1.0},"69":{"tf":1.0},"7":{"tf":1.0},"73":{"tf":1.4142135623730951},"78":{"tf":1.0},"82":{"tf":1.0},"87":{"tf":1.4142135623730951},"89":{"tf":1.0},"9":{"tf":1.0},"92":{"tf":1.4142135623730951},"95":{"tf":1.0},"98":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"255":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"252":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":4,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"130":{"tf":1.0},"209":{"tf":1.0},"39":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"61":{"tf":1.0}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"43":{"tf":1.0},"46":{"tf":1.0}}}}}}}}}}},"f":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"114":{"tf":1.0},"117":{"tf":1.0},"125":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.0},"26":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"258":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0}}}}}},"x":{"df":1,"docs":{"281":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"254":{"tf":1.0}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"285":{"tf":1.0}}}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"251":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"231":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":1,"docs":{"9":{"tf":1.0}}},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"254":{"tf":1.0}}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"127":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":2,"docs":{"55":{"tf":1.0},"56":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"246":{"tf":1.0}}}}}}}},"i":{"/":{"df":0,"docs":{},"o":{"df":1,"docs":{"98":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"206":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"233":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"238":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"239":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"j":{"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"116":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"114":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.0}}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"139":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":4,"docs":{"131":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"140":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"132":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"247":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"248":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":17,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0}}}}}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"10":{"tf":1.0},"65":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"203":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"119":{"tf":1.0}}}},"u":{"df":0,"docs":{},"x":{"df":2,"docs":{"114":{"tf":1.0},"49":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"m":{"df":3,"docs":{"104":{"tf":1.0},"106":{"tf":1.0},"141":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"117":{"tf":1.0}}}},"p":{".":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"189":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"193":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"191":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"187":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"201":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"199":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"198":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"197":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"202":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"200":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"190":{"tf":1.0}}},"df":0,"docs":{}}}},"df":6,"docs":{"119":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"168":{"tf":1.0},"230":{"tf":1.0},"36":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"tf":1.0}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"92":{"tf":1.0}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":2,"docs":{"266":{"tf":1.0},"286":{"tf":1.0}}}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"o":{"b":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":3,"docs":{"262":{"tf":1.0},"265":{"tf":1.0},"268":{"tf":1.0}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"242":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"158":{"tf":1.0},"223":{"tf":1.0},"226":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"245":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"227":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"df":1,"docs":{"162":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"161":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":2,"docs":{"39":{"tf":1.0},"40":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"i":{"d":{"df":2,"docs":{"28":{"tf":1.0},"30":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"244":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"241":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"240":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"o":{"b":{"df":0,"docs":{},"e":{"df":2,"docs":{"136":{"tf":1.0},"141":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":4,"docs":{"118":{"tf":1.0},"124":{"tf":1.0},"17":{"tf":1.0},"254":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"254":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"243":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"205":{"tf":1.0},"267":{"tf":1.0}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"df":1,"docs":{"137":{"tf":1.0}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"32":{"tf":1.0},"34":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"127":{"tf":1.0}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"228":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"167":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"164":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"165":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"166":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"45":{"tf":1.0}}}}},"df":2,"docs":{"43":{"tf":1.0},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.0}},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"50":{"tf":1.0},"51":{"tf":1.0},"52":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"256":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"258":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"115":{"tf":1.0}}}}}}}},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"249":{"tf":1.0}}},"n":{"c":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"270":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"119":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"c":{"df":2,"docs":{"110":{"tf":1.0},"111":{"tf":1.0}},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"67":{"tf":1.0},"73":{"tf":1.0},"76":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":6,"docs":{"65":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0},"77":{"tf":1.0},"82":{"tf":1.0},"87":{"tf":1.0}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"87":{"tf":1.0}}}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":1.0}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"225":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"224":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"133":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"19":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"267":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":3,"docs":{"118":{"tf":1.0},"120":{"tf":1.0},"124":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"21":{"tf":1.0},"25":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":4,"docs":{"134":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"135":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"d":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"215":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"234":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"255":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"114":{"tf":1.0},"257":{"tf":1.0}}}}}}}},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":1,"docs":{"45":{"tf":1.0}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":1.0}}},"df":0,"docs":{}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}}}}},"lang":"English","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/searchindex.json b/searchindex.json new file mode 100644 index 0000000..22890c1 --- /dev/null +++ b/searchindex.json @@ -0,0 +1 @@ +{"doc_urls":["0-introduce/index.html#ebpf-入门开发实践教程一介绍-ebpf-的基本概念常见的开发工具","0-introduce/index.html#1-ebpf简介安全和有效地扩展内核","0-introduce/index.html#ebpf-的未来内核的-javascript-可编程接口","0-introduce/index.html#2-关于如何学习-ebpf-相关的开发的一些建议","0-introduce/index.html#ebpf-入门5-7h","0-introduce/index.html#了解如何开发-ebpf-程序10-15h","0-introduce/index.html#3-如何使用ebpf编程","0-introduce/index.html#编写-ebpf-程序","0-introduce/index.html#bcc","0-introduce/index.html#ebpf-go-library","0-introduce/index.html#libbpf","0-introduce/index.html#eunomia-bpf","0-introduce/index.html#参考资料","1-helloworld/index.html#ebpf-入门开发实践教程二hello-world基本框架和开发流程","1-helloworld/index.html#开发-ebpf-程序的流程","1-helloworld/index.html#使用-eunomia-bpf-开发-ebpf-程序","1-helloworld/index.html#下载安装-eunomia-bpf-开发工具","1-helloworld/index.html#hello-world---minimal-ebpf-program","1-helloworld/index.html#ebpf-程序的基本框架","1-helloworld/index.html#tracepoints","1-helloworld/index.html#总结","2-kprobe-unlink/index.html#ebpf-入门开发实践教程二在-ebpf-中使用-kprobe-监测捕获-unlink-系统调用","2-kprobe-unlink/index.html#kprobes技术背景","2-kprobe-unlink/index.html#kprobe","2-kprobe-unlink/index.html#总结","3-fentry-unlink/index.html#ebpf-入门开发实践教程三在-ebpf-中使用-fentry-监测捕获-unlink-系统调用","3-fentry-unlink/index.html#fentry","3-fentry-unlink/index.html#总结","4-opensnoop/index.html#ebpf-入门开发实践教程四在-ebpf-中捕获进程打开文件的系统调用集合使用全局变量过滤进程-pid","4-opensnoop/index.html#在-ebpf-中捕获进程打开文件的系统调用集合","4-opensnoop/index.html#使用全局变量在-ebpf-中过滤进程-pid","4-opensnoop/index.html#总结","5-uprobe-bashreadline/index.html#ebpf-入门开发实践教程五在-ebpf-中使用--uprobe-捕获-bash-的-readline-函数调用","5-uprobe-bashreadline/index.html#什么是uprobe","5-uprobe-bashreadline/index.html#使用-uprobe-捕获-bash-的-readline-函数调用","5-uprobe-bashreadline/index.html#总结","6-sigsnoop/index.html#ebpf-入门开发实践教程六捕获进程发送信号的系统调用集合使用-hash-map-保存状态","6-sigsnoop/index.html#sigsnoop","6-sigsnoop/index.html#总结","7-execsnoop/index.html#ebpf-入门实践教程七捕获进程执行退出时间通过-perf-event-array-向用户态打印输出","7-execsnoop/index.html#perf-buffer","7-execsnoop/index.html#execsnoop","7-execsnoop/index.html#总结","8-exitsnoop/index.html#ebpf-入门开发实践教程八在-ebpf-中使用-exitsnoop-监控进程退出事件使用-ring-buffer-向用户态打印输出","8-exitsnoop/index.html#ring-buffer","8-exitsnoop/index.html#bpf-ringbuf-vs-bpf-perfbuf","8-exitsnoop/index.html#exitsnoop","8-exitsnoop/index.html#compile-and-run","8-exitsnoop/index.html#总结","9-runqlat/index.html#ebpf-入门开发实践教程九一个-linux-内核-bpf-程序通过柱状图来总结调度程序运行队列延迟显示任务等待运行在-cpu-上的时间长度","9-runqlat/index.html#runqlat是什么","9-runqlat/index.html#runqlat-原理","9-runqlat/index.html#runqlat-代码实现","9-runqlat/index.html#编译运行","9-runqlat/index.html#总结","10-hardirqs/index.html#ebpf-入门开发实践教程十在-ebpf-中使用-hardirqs-或-softirqs-捕获中断事件","10-hardirqs/index.html#hardirqs是什么","10-hardirqs/index.html#实现原理","10-hardirqs/index.html#代码实现","10-hardirqs/index.html#运行代码","10-hardirqs/index.html#总结","11-bootstrap/index.html#ebpf-入门开发实践教程十一在-ebpf-中使用-bootstrap-开发用户态程序并跟踪-exec-和-exit-系统调用","11-bootstrap/index.html#什么是bootstrap","11-bootstrap/index.html#bootstrap","11-bootstrap/index.html#总结","13-tcpconnlat/index.html#ebpf入门实践教程使用-libbpf-bootstrap-开发程序统计-tcp-连接延时","13-tcpconnlat/index.html#背景","13-tcpconnlat/index.html#tcpconnlat-的实现原理","13-tcpconnlat/index.html#tcp-连接原理","13-tcpconnlat/index.html#ebpf-实现原理","13-tcpconnlat/index.html#编译运行","13-tcpconnlat/index.html#效果","13-tcpconnlat/index.html#总结","13-tcpconnlat/tcpconnlat.html#ebpf-入门实践教程编写-ebpf-程序-tcpconnlat-测量-tcp-连接延时","13-tcpconnlat/tcpconnlat.html#代码解释","13-tcpconnlat/tcpconnlat.html#背景","13-tcpconnlat/tcpconnlat.html#tcpconnlat-的实现原理","13-tcpconnlat/tcpconnlat.html#tcp-连接原理","13-tcpconnlat/tcpconnlat.html#ebpf-实现原理","13-tcpconnlat/tcpconnlat.html#eunomia-测试-demo","13-tcpconnlat/tcpconnlat.html#总结","13-tcpconnlat/tcpconnlat.html#参考资料","14-tcpstates/index.html#ebpf入门实践教程使用-libbpf-bootstrap-开发程序统计-tcp-连接延时","14-tcpstates/index.html#用户态程序","14-tcpstates/index.html#编译运行","14-tcpstates/index.html#效果","14-tcpstates/index.html#总结","15-tcprtt/index.html#ebpf-入门实践教程编写-ebpf-程序-tcprtt-测量-tcp-连接的往返时间","15-tcprtt/index.html#背景","15-tcprtt/index.html#编写-ebpf-程序","15-tcprtt/index.html#编译运行","15-tcprtt/index.html#总结","16-memleak/index.html#ebpf-入门实践教程编写-ebpf-程序-memleak-监控内存泄漏","16-memleak/index.html#背景","16-memleak/index.html#实现原理","16-memleak/index.html#编写-ebpf-程序","16-memleak/index.html#编译运行","16-memleak/index.html#总结","17-biopattern/index.html#ebpf-入门实践教程编写-ebpf-程序-biopattern-统计随机顺序磁盘-io","17-biopattern/index.html#背景","17-biopattern/index.html#实现原理","17-biopattern/index.html#编写-ebpf-程序","17-biopattern/index.html#总结","18-further-reading/index.html#更多的参考资料","19-lsm-connect/index.html#ebpf-入门实践教程使用-lsm-进行安全检测防御","19-lsm-connect/index.html#背景","19-lsm-connect/index.html#lsm-概述","19-lsm-connect/index.html#编写-ebpf-程序","19-lsm-connect/index.html#编译运行","19-lsm-connect/index.html#总结","20-tc/index.html#ebpf-入门实践教程使用-ebpf-进行-tc-流量控制","20-tc/index.html#tc-程序示例","20-tc/index.html#编译运行","20-tc/index.html#总结","bcc-documents/kernel-versions.html#bpf-features-by-linux-kernel-version","bcc-documents/kernel-versions.html#ebpf-support","bcc-documents/kernel-versions.html#jit-compiling","bcc-documents/kernel-versions.html#main-features","bcc-documents/kernel-versions.html#program-types","bcc-documents/kernel-versions.html#maps--aka--tables-in-bcc-lingo","bcc-documents/kernel-versions.html#map-types","bcc-documents/kernel-versions.html#map-userspace-api","bcc-documents/kernel-versions.html#xdp","bcc-documents/kernel-versions.html#helpers","bcc-documents/kernel-versions.html#program-types-1","bcc-documents/kernel_config.html#kernel-configuration-for-bpf-features","bcc-documents/kernel_config.html#bpf-related-kernel-configurations","bcc-documents/reference_guide.html#bcc-reference-guide","bcc-documents/reference_guide.html#contents","bcc-documents/reference_guide.html#bpf-c","bcc-documents/reference_guide.html#events--arguments","bcc-documents/reference_guide.html#1-kprobes","bcc-documents/reference_guide.html#2-kretprobes","bcc-documents/reference_guide.html#3-tracepoints","bcc-documents/reference_guide.html#4-uprobes","bcc-documents/reference_guide.html#5-uretprobes","bcc-documents/reference_guide.html#6-usdt-probes","bcc-documents/reference_guide.html#7-raw-tracepoints","bcc-documents/reference_guide.html#8-system-call-tracepoints","bcc-documents/reference_guide.html#9-kfuncs","bcc-documents/reference_guide.html#10-kretfuncs","bcc-documents/reference_guide.html#11-lsm-probes","bcc-documents/reference_guide.html#12-bpf-iterators","bcc-documents/reference_guide.html#data","bcc-documents/reference_guide.html#1-bpf_probe_read_kernel","bcc-documents/reference_guide.html#2-bpf_probe_read_kernel_str","bcc-documents/reference_guide.html#3-bpf_ktime_get_ns","bcc-documents/reference_guide.html#4-bpf_get_current_pid_tgid","bcc-documents/reference_guide.html#5-bpf_get_current_uid_gid","bcc-documents/reference_guide.html#6-bpf_get_current_comm","bcc-documents/reference_guide.html#7-bpf_get_current_task","bcc-documents/reference_guide.html#8-bpf_log2l","bcc-documents/reference_guide.html#9-bpf_get_prandom_u32","bcc-documents/reference_guide.html#10-bpf_probe_read_user","bcc-documents/reference_guide.html#11-bpf_probe_read_user_str","bcc-documents/reference_guide.html#12-bpf_get_ns_current_pid_tgid","bcc-documents/reference_guide.html#debugging","bcc-documents/reference_guide.html#1-bpf_override_return","bcc-documents/reference_guide.html#output","bcc-documents/reference_guide.html#1-bpf_trace_printk","bcc-documents/reference_guide.html#2-bpf_perf_output","bcc-documents/reference_guide.html#3-perf_submit","bcc-documents/reference_guide.html#4-perf_submit_skb","bcc-documents/reference_guide.html#5-bpf_ringbuf_output","bcc-documents/reference_guide.html#6-ringbuf_output","bcc-documents/reference_guide.html#7-ringbuf_reserve","bcc-documents/reference_guide.html#8-ringbuf_submit","bcc-documents/reference_guide.html#9-ringbuf_discard","bcc-documents/reference_guide.html#maps","bcc-documents/reference_guide.html#1-bpf_table","bcc-documents/reference_guide.html#2-bpf_hash","bcc-documents/reference_guide.html#3-bpf_array","bcc-documents/reference_guide.html#4-bpf_histogram","bcc-documents/reference_guide.html#5-bpf_stack_trace","bcc-documents/reference_guide.html#6-bpf_perf_array","bcc-documents/reference_guide.html#7-bpf_percpu_hash","bcc-documents/reference_guide.html#8-bpf_percpu_array","bcc-documents/reference_guide.html#9-bpf_lpm_trie","bcc-documents/reference_guide.html#10-bpf_prog_array","bcc-documents/reference_guide.html#11-bpf_devmap","bcc-documents/reference_guide.html#12-bpf_cpumap","bcc-documents/reference_guide.html#13-bpf_xskmap","bcc-documents/reference_guide.html#14-bpf_array_of_maps","bcc-documents/reference_guide.html#15-bpf_hash_of_maps","bcc-documents/reference_guide.html#16-bpf_stack","bcc-documents/reference_guide.html#17-bpf_queue","bcc-documents/reference_guide.html#18-bpf_sockhash","bcc-documents/reference_guide.html#19-maplookup","bcc-documents/reference_guide.html#20-maplookup_or_try_init","bcc-documents/reference_guide.html#21-mapdelete","bcc-documents/reference_guide.html#22-mapupdate","bcc-documents/reference_guide.html#23-mapinsert","bcc-documents/reference_guide.html#24-mapincrement","bcc-documents/reference_guide.html#25-mapget_stackid","bcc-documents/reference_guide.html#26-mapperf_read","bcc-documents/reference_guide.html#27-mapcall","bcc-documents/reference_guide.html#28-mapredirect_map","bcc-documents/reference_guide.html#29-mappush","bcc-documents/reference_guide.html#30-mappop","bcc-documents/reference_guide.html#31-mappeek","bcc-documents/reference_guide.html#32-mapsock_hash_update","bcc-documents/reference_guide.html#33-mapmsg_redirect_hash","bcc-documents/reference_guide.html#34-mapsk_redirect_hash","bcc-documents/reference_guide.html#licensing","bcc-documents/reference_guide.html#rewriter","bcc-documents/reference_guide.html#bcc-python","bcc-documents/reference_guide.html#initialization","bcc-documents/reference_guide.html#1-bpf","bcc-documents/reference_guide.html#2-usdt","bcc-documents/reference_guide.html#events","bcc-documents/reference_guide.html#1-attach_kprobe","bcc-documents/reference_guide.html#2-attach_kretprobe","bcc-documents/reference_guide.html#3-attach_tracepoint","bcc-documents/reference_guide.html#4-attach_uprobe","bcc-documents/reference_guide.html#5-attach_uretprobe","bcc-documents/reference_guide.html#6-usdtenable_probe","bcc-documents/reference_guide.html#7-attach_raw_tracepoint","bcc-documents/reference_guide.html#8-attach_raw_socket","bcc-documents/reference_guide.html#9-attach_xdp","bcc-documents/reference_guide.html#10-attach_func","bcc-documents/reference_guide.html#11-detach_func","bcc-documents/reference_guide.html#12-detach_kprobe","bcc-documents/reference_guide.html#13-detach_kretprobe","bcc-documents/reference_guide.html#debug-output","bcc-documents/reference_guide.html#1-trace_print","bcc-documents/reference_guide.html#2-trace_fields","bcc-documents/reference_guide.html#output-apis","bcc-documents/reference_guide.html#1-perf_buffer_poll","bcc-documents/reference_guide.html#2-ring_buffer_poll","bcc-documents/reference_guide.html#3-ring_buffer_consume","bcc-documents/reference_guide.html#map-apis","bcc-documents/reference_guide.html#1-get_table","bcc-documents/reference_guide.html#2-open_perf_buffer","bcc-documents/reference_guide.html#3-items","bcc-documents/reference_guide.html#4-values","bcc-documents/reference_guide.html#5-clear","bcc-documents/reference_guide.html#6-items_lookup_and_delete_batch","bcc-documents/reference_guide.html#7-items_lookup_batch","bcc-documents/reference_guide.html#8-items_delete_batch","bcc-documents/reference_guide.html#9-items_update_batch","bcc-documents/reference_guide.html#10-print_log2_hist","bcc-documents/reference_guide.html#11-print_linear_hist","bcc-documents/reference_guide.html#12-open_ring_buffer","bcc-documents/reference_guide.html#13-push","bcc-documents/reference_guide.html#14-pop","bcc-documents/reference_guide.html#15-peek","bcc-documents/reference_guide.html#helpers","bcc-documents/reference_guide.html#1-ksym","bcc-documents/reference_guide.html#2-ksymname","bcc-documents/reference_guide.html#3-sym","bcc-documents/reference_guide.html#4-num_open_kprobes","bcc-documents/reference_guide.html#5-get_syscall_fnname","bcc-documents/reference_guide.html#bpf-errors","bcc-documents/reference_guide.html#1-invalid-mem-access","bcc-documents/reference_guide.html#2-cannot-call-gpl-only-function-from-proprietary-program","bcc-documents/reference_guide.html#environment-variables","bcc-documents/reference_guide.html#1-kernel-source-directory","bcc-documents/reference_guide.html#2-kernel-version-overriding","bcc-documents/special_filtering.html#special-filtering","bcc-documents/special_filtering.html#filtering-by-cgroups","bcc-documents/special_filtering.html#filtering-by-mount-by-namespace","bcc-documents/tutorial.html#bcc-tutorial","bcc-documents/tutorial.html#observability","bcc-documents/tutorial.html#0-before-bcc","bcc-documents/tutorial.html#1-general-performance","bcc-documents/tutorial.html#2-observability-with-generic-tools","bcc-documents/tutorial.html#networking","bcc-documents/tutorial_bcc_python_developer.html#bcc-python-developer-tutorial","bcc-documents/tutorial_bcc_python_developer.html#observability","bcc-documents/tutorial_bcc_python_developer.html#lesson-1-hello-world","bcc-documents/tutorial_bcc_python_developer.html#lesson-2-sys_sync","bcc-documents/tutorial_bcc_python_developer.html#lesson-3-hello_fieldspy","bcc-documents/tutorial_bcc_python_developer.html#lesson-4-sync_timingpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-5-sync_countpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-6-disksnooppy","bcc-documents/tutorial_bcc_python_developer.html#lesson-7-hello_perf_outputpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-8-sync_perf_outputpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-9-bitehistpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-10-disklatencypy","bcc-documents/tutorial_bcc_python_developer.html#lesson-11-vfsreadlatpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-12-urandomreadpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-13-disksnooppy-fixed","bcc-documents/tutorial_bcc_python_developer.html#lesson-14-strlen_countpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-15-nodejs_http_serverpy","bcc-documents/tutorial_bcc_python_developer.html#lesson-16-task_switchc","bcc-documents/tutorial_bcc_python_developer.html#lesson-17-further-study","bcc-documents/tutorial_bcc_python_developer.html#networking"],"index":{"documentStore":{"docInfo":{"0":{"body":0,"breadcrumbs":4,"title":2},"1":{"body":4,"breadcrumbs":4,"title":2},"10":{"body":10,"breadcrumbs":3,"title":1},"100":{"body":6,"breadcrumbs":4,"title":0},"101":{"body":1,"breadcrumbs":5,"title":1},"102":{"body":2,"breadcrumbs":4,"title":0},"103":{"body":1,"breadcrumbs":0,"title":0},"104":{"body":0,"breadcrumbs":4,"title":2},"105":{"body":1,"breadcrumbs":2,"title":0},"106":{"body":1,"breadcrumbs":3,"title":1},"107":{"body":1,"breadcrumbs":3,"title":1},"108":{"body":23,"breadcrumbs":2,"title":0},"109":{"body":6,"breadcrumbs":2,"title":0},"11":{"body":50,"breadcrumbs":4,"title":2},"110":{"body":0,"breadcrumbs":6,"title":3},"111":{"body":108,"breadcrumbs":4,"title":1},"112":{"body":87,"breadcrumbs":3,"title":0},"113":{"body":1,"breadcrumbs":3,"title":0},"114":{"body":0,"breadcrumbs":10,"title":5},"115":{"body":5,"breadcrumbs":7,"title":2},"116":{"body":65,"breadcrumbs":7,"title":2},"117":{"body":321,"breadcrumbs":7,"title":2},"118":{"body":174,"breadcrumbs":7,"title":2},"119":{"body":0,"breadcrumbs":10,"title":5},"12":{"body":16,"breadcrumbs":2,"title":0},"120":{"body":187,"breadcrumbs":7,"title":2},"121":{"body":109,"breadcrumbs":8,"title":3},"122":{"body":162,"breadcrumbs":6,"title":1},"123":{"body":714,"breadcrumbs":6,"title":1},"124":{"body":279,"breadcrumbs":7,"title":2},"125":{"body":0,"breadcrumbs":8,"title":4},"126":{"body":382,"breadcrumbs":8,"title":4},"127":{"body":29,"breadcrumbs":6,"title":3},"128":{"body":265,"breadcrumbs":4,"title":1},"129":{"body":6,"breadcrumbs":5,"title":2},"13":{"body":11,"breadcrumbs":6,"title":3},"130":{"body":0,"breadcrumbs":5,"title":2},"131":{"body":90,"breadcrumbs":5,"title":2},"132":{"body":67,"breadcrumbs":5,"title":2},"133":{"body":102,"breadcrumbs":5,"title":2},"134":{"body":45,"breadcrumbs":5,"title":2},"135":{"body":46,"breadcrumbs":5,"title":2},"136":{"body":100,"breadcrumbs":6,"title":3},"137":{"body":79,"breadcrumbs":6,"title":3},"138":{"body":82,"breadcrumbs":7,"title":4},"139":{"body":49,"breadcrumbs":5,"title":2},"14":{"body":15,"breadcrumbs":4,"title":1},"140":{"body":62,"breadcrumbs":5,"title":2},"141":{"body":128,"breadcrumbs":6,"title":3},"142":{"body":90,"breadcrumbs":6,"title":3},"143":{"body":0,"breadcrumbs":4,"title":1},"144":{"body":50,"breadcrumbs":5,"title":2},"145":{"body":60,"breadcrumbs":5,"title":2},"146":{"body":20,"breadcrumbs":5,"title":2},"147":{"body":47,"breadcrumbs":5,"title":2},"148":{"body":18,"breadcrumbs":5,"title":2},"149":{"body":39,"breadcrumbs":5,"title":2},"15":{"body":39,"breadcrumbs":6,"title":3},"150":{"body":65,"breadcrumbs":5,"title":2},"151":{"body":25,"breadcrumbs":5,"title":2},"152":{"body":13,"breadcrumbs":5,"title":2},"153":{"body":40,"breadcrumbs":5,"title":2},"154":{"body":60,"breadcrumbs":5,"title":2},"155":{"body":55,"breadcrumbs":5,"title":2},"156":{"body":0,"breadcrumbs":4,"title":1},"157":{"body":64,"breadcrumbs":5,"title":2},"158":{"body":0,"breadcrumbs":4,"title":1},"159":{"body":52,"breadcrumbs":5,"title":2},"16":{"body":62,"breadcrumbs":5,"title":2},"160":{"body":66,"breadcrumbs":5,"title":2},"161":{"body":45,"breadcrumbs":5,"title":2},"162":{"body":44,"breadcrumbs":5,"title":2},"163":{"body":174,"breadcrumbs":5,"title":2},"164":{"body":45,"breadcrumbs":5,"title":2},"165":{"body":31,"breadcrumbs":5,"title":2},"166":{"body":43,"breadcrumbs":5,"title":2},"167":{"body":47,"breadcrumbs":5,"title":2},"168":{"body":13,"breadcrumbs":4,"title":1},"169":{"body":86,"breadcrumbs":5,"title":2},"17":{"body":123,"breadcrumbs":8,"title":5},"170":{"body":66,"breadcrumbs":5,"title":2},"171":{"body":66,"breadcrumbs":5,"title":2},"172":{"body":41,"breadcrumbs":5,"title":2},"173":{"body":46,"breadcrumbs":5,"title":2},"174":{"body":72,"breadcrumbs":5,"title":2},"175":{"body":80,"breadcrumbs":5,"title":2},"176":{"body":84,"breadcrumbs":5,"title":2},"177":{"body":55,"breadcrumbs":5,"title":2},"178":{"body":43,"breadcrumbs":5,"title":2},"179":{"body":30,"breadcrumbs":5,"title":2},"18":{"body":17,"breadcrumbs":4,"title":1},"180":{"body":36,"breadcrumbs":5,"title":2},"181":{"body":70,"breadcrumbs":5,"title":2},"182":{"body":44,"breadcrumbs":5,"title":2},"183":{"body":43,"breadcrumbs":5,"title":2},"184":{"body":48,"breadcrumbs":5,"title":2},"185":{"body":48,"breadcrumbs":5,"title":2},"186":{"body":91,"breadcrumbs":5,"title":2},"187":{"body":21,"breadcrumbs":5,"title":2},"188":{"body":43,"breadcrumbs":5,"title":2},"189":{"body":11,"breadcrumbs":5,"title":2},"19":{"body":5,"breadcrumbs":4,"title":1},"190":{"body":17,"breadcrumbs":5,"title":2},"191":{"body":16,"breadcrumbs":5,"title":2},"192":{"body":48,"breadcrumbs":5,"title":2},"193":{"body":28,"breadcrumbs":5,"title":2},"194":{"body":15,"breadcrumbs":5,"title":2},"195":{"body":99,"breadcrumbs":5,"title":2},"196":{"body":94,"breadcrumbs":5,"title":2},"197":{"body":31,"breadcrumbs":5,"title":2},"198":{"body":26,"breadcrumbs":5,"title":2},"199":{"body":27,"breadcrumbs":5,"title":2},"2":{"body":40,"breadcrumbs":4,"title":2},"20":{"body":39,"breadcrumbs":3,"title":0},"200":{"body":68,"breadcrumbs":5,"title":2},"201":{"body":67,"breadcrumbs":5,"title":2},"202":{"body":67,"breadcrumbs":5,"title":2},"203":{"body":91,"breadcrumbs":4,"title":1},"204":{"body":72,"breadcrumbs":4,"title":1},"205":{"body":0,"breadcrumbs":5,"title":2},"206":{"body":1,"breadcrumbs":4,"title":1},"207":{"body":147,"breadcrumbs":5,"title":2},"208":{"body":41,"breadcrumbs":5,"title":2},"209":{"body":0,"breadcrumbs":4,"title":1},"21":{"body":10,"breadcrumbs":8,"title":4},"210":{"body":71,"breadcrumbs":5,"title":2},"211":{"body":93,"breadcrumbs":5,"title":2},"212":{"body":88,"breadcrumbs":5,"title":2},"213":{"body":147,"breadcrumbs":5,"title":2},"214":{"body":77,"breadcrumbs":5,"title":2},"215":{"body":39,"breadcrumbs":5,"title":2},"216":{"body":36,"breadcrumbs":5,"title":2},"217":{"body":74,"breadcrumbs":5,"title":2},"218":{"body":172,"breadcrumbs":5,"title":2},"219":{"body":52,"breadcrumbs":5,"title":2},"22":{"body":2,"breadcrumbs":5,"title":1},"220":{"body":20,"breadcrumbs":5,"title":2},"221":{"body":12,"breadcrumbs":5,"title":2},"222":{"body":12,"breadcrumbs":5,"title":2},"223":{"body":0,"breadcrumbs":5,"title":2},"224":{"body":54,"breadcrumbs":5,"title":2},"225":{"body":60,"breadcrumbs":5,"title":2},"226":{"body":18,"breadcrumbs":5,"title":2},"227":{"body":42,"breadcrumbs":5,"title":2},"228":{"body":45,"breadcrumbs":5,"title":2},"229":{"body":48,"breadcrumbs":5,"title":2},"23":{"body":154,"breadcrumbs":5,"title":1},"230":{"body":16,"breadcrumbs":5,"title":2},"231":{"body":20,"breadcrumbs":5,"title":2},"232":{"body":159,"breadcrumbs":5,"title":2},"233":{"body":45,"breadcrumbs":5,"title":2},"234":{"body":6,"breadcrumbs":5,"title":2},"235":{"body":26,"breadcrumbs":5,"title":2},"236":{"body":59,"breadcrumbs":5,"title":2},"237":{"body":51,"breadcrumbs":5,"title":2},"238":{"body":35,"breadcrumbs":5,"title":2},"239":{"body":32,"breadcrumbs":5,"title":2},"24":{"body":17,"breadcrumbs":4,"title":0},"240":{"body":116,"breadcrumbs":5,"title":2},"241":{"body":115,"breadcrumbs":5,"title":2},"242":{"body":153,"breadcrumbs":5,"title":2},"243":{"body":27,"breadcrumbs":5,"title":2},"244":{"body":25,"breadcrumbs":5,"title":2},"245":{"body":23,"breadcrumbs":5,"title":2},"246":{"body":24,"breadcrumbs":4,"title":1},"247":{"body":20,"breadcrumbs":5,"title":2},"248":{"body":24,"breadcrumbs":5,"title":2},"249":{"body":48,"breadcrumbs":5,"title":2},"25":{"body":10,"breadcrumbs":8,"title":4},"250":{"body":36,"breadcrumbs":5,"title":2},"251":{"body":50,"breadcrumbs":5,"title":2},"252":{"body":10,"breadcrumbs":5,"title":2},"253":{"body":109,"breadcrumbs":7,"title":4},"254":{"body":58,"breadcrumbs":9,"title":6},"255":{"body":0,"breadcrumbs":5,"title":2},"256":{"body":26,"breadcrumbs":7,"title":4},"257":{"body":68,"breadcrumbs":7,"title":4},"258":{"body":17,"breadcrumbs":4,"title":2},"259":{"body":190,"breadcrumbs":4,"title":2},"26":{"body":171,"breadcrumbs":5,"title":1},"260":{"body":108,"breadcrumbs":5,"title":3},"261":{"body":36,"breadcrumbs":4,"title":2},"262":{"body":2,"breadcrumbs":3,"title":1},"263":{"body":40,"breadcrumbs":5,"title":3},"264":{"body":1008,"breadcrumbs":5,"title":3},"265":{"body":528,"breadcrumbs":6,"title":4},"266":{"body":0,"breadcrumbs":3,"title":1},"267":{"body":32,"breadcrumbs":8,"title":4},"268":{"body":9,"breadcrumbs":5,"title":1},"269":{"body":134,"breadcrumbs":8,"title":4},"27":{"body":22,"breadcrumbs":4,"title":0},"270":{"body":33,"breadcrumbs":7,"title":3},"271":{"body":201,"breadcrumbs":7,"title":3},"272":{"body":270,"breadcrumbs":7,"title":3},"273":{"body":26,"breadcrumbs":7,"title":3},"274":{"body":253,"breadcrumbs":7,"title":3},"275":{"body":278,"breadcrumbs":7,"title":3},"276":{"body":6,"breadcrumbs":7,"title":3},"277":{"body":188,"breadcrumbs":7,"title":3},"278":{"body":23,"breadcrumbs":7,"title":3},"279":{"body":140,"breadcrumbs":7,"title":3},"28":{"body":9,"breadcrumbs":6,"title":3},"280":{"body":200,"breadcrumbs":7,"title":3},"281":{"body":8,"breadcrumbs":8,"title":4},"282":{"body":190,"breadcrumbs":7,"title":3},"283":{"body":148,"breadcrumbs":7,"title":3},"284":{"body":176,"breadcrumbs":7,"title":3},"285":{"body":35,"breadcrumbs":8,"title":4},"286":{"body":0,"breadcrumbs":5,"title":1},"29":{"body":118,"breadcrumbs":4,"title":1},"3":{"body":1,"breadcrumbs":4,"title":2},"30":{"body":92,"breadcrumbs":5,"title":2},"31":{"body":25,"breadcrumbs":3,"title":0},"32":{"body":10,"breadcrumbs":10,"title":5},"33":{"body":0,"breadcrumbs":6,"title":1},"34":{"body":178,"breadcrumbs":8,"title":3},"35":{"body":21,"breadcrumbs":5,"title":0},"36":{"body":10,"breadcrumbs":6,"title":3},"37":{"body":284,"breadcrumbs":4,"title":1},"38":{"body":28,"breadcrumbs":3,"title":0},"39":{"body":16,"breadcrumbs":8,"title":4},"4":{"body":23,"breadcrumbs":5,"title":3},"40":{"body":4,"breadcrumbs":6,"title":2},"41":{"body":180,"breadcrumbs":5,"title":1},"42":{"body":26,"breadcrumbs":4,"title":0},"43":{"body":9,"breadcrumbs":10,"title":5},"44":{"body":8,"breadcrumbs":7,"title":2},"45":{"body":12,"breadcrumbs":10,"title":5},"46":{"body":157,"breadcrumbs":6,"title":1},"47":{"body":96,"breadcrumbs":7,"title":2},"48":{"body":17,"breadcrumbs":5,"title":0},"49":{"body":6,"breadcrumbs":8,"title":4},"5":{"body":28,"breadcrumbs":5,"title":3},"50":{"body":11,"breadcrumbs":5,"title":1},"51":{"body":4,"breadcrumbs":5,"title":1},"52":{"body":349,"breadcrumbs":5,"title":1},"53":{"body":207,"breadcrumbs":4,"title":0},"54":{"body":20,"breadcrumbs":4,"title":0},"55":{"body":8,"breadcrumbs":8,"title":4},"56":{"body":9,"breadcrumbs":5,"title":1},"57":{"body":3,"breadcrumbs":4,"title":0},"58":{"body":257,"breadcrumbs":4,"title":0},"59":{"body":26,"breadcrumbs":4,"title":0},"6":{"body":11,"breadcrumbs":4,"title":2},"60":{"body":9,"breadcrumbs":4,"title":0},"61":{"body":6,"breadcrumbs":10,"title":5},"62":{"body":4,"breadcrumbs":6,"title":1},"63":{"body":303,"breadcrumbs":6,"title":1},"64":{"body":7,"breadcrumbs":5,"title":0},"65":{"body":0,"breadcrumbs":8,"title":4},"66":{"body":8,"breadcrumbs":4,"title":0},"67":{"body":3,"breadcrumbs":5,"title":1},"68":{"body":9,"breadcrumbs":5,"title":1},"69":{"body":176,"breadcrumbs":5,"title":1},"7":{"body":9,"breadcrumbs":3,"title":1},"70":{"body":24,"breadcrumbs":4,"title":0},"71":{"body":39,"breadcrumbs":4,"title":0},"72":{"body":6,"breadcrumbs":4,"title":0},"73":{"body":0,"breadcrumbs":8,"title":4},"74":{"body":0,"breadcrumbs":4,"title":0},"75":{"body":8,"breadcrumbs":4,"title":0},"76":{"body":3,"breadcrumbs":5,"title":1},"77":{"body":9,"breadcrumbs":5,"title":1},"78":{"body":176,"breadcrumbs":5,"title":1},"79":{"body":94,"breadcrumbs":6,"title":2},"8":{"body":6,"breadcrumbs":3,"title":1},"80":{"body":12,"breadcrumbs":4,"title":0},"81":{"body":2,"breadcrumbs":4,"title":0},"82":{"body":103,"breadcrumbs":8,"title":4},"83":{"body":157,"breadcrumbs":4,"title":0},"84":{"body":24,"breadcrumbs":4,"title":0},"85":{"body":107,"breadcrumbs":4,"title":0},"86":{"body":2,"breadcrumbs":4,"title":0},"87":{"body":0,"breadcrumbs":8,"title":4},"88":{"body":2,"breadcrumbs":4,"title":0},"89":{"body":1,"breadcrumbs":5,"title":1},"9":{"body":6,"breadcrumbs":5,"title":3},"90":{"body":1,"breadcrumbs":4,"title":0},"91":{"body":1,"breadcrumbs":4,"title":0},"92":{"body":0,"breadcrumbs":6,"title":3},"93":{"body":0,"breadcrumbs":3,"title":0},"94":{"body":9,"breadcrumbs":3,"title":0},"95":{"body":1,"breadcrumbs":4,"title":1},"96":{"body":1,"breadcrumbs":3,"title":0},"97":{"body":1,"breadcrumbs":3,"title":0},"98":{"body":0,"breadcrumbs":8,"title":4},"99":{"body":3,"breadcrumbs":4,"title":0}},"docs":{"0":{"body":"","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具","id":"0","title":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具"},"1":{"body":"eBPF 是一项革命性的技术,起源于 Linux 内核,可以在操作系统的内核中运行沙盒程序。它被用来安全和有效地扩展内核的功能,而不需要改变内核的源代码或加载内核模块。eBPF 通过允许在操作系统内运行沙盒程序,应用程序开发人员可以在运行时,可编程地向操作系统动态添加额外的功能。然后,操作系统保证安全和执行效率,就像在即时编译(JIT)编译器和验证引擎的帮助下进行本地编译一样。eBPF 程序在内核版本之间是可移植的,并且可以自动更新,从而避免了工作负载中断和节点重启。 今天,eBPF被广泛用于各类场景:在现代数据中心和云原生环境中,可以提供高性能的网络包处理和负载均衡;以非常低的资源开销,做到对多种细粒度指标的可观测性,帮助应用程序开发人员跟踪应用程序,为性能故障排除提供洞察力;保障应用程序和容器运行时的安全执行,等等。可能性是无穷的,而 eBPF 在操作系统内核中所释放的创新才刚刚开始[3]。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 1. eBPF简介:安全和有效地扩展内核","id":"1","title":"1. eBPF简介:安全和有效地扩展内核"},"10":{"body":"libbpf-bootstrap是一个基于libbpf库的BPF开发脚手架,从其 github 上可以得到其源码。 libbpf-bootstrap综合了BPF社区过去多年的实践,为开发者提了一个现代化的、便捷的工作流,实 现了一次编译,重复使用的目的。 基于libbpf-bootstrap的BPF程序对于源文件有一定的命名规则, 用于生成内核态字节码的bpf文件以.bpf.c结尾,用户态加载字节码的文件以.c结尾,且这两个文件的 前缀必须相同。 基于libbpf-bootstrap的BPF程序在编译时会先将*.bpf.c文件编译为 对应的.o文件,然后根据此文件生成skeleton文件,即*.skel.h,这个文件会包含内核态中定义的一些 数据结构,以及用于装载内核态代码的关键函数。在用户态代码include此文件之后调用对应的装载函数即可将 字节码装载到内核中。同样的,libbpf-bootstrap也有非常完备的入门教程,用户可以在 该处 得到详细的入门操作介绍。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » libbpf","id":"10","title":"libbpf"},"100":{"body":"Biopattern 的ebpf代码在 tracepoint/block/block_rq_complete 挂载点下实现。在磁盘完成IO请求 后,程序会经过此挂载点。Biopattern 内部存有一张以设备号为主键的哈希表,当程序经过挂载点时, Biopattern 会获得操作信息,根据哈希表中该设备的上一次操作记录来判断本次操作是随机IO还是顺序IO,并更新操作计数。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 实现原理","id":"100","title":"实现原理"},"101":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 编写 eBPF 程序","id":"101","title":"编写 eBPF 程序"},"102":{"body":"Biopattern 可以展现随机/顺序磁盘I/O次数的比例,对于开发者把握整体I/O情况有较大帮助。 TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 总结","id":"102","title":"总结"},"103":{"body":"TODO","breadcrumbs":"更多的参考资料 » 更多的参考资料","id":"103","title":"更多的参考资料"},"104":{"body":"","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » eBPF 入门实践教程:使用 LSM 进行安全检测防御","id":"104","title":"eBPF 入门实践教程:使用 LSM 进行安全检测防御"},"105":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 背景","id":"105","title":"背景"},"106":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » LSM 概述","id":"106","title":"LSM 概述"},"107":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 编写 eBPF 程序","id":"107","title":"编写 eBPF 程序"},"108":{"body":"docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest or compile with ecc: $ ecc lsm-connect.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... Run: sudo ecli examples/bpftools/lsm-connect/package.json","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 编译运行","id":"108","title":"编译运行"},"109":{"body":"TODO 参考: https://github.com/leodido/demo-cloud-native-ebpf-day","breadcrumbs":"eBPF 入门实践教程:使用 LSM 进行安全检测防御 » 总结","id":"109","title":"总结"},"11":{"body":"开发、构建和分发 eBPF 一直以来都是一个高门槛的工作,使用 BCC、bpftrace 等工具开发效率高、可移植性好,但是分发部署时需要安装 LLVM、Clang等编译环境,每次运行的时候执行本地或远程编译过程,资源消耗较大;使用原生的 CO-RE libbpf时又需要编写不少用户态加载代码来帮助 eBPF 程序正确加载和从内核中获取上报的信息,同时对于 eBPF 程序的分发、管理也没有很好地解决方案。 eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,是为了简化 eBPF 程序的开发、构建、分发、运行而设计的,基于 libbpf 的 CO-RE 轻量级开发框架。 使用 eunomia-bpf ,可以: 在编写 eBPF 程序或工具时只编写内核态代码,自动获取内核态导出信息,并作为模块动态加载; 使用 WASM 进行用户态交互程序的开发,在 WASM 虚拟机内部控制整个 eBPF 程序的加载和执行,以及处理相关数据; eunomia-bpf 可以将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块,跨架构和内核版本进行分发,无需重新编译即可动态加载运行。 eunomia-bpf 由一个编译工具链和一个运行时库组成, 对比传统的 BCC、原生 libbpf 等框架,大幅简化了 eBPF 程序的开发流程,在大多数时候只需编写内核态代码,即可轻松构建、打包、发布完整的 eBPF 应用,同时内核态 eBPF 代码保证和主流的 libbpf, libbpfgo, libbpf-rs 等开发框架的 100% 兼容性。需要编写用户态代码的时候,也可以借助 Webassembly 实现通过多种语言进行用户态开发。和 bpftrace 等脚本工具相比, eunomia-bpf 保留了类似的便捷性, 同时不仅局限于 trace 方面, 可以用于更多的场景, 如网络、安全等等。 eunomia-bpf 项目 Github 地址: https://github.com/eunomia-bpf/eunomia-bpf gitee 镜像: https://gitee.com/anolis/eunomia","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eunomia-bpf","id":"11","title":"eunomia-bpf"},"110":{"body":"","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制","id":"110","title":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制"},"111":{"body":"#include \n#include \n#include \n#include #define TC_ACT_OK 0\n#define ETH_P_IP 0x0800 /* Internet Protocol packet */ /// @tchook {\"ifindex\":1, \"attach_point\":\"BPF_TC_INGRESS\"}\n/// @tcopts {\"handle\":1, \"priority\":1}\nSEC(\"tc\")\nint tc_ingress(struct __sk_buff *ctx)\n{ void *data_end = (void *)(__u64)ctx->data_end; void *data = (void *)(__u64)ctx->data; struct ethhdr *l2; struct iphdr *l3; if (ctx->protocol != bpf_htons(ETH_P_IP)) return TC_ACT_OK; l2 = data; if ((void *)(l2 + 1) > data_end) return TC_ACT_OK; l3 = (struct iphdr *)(l2 + 1); if ((void *)(l3 + 1) > data_end) return TC_ACT_OK; bpf_printk(\"Got IP packet: tot_len: %d, ttl: %d\", bpf_ntohs(l3->tot_len), l3->ttl); return TC_ACT_OK;\n} char __license[] SEC(\"license\") = \"GPL\"; 这段代码定义了一个 eBPF 程序,它可以通过 Linux TC(Transmission Control)来捕获数据包并进行处理。在这个程序中,我们限定了只捕获 IPv4 协议的数据包,然后通过 bpf_printk 函数打印出数据包的总长度和 Time-To-Live(TTL)字段的值。 需要注意的是,我们在代码中使用了一些 BPF 库函数,例如 bpf_htons 和 bpf_ntohs 函数,它们用于进行网络字节序和主机字节序之间的转换。此外,我们还使用了一些注释来为 TC 提供附加点和选项信息。例如,在这段代码的开头,我们使用了以下注释: /// @tchook {\"ifindex\":1, \"attach_point\":\"BPF_TC_INGRESS\"}\n/// @tcopts {\"handle\":1, \"priority\":1} 这些注释告诉 TC 将 eBPF 程序附加到网络接口的 ingress 附加点,并指定了 handle 和 priority 选项的值。 总之,这段代码实现了一个简单的 eBPF 程序,用于捕获数据包并打印出它们的信息。","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » tc 程序示例","id":"111","title":"tc 程序示例"},"112":{"body":"docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest or compile with ecc: $ ecc tc.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... $ sudo ecli ./package.json\n...\nSuccessfully started! Please run `sudo cat /sys/kernel/debug/tracing/trace_pipe` to see output of the BPF program.\n...... The tc output in /sys/kernel/debug/tracing/trace_pipe should look something like this: $ sudo cat /sys/kernel/debug/tracing/trace_pipe node-1254811 [007] ..s1 8737831.671074: 0: Got IP packet: tot_len: 79, ttl: 64 sshd-1254728 [006] ..s1 8737831.674334: 0: Got IP packet: tot_len: 79, ttl: 64 sshd-1254728 [006] ..s1 8737831.674349: 0: Got IP packet: tot_len: 72, ttl: 64 node-1254811 [007] ..s1 8737831.674550: 0: Got IP packet: tot_len: 71, ttl: 64","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » 编译运行","id":"112","title":"编译运行"},"113":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:使用 eBPF 进行 tc 流量控制 » 总结","id":"113","title":"总结"},"114":{"body":"","breadcrumbs":"BPF Features by Linux Kernel Version » BPF Features by Linux Kernel Version","id":"114","title":"BPF Features by Linux Kernel Version"},"115":{"body":"Kernel version Commit 3.15 bd4cf0ed331a","breadcrumbs":"BPF Features by Linux Kernel Version » eBPF support","id":"115","title":"eBPF support"},"116":{"body":"The list of supported architectures for your kernel can be retrieved with: git grep HAVE_EBPF_JIT arch/ Feature / Architecture Kernel version Commit x86_64 3.16 622582786c9e ARM64 3.18 e54bcde3d69d s390 4.1 054623105728 Constant blinding for JIT machines 4.7 4f3446bb809f PowerPC64 4.8 156d0e290e96 Constant blinding - PowerPC64 4.9 b7b7013cac55 Sparc64 4.12 7a12b5031c6b MIPS 4.13 f381bf6d82f0 ARM32 4.14 39c13c204bb1 x86_32 4.18 03f5781be2c7 RISC-V RV64G 5.1 2353ecc6f91f RISC-V RV32G 5.7 5f316b65e99f PowerPC32 5.13 51c66ad849a7 LoongArch 6.1 5dc615520c4d","breadcrumbs":"BPF Features by Linux Kernel Version » JIT compiling","id":"116","title":"JIT compiling"},"117":{"body":"Several (but not all) of these main features translate to an eBPF program type. The list of such program types supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep -W 'bpf_prog_type {' include/uapi/linux/bpf.h Feature Kernel version Commit AF_PACKET (libpcap/tcpdump, cls_bpf classifier, netfilter's xt_bpf, team driver's load-balancing mode…) 3.15 bd4cf0ed331a Kernel helpers 3.15 bd4cf0ed331a bpf() syscall 3.18 99c55f7d47c0 Maps ( a.k.a. Tables; details below) 3.18 99c55f7d47c0 BPF attached to sockets 3.19 89aa075832b0 BPF attached to kprobes 4.1 2541517c32be cls_bpf / act_bpf for tc 4.1 e2e9b6541dd4 Tail calls 4.2 04fd61ab36ec Non-root programs on sockets 4.4 1be7f75d1668 Persistent maps and programs (virtual FS) 4.4 b2197755b263 tc's direct-action (da) mode 4.4 045efa82ff56 tc's clsact qdisc 4.5 1f211a1b929c BPF attached to tracepoints 4.7 98b5c2c65c29 Direct packet access 4.7 969bf05eb3ce XDP (see below) 4.8 6a773a15a1e8 BPF attached to perf events 4.9 0515e5999a46 Hardware offload for tc's cls_bpf 4.9 332ae8e2f6ec Verifier exposure and internal hooks 4.9 13a27dfc6697 BPF attached to cgroups for socket filtering 4.10 0e33661de493 Lightweight tunnel encapsulation 4.10 3a0af8fd61f9 e BPF support for xt_bpf module (iptables) 4.10 2c16d6033264 BPF program tag 4.10 7bd509e311f4 Tracepoints to debug BPF 4.11 (removed in 4.18) a67edbf4fb6d 4d220ed0f814 Testing / benchmarking BPF programs 4.12 1cf1cae963c2 BPF programs and maps IDs 4.13 dc4bb0e23561 BPF support for sock_ops 4.13 40304b2a1567 BPF support for skbs on sockets 4.14 b005fd189cec bpftool utility in kernel sources 4.15 71bb428fe2c1 BPF attached to cgroups as device controller 4.15 ebc614f68736 bpf2bpf function calls 4.16 cc8b0b92a169 BPF used for monitoring socket RX/TX data 4.17 4f738adba30a BPF attached to raw tracepoints 4.17 c4f6699dfcb8 BPF attached to bind() system call 4.17 4fbac77d2d09 aac3fc320d94 BPF attached to connect() system call 4.17 d74bad4e74ee BPF Type Format (BTF) 4.18 69b693f0aefa AF_XDP 4.18 fbfc504a24f5 bpfilter 4.18 d2ba09c17a06 End.BPF action for seg6local LWT 4.18 004d4b274e2a BPF attached to LIRC devices 4.18 f4364dcfc86d Pass map values to map helpers 4.18 d71962f3e627 BPF socket reuseport 4.19 2dbb9b9e6df6 BPF flow dissector 4.20 d58e468b1112 BPF 1M insn limit 5.2 c04c0d2b968a BPF cgroup sysctl 5.2 7b146cebe30c BPF raw tracepoint writable 5.2 9df1c28bb752 BPF bounded loop 5.3 2589726d12a1 BPF trampoline 5.5 fec56f5890d9 BPF LSM hook 5.7 fc611f47f218 641cd7b06c91 BPF iterator 5.8 180139dca8b3 BPF socket lookup hook 5.9 e9ddbb7707ff Sleepable BPF programs 5.10 1e6c62a88215","breadcrumbs":"BPF Features by Linux Kernel Version » Main features","id":"117","title":"Main features"},"118":{"body":"Program type Kernel version Commit Enum Socket filter 3.19 ddd872bc3098 BPF_PROG_TYPE_SOCKET_FILTER Kprobe 4.1 2541517c32be BPF_PROG_TYPE_KPROBE traffic control (TC) 4.1 96be4325f443 BPF_PROG_TYPE_SCHED_CLS traffic control (TC) 4.1 94caee8c312d BPF_PROG_TYPE_SCHED_ACT Tracepoint 4.7 98b5c2c65c29 BPF_PROG_TYPE_TRACEPOINT XDP 4.8 6a773a15a1e8 BPF_PROG_TYPE_XDP Perf event 4.9 0515e5999a46 BPF_PROG_TYPE_PERF_EVENT cgroup socket filtering 4.10 0e33661de493 BPF_PROG_TYPE_CGROUP_SKB cgroup sock modification 4.10 610236587600 BPF_PROG_TYPE_CGROUP_SOCK lightweight tunnel (IN) 4.10 3a0af8fd61f9 BPF_PROG_TYPE_LWT_IN lightweight tunnel (OUT) 4.10 3a0af8fd61f9 BPF_PROG_TYPE_LWT_OUT lightweight tunnel (XMIT) 4.10 3a0af8fd61f9 BPF_PROG_TYPE_LWT_XMIT cgroup sock ops (per conn) 4.13 40304b2a1567 BPF_PROG_TYPE_SOCK_OPS stream parser / stream verdict 4.14 b005fd189cec BPF_PROG_TYPE_SK_SKB cgroup device manager 4.15 ebc614f68736 BPF_PROG_TYPE_CGROUP_DEVICE socket msg verdict 4.17 4f738adba30a BPF_PROG_TYPE_SK_MSG Raw tracepoint 4.17 c4f6699dfcb8 BPF_PROG_TYPE_RAW_TRACEPOINT socket binding 4.17 4fbac77d2d09 BPF_PROG_TYPE_CGROUP_SOCK_ADDR LWT seg6local 4.18 004d4b274e2a BPF_PROG_TYPE_LWT_SEG6LOCAL lirc devices 4.18 f4364dcfc86d BPF_PROG_TYPE_LIRC_MODE2 lookup SO_REUSEPORT socket 4.19 2dbb9b9e6df6 BPF_PROG_TYPE_SK_REUSEPORT flow dissector 4.20 d58e468b1112 BPF_PROG_TYPE_FLOW_DISSECTOR cgroup sysctl 5.2 7b146cebe30c BPF_PROG_TYPE_CGROUP_SYSCTL writable raw tracepoints 5.2 9df1c28bb752 BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE cgroup getsockopt/setsockopt 5.3 0d01da6afc54 BPF_PROG_TYPE_CGROUP_SOCKOPT Tracing (BTF/BPF trampoline) 5.5 f1b9509c2fb0 BPF_PROG_TYPE_TRACING struct ops 5.6 27ae7997a661 BPF_PROG_TYPE_STRUCT_OPS extensions 5.6 be8704ff07d2 BPF_PROG_TYPE_EXT LSM 5.7 fc611f47f218 BPF_PROG_TYPE_LSM lookup listening socket 5.9 e9ddbb7707ff BPF_PROG_TYPE_SK_LOOKUP Allow executing syscalls 5.15 79a7f8bdb159 BPF_PROG_TYPE_SYSCALL","breadcrumbs":"BPF Features by Linux Kernel Version » Program types","id":"118","title":"Program types"},"119":{"body":"","breadcrumbs":"BPF Features by Linux Kernel Version » Maps ( a.k.a. Tables, in BCC lingo)","id":"119","title":"Maps ( a.k.a. Tables, in BCC lingo)"},"12":{"body":"eBPF 介绍: https://ebpf.io/ BPF Compiler Collection (BCC): https://github.com/iovisor/bcc eunomia-bpf: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 参考资料","id":"12","title":"参考资料"},"120":{"body":"The list of map types supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep -W 'bpf_map_type {' include/uapi/linux/bpf.h Map type Kernel version Commit Enum Hash 3.19 0f8e4bd8a1fc BPF_MAP_TYPE_HASH Array 3.19 28fbcfa08d8e BPF_MAP_TYPE_ARRAY Prog array 4.2 04fd61ab36ec BPF_MAP_TYPE_PROG_ARRAY Perf events 4.3 ea317b267e9d BPF_MAP_TYPE_PERF_EVENT_ARRAY Per-CPU hash 4.6 824bd0ce6c7c BPF_MAP_TYPE_PERCPU_HASH Per-CPU array 4.6 a10423b87a7e BPF_MAP_TYPE_PERCPU_ARRAY Stack trace 4.6 d5a3b1f69186 BPF_MAP_TYPE_STACK_TRACE cgroup array 4.8 4ed8ec521ed5 BPF_MAP_TYPE_CGROUP_ARRAY LRU hash 4.10 29ba732acbee 3a08c2fd7634 BPF_MAP_TYPE_LRU_HASH LRU per-CPU hash 4.10 8f8449384ec3 961578b63474 BPF_MAP_TYPE_LRU_PERCPU_HASH LPM trie (longest-prefix match) 4.11 b95a5c4db09b BPF_MAP_TYPE_LPM_TRIE Array of maps 4.12 56f668dfe00d BPF_MAP_TYPE_ARRAY_OF_MAPS Hash of maps 4.12 bcc6b1b7ebf8 BPF_MAP_TYPE_HASH_OF_MAPS Netdevice references (array) 4.14 546ac1ffb70d BPF_MAP_TYPE_DEVMAP Socket references (array) 4.14 174a79ff9515 BPF_MAP_TYPE_SOCKMAP CPU references 4.15 6710e1126934 BPF_MAP_TYPE_CPUMAP AF_XDP socket (XSK) references 4.18 fbfc504a24f5 BPF_MAP_TYPE_XSKMAP Socket references (hashmap) 4.18 81110384441a BPF_MAP_TYPE_SOCKHASH cgroup storage 4.19 de9cbbaadba5 BPF_MAP_TYPE_CGROUP_STORAGE reuseport sockarray 4.19 5dc4c4b7d4e8 BPF_MAP_TYPE_REUSEPORT_SOCKARRAY precpu cgroup storage 4.20 b741f1630346 BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE queue 4.20 f1a2e44a3aec BPF_MAP_TYPE_QUEUE stack 4.20 f1a2e44a3aec BPF_MAP_TYPE_STACK socket local storage 5.2 6ac99e8f23d4 BPF_MAP_TYPE_SK_STORAGE Netdevice references (hashmap) 5.4 6f9d451ab1a3 BPF_MAP_TYPE_DEVMAP_HASH struct ops 5.6 85d33df357b6 BPF_MAP_TYPE_STRUCT_OPS ring buffer 5.8 457f44363a88 BPF_MAP_TYPE_RINGBUF inode storage 5.10 8ea636848aca BPF_MAP_TYPE_INODE_STORAGE task storage 5.11 4cf1bc1f1045 BPF_MAP_TYPE_TASK_STORAGE Bloom filter 5.16 9330986c0300 BPF_MAP_TYPE_BLOOM_FILTER user ringbuf 6.1 583c1f420173 BPF_MAP_TYPE_USER_RINGBUF","breadcrumbs":"BPF Features by Linux Kernel Version » Map types","id":"120","title":"Map types"},"121":{"body":"Some (but not all) of these API features translate to a subcommand beginning with BPF_MAP_. The list of subcommands supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep -W 'bpf_cmd {' include/uapi/linux/bpf.h Feature Kernel version Commit Basic operations (lookup, update, delete, GET_NEXT_KEY) 3.18 db20fd2b0108 Pass flags to UPDATE_ELEM 3.19 3274f52073d8 Pre-alloc map memory by default 4.6 6c9059817432 Pass NULL to GET_NEXT_KEY 4.12 8fe45924387b Creation: select NUMA node 4.14 96eabe7a40aa Restrict access from syscall side 4.15 6e71b04a8224 Creation: specify map name 4.15 ad5b177bd73f LOOKUP_AND_DELETE_ELEM 4.20 bd513cd08f10 Creation: BPF_F_ZERO_SEED 5.0 96b3b6c9091d BPF_F_LOCK flag for lookup / update 5.1 96049f3afd50 Restrict access from BPF side 5.2 591fe9888d78 FREEZE 5.2 87df15de441b mmap() support for array maps 5.5 fc9702273e2e LOOKUP_BATCH 5.6 cb4d03ab499d UPDATE_BATCH, DELETE_BATCH 5.6 aa2e93b8e58e LOOKUP_AND_DELETE_BATCH 5.6 057996380a42 LOOKUP_AND_DELETE_ELEM support for hash maps 5.14 3e87f192b405","breadcrumbs":"BPF Features by Linux Kernel Version » Map userspace API","id":"121","title":"Map userspace API"},"122":{"body":"An approximate list of drivers or components supporting XDP programs for your kernel can be retrieved with: git grep -l XDP_SETUP_PROG drivers/ Feature / Driver Kernel version Commit XDP core architecture 4.8 6a773a15a1e8 Action: drop 4.8 6a773a15a1e8 Action: pass on to stack 4.8 6a773a15a1e8 Action: direct forwarding (on same port) 4.8 6ce96ca348a9 Direct packet data write 4.8 4acf6c0b84c9 Mellanox mlx4 driver 4.8 47a38e155037 Mellanox mlx5 driver 4.9 86994156c736 Netronome nfp driver 4.10 ecd63a0217d5 QLogic (Cavium) qed* drivers 4.10 496e05170958 virtio_net driver 4.10 f600b6905015 Broadcom bnxt_en driver 4.11 c6d30e8391b8 Intel ixgbe* drivers 4.12 924708081629 Cavium thunderx driver 4.12 05c773f52b96 Generic XDP 4.12 b5cdae3291f7 Intel i40e driver 4.13 0c8493d90b6b Action: redirect 4.14 6453073987ba Support for tap 4.14 761876c857cb Support for veth 4.14 d445516966dc Intel ixgbevf driver 4.17 c7aec59657b6 Freescale dpaa2 driver 5.0 7e273a8ebdd3 Socionext netsec driver 5.3 ba2b232108d3 TI cpsw driver 5.3 9ed4050c0d75 Intel ice driver 5.5 efc2214b6047 Solarflare sfc driver 5.5 eb9a36be7f3e Marvell mvneta driver 5.5 0db51da7a8e9 Microsoft hv_netvsc driver 5.6 351e1581395f Amazon ena driver 5.6 838c93dc5449 xen-netfront driver 5.9 6c5aa6fc4def Intel igb driver 5.10 9cbc948b5a20","breadcrumbs":"BPF Features by Linux Kernel Version » XDP","id":"122","title":"XDP"},"123":{"body":"The list of helpers supported in your kernel can be found in file include/uapi/linux/bpf.h : git grep '\tFN(' include/uapi/linux/bpf.h Alphabetical order Helper Kernel version License Commit BPF_FUNC_bind() 4.17 d74bad4e74ee BPF_FUNC_bprm_opts_set() 5.11 3f6719c7b62f BPF_FUNC_btf_find_by_name_kind() 5.14 3d78417b60fb BPF_FUNC_cgrp_storage_delete() 6.2 c4bcfb38a95e BPF_FUNC_cgrp_storage_get() 6.2 c4bcfb38a95e BPF_FUNC_check_mtu() 5.12 34b2021cc616 BPF_FUNC_clone_redirect() 4.2 3896d655f4d4 BPF_FUNC_copy_from_user() 5.10 07be4c4a3e7a BPF_FUNC_copy_from_user_task() 5.18 GPL 376040e47334 BPF_FUNC_csum_diff() 4.6 7d672345ed29 BPF_FUNC_csum_level() 5.7 7cdec54f9713 BPF_FUNC_csum_update() 4.9 36bbef52c7eb BPF_FUNC_current_task_under_cgroup() 4.9 60d20f9195b2 BPF_FUNC_d_path() 5.10 6e22ab9da793 BPF_FUNC_dynptr_data() 5.19 34d4ef5775f7 BPF_FUNC_dynptr_from_mem() 5.19 263ae152e962 BPF_FUNC_dynptr_read() 5.19 13bbbfbea759 BPF_FUNC_dynptr_write() 5.19 13bbbfbea759 BPF_FUNC_fib_lookup() 4.18 GPL 87f5fc7e48dd BPF_FUNC_find_vma() 5.17 7c7e3d31e785 BPF_FUNC_for_each_map_elem() 5.13 69c087ba6225 BPF_FUNC_get_attach_cookie() 5.15 7adfc6c9b315 BPF_FUNC_get_branch_snapshot() 5.16 GPL 856c02dbce4f BPF_FUNC_get_current_ancestor_cgroup_id() 5.6 b4490c5c4e02 BPF_FUNC_get_cgroup_classid() 4.3 8d20aabe1c76 BPF_FUNC_get_current_cgroup_id() 4.18 bf6fa2c893c5 BPF_FUNC_get_current_comm() 4.2 ffeedafbf023 BPF_FUNC_get_current_pid_tgid() 4.2 ffeedafbf023 BPF_FUNC_get_current_task() 4.8 GPL 606274c5abd8 BPF_FUNC_get_current_task_btf() 5.11 GPL 3ca1032ab7ab BPF_FUNC_get_current_uid_gid() 4.2 ffeedafbf023 BPF_FUNC_get_func_arg() 5.17 f92c1e183604 BPF_FUNC_get_func_arg_cnt() 5.17 f92c1e183604 BPF_FUNC_get_func_ip() 5.15 5d8b583d04ae BPF_FUNC_get_func_ret() 5.17 f92c1e183604 BPF_FUNC_get_retval() 5.18 b44123b4a3dc BPF_FUNC_get_hash_recalc() 4.8 13c5c240f789 BPF_FUNC_get_listener_sock() 5.1 dbafd7ddd623 BPF_FUNC_get_local_storage() 4.19 cd3394317653 BPF_FUNC_get_netns_cookie() 5.7 f318903c0bf4 BPF_FUNC_get_ns_current_pid_tgid() 5.7 b4490c5c4e02 BPF_FUNC_get_numa_node_id() 4.10 2d0e30c30f84 BPF_FUNC_get_prandom_u32() 4.1 03e69b508b6f BPF_FUNC_get_route_realm() 4.4 c46646d0484f BPF_FUNC_get_smp_processor_id() 4.1 c04167ce2ca0 BPF_FUNC_get_socket_cookie() 4.12 91b8270f2a4d BPF_FUNC_get_socket_uid() 4.12 6acc5c291068 BPF_FUNC_get_stack() 4.18 GPL de2ff05f48af BPF_FUNC_get_stackid() 4.6 GPL d5a3b1f69186 BPF_FUNC_get_task_stack() 5.9 fa28dcb82a38 BPF_FUNC_getsockopt() 4.15 cd86d1fd2102 BPF_FUNC_ima_file_hash() 5.18 174b16946e39 BPF_FUNC_ima_inode_hash() 5.11 27672f0d280a BPF_FUNC_inode_storage_delete() 5.10 8ea636848aca BPF_FUNC_inode_storage_get() 5.10 8ea636848aca BPF_FUNC_jiffies64() 5.5 5576b991e9c1 BPF_FUNC_kallsyms_lookup_name() 5.16 d6aef08a872b BPF_FUNC_kptr_xchg() 5.19 c0a5a21c25f3 BPF_FUNC_ktime_get_boot_ns() 5.8 71d19214776e BPF_FUNC_ktime_get_coarse_ns() 5.11 d05512618056 BPF_FUNC_ktime_get_ns() 4.1 d9847d310ab4 BPF_FUNC_ktime_get_tai_ns() 6.1 c8996c98f703 BPF_FUNC_l3_csum_replace() 4.1 91bc4822c3d6 BPF_FUNC_l4_csum_replace() 4.1 91bc4822c3d6 BPF_FUNC_load_hdr_opt() 5.10 0813a841566f BPF_FUNC_loop() 5.17 e6f2dd0f8067 BPF_FUNC_lwt_push_encap() 4.18 fe94cc290f53 BPF_FUNC_lwt_seg6_action() 4.18 fe94cc290f53 BPF_FUNC_lwt_seg6_adjust_srh() 4.18 fe94cc290f53 BPF_FUNC_lwt_seg6_store_bytes() 4.18 fe94cc290f53 BPF_FUNC_map_delete_elem() 3.19 d0003ec01c66 BPF_FUNC_map_lookup_elem() 3.19 d0003ec01c66 BPF_FUNC_map_lookup_percpu_elem() 5.19 07343110b293 BPF_FUNC_map_peek_elem() 4.20 f1a2e44a3aec BPF_FUNC_map_pop_elem() 4.20 f1a2e44a3aec BPF_FUNC_map_push_elem() 4.20 f1a2e44a3aec BPF_FUNC_map_update_elem() 3.19 d0003ec01c66 BPF_FUNC_msg_apply_bytes() 4.17 2a100317c9eb BPF_FUNC_msg_cork_bytes() 4.17 91843d540a13 BPF_FUNC_msg_pop_data() 5.0 7246d8ed4dcc BPF_FUNC_msg_pull_data() 4.17 015632bb30da BPF_FUNC_msg_push_data() 4.20 6fff607e2f14 BPF_FUNC_msg_redirect_hash() 4.18 81110384441a BPF_FUNC_msg_redirect_map() 4.17 4f738adba30a BPF_FUNC_per_cpu_ptr() 5.10 eaa6bcb71ef6 BPF_FUNC_perf_event_output() 4.4 GPL a43eec304259 BPF_FUNC_perf_event_read() 4.3 GPL 35578d798400 BPF_FUNC_perf_event_read_value() 4.15 GPL 908432ca84fc BPF_FUNC_perf_prog_read_value() 4.15 GPL 4bebdc7a85aa BPF_FUNC_probe_read() 4.1 GPL 2541517c32be BPF_FUNC_probe_read_kernel() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_kernel_str() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_user() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_user_str() 5.5 GPL 6ae08ae3dea2 BPF_FUNC_probe_read_str() 4.11 GPL a5e8c07059d0 BPF_FUNC_probe_write_user() 4.8 GPL 96ae52279594 BPF_FUNC_rc_keydown() 4.18 GPL f4364dcfc86d BPF_FUNC_rc_pointer_rel() 5.0 GPL 01d3240a04f4 BPF_FUNC_rc_repeat() 4.18 GPL f4364dcfc86d BPF_FUNC_read_branch_records() 5.6 GPL fff7b64355ea BPF_FUNC_redirect() 4.4 27b29f63058d BPF_FUNC_redirect_map() 4.14 97f91a7cf04f BPF_FUNC_redirect_neigh() 5.10 b4ab31414970 BPF_FUNC_redirect_peer() 5.10 9aa1206e8f48 BPF_FUNC_reserve_hdr_opt() 5.10 0813a841566f BPF_FUNC_ringbuf_discard() 5.8 457f44363a88 BPF_FUNC_ringbuf_discard_dynptr() 5.19 bc34dee65a65 BPF_FUNC_ringbuf_output() 5.8 457f44363a88 BPF_FUNC_ringbuf_query() 5.8 457f44363a88 BPF_FUNC_ringbuf_reserve() 5.8 457f44363a88 BPF_FUNC_ringbuf_reserve_dynptr() 5.19 bc34dee65a65 BPF_FUNC_ringbuf_submit() 5.8 457f44363a88 BPF_FUNC_ringbuf_submit_dynptr() 5.19 bc34dee65a65 BPF_FUNC_send_signal() 5.3 8b401f9ed244 BPF_FUNC_send_signal_thread() 5.5 8482941f0906 BPF_FUNC_seq_printf() 5.7 GPL 492e639f0c22 BPF_FUNC_seq_printf_btf() 5.10 eb411377aed9 BPF_FUNC_seq_write() 5.7 GPL 492e639f0c22 BPF_FUNC_set_hash() 4.13 ded092cd73c2 BPF_FUNC_set_hash_invalid() 4.9 7a4b28c6cc9f BPF_FUNC_set_retval() 5.18 b44123b4a3dc BPF_FUNC_setsockopt() 4.13 8c4b4c7e9ff0 BPF_FUNC_sk_ancestor_cgroup_id() 5.7 f307fa2cb4c9 BPF_FUNC_sk_assign() 5.6 cf7fbe660f2d BPF_FUNC_sk_cgroup_id() 5.7 f307fa2cb4c9 BPF_FUNC_sk_fullsock() 5.1 46f8bc92758c BPF_FUNC_sk_lookup_tcp() 4.20 6acc9b432e67 BPF_FUNC_sk_lookup_udp() 4.20 6acc9b432e67 BPF_FUNC_sk_redirect_hash() 4.18 81110384441a BPF_FUNC_sk_redirect_map() 4.14 174a79ff9515 BPF_FUNC_sk_release() 4.20 6acc9b432e67 BPF_FUNC_sk_select_reuseport() 4.19 2dbb9b9e6df6 BPF_FUNC_sk_storage_delete() 5.2 6ac99e8f23d4 BPF_FUNC_sk_storage_get() 5.2 6ac99e8f23d4 BPF_FUNC_skb_adjust_room() 4.13 2be7e212d541 BPF_FUNC_skb_ancestor_cgroup_id() 4.19 7723628101aa BPF_FUNC_skb_change_head() 4.10 3a0af8fd61f9 BPF_FUNC_skb_change_proto() 4.8 6578171a7ff0 BPF_FUNC_skb_change_tail() 4.9 5293efe62df8 BPF_FUNC_skb_change_type() 4.8 d2485c4242a8 BPF_FUNC_skb_cgroup_classid() 5.10 b426ce83baa7 BPF_FUNC_skb_cgroup_id() 4.18 cb20b08ead40 BPF_FUNC_skb_ecn_set_ce() 5.1 f7c917ba11a6 BPF_FUNC_skb_get_tunnel_key() 4.3 d3aa45ce6b94 BPF_FUNC_skb_get_tunnel_opt() 4.6 14ca0751c96f BPF_FUNC_skb_get_xfrm_state() 4.18 12bed760a78d BPF_FUNC_skb_load_bytes() 4.5 05c74e5e53f6 BPF_FUNC_skb_load_bytes_relative() 4.18 4e1ec56cdc59 BPF_FUNC_skb_output() 5.5 a7658e1a4164 BPF_FUNC_skb_pull_data() 4.9 36bbef52c7eb BPF_FUNC_skb_set_tstamp() 5.18 9bb984f28d5b BPF_FUNC_skb_set_tunnel_key() 4.3 d3aa45ce6b94 BPF_FUNC_skb_set_tunnel_opt() 4.6 14ca0751c96f BPF_FUNC_skb_store_bytes() 4.1 91bc4822c3d6 BPF_FUNC_skb_under_cgroup() 4.8 4a482f34afcc BPF_FUNC_skb_vlan_pop() 4.3 4e10df9a60d9 BPF_FUNC_skb_vlan_push() 4.3 4e10df9a60d9 BPF_FUNC_skc_lookup_tcp() 5.2 edbf8c01de5a BPF_FUNC_skc_to_mctcp_sock() 5.19 3bc253c2e652 BPF_FUNC_skc_to_tcp_sock() 5.9 478cfbdf5f13 BPF_FUNC_skc_to_tcp_request_sock() 5.9 478cfbdf5f13 BPF_FUNC_skc_to_tcp_timewait_sock() 5.9 478cfbdf5f13 BPF_FUNC_skc_to_tcp6_sock() 5.9 af7ec1383361 BPF_FUNC_skc_to_udp6_sock() 5.9 0d4fad3e57df BPF_FUNC_skc_to_unix_sock() 5.16 9eeb3aa33ae0 BPF_FUNC_snprintf() 5.13 7b15523a989b BPF_FUNC_snprintf_btf() 5.10 c4d0bfb45068 BPF_FUNC_sock_from_file() 5.11 4f19cab76136 BPF_FUNC_sock_hash_update() 4.18 81110384441a BPF_FUNC_sock_map_update() 4.14 174a79ff9515 BPF_FUNC_spin_lock() 5.1 d83525ca62cf BPF_FUNC_spin_unlock() 5.1 d83525ca62cf BPF_FUNC_store_hdr_opt() 5.10 0813a841566f BPF_FUNC_strncmp() 5.17 c5fb19937455 BPF_FUNC_strtol() 5.2 d7a4cb9b6705 BPF_FUNC_strtoul() 5.2 d7a4cb9b6705 BPF_FUNC_sys_bpf() 5.14 79a7f8bdb159 BPF_FUNC_sys_close() 5.14 3abea089246f BPF_FUNC_sysctl_get_current_value() 5.2 1d11b3016cec BPF_FUNC_sysctl_get_name() 5.2 808649fb787d BPF_FUNC_sysctl_get_new_value() 5.2 4e63acdff864 BPF_FUNC_sysctl_set_new_value() 5.2 4e63acdff864 BPF_FUNC_tail_call() 4.2 04fd61ab36ec BPF_FUNC_task_pt_regs() 5.15 GPL dd6e10fbd9f BPF_FUNC_task_storage_delete() 5.11 4cf1bc1f1045 BPF_FUNC_task_storage_get() 5.11 4cf1bc1f1045 BPF_FUNC_tcp_check_syncookie() 5.2 399040847084 BPF_FUNC_tcp_gen_syncookie() 5.3 70d66244317e BPF_FUNC_tcp_raw_check_syncookie_ipv4() 6.0 33bf9885040c BPF_FUNC_tcp_raw_check_syncookie_ipv6() 6.0 33bf9885040c BPF_FUNC_tcp_raw_gen_syncookie_ipv4() 6.0 33bf9885040c BPF_FUNC_tcp_raw_gen_syncookie_ipv6() 6.0 33bf9885040c BPF_FUNC_tcp_send_ack() 5.5 206057fe020a BPF_FUNC_tcp_sock() 5.1 655a51e536c0 BPF_FUNC_this_cpu_ptr() 5.10 63d9b80dcf2c BPF_FUNC_timer_init() 5.15 b00628b1c7d5 BPF_FUNC_timer_set_callback() 5.15 b00628b1c7d5 BPF_FUNC_timer_start() 5.15 b00628b1c7d5 BPF_FUNC_timer_cancel() 5.15 b00628b1c7d5 BPF_FUNC_trace_printk() 4.1 GPL 9c959c863f82 BPF_FUNC_trace_vprintk() 5.16 GPL 10aceb629e19 BPF_FUNC_user_ringbuf_drain() 6.1 205715673844 BPF_FUNC_xdp_adjust_head() 4.10 17bedab27231 BPF_FUNC_xdp_adjust_meta() 4.15 de8f3a83b0a0 BPF_FUNC_xdp_adjust_tail() 4.18 b32cc5b9a346 BPF_FUNC_xdp_get_buff_len() 5.18 0165cc817075 BPF_FUNC_xdp_load_bytes() 5.18 3f364222d032 BPF_FUNC_xdp_store_bytes() 5.18 3f364222d032 BPF_FUNC_xdp_output() 5.6 GPL d831ee84bfc9 BPF_FUNC_override_return() 4.16 GPL 9802d86585db BPF_FUNC_sock_ops_cb_flags_set() 4.16 b13d88072172 Note: GPL-only BPF helpers require a GPL-compatible license. The current licenses considered GPL-compatible by the kernel are: GPL GPL v2 GPL and additional rights Dual BSD/GPL Dual MIT/GPL Dual MPL/GPL Check the list of GPL-compatible licenses in your kernel source code .","breadcrumbs":"BPF Features by Linux Kernel Version » Helpers","id":"123","title":"Helpers"},"124":{"body":"The list of program types and supported helper functions can be retrieved with: git grep -W 'func_proto(enum bpf_func_id func_id' kernel/ net/ drivers/ Program Type Helper Functions BPF_PROG_TYPE_SOCKET_FILTER BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_load_bytes_relative() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() BPF_FUNC_perf_event_output() Base functions BPF_PROG_TYPE_KPROBE BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_perf_event_read_value() BPF_FUNC_override_return() Tracing functions BPF_PROG_TYPE_SCHED_CLS BPF_PROG_TYPE_SCHED_ACT BPF_FUNC_skb_store_bytes() BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_load_bytes_relative() BPF_FUNC_skb_pull_data() BPF_FUNC_csum_diff() BPF_FUNC_csum_update() BPF_FUNC_l3_csum_replace() BPF_FUNC_l4_csum_replace() BPF_FUNC_clone_redirect() BPF_FUNC_get_cgroup_classid() BPF_FUNC_skb_vlan_push() BPF_FUNC_skb_vlan_pop() BPF_FUNC_skb_change_proto() BPF_FUNC_skb_change_type() BPF_FUNC_skb_adjust_room() BPF_FUNC_skb_change_tail() BPF_FUNC_skb_get_tunnel_key() BPF_FUNC_skb_set_tunnel_key() BPF_FUNC_skb_get_tunnel_opt() BPF_FUNC_skb_set_tunnel_opt() BPF_FUNC_redirect() BPF_FUNC_get_route_realm() BPF_FUNC_get_hash_recalc() BPF_FUNC_set_hash_invalid() BPF_FUNC_set_hash() BPF_FUNC_perf_event_output() BPF_FUNC_get_smp_processor_id() BPF_FUNC_skb_under_cgroup() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() BPF_FUNC_fib_lookup() BPF_FUNC_skb_get_xfrm_state() BPF_FUNC_skb_cgroup_id() Base functions BPF_PROG_TYPE_TRACEPOINT BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_d_path() Tracing functions BPF_PROG_TYPE_XDP BPF_FUNC_perf_event_output() BPF_FUNC_get_smp_processor_id() BPF_FUNC_csum_diff() BPF_FUNC_xdp_adjust_head() BPF_FUNC_xdp_adjust_meta() BPF_FUNC_redirect() BPF_FUNC_redirect_map() BPF_FUNC_xdp_adjust_tail() BPF_FUNC_fib_lookup() Base functions BPF_PROG_TYPE_PERF_EVENT BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_perf_prog_read_value() Tracing functions BPF_PROG_TYPE_CGROUP_SKB BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_load_bytes_relative() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() Base functions BPF_PROG_TYPE_CGROUP_SOCK BPF_FUNC_get_current_uid_gid() Base functions BPF_PROG_TYPE_LWT_IN BPF_FUNC_lwt_push_encap() LWT functions Base functions BPF_PROG_TYPE_LWT_OUT LWT functions Base functions BPF_PROG_TYPE_LWT_XMIT BPF_FUNC_skb_get_tunnel_key() BPF_FUNC_skb_set_tunnel_key() BPF_FUNC_skb_get_tunnel_opt() BPF_FUNC_skb_set_tunnel_opt() BPF_FUNC_redirect() BPF_FUNC_clone_redirect() BPF_FUNC_skb_change_tail() BPF_FUNC_skb_change_head() BPF_FUNC_skb_store_bytes() BPF_FUNC_csum_update() BPF_FUNC_l3_csum_replace() BPF_FUNC_l4_csum_replace() BPF_FUNC_set_hash_invalid() LWT functions BPF_PROG_TYPE_SOCK_OPS BPF_FUNC_setsockopt() BPF_FUNC_getsockopt() BPF_FUNC_sock_ops_cb_flags_set() BPF_FUNC_sock_map_update() BPF_FUNC_sock_hash_update() BPF_FUNC_get_socket_cookie() Base functions BPF_PROG_TYPE_SK_SKB BPF_FUNC_skb_store_bytes() BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_pull_data() BPF_FUNC_skb_change_tail() BPF_FUNC_skb_change_head() BPF_FUNC_get_socket_cookie() BPF_FUNC_get_socket_uid() BPF_FUNC_sk_redirect_map() BPF_FUNC_sk_redirect_hash() BPF_FUNC_sk_lookup_tcp() BPF_FUNC_sk_lookup_udp() BPF_FUNC_sk_release() Base functions BPF_PROG_TYPE_CGROUP_DEVICE BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_get_current_uid_gid() BPF_FUNC_trace_printk() BPF_PROG_TYPE_SK_MSG BPF_FUNC_msg_redirect_map() BPF_FUNC_msg_redirect_hash() BPF_FUNC_msg_apply_bytes() BPF_FUNC_msg_cork_bytes() BPF_FUNC_msg_pull_data() BPF_FUNC_msg_push_data() BPF_FUNC_msg_pop_data() Base functions BPF_PROG_TYPE_RAW_TRACEPOINT BPF_FUNC_perf_event_output() BPF_FUNC_get_stackid() BPF_FUNC_get_stack() BPF_FUNC_skb_output() Tracing functions BPF_PROG_TYPE_CGROUP_SOCK_ADDR BPF_FUNC_get_current_uid_gid() BPF_FUNC_bind() BPF_FUNC_get_socket_cookie() Base functions BPF_PROG_TYPE_LWT_SEG6LOCAL BPF_FUNC_lwt_seg6_store_bytes() BPF_FUNC_lwt_seg6_action() BPF_FUNC_lwt_seg6_adjust_srh() LWT functions BPF_PROG_TYPE_LIRC_MODE2 BPF_FUNC_rc_repeat() BPF_FUNC_rc_keydown() BPF_FUNC_rc_pointer_rel() BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_ktime_get_ns() BPF_FUNC_tail_call() BPF_FUNC_get_prandom_u32() BPF_FUNC_trace_printk() BPF_PROG_TYPE_SK_REUSEPORT BPF_FUNC_sk_select_reuseport() BPF_FUNC_skb_load_bytes() BPF_FUNC_load_bytes_relative() Base functions BPF_PROG_TYPE_FLOW_DISSECTOR BPF_FUNC_skb_load_bytes() Base functions Function Group Functions Base functions BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_map_peek_elem() BPF_FUNC_map_pop_elem() BPF_FUNC_map_push_elem() BPF_FUNC_get_prandom_u32() BPF_FUNC_get_smp_processor_id() BPF_FUNC_get_numa_node_id() BPF_FUNC_tail_call() BPF_FUNC_ktime_get_boot_ns() BPF_FUNC_ktime_get_ns() BPF_FUNC_trace_printk() BPF_FUNC_spin_lock() BPF_FUNC_spin_unlock() Tracing functions BPF_FUNC_map_lookup_elem() BPF_FUNC_map_update_elem() BPF_FUNC_map_delete_elem() BPF_FUNC_probe_read() BPF_FUNC_ktime_get_boot_ns() BPF_FUNC_ktime_get_ns() BPF_FUNC_tail_call() BPF_FUNC_get_current_pid_tgid() BPF_FUNC_get_current_task() BPF_FUNC_get_current_uid_gid() BPF_FUNC_get_current_comm() BPF_FUNC_trace_printk() BPF_FUNC_get_smp_processor_id() BPF_FUNC_get_numa_node_id() BPF_FUNC_perf_event_read() BPF_FUNC_probe_write_user() BPF_FUNC_current_task_under_cgroup() BPF_FUNC_get_prandom_u32() BPF_FUNC_probe_read_str() BPF_FUNC_get_current_cgroup_id() BPF_FUNC_send_signal() BPF_FUNC_probe_read_kernel() BPF_FUNC_probe_read_kernel_str() BPF_FUNC_probe_read_user() BPF_FUNC_probe_read_user_str() BPF_FUNC_send_signal_thread() BPF_FUNC_get_ns_current_pid_tgid() BPF_FUNC_xdp_output() BPF_FUNC_get_task_stack() LWT functions BPF_FUNC_skb_load_bytes() BPF_FUNC_skb_pull_data() BPF_FUNC_csum_diff() BPF_FUNC_get_cgroup_classid() BPF_FUNC_get_route_realm() BPF_FUNC_get_hash_recalc() BPF_FUNC_perf_event_output() BPF_FUNC_get_smp_processor_id() BPF_FUNC_skb_under_cgroup()","breadcrumbs":"BPF Features by Linux Kernel Version » Program Types","id":"124","title":"Program Types"},"125":{"body":"","breadcrumbs":"Kernel Configuration for BPF Features » Kernel Configuration for BPF Features","id":"125","title":"Kernel Configuration for BPF Features"},"126":{"body":"Functionalities Kernel Configuration Description Basic CONFIG_BPF_SYSCALL Enable the bpf() system call CONFIG_BPF_JIT BPF programs are normally handled by a BPF interpreter. This option allows the kernel to generate native code when a program is loaded into the kernel. This will significantly speed-up processing of BPF programs CONFIG_HAVE_BPF_JIT Enable BPF Just In Time compiler CONFIG_HAVE_EBPF_JIT Extended BPF JIT (eBPF) CONFIG_HAVE_CBPF_JIT Classic BPF JIT (cBPF) CONFIG_MODULES Enable to build loadable kernel modules CONFIG_BPF BPF VM interpreter CONFIG_BPF_EVENTS Allow the user to attach BPF programs to kprobe, uprobe, and tracepoint events CONFIG_PERF_EVENTS Kernel performance events and counters CONFIG_HAVE_PERF_EVENTS Enable perf events CONFIG_PROFILING Enable the extended profiling support mechanisms used by profilers BTF CONFIG_DEBUG_INFO_BTF Generate deduplicated BTF type information from DWARF debug info CONFIG_PAHOLE_HAS_SPLIT_BTF Generate BTF for each selected kernel module CONFIG_DEBUG_INFO_BTF_MODULES Generate compact split BTF type information for kernel modules Security CONFIG_BPF_JIT_ALWAYS_ON Enable BPF JIT and removes BPF interpreter to avoid speculative execution CONFIG_BPF_UNPRIV_DEFAULT_OFF Disable unprivileged BPF by default by setting Cgroup CONFIG_CGROUP_BPF Support for BPF programs attached to cgroups Network CONFIG_BPFILTER BPF based packet filtering framework (BPFILTER) CONFIG_BPFILTER_UMH This builds bpfilter kernel module with embedded user mode helper CONFIG_NET_CLS_BPF BPF-based classifier - to classify packets based on programmable BPF (JIT'ed) filters as an alternative to ematches CONFIG_NET_ACT_BPF Execute BPF code on packets. The BPF code will decide if the packet should be dropped or not CONFIG_BPF_STREAM_PARSER Enable this to allow a TCP stream parser to be used with BPF_MAP_TYPE_SOCKMAP CONFIG_LWTUNNEL_BPF Allow to run BPF programs as a nexthop action following a route lookup for incoming and outgoing packets CONFIG_NETFILTER_XT_MATCH_BPF BPF matching applies a linux socket filter to each packet and accepts those for which the filter returns non-zero CONFIG_IPV6_SEG6_BPF To support BPF seg6local hook. bpf: Add IPv6 Segment Routing helpersy. Reference kprobes CONFIG_KPROBE_EVENTS This allows the user to add tracing events (similar to tracepoints) on the fly via the ftrace interface CONFIG_KPROBES Enable kprobes-based dynamic events CONFIG_HAVE_KPROBES Check if krpobes enabled CONFIG_HAVE_REGS_AND_STACK_ACCESS_API This symbol should be selected by an architecture if it supports the API needed to access registers and stack entries from pt_regs. For example the kprobes-based event tracer needs this API. CONFIG_KPROBES_ON_FTRACE Have kprobes on function tracer if arch supports full passing of pt_regs to function tracing kprobe multi CONFIG_FPROBE Enable fprobe to attach the probe on multiple functions at once kprobe override CONFIG_BPF_KPROBE_OVERRIDE Enable BPF programs to override a kprobed function uprobes CONFIG_UPROBE_EVENTS Enable uprobes-based dynamic events CONFIG_ARCH_SUPPORTS_UPROBES Arch specific uprobes support CONFIG_UPROBES Uprobes is the user-space counterpart to kprobes: they enable instrumentation applications (such as 'perf probe') to establish unintrusive probes in user-space binaries and libraries, by executing handler functions when the probes are hit by user-space applications. CONFIG_MMU MMU-based virtualised addressing space support by paged memory management Tracepoints CONFIG_TRACEPOINTS Enable inserting tracepoints in the kernel and connect to proble functions CONFIG_HAVE_SYSCALL_TRACEPOINTS Enable syscall enter/exit tracing Raw Tracepoints Same as Tracepoints LSM CONFIG_BPF_LSM Enable instrumentation of the security hooks with BPF programs for implementing dynamic MAC and Audit Policies LIRC CONFIG_BPF_LIRC_MODE2 Allow attaching BPF programs to a lirc device","breadcrumbs":"Kernel Configuration for BPF Features » BPF Related Kernel Configurations","id":"126","title":"BPF Related Kernel Configurations"},"127":{"body":"Intended for search (Ctrl-F) and reference. For tutorials, start with tutorial.md . This guide is incomplete. If something feels missing, check the bcc and kernel source. And if you confirm we're missing something, please send a pull request to fix it, and help out everyone.","breadcrumbs":"bcc Reference Guide » bcc Reference Guide","id":"127","title":"bcc Reference Guide"},"128":{"body":"BPF C Events & Arguments 1. kprobes 2. kretprobes 3. Tracepoints 4. uprobes 5. uretprobes 6. USDT probes 7. Raw Tracepoints 8. system call tracepoints 9. kfuncs 10. kretfuncs 11. lsm probes 12. bpf iterators Data 1. bpf_probe_read_kernel() 2. bpf_probe_read_kernel_str() 3. bpf_ktime_get_ns() 4. bpf_get_current_pid_tgid() 5. bpf_get_current_uid_gid() 6. bpf_get_current_comm() 7. bpf_get_current_task() 8. bpf_log2l() 9. bpf_get_prandom_u32() 10. bpf_probe_read_user() 11. bpf_probe_read_user_str() 12. bpf_get_ns_current_pid_tgid() Debugging 1. bpf_override_return() Output 1. bpf_trace_printk() 2. BPF_PERF_OUTPUT 3. perf_submit() 4. perf_submit_skb() 5. BPF_RINGBUF_OUTPUT 6. ringbuf_output() 7. ringbuf_reserve() 8. ringbuf_submit() 9. ringbuf_discard() Maps 1. BPF_TABLE 2. BPF_HASH 3. BPF_ARRAY 4. BPF_HISTOGRAM 5. BPF_STACK_TRACE 6. BPF_PERF_ARRAY 7. BPF_PERCPU_HASH 8. BPF_PERCPU_ARRAY 9. BPF_LPM_TRIE 10. BPF_PROG_ARRAY 11. BPF_DEVMAP 12. BPF_CPUMAP 13. BPF_XSKMAP 14. BPF_ARRAY_OF_MAPS 15. BPF_HASH_OF_MAPS 16. BPF_STACK 17. BPF_QUEUE 18. BPF_SOCKHASH 19. map.lookup() 20. map.lookup_or_try_init() 21. map.delete() 22. map.update() 23. map.insert() 24. map.increment() 25. map.get_stackid() 26. map.perf_read() 27. map.call() 28. map.redirect_map() 29. map.push() 30. map.pop() 31. map.peek() 32. map.sock_hash_update() 33. map.msg_redirect_hash() 34. map.sk_redirect_hash() Licensing Rewriter bcc Python Initialization 1. BPF 2. USDT Events 1. attach_kprobe() 2. attach_kretprobe() 3. attach_tracepoint() 4. attach_uprobe() 5. attach_uretprobe() 6. USDT.enable_probe() 7. attach_raw_tracepoint() 8. attach_raw_socket() 9. attach_xdp() 10. attach_func() 11. detach_func() 12. detach_kprobe() 13. detach_kretprobe() Debug Output 1. trace_print() 2. trace_fields() Output APIs 1. perf_buffer_poll() 2. ring_buffer_poll() 3. ring_buffer_consume() Map APIs 1. get_table() 2. open_perf_buffer() 3. items() 4. values() 5. clear() 6. items_lookup_and_delete_batch() 7. items_lookup_batch() 8. items_delete_batch() 9. items_update_batch() 10. print_log2_hist() 11. print_linear_hist() 12. open_ring_buffer() 13. push() 14. pop() 15. peek() Helpers 1. ksym() 2. ksymname() 3. sym() 4. num_open_kprobes() 5. get_syscall_fnname() BPF Errors 1. Invalid mem access 2. Cannot call GPL only function from proprietary program Environment Variables 1. kernel source directory 2. kernel version overriding","breadcrumbs":"bcc Reference Guide » Contents","id":"128","title":"Contents"},"129":{"body":"This section describes the C part of a bcc program.","breadcrumbs":"bcc Reference Guide » BPF C","id":"129","title":"BPF C"},"13":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第二篇,主要介绍 eBPF 的基本框架和开发流程。 开发 eBPF 程序可以使用多种工具,如 BCC、eunomia-bpf 等。不同的工具有不同的特点,但基本流程大致相同。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » eBPF 入门开发实践教程二:Hello World,基本框架和开发流程","id":"13","title":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程"},"130":{"body":"","breadcrumbs":"bcc Reference Guide » Events & Arguments","id":"130","title":"Events & Arguments"},"131":{"body":"Syntax: kprobe__ kernel_function_name kprobe__ is a special prefix that creates a kprobe (dynamic tracing of a kernel function call) for the kernel function name provided as the remainder. You can also use kprobes by declaring a normal C function, then using the Python BPF.attach_kprobe() (covered later) to associate it with a kernel function. Arguments are specified on the function declaration: kprobe__ kernel_function_name (struct pt_regs *ctx [, argument1 ...]) For example: int kprobe__tcp_v4_connect(struct pt_regs *ctx, struct sock *sk) { [...]\n} This instruments the tcp_v4_connect() kernel function using a kprobe, with the following arguments: struct pt_regs *ctx: Registers and BPF context. struct sock *sk: First argument to tcp_v4_connect(). The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them). Examples in situ: code ( output ), code ( output )","breadcrumbs":"bcc Reference Guide » 1. kprobes","id":"131","title":"1. kprobes"},"132":{"body":"Syntax: kretprobe__ kernel_function_name kretprobe__ is a special prefix that creates a kretprobe (dynamic tracing of a kernel function return) for the kernel function name provided as the remainder. You can also use kretprobes by declaring a normal C function, then using the Python BPF.attach_kretprobe() (covered later) to associate it with a kernel function. Return value is available as PT_REGS_RC(ctx), given a function declaration of: kretprobe__ kernel_function_name (struct pt_regs *ctx) For example: int kretprobe__tcp_v4_connect(struct pt_regs *ctx)\n{ int ret = PT_REGS_RC(ctx); [...]\n} This instruments the return of the tcp_v4_connect() kernel function using a kretprobe, and stores the return value in ret. Examples in situ: code ( output )","breadcrumbs":"bcc Reference Guide » 2. kretprobes","id":"132","title":"2. kretprobes"},"133":{"body":"Syntax: TRACEPOINT_PROBE( category , event ) This is a macro that instruments the tracepoint defined by category : event . The tracepoint name is :. The probe function name is tracepoint____. Arguments are available in an args struct, which are the tracepoint arguments. One way to list these is to cat the relevant format file under /sys/kernel/debug/tracing/events/ category / event /format. The args struct can be used in place of ctx in each functions requiring a context as an argument. This includes notably perf_submit() . For example: TRACEPOINT_PROBE(random, urandom_read) { // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format bpf_trace_printk(\"%d\\\\n\", args->got_bits); return 0;\n} This instruments the tracepoint random:urandom_read tracepoint, and prints the tracepoint argument got_bits. When using Python API, this probe is automatically attached to the right tracepoint target. For C++, this tracepoint probe can be attached by specifying the tracepoint target and function name explicitly: BPF::attach_tracepoint(\"random:urandom_read\", \"tracepoint__random__urandom_read\") Note the name of the probe function defined above is tracepoint__random__urandom_read. Examples in situ: code ( output ), search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. Tracepoints","id":"133","title":"3. Tracepoints"},"134":{"body":"These are instrumented by declaring a normal function in C, then associating it as a uprobe probe in Python via BPF.attach_uprobe() (covered later). Arguments can be examined using PT_REGS_PARM macros. For example: int count(struct pt_regs *ctx) { char buf[64]; bpf_probe_read_user(&buf, sizeof(buf), (void *)PT_REGS_PARM1(ctx)); bpf_trace_printk(\"%s %d\", buf, PT_REGS_PARM2(ctx)); return(0);\n} This reads the first argument as a string, and then prints it with the second argument as an integer. Examples in situ: code","breadcrumbs":"bcc Reference Guide » 4. uprobes","id":"134","title":"4. uprobes"},"135":{"body":"These are instrumented by declaring a normal function in C, then associating it as a uretprobe probe in Python via BPF.attach_uretprobe() (covered later). Return value is available as PT_REGS_RC(ctx), given a function declaration of: function_name (struct pt_regs *ctx) For example: BPF_HISTOGRAM(dist);\nint count(struct pt_regs *ctx) { dist.increment(PT_REGS_RC(ctx)); return 0;\n} This increments the bucket in the dist histogram that is indexed by the return value. Examples in situ: code ( output ), code ( output )","breadcrumbs":"bcc Reference Guide » 5. uretprobes","id":"135","title":"5. uretprobes"},"136":{"body":"These are User Statically-Defined Tracing (USDT) probes, which may be placed in some applications or libraries to provide a user-level equivalent of tracepoints. The primary BPF method provided for USDT support method is enable_probe(). USDT probes are instrumented by declaring a normal function in C, then associating it as a USDT probe in Python via USDT.enable_probe(). Arguments can be read via: bpf_usdt_readarg( index , ctx, &addr) For example: int do_trace(struct pt_regs *ctx) { uint64_t addr; char path[128]; bpf_usdt_readarg(6, ctx, &addr); bpf_probe_read_user(&path, sizeof(path), (void *)addr); bpf_trace_printk(\"path:%s\\\\n\", path); return 0;\n}; This reads the sixth USDT argument, and then pulls it in as a string to path. When initializing USDTs via the third argument of BPF::init in the C API, if any USDT fails to init, entire BPF::init will fail. If you're OK with some USDTs failing to init, use BPF::init_usdt before calling BPF::init. Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 6. USDT probes","id":"136","title":"6. USDT probes"},"137":{"body":"Syntax: RAW_TRACEPOINT_PROBE( event ) This is a macro that instruments the raw tracepoint defined by event . The argument is a pointer to struct bpf_raw_tracepoint_args, which is defined in bpf.h . The struct field args contains all parameters of the raw tracepoint where you can found at linux tree include/trace/events directory. For example: RAW_TRACEPOINT_PROBE(sched_switch)\n{ // TP_PROTO(bool preempt, struct task_struct *prev, struct task_struct *next) struct task_struct *prev = (struct task_struct *)ctx->args[1]; struct task_struct *next= (struct task_struct *)ctx->args[2]; s32 prev_tgid, next_tgid; bpf_probe_read_kernel(&prev_tgid, sizeof(prev->tgid), &prev->tgid); bpf_probe_read_kernel(&next_tgid, sizeof(next->tgid), &next->tgid); bpf_trace_printk(\"%d -> %d\\\\n\", prev_tgid, next_tgid);\n} This instruments the sched:sched_switch tracepoint, and prints the prev and next tgid. Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 7. Raw Tracepoints","id":"137","title":"7. Raw Tracepoints"},"138":{"body":"Syntax: syscall__SYSCALLNAME syscall__ is a special prefix that creates a kprobe for the system call name provided as the remainder. You can use it by declaring a normal C function, then using the Python BPF.get_syscall_fnname(SYSCALLNAME) and BPF.attach_kprobe() to associate it. Arguments are specified on the function declaration: syscall__SYSCALLNAME(struct pt_regs *ctx, [, argument1 ...]). For example: int syscall__execve(struct pt_regs *ctx, const char __user *filename, const char __user *const __user *__argv, const char __user *const __user *__envp)\n{ [...]\n} This instruments the execve system call. The first argument is always struct pt_regs *, the remainder are the arguments to the function (they don't need to be specified, if you don't intend to use them). Corresponding Python code: b = BPF(text=bpf_text)\nexecve_fnname = b.get_syscall_fnname(\"execve\")\nb.attach_kprobe(event=execve_fnname, fn_name=\"syscall__execve\") Examples in situ: code ( output )","breadcrumbs":"bcc Reference Guide » 8. system call tracepoints","id":"138","title":"8. system call tracepoints"},"139":{"body":"Syntax: KFUNC_PROBE( function , typeof(arg1) arg1, typeof(arg2) arge ...) This is a macro that instruments the kernel function via trampoline before the function is executed. It's defined by function name and the function arguments defined as argX . For example: KFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode)\n{ ... This instruments the do_sys_open kernel function and make its arguments accessible as standard argument values. Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 9. kfuncs","id":"139","title":"9. kfuncs"},"14":{"body":"下面以 BCC 工具为例,介绍 eBPF 程序的基本开发流程。 安装编译环境和依赖。使用 BCC 开发 eBPF 程序需要安装 LLVM/Clang 和 bcc,以及其它的依赖库。 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。 编译和加载 eBPF 程序。使用 bcc 工具将 eBPF 程序编译成机器码,然后使用用户态代码加载并运行该程序。 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。用户态程序负责处理这些信息并将结果输出。 结束程序。当 eBPF 程序运行完成后,用户态程序可以卸载并结束运行。 通过这个过程,你可以开发出一个能够在内核中运行的 eBPF 程序。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 开发 eBPF 程序的流程","id":"14","title":"开发 eBPF 程序的流程"},"140":{"body":"Syntax: KRETFUNC_PROBE( event , typeof(arg1) arg1, typeof(arg2) arge ..., int ret) This is a macro that instruments the kernel function via trampoline after the function is executed. It's defined by function name and the function arguments defined as argX . The last argument of the probe is the return value of the instrumented function. For example: KRETFUNC_PROBE(do_sys_open, int dfd, const char *filename, int flags, int mode, int ret)\n{ ... This instruments the do_sys_open kernel function and make its arguments accessible as standard argument values together with its return value. Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 10. kretfuncs","id":"140","title":"10. kretfuncs"},"141":{"body":"Syntax: LSM_PROBE( hook , typeof(arg1) arg1, typeof(arg2) arg2 ...) This is a macro that instruments an LSM hook as a BPF program. It can be used to audit security events and implement MAC security policies in BPF. It is defined by specifying the hook name followed by its arguments. Hook names can be found in include/linux/security.h by taking functions like security_hookname and taking just the hookname part. For example, security_bpf would simply become bpf. Unlike other BPF program types, the return value specified in an LSM probe matters. A return value of 0 allows the hook to succeed, whereas any non-zero return value will cause the hook to fail and deny the security operation. The following example instruments a hook that denies all future BPF operations: LSM_PROBE(bpf, int cmd, union bpf_attr *attr, unsigned int size)\n{ return -EPERM;\n} This instruments the security_bpf hook and causes it to return -EPERM. Changing return -EPERM to return 0 would cause the BPF program to allow the operation instead. LSM probes require at least a 5.7+ kernel with the following configuation options set: CONFIG_BPF_LSM=y CONFIG_LSM comma separated string must contain \"bpf\" (for example, CONFIG_LSM=\"lockdown,yama,bpf\") Examples in situ: search /tests","breadcrumbs":"bcc Reference Guide » 11. LSM Probes","id":"141","title":"11. LSM Probes"},"142":{"body":"Syntax: BPF_ITER(target) This is a macro to define a program signature for a bpf iterator program. The argument target specifies what to iterate for the program. Currently, kernel does not have interface to discover what targets are supported. A good place to find what is supported is in tools/testing/selftests/bpf/prog_test/bpf_iter.c and some sample bpf iter programs are in tools/testing/selftests/bpf/progs with file name prefix bpf_iter . The following example defines a program for target task , which traverses all tasks in the kernel. BPF_ITER(task)\n{ struct seq_file *seq = ctx->meta->seq; struct task_struct *task = ctx->task; if (task == (void *)0) return 0; ... task->pid, task->tgid, task->comm, ... return 0;\n} BPF iterators are introduced in 5.8 kernel for task, task_file, bpf_map, netlink_sock and ipv6_route . In 5.9, support is added to tcp/udp sockets and bpf map element (hashmap, arraymap and sk_local_storage_map) traversal.","breadcrumbs":"bcc Reference Guide » 12. BPF ITERATORS","id":"142","title":"12. BPF ITERATORS"},"143":{"body":"","breadcrumbs":"bcc Reference Guide » Data","id":"143","title":"Data"},"144":{"body":"Syntax: int bpf_probe_read_kernel(void *dst, int size, const void *src) Return: 0 on success This copies size bytes from kernel address space to the BPF stack, so that BPF can later operate on it. For safety, all kernel memory reads must pass through bpf_probe_read_kernel(). This happens automatically in some cases, such as dereferencing kernel variables, as bcc will rewrite the BPF program to include the necessary bpf_probe_read_kernel(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. bpf_probe_read_kernel()","id":"144","title":"1. bpf_probe_read_kernel()"},"145":{"body":"Syntax: int bpf_probe_read_kernel_str(void *dst, int size, const void *src) Return: > 0 length of the string including the trailing NULL on success < 0 error This copies a NULL terminated string from kernel address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. bpf_probe_read_kernel_str()","id":"145","title":"2. bpf_probe_read_kernel_str()"},"146":{"body":"Syntax: u64 bpf_ktime_get_ns(void) Return: u64 number of nanoseconds. Starts at system boot time but stops during suspend. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. bpf_ktime_get_ns()","id":"146","title":"3. bpf_ktime_get_ns()"},"147":{"body":"Syntax: u64 bpf_get_current_pid_tgid(void) Return: current->tgid << 32 | current->pid Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. bpf_get_current_pid_tgid()","id":"147","title":"4. bpf_get_current_pid_tgid()"},"148":{"body":"Syntax: u64 bpf_get_current_uid_gid(void) Return: current_gid << 32 | current_uid Returns the user ID and group IDs. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. bpf_get_current_uid_gid()","id":"148","title":"5. bpf_get_current_uid_gid()"},"149":{"body":"Syntax: bpf_get_current_comm(char *buf, int size_of_buf) Return: 0 on success Populates the first argument address with the current process name. It should be a pointer to a char array of at least size TASK_COMM_LEN, which is defined in linux/sched.h. For example: #include int do_trace(struct pt_regs *ctx) { char comm[TASK_COMM_LEN]; bpf_get_current_comm(&comm, sizeof(comm));\n[...] Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 6. bpf_get_current_comm()","id":"149","title":"6. bpf_get_current_comm()"},"15":{"body":"eunomia-bpf 是一个开源的 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。它基于 libbpf 的 CO-RE 轻量级开发框架,支持通过用户态 WASM 虚拟机控制 eBPF 程序的加载和执行,并将预编译的 eBPF 程序打包为通用的 JSON 或 WASM 模块进行分发。使用 eunomia-bpf 可以大幅简化 eBPF 程序的开发流程。 使用 eunomia-bpf 开发 eBPF 程序的流程也大致相同,只是细节略有不同。 安装编译环境和依赖。使用 eunomia-bpf 开发 eBPF 程序需要安装 eunomia-bpf 工具链和运行时库,以及其它的依赖库。 编写 eBPF 程序。eBPF 程序主要由两部分构成:内核态部分和用户态部分。内核态部分包含 eBPF 程序的实际逻辑,用户态部分负责加载、运行和监控内核态程序。使用 eunomia-bpf,只需编写内核态代码即可,无需编写用户态代码。 编译和加载 eBPF 程序。使用 eunomia-bpf 工具链将 eBPF 程序编译成机器码,并将编译后的代码打包为可以在任何系统上运行的模块。然后使用 eunomia-bpf 运行时库加载并运行该模块。 运行程序并处理数据。eBPF 程序在内核运行时会触发事件,并将事件相关的信息传递给用户态程序。eunomia-bpf 的运行时库负责处理这些信息并将结果输出。 结束程序。当 eBPF 程序运行完成后,eunomia-bpf 的运行时库可以卸载并结束运行","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 使用 eunomia-bpf 开发 eBPF 程序","id":"15","title":"使用 eunomia-bpf 开发 eBPF 程序"},"150":{"body":"Syntax: bpf_get_current_task() Return: current task as a pointer to struct task_struct. Returns a pointer to the current task's task_struct object. This helper can be used to compute the on-CPU time for a process, identify kernel threads, get the current CPU's run queue, or retrieve many other pieces of information. With Linux 4.13, due to issues with field randomization, you may need two #define directives before the includes: #define randomized_struct_fields_start struct {\n#define randomized_struct_fields_end };\n#include int do_trace(void *ctx) { struct task_struct *t = (struct task_struct *)bpf_get_current_task();\n[...] Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 7. bpf_get_current_task()","id":"150","title":"7. bpf_get_current_task()"},"151":{"body":"Syntax: unsigned int bpf_log2l(unsigned long v) Returns the log-2 of the provided value. This is often used to create indexes for histograms, to construct power-of-2 histograms. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 8. bpf_log2l()","id":"151","title":"8. bpf_log2l()"},"152":{"body":"Syntax: u32 bpf_get_prandom_u32() Returns a pseudo-random u32. Example in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 9. bpf_get_prandom_u32()","id":"152","title":"9. bpf_get_prandom_u32()"},"153":{"body":"Syntax: int bpf_probe_read_user(void *dst, int size, const void *src) Return: 0 on success This attempts to safely read size bytes from user address space to the BPF stack, so that BPF can later operate on it. For safety, all user address space memory reads must pass through bpf_probe_read_user(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 10. bpf_probe_read_user()","id":"153","title":"10. bpf_probe_read_user()"},"154":{"body":"Syntax: int bpf_probe_read_user_str(void *dst, int size, const void *src) Return: > 0 length of the string including the trailing NULL on success < 0 error This copies a NULL terminated string from user address space to the BPF stack, so that BPF can later operate on it. In case the string length is smaller than size, the target is not padded with further NULL bytes. In case the string length is larger than size, just size - 1 bytes are copied and the last byte is set to NULL. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 11. bpf_probe_read_user_str()","id":"154","title":"11. bpf_probe_read_user_str()"},"155":{"body":"Syntax: u32 bpf_get_ns_current_pid_tgid(u64 dev, u64 ino, struct bpf_pidns_info* nsdata, u32 size) Values for pid and tgid as seen from the current namespace will be returned in nsdata . Return 0 on success, or one of the following in case of failure: -EINVAL if dev and inum supplied don't match dev_t and inode number with nsfs of current task, or if dev conversion to dev_t lost high bits. -ENOENT if pidns does not exists for the current task. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 12. bpf_get_ns_current_pid_tgid()","id":"155","title":"12. bpf_get_ns_current_pid_tgid()"},"156":{"body":"","breadcrumbs":"bcc Reference Guide » Debugging","id":"156","title":"Debugging"},"157":{"body":"Syntax: int bpf_override_return(struct pt_regs *, unsigned long rc) Return: 0 on success When used in a program attached to a function entry kprobe, causes the execution of the function to be skipped, immediately returning rc instead. This is used for targeted error injection. bpf_override_return will only work when the kprobed function is whitelisted to allow error injections. Whitelisting entails tagging a function with ALLOW_ERROR_INJECTION() in the kernel source tree; see io_ctl_init for an example. If the kprobed function is not whitelisted, the bpf program will fail to attach with ioctl(PERF_EVENT_IOC_SET_BPF): Invalid argument int kprobe__io_ctl_init(void *ctx) { bpf_override_return(ctx, -ENOMEM); return 0;\n}","breadcrumbs":"bcc Reference Guide » 1. bpf_override_return()","id":"157","title":"1. bpf_override_return()"},"158":{"body":"","breadcrumbs":"bcc Reference Guide » Output","id":"158","title":"Output"},"159":{"body":"Syntax: int bpf_trace_printk(const char *fmt, ...) Return: 0 on success A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(). Note that calling this helper is made simpler than the original kernel version, which has fmt_size as the second parameter. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. bpf_trace_printk()","id":"159","title":"1. bpf_trace_printk()"},"16":{"body":"可以通过以下步骤下载和安装 eunomia-bpf: 下载 ecli 工具,用于运行 eBPF 程序: $ wget https://aka.pw/bpf-ecli -O ecli && chmod +x ./ecli\n$ ./ecli -h\nUsage: ecli [--help] [--version] [--json] [--no-cache] url-and-args 下载编译器工具链,用于将 eBPF 内核代码编译为 config 文件或 WASM 模块: $ wget https://github.com/eunomia-bpf/eunomia-bpf/releases/latest/download/ecc && chmod +x ./ecc\n$ ./ecc -h\neunomia-bpf compiler\nUsage: ecc [OPTIONS] [EXPORT_EVENT_HEADER]\n.... 也可以使用 docker 镜像进行编译: $ docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest # 使用 docker 进行编译。`pwd` 应该包含 *.bpf.c 文件和 *.h 文件。\nexport PATH=PATH:~/.eunomia/bin\nCompiling bpf object...\nPacking ebpf object and config into /src/package.json...","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 下载安装 eunomia-bpf 开发工具","id":"16","title":"下载安装 eunomia-bpf 开发工具"},"160":{"body":"Syntax: BPF_PERF_OUTPUT(name) Creates a BPF table for pushing out custom event data to user space via a perf ring buffer. This is the preferred method for pushing per-event data to user space. For example: struct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_PERF_OUTPUT(events); int hello(struct pt_regs *ctx) { struct data_t data = {}; data.pid = bpf_get_current_pid_tgid(); data.ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data.comm, sizeof(data.comm)); events.perf_submit(ctx, &data, sizeof(data)); return 0;\n} The output table is named events, and data is pushed to it via events.perf_submit(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. BPF_PERF_OUTPUT","id":"160","title":"2. BPF_PERF_OUTPUT"},"161":{"body":"Syntax: int perf_submit((void *)ctx, (void *)data, u32 data_size) Return: 0 on success A method of a BPF_PERF_OUTPUT table, for submitting custom event data to user space. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().) The ctx parameter is provided in kprobes or kretprobes . For SCHED_CLS or SOCKET_FILTER programs, the struct __sk_buff *skb must be used instead. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. perf_submit()","id":"161","title":"3. perf_submit()"},"162":{"body":"Syntax: int perf_submit_skb((void *)ctx, u32 packet_size, (void *)data, u32 data_size) Return: 0 on success A method of a BPF_PERF_OUTPUT table available in networking program types, for submitting custom event data to user space, along with the first packet_size bytes of the packet buffer. See the BPF_PERF_OUTPUT entry. (This ultimately calls bpf_perf_event_output().) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. perf_submit_skb()","id":"162","title":"4. perf_submit_skb()"},"163":{"body":"Syntax: BPF_RINGBUF_OUTPUT(name, page_cnt) Creates a BPF table for pushing out custom event data to user space via a ringbuf ring buffer. BPF_RINGBUF_OUTPUT has several advantages over BPF_PERF_OUTPUT, summarized as follows: Buffer is shared across all CPUs, meaning no per-CPU allocation Supports two APIs for BPF programs map.ringbuf_output() works like map.perf_submit() (covered in ringbuf_output ) map.ringbuf_reserve()/map.ringbuf_submit()/map.ringbuf_discard() split the process of reserving buffer space and submitting events into two steps (covered in ringbuf_reserve , ringbuf_submit , ringbuf_discard ) BPF APIs do not require access to a CPU ctx argument Superior performance and latency in userspace thanks to a shared ring buffer manager Supports two ways of consuming data in userspace Starting in Linux 5.8, this should be the preferred method for pushing per-event data to user space. Example of both APIs: struct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n}; // Creates a ringbuf called events with 8 pages of space, shared across all CPUs\nBPF_RINGBUF_OUTPUT(events, 8); int first_api_example(struct pt_regs *ctx) { struct data_t data = {}; data.pid = bpf_get_current_pid_tgid(); data.ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data.comm, sizeof(data.comm)); events.ringbuf_output(&data, sizeof(data), 0 /* flags */); return 0;\n} int second_api_example(struct pt_regs *ctx) { struct data_t *data = events.ringbuf_reserve(sizeof(struct data_t)); if (!data) { // Failed to reserve space return 1; } data->pid = bpf_get_current_pid_tgid(); data->ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data->comm, sizeof(data->comm)); events.ringbuf_submit(data, 0 /* flags */); return 0;\n} The output table is named events. Data is allocated via events.ringbuf_reserve() and pushed to it via events.ringbuf_submit(). Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 5. BPF_RINGBUF_OUTPUT","id":"163","title":"5. BPF_RINGBUF_OUTPUT"},"164":{"body":"Syntax: int ringbuf_output((void *)data, u64 data_size, u64 flags) Return: 0 on success Flags: BPF_RB_NO_WAKEUP: Do not sent notification of new data availability BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. This method works like perf_submit(), although it does not require a ctx argument. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 6. ringbuf_output()","id":"164","title":"6. ringbuf_output()"},"165":{"body":"Syntax: void* ringbuf_reserve(u64 data_size) Return: Pointer to data struct on success, NULL on failure A method of the BPF_RINGBUF_OUTPUT table, for reserving space in the ring buffer and simultaenously allocating a data struct for output. Must be used with one of ringbuf_submit or ringbuf_discard. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 7. ringbuf_reserve()","id":"165","title":"7. ringbuf_reserve()"},"166":{"body":"Syntax: void ringbuf_submit((void *)data, u64 flags) Return: Nothing, always succeeds Flags: BPF_RB_NO_WAKEUP: Do not sent notification of new data availability BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally A method of the BPF_RINGBUF_OUTPUT table, for submitting custom event data to user space. Must be preceded by a call to ringbuf_reserve() to reserve space for the data. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 8. ringbuf_submit()","id":"166","title":"8. ringbuf_submit()"},"167":{"body":"Syntax: void ringbuf_discard((void *)data, u64 flags) Return: Nothing, always succeeds Flags: BPF_RB_NO_WAKEUP: Do not sent notification of new data availability BPF_RB_FORCE_WAKEUP: Send notification of new data availability unconditionally A method of the BPF_RINGBUF_OUTPUT table, for discarding custom event data; userspace ignores the data associated with the discarded event. Must be preceded by a call to ringbuf_reserve() to reserve space for the data. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 9. ringbuf_discard()","id":"167","title":"9. ringbuf_discard()"},"168":{"body":"Maps are BPF data stores, and are the basis for higher level object types including tables, hashes, and histograms.","breadcrumbs":"bcc Reference Guide » Maps","id":"168","title":"Maps"},"169":{"body":"Syntax: BPF_TABLE(_table_type, _key_type, _leaf_type, _name, _max_entries) Creates a map named _name. Most of the time this will be used via higher-level macros, like BPF_HASH, BPF_ARRAY, BPF_HISTOGRAM, etc. BPF_F_TABLE is a variant that takes a flag in the last parameter. BPF_TABLE(https://github.com/iovisor/bcc/tree/master.) is actually a wrapper to BPF_F_TABLE(https://github.com/iovisor/bcc/tree/master., 0 /* flag */). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools Pinned Maps Syntax: BPF_TABLE_PINNED(_table_type, _key_type, _leaf_type, _name, _max_entries, \"/sys/fs/bpf/xyz\") Create a new map if it doesn't exist and pin it to the bpffs as a FILE, otherwise use the map that was pinned to the bpffs. The type information is not enforced and the actual map type depends on the map that got pinned to the location. For example: BPF_TABLE_PINNED(\"hash\", u64, u64, ids, 1024, \"/sys/fs/bpf/ids\");","breadcrumbs":"bcc Reference Guide » 1. BPF_TABLE","id":"169","title":"1. BPF_TABLE"},"17":{"body":"/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */\n#define BPF_NO_GLOBAL_DATA\n#include \n#include \n#include typedef unsigned int u32;\ntypedef int pid_t;\nconst pid_t pid_filter = 0; char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; SEC(\"tp/syscalls/sys_enter_write\")\nint handle_tp(void *ctx)\n{ pid_t pid = bpf_get_current_pid_tgid() >> 32; if (pid_filter && pid != pid_filter) return 0; bpf_printk(\"BPF triggered from PID %d.\\n\", pid); return 0;\n} 这段程序通过定义一个 handle_tp 函数并使用 SEC 宏把它附加到 sys_enter_write tracepoint(即在进入 write 系统调用时执行)。该函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 write 系统调用的进程 ID,并在内核日志中打印出来。 bpf_trace_printk(): 一种将信息输出到trace_pipe(/sys/kernel/debug/tracing/trace_pipe)简单机制。 在一些简单用例中这样使用没有问题, but它也有一些限制:最多3 参数; 第一个参数必须是%s(即字符串);同时trace_pipe在内核中全局共享,其他并行使用trace_pipe的程序有可能会将 trace_pipe 的输出扰乱。 一个更好的方式是通过 BPF_PERF_OUTPUT(), 稍后将会讲到。 void *ctx:ctx本来是具体类型的参数, 但是由于我们这里没有使用这个参数,因此就将其写成void *类型。 return 0;:必须这样,返回0 (如果要知道why, 参考 #139 https://github.com/iovisor/bcc/issues/139 )。 要编译和运行这段程序,可以使用 ecc 工具和 ecli 命令。首先使用 ecc 编译程序: $ ecc hello.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... 或使用 docker 镜像进行编译: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 然后使用 ecli 运行编译后的程序: $ sudo ecli ./package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345. <...>-3840345 [010] d... 3220701.101143: bpf_trace_printk: write system call from PID 3840345.","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » Hello World - minimal eBPF program","id":"17","title":"Hello World - minimal eBPF program"},"170":{"body":"Syntax: BPF_HASH(name [, key_type [, leaf_type [, size]]]) Creates a hash map (associative array) named name, with optional parameters. Defaults: BPF_HASH(name, key_type=u64, leaf_type=u64, size=10240) For example: BPF_HASH(start, struct request *); This creates a hash named start where the key is a struct request *, and the value defaults to u64. This hash is used by the disksnoop.py example for saving timestamps for each I/O request, where the key is the pointer to struct request, and the value is the timestamp. This is a wrapper macro for BPF_TABLE(\"hash\", ...). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. BPF_HASH","id":"170","title":"2. BPF_HASH"},"171":{"body":"Syntax: BPF_ARRAY(name [, leaf_type [, size]]) Creates an int-indexed array which is optimized for fastest lookup and update, named name, with optional parameters. Defaults: BPF_ARRAY(name, leaf_type=u64, size=10240) For example: BPF_ARRAY(counts, u64, 32); This creates an array named counts where with 32 buckets and 64-bit integer values. This array is used by the funccount.py example for saving call count of each function. This is a wrapper macro for BPF_TABLE(\"array\", ...). Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. BPF_ARRAY","id":"171","title":"3. BPF_ARRAY"},"172":{"body":"Syntax: BPF_HISTOGRAM(name [, key_type [, size ]]) Creates a histogram map named name, with optional parameters. Defaults: BPF_HISTOGRAM(name, key_type=int, size=64) For example: BPF_HISTOGRAM(dist); This creates a histogram named dist, which defaults to 64 buckets indexed by keys of type int. This is a wrapper macro for BPF_TABLE(\"histgram\", ...). Methods (covered later): map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. BPF_HISTOGRAM","id":"172","title":"4. BPF_HISTOGRAM"},"173":{"body":"Syntax: BPF_STACK_TRACE(name, max_entries) Creates stack trace map named name, with a maximum entry count provided. These maps are used to store stack traces. For example: BPF_STACK_TRACE(stack_traces, 1024); This creates stack trace map named stack_traces, with a maximum number of stack trace entries of 1024. This is a wrapper macro for BPF_TABLE(\"stacktrace\", ...). Methods (covered later): map.get_stackid(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. BPF_STACK_TRACE","id":"173","title":"5. BPF_STACK_TRACE"},"174":{"body":"Syntax: BPF_PERF_ARRAY(name, max_entries) Creates perf array named name, with a maximum entry count provided, which must be equal to the number of system cpus. These maps are used to fetch hardware performance counters. For example: text=\"\"\"\nBPF_PERF_ARRAY(cpu_cycles, NUM_CPUS);\n\"\"\"\nb = bcc.BPF(text=text, cflags=[\"-DNUM_CPUS=%d\" % multiprocessing.cpu_count()])\nb[\"cpu_cycles\"].open_perf_event(b[\"cpu_cycles\"].HW_CPU_CYCLES) This creates a perf array named cpu_cycles, with number of entries equal to the number of cpus/cores. The array is configured so that later calling map.perf_read() will return a hardware-calculated counter of the number of cycles elapsed from some point in the past. Only one type of hardware counter may be configured per table at a time. Methods (covered later): map.perf_read(). Examples in situ: search /tests","breadcrumbs":"bcc Reference Guide » 6. BPF_PERF_ARRAY","id":"174","title":"6. BPF_PERF_ARRAY"},"175":{"body":"Syntax: BPF_PERCPU_HASH(name [, key_type [, leaf_type [, size]]]) Creates NUM_CPU int-indexed hash maps (associative arrays) named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way. Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. In other words, BPF_PERCPU_HASH elements cannot be larger than 32KB in size. Defaults: BPF_PERCPU_HASH(name, key_type=u64, leaf_type=u64, size=10240) For example: BPF_PERCPU_HASH(start, struct request *); This creates NUM_CPU hashes named start where the key is a struct request *, and the value defaults to u64. This is a wrapper macro for BPF_TABLE(\"percpu_hash\", ...). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 7. BPF_PERCPU_HASH","id":"175","title":"7. BPF_PERCPU_HASH"},"176":{"body":"Syntax: BPF_PERCPU_ARRAY(name [, leaf_type [, size]]) Creates NUM_CPU int-indexed arrays which are optimized for fastest lookup and update, named name, with optional parameters. Each CPU will have a separate copy of this array. The copies are not kept synchronized in any way. Note that due to limits defined in the kernel (in linux/mm/percpu.c), the leaf_type cannot have a size of more than 32KB. In other words, BPF_PERCPU_ARRAY elements cannot be larger than 32KB in size. Defaults: BPF_PERCPU_ARRAY(name, leaf_type=u64, size=10240) For example: BPF_PERCPU_ARRAY(counts, u64, 32); This creates NUM_CPU arrays named counts where with 32 buckets and 64-bit integer values. This is a wrapper macro for BPF_TABLE(\"percpu_array\", ...). Methods (covered later): map.lookup(), map.update(), map.increment(). Note that all array elements are pre-allocated with zero values and can not be deleted. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 8. BPF_PERCPU_ARRAY","id":"176","title":"8. BPF_PERCPU_ARRAY"},"177":{"body":"Syntax: BPF_LPM_TRIE(name [, key_type [, leaf_type [, size]]]) Creates a longest prefix match trie map named name, with optional parameters. Defaults: BPF_LPM_TRIE(name, key_type=u64, leaf_type=u64, size=10240) For example: BPF_LPM_TRIE(trie, struct key_v6); This creates an LPM trie map named trie where the key is a struct key_v6, and the value defaults to u64. This is a wrapper macro to BPF_F_TABLE(\"lpm_trie\", ..., BPF_F_NO_PREALLOC). Methods (covered later): map.lookup(), map.lookup_or_try_init(), map.delete(), map.update(), map.insert(), map.increment(). Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 9. BPF_LPM_TRIE","id":"177","title":"9. BPF_LPM_TRIE"},"178":{"body":"Syntax: BPF_PROG_ARRAY(name, size) This creates a program array named name with size entries. Each entry of the array is either a file descriptor to a bpf program or NULL. The array acts as a jump table so that bpf programs can \"tail-call\" other bpf programs. This is a wrapper macro for BPF_TABLE(\"prog\", ...). Methods (covered later): map.call(). Examples in situ: search /examples , search /tests , assign fd","breadcrumbs":"bcc Reference Guide » 10. BPF_PROG_ARRAY","id":"178","title":"10. BPF_PROG_ARRAY"},"179":{"body":"Syntax: BPF_DEVMAP(name, size) This creates a device map named name with size entries. Each entry of the map is an ifindex to a network interface. This map is only used in XDP. For example: BPF_DEVMAP(devmap, 10); Methods (covered later): map.redirect_map(). Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 11. BPF_DEVMAP","id":"179","title":"11. BPF_DEVMAP"},"18":{"body":"如上所述, eBPF 程序的基本框架包括: 包含头文件:需要包含 等头文件。 定义许可证:需要定义许可证,通常使用 \"Dual BSD/GPL\"。 定义 BPF 函数:需要定义一个 BPF 函数,例如其名称为 handle_tp,其参数为 void *ctx,返回值为 int。通常用 C 语言编写。 使用 BPF 助手函数:在例如 BPF 函数中,可以使用 BPF 助手函数 bpf_get_current_pid_tgid() 和 bpf_printk()。 返回值","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » eBPF 程序的基本框架","id":"18","title":"eBPF 程序的基本框架"},"180":{"body":"Syntax: BPF_CPUMAP(name, size) This creates a cpu map named name with size entries. The index of the map represents the CPU id and each entry is the size of the ring buffer allocated for the CPU. This map is only used in XDP. For example: BPF_CPUMAP(cpumap, 16); Methods (covered later): map.redirect_map(). Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 12. BPF_CPUMAP","id":"180","title":"12. BPF_CPUMAP"},"181":{"body":"Syntax: BPF_XSKMAP(name, size [, \"/sys/fs/bpf/xyz\"]) This creates a xsk map named name with size entries and pin it to the bpffs as a FILE. Each entry represents one NIC's queue id. This map is only used in XDP to redirect packet to an AF_XDP socket. If the AF_XDP socket is binded to a queue which is different than the current packet's queue id, the packet will be dropped. For kernel v5.3 and latter, lookup method is available and can be used to check whether and AF_XDP socket is available for the current packet's queue id. More details at AF_XDP . For example: BPF_XSKMAP(xsks_map, 8); Methods (covered later): map.redirect_map(). map.lookup() Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 13. BPF_XSKMAP","id":"181","title":"13. BPF_XSKMAP"},"182":{"body":"Syntax: BPF_ARRAY_OF_MAPS(name, inner_map_name, size) This creates an array map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE. For example: BPF_TABLE(\"hash\", int, int, ex1, 1024);\nBPF_TABLE(\"hash\", int, int, ex2, 1024);\nBPF_ARRAY_OF_MAPS(maps_array, \"ex1\", 10);","breadcrumbs":"bcc Reference Guide » 14. BPF_ARRAY_OF_MAPS","id":"182","title":"14. BPF_ARRAY_OF_MAPS"},"183":{"body":"Syntax: BPF_HASH_OF_MAPS(name, key_type, inner_map_name, size) This creates a hash map with a map-in-map type (BPF_MAP_TYPE_HASH_OF_MAPS) map named name with size entries. The inner map meta data is provided by map inner_map_name and can be most of array or hash maps except BPF_MAP_TYPE_PROG_ARRAY, BPF_MAP_TYPE_CGROUP_STORAGE and BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE. For example: BPF_ARRAY(ex1, int, 1024);\nBPF_ARRAY(ex2, int, 1024);\nBPF_HASH_OF_MAPS(maps_hash, struct custom_key, \"ex1\", 10);","breadcrumbs":"bcc Reference Guide » 15. BPF_HASH_OF_MAPS","id":"183","title":"15. BPF_HASH_OF_MAPS"},"184":{"body":"Syntax: BPF_STACK(name, leaf_type, max_entries[, flags]) Creates a stack named name with value type leaf_type and max entries max_entries. Stack and Queue maps are only available from Linux 4.20+. For example: BPF_STACK(stack, struct event, 10240); This creates a stack named stack where the value type is struct event, that holds up to 10240 entries. Methods (covered later): map.push(), map.pop(), map.peek(). Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 16. BPF_STACK","id":"184","title":"16. BPF_STACK"},"185":{"body":"Syntax: BPF_QUEUE(name, leaf_type, max_entries[, flags]) Creates a queue named name with value type leaf_type and max entries max_entries. Stack and Queue maps are only available from Linux 4.20+. For example: BPF_QUEUE(queue, struct event, 10240); This creates a queue named queue where the value type is struct event, that holds up to 10240 entries. Methods (covered later): map.push(), map.pop(), map.peek(). Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 17. BPF_QUEUE","id":"185","title":"17. BPF_QUEUE"},"186":{"body":"Syntax: BPF_SOCKHASH(name[, key_type [, max_entries) Creates a hash named name, with optional parameters. sockhash is only available from Linux 4.18+. Default: BPF_SOCKHASH(name, key_type=u32, max_entries=10240) For example: struct sock_key { u32 remote_ip4; u32 local_ip4; u32 remote_port; u32 local_port;\n};\nBPF_HASH(skh, struct sock_key, 65535); This creates a hash named skh where the key is a struct sock_key. A sockhash is a BPF map type that holds references to sock structs. Then with a new sk/msg redirect bpf helper BPF programs can use the map to redirect skbs/msgs between sockets (map.sk_redirect_hash()/map.msg_redirect_hash()). The difference between BPF_SOCKHASH and BPF_SOCKMAP is that BPF_SOCKMAP is implemented based on an array, and enforces keys to be four bytes. While BPF_SOCKHASH is implemented based on hash table, and the type of key can be specified freely. Methods (covered later): map.sock_hash_update(), map.msg_redirect_hash(), map.sk_redirect_hash(). search /tests","breadcrumbs":"bcc Reference Guide » 18. BPF_SOCKHASH","id":"186","title":"18. BPF_SOCKHASH"},"187":{"body":"Syntax: *val map.lookup(&key) Lookup the key in the map, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 19. map.lookup()","id":"187","title":"19. map.lookup()"},"188":{"body":"Syntax: *val map.lookup_or_try_init(&key, &zero) Lookup the key in the map, and return a pointer to its value if it exists, else initialize the key's value to the second argument. This is often used to initialize values to zero. If the key cannot be inserted (e.g. the map is full) then NULL is returned. Examples in situ: search /examples , search /tools Note: The old map.lookup_or_init() may cause return from the function, so lookup_or_try_init() is recommended as it does not have this side effect.","breadcrumbs":"bcc Reference Guide » 20. map.lookup_or_try_init()","id":"188","title":"20. map.lookup_or_try_init()"},"189":{"body":"Syntax: map.delete(&key) Delete the key from the hash. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 21. map.delete()","id":"189","title":"21. map.delete()"},"19":{"body":"跟踪点(tracepoints)是内核静态插桩技术,跟踪点在技术上只是放置在内核源代码中的跟踪函数,实际上就是在源码中插入的一些带有控制条件的探测点,这些探测点允许事后再添加处理函数。比如在内核中,最常见的静态跟踪方法就是 printk,即输出日志。又比如:在系统调用、调度程序事件、文件系统操作和磁盘 I/O 的开始和结束时都有跟踪点。 于 2009 年在 Linux 2.6.32 版本中首次提供。跟踪点是一种稳定的 API,数量有限。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » tracepoints","id":"19","title":"tracepoints"},"190":{"body":"Syntax: map.update(&key, &val) Associate the value in the second argument to the key, overwriting any previous value. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 22. map.update()","id":"190","title":"22. map.update()"},"191":{"body":"Syntax: map.insert(&key, &val) Associate the value in the second argument to the key, only if there was no previous value. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 23. map.insert()","id":"191","title":"23. map.insert()"},"192":{"body":"Syntax: map.increment(key[, increment_amount]) Increments the key's value by increment_amount, which defaults to 1. Used for histograms. map.increment() are not atomic. In the concurrency case. If you want more accurate results, use map.atomic_increment() instead of map.increment(). The overhead of map.increment() and map.atomic_increment() is similar. Note. When using map.atomic_increment() to operate on a BPF map of type BPF_MAP_TYPE_HASH, map.atomic_increment() does not guarantee the atomicity of the operation when the specified key does not exist. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 24. map.increment()","id":"192","title":"24. map.increment()"},"193":{"body":"Syntax: int map.get_stackid(void *ctx, u64 flags) This walks the stack found via the struct pt_regs in ctx, saves it in the stack trace map, and returns a unique ID for the stack trace. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 25. map.get_stackid()","id":"193","title":"25. map.get_stackid()"},"194":{"body":"Syntax: u64 map.perf_read(u32 cpu) This returns the hardware performance counter as configured in 5. BPF_PERF_ARRAY Examples in situ: search /tests","breadcrumbs":"bcc Reference Guide » 26. map.perf_read()","id":"194","title":"26. map.perf_read()"},"195":{"body":"Syntax: void map.call(void *ctx, int index) This invokes bpf_tail_call() to tail-call the bpf program which the index entry in BPF_PROG_ARRAY points to. A tail-call is different from the normal call. It reuses the current stack frame after jumping to another bpf program and never goes back. If the index entry is empty, it won't jump anywhere and the program execution continues as normal. For example: BPF_PROG_ARRAY(prog_array, 10); int tail_call(void *ctx) { bpf_trace_printk(\"Tail-call\\n\"); return 0;\n} int do_tail_call(void *ctx) { bpf_trace_printk(\"Original program\\n\"); prog_array.call(ctx, 2); return 0;\n} b = BPF(src_file=\"example.c\")\ntail_fn = b.load_func(\"tail_call\", BPF.KPROBE)\nprog_array = b.get_table(\"prog_array\")\nprog_array[c_int(2)] = c_int(tail_fn.fd)\nb.attach_kprobe(event=\"some_kprobe_event\", fn_name=\"do_tail_call\") This assigns tail_call() to prog_array[2]. In the end of do_tail_call(), prog_array.call(ctx, 2) tail-calls tail_call() and executes it. NOTE: To prevent infinite loop, the maximum number of tail-calls is 32 ( MAX_TAIL_CALL_CNT ). Examples in situ: search /examples , search /tests","breadcrumbs":"bcc Reference Guide » 27. map.call()","id":"195","title":"27. map.call()"},"196":{"body":"Syntax: int map.redirect_map(int index, int flags) This redirects the incoming packets based on the index entry. If the map is BPF_DEVMAP , the packet will be sent to the transmit queue of the network interface that the entry points to. If the map is BPF_CPUMAP , the packet will be sent to the ring buffer of the index CPU and be processed by the CPU later. If the map is BPF_XSKMAP , the packet will be sent to the AF_XDP socket attached to the queue. If the packet is redirected successfully, the function will return XDP_REDIRECT. Otherwise, it will return XDP_ABORTED to discard the packet. For example: BPF_DEVMAP(devmap, 1); int redirect_example(struct xdp_md *ctx) { return devmap.redirect_map(0, 0);\n}\nint xdp_dummy(struct xdp_md *ctx) { return XDP_PASS;\n} ip = pyroute2.IPRoute()\nidx = ip.link_lookup(ifname=\"eth1\")[0] b = bcc.BPF(src_file=\"example.c\") devmap = b.get_table(\"devmap\")\ndevmap[c_uint32(0)] = c_int(idx) in_fn = b.load_func(\"redirect_example\", BPF.XDP)\nout_fn = b.load_func(\"xdp_dummy\", BPF.XDP)\nb.attach_xdp(\"eth0\", in_fn, 0)\nb.attach_xdp(\"eth1\", out_fn, 0) Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 28. map.redirect_map()","id":"196","title":"28. map.redirect_map()"},"197":{"body":"Syntax: int map.push(&val, int flags) Push an element onto a Stack or Queue table. Passing BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full. Returns 0 on success, negative error on failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 29. map.push()","id":"197","title":"29. map.push()"},"198":{"body":"Syntax: int map.pop(&val) Pop an element from a Stack or Queue table. *val is populated with the result. Unlike peeking, popping removes the element. Returns 0 on success, negative error on failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 30. map.pop()","id":"198","title":"30. map.pop()"},"199":{"body":"Syntax: int map.peek(&val) Peek an element at the head of a Stack or Queue table. *val is populated with the result. Unlike popping, peeking does not remove the element. Returns 0 on success, negative error on failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 31. map.peek()","id":"199","title":"31. map.peek()"},"2":{"body":"对于浏览器而言,JavaScript 的引入带来的可编程性开启了一场巨大的革命,使浏览器发展成为几乎独立的操作系统。现在让我们回到 eBPF:为了理解 eBPF 对 Linux 内核的可编程性影响,对 Linux 内核的结构以及它如何与应用程序和硬件进行交互有一个高层次的理解是有帮助的[4]。 kernel-arch Linux 内核的主要目的是抽象出硬件或虚拟硬件,并提供一个一致的API(系统调用),允许应用程序运行和共享资源。为了实现这个目的,我们维护了一系列子系统和层,以分配这些责任[5]。每个子系统通常允许某种程度的配置,以考虑到用户的不同需求。如果不能配置所需的行为,就需要改变内核,从历史上看,改变内核的行为,或者让用户编写的程序能够在内核中运行,就有两种选择: 本地支持内核模块 写一个内核模块 改变内核源代码,并说服Linux内核社区相信这种改变是必要的。等待几年,让新的内核版本成为一种商品。 定期修复它,因为每个内核版本都可能破坏它。由于缺乏安全边界,冒着破坏你的Linux内核的风险 实际上,两种方案都不常用,前者成本太高,后者则几乎没有可移植性。 有了 eBPF,就有了一个新的选择,可以重新编程 Linux 内核的行为,而不需要改变内核的源代码或加载内核模块,同时保证在不同内核版本之间一定程度上的行为一致性和兼容性、以及安全性[6]。为了实现这个目的,eBPF 程序也需要有一套对应的 API,允许用户定义的应用程序运行和共享资源 --- 换句话说,某种意义上讲 eBPF 虚拟机也提供了一套类似于系统调用的机制,借助 eBPF 和用户态通信的机制,Wasm 虚拟机和用户态应用也可以获得这套“系统调用”的完整使用权,一方面能可编程地扩展传统的系统调用的能力,另一方面能在网络、文件系统等许多层次实现更高效的可编程 IO 处理。 new-os 正如上图所示,当今的 Linux 内核正在向一个新的内核模型演化:用户定义的应用程序可以在内核态和用户态同时执行,用户态通过传统的系统调用访问系统资源,内核态则通过 BPF Helper Calls 和系统的各个部分完成交互。截止 2023 年初,内核中的 eBPF 虚拟机中已经有 220 多个Helper 系统接口,涵盖了非常多的应用场景。 值得注意的是,BPF Helper Call 和系统调用二者并不是竞争关系,它们的编程模型和有性能优势的场景完全不同,也不会完全替代对方。对 Wasm 和 Wasi 相关生态来说,情况也类似,专门设计的 wasi 接口需要经历一个漫长的标准化过程,但可能在特定场景能为用户态应用获取更佳的性能和可移植性保证,而 eBPF 在保证沙箱本质和可移植性的前提下,可以提供一个快速灵活的扩展系统接口的方案。 目前的 eBPF 仍然处于早期阶段,但是借助当前 eBPF 提供的内核接口和用户态交互的能力,经由 Wasm-bpf 的系统接口转换,Wasm 虚拟机中的应用已经几乎有能力获取内核以及用户态任意一个函数调用的数据和返回值(kprobe,uprobe...);以很低的代价收集和理解所有系统调用,并获取所有网络操作的数据包和套接字级别的数据(tracepoint,socket...);在网络包处理解决方案中添加额外的协议分析器,并轻松地编程任何转发逻辑(XDP,TC...),以满足不断变化的需求,而无需离开Linux内核的数据包处理环境。 不仅如此,eBPF 还有能力往用户空间任意进程的任意地址写入数据(bpf_probe_write_user[7]),有限度地修改内核函数的返回值(bpf_override_return[8]),甚至在内核态直接执行某些系统调用[9];所幸的是,eBPF 在加载进内核之前对字节码会进行严格的安全检查,确保没有内存越界等操作,同时,许多可能会扩大攻击面、带来安全风险的功能都是需要在编译内核时明确选择启用才能使用的;在 Wasm 虚拟机将字节码加载进内核之前,也可以明确选择启用或者禁用某些 eBPF 功能,以确保沙箱的安全性。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF 的未来:内核的 JavaScript 可编程接口","id":"2","title":"eBPF 的未来:内核的 JavaScript 可编程接口"},"20":{"body":"eBPF 程序的开发和使用流程可以概括为如下几个步骤: 定义 eBPF 程序的接口和类型:这包括定义 eBPF 程序的接口函数,定义和实现 eBPF 内核映射(maps)和共享内存(perf events),以及定义和使用 eBPF 内核帮助函数(helpers)。 编写 eBPF 程序的代码:这包括编写 eBPF 程序的主要逻辑,实现 eBPF 内核映射的读写操作,以及使用 eBPF 内核帮助函数。 编译 eBPF 程序:这包括使用 eBPF 编译器(例如 clang)将 eBPF 程序代码编译为 eBPF 字节码,并生成可执行的 eBPF 内核模块。ecc 本质上也是调用 clang 编译器来编译 eBPF 程序。 加载 eBPF 程序到内核:这包括将编译好的 eBPF 内核模块加载到 Linux 内核中,并将 eBPF 程序附加到指定的内核事件上。 使用 eBPF 程序:这包括监测 eBPF 程序的运行情况,并使用 eBPF 内核映射和共享内存进行数据交换和共享。 在实际开发中,还可能需要进行其他的步骤,例如配置编译和加载参数,管理 eBPF 内核模块和内核映射,以及使用其他高级功能等。 需要注意的是,BPF 程序的执行是在内核空间进行的,因此需要使用特殊的工具和技术来编写、编译和调试 BPF 程序。eunomia-bpf 是一个开源的 BPF 编译器和工具包,它可以帮助开发者快速和简单地编写和运行 BPF 程序。 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程二:Hello World,基本框架和开发流程 » 总结","id":"20","title":"总结"},"200":{"body":"Syntax: int map.sock_hash_update(struct bpf_sock_ops *skops, &key, int flags) Add an entry to, or update a sockhash map referencing sockets. The skops is used as a new value for the entry associated to key. flags is one of: BPF_NOEXIST: The entry for key must not exist in the map.\nBPF_EXIST: The entry for key must already exist in the map.\nBPF_ANY: No condition on the existence of the entry for key. If the map has eBPF programs (parser and verdict), those will be inherited by the socket being added. If the socket is already attached to eBPF programs, this results in an error. Return 0 on success, or a negative error in case of failure. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 32. map.sock_hash_update()","id":"200","title":"32. map.sock_hash_update()"},"201":{"body":"Syntax: int map.msg_redirect_hash(struct sk_msg_buff *msg, void *key, u64 flags) This helper is used in programs implementing policies at the socket level. If the message msg is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress path otherwise). This is the only flag supported for now. Return SK_PASS on success, or SK_DROP on error. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 33. map.msg_redirect_hash()","id":"201","title":"33. map.msg_redirect_hash()"},"202":{"body":"Syntax: int map.sk_redirect_hash(struct sk_buff *skb, void *key, u64 flags) This helper is used in programs implementing policies at the skb socket level. If the sk_buff skb is allowed to pass (i.e. if the verdict eBPF program returns SK_PASS), redirect it to the socket referenced by map (of type BPF_MAP_TYPE_SOCKHASH) using hash key. Both ingress and egress interfaces can be used for redirection. The BPF_F_INGRESS value in flags is used to make the distinction (ingress path is selected if the flag is present, egress otherwise). This is the only flag supported for now. Return SK_PASS on success, or SK_DROP on error. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 34. map.sk_redirect_hash()","id":"202","title":"34. map.sk_redirect_hash()"},"203":{"body":"Depending on which BPF helpers are used, a GPL-compatible license is required. The special BCC macro BPF_LICENSE specifies the license of the BPF program. You can set the license as a comment in your source code, but the kernel has a special interface to specify it programmatically. If you need to use GPL-only helpers, it is recommended to specify the macro in your C code so that the kernel can understand it: // SPDX-License-Identifier: GPL-2.0+\n#define BPF_LICENSE GPL Otherwise, the kernel may reject loading your program (see the error description below). Note that it supports multiple words and quotes are not necessary: // SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause\n#define BPF_LICENSE Dual BSD/GPL Check the BPF helpers reference to see which helpers are GPL-only and what the kernel understands as GPL-compatible. If the macro is not specified, BCC will automatically define the license of the program as GPL.","breadcrumbs":"bcc Reference Guide » Licensing","id":"203","title":"Licensing"},"204":{"body":"One of jobs for rewriter is to turn implicit memory accesses to explicit ones using kernel helpers. Recent kernel introduced a config option ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE which will be set for architectures who user address space and kernel address are disjoint. x86 and arm has this config option set while s390 does not. If ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE is not set, the bpf old helper bpf_probe_read() will not be available. Some existing users may have implicit memory accesses to access user memory, so using bpf_probe_read_kernel() will cause their application to fail. Therefore, for non-s390, the rewriter will use bpf_probe_read() for these implicit memory accesses. For s390, bpf_probe_read_kernel() is used as default and users should use bpf_probe_read_user() explicitly when accessing user memories.","breadcrumbs":"bcc Reference Guide » Rewriter","id":"204","title":"Rewriter"},"205":{"body":"","breadcrumbs":"bcc Reference Guide » bcc Python","id":"205","title":"bcc Python"},"206":{"body":"Constructors.","breadcrumbs":"bcc Reference Guide » Initialization","id":"206","title":"Initialization"},"207":{"body":"Syntax: BPF({text=BPF_program | src_file=filename} [, usdt_contexts=[USDT_object, ...]] [, cflags=[arg1, ...]] [, debug=int]) Creates a BPF object. This is the main object for defining a BPF program, and interacting with its output. Exactly one of text or src_file must be supplied (not both). The cflags specifies additional arguments to be passed to the compiler, for example -DMACRO_NAME=value or -I/include/path. The arguments are passed as an array, with each element being an additional argument. Note that strings are not split on whitespace, so each argument must be a different element of the array, e.g. [\"-include\", \"header.h\"]. The debug flags control debug output, and can be or'ed together: DEBUG_LLVM_IR = 0x1 compiled LLVM IR DEBUG_BPF = 0x2 loaded BPF bytecode and register state on branches DEBUG_PREPROCESSOR = 0x4 pre-processor result DEBUG_SOURCE = 0x8 ASM instructions embedded with source DEBUG_BPF_REGISTER_STATE = 0x10 register state on all instructions in addition to DEBUG_BPF DEBUG_BTF = 0x20 print the messages from the libbpf library. Examples: # define entire BPF program in one line:\nBPF(text='int do_trace(void *ctx) { bpf_trace_printk(\"hit!\\\\n\"); return 0; }'); # define program as a variable:\nprog = \"\"\"\nint hello(void *ctx) { bpf_trace_printk(\"Hello, World!\\\\n\"); return 0;\n}\n\"\"\"\nb = BPF(text=prog) # source a file:\nb = BPF(src_file = \"vfsreadlat.c\") # include a USDT object:\nu = USDT(pid=int(pid))\n[...]\nb = BPF(text=bpf_text, usdt_contexts=[u]) # add include paths:\nu = BPF(text=prog, cflags=[\"-I/path/to/include\"]) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. BPF","id":"207","title":"1. BPF"},"208":{"body":"Syntax: USDT({pid=pid | path=path}) Creates an object to instrument User Statically-Defined Tracing (USDT) probes. Its primary method is enable_probe(). Arguments: pid: attach to this process ID. path: instrument USDT probes from this binary path. Examples: # include a USDT object:\nu = USDT(pid=int(pid))\n[...]\nb = BPF(text=bpf_text, usdt_contexts=[u]) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. USDT","id":"208","title":"2. USDT"},"209":{"body":"","breadcrumbs":"bcc Reference Guide » Events","id":"209","title":"Events"},"21":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第二篇,在 eBPF 中使用 kprobe 捕获 unlink 系统调用。","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用","id":"21","title":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用"},"210":{"body":"Syntax: BPF.attach_kprobe(event=\"event\", fn_name=\"name\") Instruments the kernel function event() using kernel dynamic tracing of the function entry, and attaches our C defined function name() to be called when the kernel function is called. For example: b.attach_kprobe(event=\"sys_clone\", fn_name=\"do_trace\") This will instrument the kernel sys_clone() function, which will then run our BPF defined do_trace() function each time it is called. You can call attach_kprobe() more than once, and attach your BPF function to multiple kernel functions. You can also call attach_kprobe() more than once to attach multiple BPF functions to the same kernel function. See the previous kprobes section for how to instrument arguments from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. attach_kprobe()","id":"210","title":"1. attach_kprobe()"},"211":{"body":"Syntax: BPF.attach_kretprobe(event=\"event\", fn_name=\"name\" [, maxactive=int]) Instruments the return of the kernel function event() using kernel dynamic tracing of the function return, and attaches our C defined function name() to be called when the kernel function returns. For example: b.attach_kretprobe(event=\"vfs_read\", fn_name=\"do_return\") This will instrument the kernel vfs_read() function, which will then run our BPF defined do_return() function each time it is called. You can call attach_kretprobe() more than once, and attach your BPF function to multiple kernel function returns. You can also call attach_kretprobe() more than once to attach multiple BPF functions to the same kernel function return. When a kretprobe is installed on a kernel function, there is a limit on how many parallel calls it can catch. You can change that limit with maxactive. See the kprobes documentation for its default value. See the previous kretprobes section for how to instrument the return value from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. attach_kretprobe()","id":"211","title":"2. attach_kretprobe()"},"212":{"body":"Syntax: BPF.attach_tracepoint(tp=\"tracepoint\", fn_name=\"name\") Instruments the kernel tracepoint described by tracepoint, and when hit, runs the BPF function name(). This is an explicit way to instrument tracepoints. The TRACEPOINT_PROBE syntax, covered in the earlier tracepoints section, is an alternate method with the advantage of auto-declaring an args struct containing the tracepoint arguments. With attach_tracepoint(), the tracepoint arguments need to be declared in the BPF program. For example: # define BPF program\nbpf_text = \"\"\"\n#include struct urandom_read_args { // from /sys/kernel/debug/tracing/events/random/urandom_read/format u64 __unused__; u32 got_bits; u32 pool_left; u32 input_left;\n}; int printarg(struct urandom_read_args *args) { bpf_trace_printk(\"%d\\\\n\", args->got_bits); return 0;\n};\n\"\"\" # load BPF program\nb = BPF(text=bpf_text)\nb.attach_tracepoint(\"random:urandom_read\", \"printarg\") Notice how the first argument to printarg() is now our defined struct. Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. attach_tracepoint()","id":"212","title":"3. attach_tracepoint()"},"213":{"body":"Syntax: BPF.attach_uprobe(name=\"location\", sym=\"symbol\", fn_name=\"name\" [, sym_off=int]), BPF.attach_uprobe(name=\"location\", sym_re=\"regex\", fn_name=\"name\"), BPF.attach_uprobe(name=\"location\", addr=int, fn_name=\"name\") Instruments the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function entry, and attach our C defined function name() to be called whenever the user-level function is called. If sym_off is given, the function is attached to the offset within the symbol. The real address addr may be supplied in place of sym, in which case sym must be set to its default value. If the file is a non-PIE executable, addr must be a virtual address, otherwise it must be an offset relative to the file load address. Instead of a symbol name, a regular expression can be provided in sym_re. The uprobe will then attach to symbols that match the provided regular expression. Libraries can be given in the name argument without the lib prefix, or with the full path (/usr/lib/...). Binaries can be given only with the full path (/bin/sh). For example: b.attach_uprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\") This will instrument strlen() function from libc, and call our BPF function count() when it is called. Note how the \"lib\" in \"libc\" is not necessary to specify. Other examples: b.attach_uprobe(name=\"c\", sym=\"getaddrinfo\", fn_name=\"do_entry\")\nb.attach_uprobe(name=\"/usr/bin/python\", sym=\"main\", fn_name=\"do_main\") You can call attach_uprobe() more than once, and attach your BPF function to multiple user-level functions. See the previous uprobes section for how to instrument arguments from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. attach_uprobe()","id":"213","title":"4. attach_uprobe()"},"214":{"body":"Syntax: BPF.attach_uretprobe(name=\"location\", sym=\"symbol\", fn_name=\"name\") Instruments the return of the user-level function symbol() from either the library or binary named by location using user-level dynamic tracing of the function return, and attach our C defined function name() to be called whenever the user-level function returns. For example: b.attach_uretprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\") This will instrument strlen() function from libc, and call our BPF function count() when it returns. Other examples: b.attach_uretprobe(name=\"c\", sym=\"getaddrinfo\", fn_name=\"do_return\")\nb.attach_uretprobe(name=\"/usr/bin/python\", sym=\"main\", fn_name=\"do_main\") You can call attach_uretprobe() more than once, and attach your BPF function to multiple user-level functions. See the previous uretprobes section for how to instrument the return value from BPF. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. attach_uretprobe()","id":"214","title":"5. attach_uretprobe()"},"215":{"body":"Syntax: USDT.enable_probe(probe=probe, fn_name=name) Attaches a BPF C function name to the USDT probe probe. Example: # enable USDT probe from given PID\nu = USDT(pid=int(pid))\nu.enable_probe(probe=\"http__server__request\", fn_name=\"do_trace\") To check if your binary has USDT probes, and what they are, you can run readelf -n binary and check the stap debug section. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 6. USDT.enable_probe()","id":"215","title":"6. USDT.enable_probe()"},"216":{"body":"Syntax: BPF.attach_raw_tracepoint(tp=\"tracepoint\", fn_name=\"name\") Instruments the kernel raw tracepoint described by tracepoint (event only, no category), and when hit, runs the BPF function name(). This is an explicit way to instrument tracepoints. The RAW_TRACEPOINT_PROBE syntax, covered in the earlier raw tracepoints section, is an alternate method. For example: b.attach_raw_tracepoint(\"sched_switch\", \"do_trace\") Examples in situ: search /tools","breadcrumbs":"bcc Reference Guide » 7. attach_raw_tracepoint()","id":"216","title":"7. attach_raw_tracepoint()"},"217":{"body":"Syntax: BPF.attach_raw_socket(fn, dev) Attaches a BPF function to the specified network interface. The fn must be the type of BPF.function and the bpf_prog type needs to be BPF_PROG_TYPE_SOCKET_FILTER (fn=BPF.load_func(func_name, BPF.SOCKET_FILTER)) fn.sock is a non-blocking raw socket that was created and bound to dev. All network packets processed by dev are copied to the recv-q of fn.sock after being processed by bpf_prog. Try to recv packet form fn.sock with rev/recvfrom/recvmsg. Note that if the recv-q is not read in time after the recv-q is full, the copied packets will be discarded. We can use this feature to capture network packets just like tcpdump. We can use ss --bpf --packet -p to observe fn.sock. Example: BPF.attach_raw_socket(bpf_func, ifname) Examples in situ: search /examples","breadcrumbs":"bcc Reference Guide » 8. attach_raw_socket()","id":"217","title":"8. attach_raw_socket()"},"218":{"body":"Syntax: BPF.attach_xdp(dev=\"device\", fn=b.load_func(\"fn_name\",BPF.XDP), flags) Instruments the network driver described by dev , and then receives the packet, run the BPF function fn_name() with flags. Here is a list of optional flags. # from xdp_flags uapi/linux/if_link.h\nXDP_FLAGS_UPDATE_IF_NOEXIST = (1 << 0)\nXDP_FLAGS_SKB_MODE = (1 << 1)\nXDP_FLAGS_DRV_MODE = (1 << 2)\nXDP_FLAGS_HW_MODE = (1 << 3)\nXDP_FLAGS_REPLACE = (1 << 4) You can use flags like this BPF.attach_xdp(dev=\"device\", fn=b.load_func(\"fn_name\",BPF.XDP), flags=BPF.XDP_FLAGS_UPDATE_IF_NOEXIST) The default value of flags is 0. This means if there is no xdp program with device, the fn will run with that device. If there is an xdp program running with device, the old program will be replaced with new fn program. Currently, bcc does not support XDP_FLAGS_REPLACE flag. The following are the descriptions of other flags. 1. XDP_FLAGS_UPDATE_IF_NOEXIST If an XDP program is already attached to the specified driver, attaching the XDP program again will fail. 2. XDP_FLAGS_SKB_MODE Driver doesn’t have support for XDP, but the kernel fakes it. XDP program works, but there’s no real performance benefit because packets are handed to kernel stack anyways which then emulates XDP – this is usually supported with generic network drivers used in home computers, laptops, and virtualized HW. 3. XDP_FLAGS_DRV_MODE A driver has XDP support and can hand then to XDP without kernel stack interaction – Few drivers can support it and those are usually for enterprise HW. 4. XDP_FLAGS_HW_MODE XDP can be loaded and executed directly on the NIC – just a handful of NICs can do that. For example: b.attach_xdp(dev=\"ens1\", fn=b.load_func(\"do_xdp\", BPF.XDP)) This will instrument the network device ens1 , which will then run our BPF defined do_xdp() function each time it receives packets. Don't forget to call b.remove_xdp(\"ens1\") at the end! Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 9. attach_xdp()","id":"218","title":"9. attach_xdp()"},"219":{"body":"Syntax: BPF.attach_func(fn, attachable_fd, attach_type [, flags]) Attaches a BPF function of the specified type to a particular attachable_fd. if the attach_type is BPF_FLOW_DISSECTOR, the function is expected to attach to current net namespace and attachable_fd must be 0. For example: b.attach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)\nb.attach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT) Note. When attached to \"global\" hooks (xdp, tc, lwt, cgroup). If the \"BPF function\" is no longer needed after the program terminates, be sure to call detach_func when the program exits. Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 10. attach_func()","id":"219","title":"10. attach_func()"},"22":{"body":"开发人员在内核或者模块的调试过程中,往往会需要要知道其中的一些函数有无被调用、何时被调用、执行是否正确以及函数的入参和返回值是什么等等。比较简单的做法是在内核代码对应的函数中添加日志打印信息,但这种方式往往需要重新编译内核或模块,重新启动设备之类的,操作较为复杂甚至可能会破坏原有的代码执行过程。 而利用kprobes技术,用户可以定义自己的回调函数,然后在内核或者模块中几乎所有的函数中(有些函数是不可探测的,例如kprobes自身的相关实现函数,后文会有详细说明)动态的插入探测点,当内核执行流程执行到指定的探测函数时,会调用该回调函数,用户即可收集所需的信息了,同时内核最后还会回到原本的正常执行流程。如果用户已经收集足够的信息,不再需要继续探测,则同样可以动态地移除探测点。因此kprobes技术具有对内核执行流程影响小和操作方便的优点。 kprobes技术包括的3种探测手段分别时kprobe、jprobe和kretprobe。首先kprobe是最基本的探测方式,是实现后两种的基础,它可以在任意的位置放置探测点(就连函数内部的某条指令处也可以),它提供了探测点的调用前、调用后和内存访问出错3种回调方式,分别是pre_handler、post_handler和fault_handler,其中pre_handler函数将在被探测指令被执行前回调,post_handler会在被探测指令执行完毕后回调(注意不是被探测函数),fault_handler会在内存访问出错时被调用;jprobe基于kprobe实现,它用于获取被探测函数的入参值;最后kretprobe从名字中就可以看出其用途了,它同样基于kprobe实现,用于获取被探测函数的返回值。 kprobes的技术原理并不仅仅包含存软件的实现方案,它也需要硬件架构提供支持。其中涉及硬件架构相关的是CPU的异常处理和单步调试技术,前者用于让程序的执行流程陷入到用户注册的回调函数中去,而后者则用于单步执行被探测点指令,因此并不是所有的架构均支持,目前kprobes技术已经支持多种架构,包括i386、x86_64、ppc64、ia64、sparc64、arm、ppc和mips(有些架构实现可能并不完全,具体可参考内核的Documentation/kprobes.txt)。 kprobes的特点与使用限制: kprobes允许在同一个被被探测位置注册多个kprobe,但是目前jprobe却不可以;同时也不允许以其他的jprobe回调函数和kprobe的post_handler回调函数作为被探测点。 一般情况下,可以探测内核中的任何函数,包括中断处理函数。不过在kernel/kprobes.c和arch/*/kernel/kprobes.c程序中用于实现kprobes自身的函数是不允许被探测的,另外还有do_page_fault和notifier_call_chain; 如果以一个内联函数为探测点,则kprobes可能无法保证对该函数的所有实例都注册探测点。由于gcc可能会自动将某些函数优化为内联函数,因此可能无法达到用户预期的探测效果; 一个探测点的回调函数可能会修改被探测函数运行的上下文,例如通过修改内核的数据结构或者保存与struct pt_regs结构体中的触发探测器之前寄存器信息。因此kprobes可以被用来安装bug修复代码或者注入故障测试代码; kprobes会避免在处理探测点函数时再次调用另一个探测点的回调函数,例如在printk()函数上注册了探测点,则在它的回调函数中可能再次调用printk函数,此时将不再触发printk探测点的回调,仅仅时增加了kprobe结构体中nmissed字段的数值; 在kprobes的注册和注销过程中不会使用mutex锁和动态的申请内存; kprobes回调函数的运行期间是关闭内核抢占的,同时也可能在关闭中断的情况下执行,具体要视CPU架构而定。因此不论在何种情况下,在回调函数中不要调用会放弃CPU的函数(如信号量、mutex锁等); kretprobe通过替换返回地址为预定义的trampoline的地址来实现,因此栈回溯和gcc内嵌函数__builtin_return_address()调用将返回trampoline的地址而不是真正的被探测函数的返回地址; 如果一个函数的调用次数和返回次数不相等,则在类似这样的函数上注册kretprobe将可能不会达到预期的效果,例如do_exit()函数会存在问题,而do_execve()函数和do_fork()函数不会; 如果当在进入和退出一个函数时,CPU运行在非当前任务所有的栈上,那么往该函数上注册kretprobe可能会导致不可预料的后果,因此,kprobes不支持在X86_64的结构下为__switch_to()函数注册kretprobe,将直接返回-EINVAL。","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » kprobes技术背景","id":"22","title":"kprobes技术背景"},"220":{"body":"Syntax: BPF.detach_func(fn, attachable_fd, attach_type) Detaches a BPF function of the specified type. For example: b.detach_func(fn, cgroup_fd, BPFAttachType.CGROUP_SOCK_OPS)\nb.detach_func(fn, map_fd, BPFAttachType.SK_MSG_VERDICT) Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 11. detach_func()","id":"220","title":"11. detach_func()"},"221":{"body":"Syntax: BPF.detach_kprobe(event=\"event\", fn_name=\"name\") Detach a kprobe handler function of the specified event. For example: b.detach_kprobe(event=\"__page_cache_alloc\", fn_name=\"trace_func_entry\")","breadcrumbs":"bcc Reference Guide » 12. detach_kprobe()","id":"221","title":"12. detach_kprobe()"},"222":{"body":"Syntax: BPF.detach_kretprobe(event=\"event\", fn_name=\"name\") Detach a kretprobe handler function of the specified event. For example: b.detach_kretprobe(event=\"__page_cache_alloc\", fn_name=\"trace_func_return\")","breadcrumbs":"bcc Reference Guide » 13. detach_kretprobe()","id":"222","title":"13. detach_kretprobe()"},"223":{"body":"","breadcrumbs":"bcc Reference Guide » Debug Output","id":"223","title":"Debug Output"},"224":{"body":"Syntax: BPF.trace_print(fmt=\"fields\") This method continually reads the globally shared /sys/kernel/debug/tracing/trace_pipe file and prints its contents. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred. Arguments: fmt: optional, and can contain a field formatting string. It defaults to None. Examples: # print trace_pipe output as-is:\nb.trace_print() # print PID and message:\nb.trace_print(fmt=\"{1} {5}\") Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. trace_print()","id":"224","title":"1. trace_print()"},"225":{"body":"Syntax: BPF.trace_fields(nonblocking=False) This method reads one line from the globally shared /sys/kernel/debug/tracing/trace_pipe file and returns it as fields. This file can be written to via BPF and the bpf_trace_printk() function, however, that method has limitations, including a lack of concurrent tracing support. The BPF_PERF_OUTPUT mechanism, covered earlier, is preferred. Arguments: nonblocking: optional, defaults to False. When set to True, the program will not block waiting for input. Examples: while 1: try: (task, pid, cpu, flags, ts, msg) = b.trace_fields() except ValueError: continue [...] Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. trace_fields()","id":"225","title":"2. trace_fields()"},"226":{"body":"Normal output from a BPF program is either: per-event: using PERF_EVENT_OUTPUT, open_perf_buffer(), and perf_buffer_poll(). map summary: using items(), or print_log2_hist(), covered in the Maps section.","breadcrumbs":"bcc Reference Guide » Output APIs","id":"226","title":"Output APIs"},"227":{"body":"Syntax: BPF.perf_buffer_poll(timeout=T) This polls from all open perf ring buffers, calling the callback function that was provided when calling open_perf_buffer for each entry. The timeout parameter is optional and measured in milliseconds. In its absence, polling continues indefinitely. Example: # loop with callback to print_event\nb[\"events\"].open_perf_buffer(print_event)\nwhile 1: try: b.perf_buffer_poll() except KeyboardInterrupt: exit(); Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. perf_buffer_poll()","id":"227","title":"1. perf_buffer_poll()"},"228":{"body":"Syntax: BPF.ring_buffer_poll(timeout=T) This polls from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry. The timeout parameter is optional and measured in milliseconds. In its absence, polling continues until there is no more data or the callback returns a negative value. Example: # loop with callback to print_event\nb[\"events\"].open_ring_buffer(print_event)\nwhile 1: try: b.ring_buffer_poll(30) except KeyboardInterrupt: exit(); Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 2. ring_buffer_poll()","id":"228","title":"2. ring_buffer_poll()"},"229":{"body":"Syntax: BPF.ring_buffer_consume() This consumes from all open ringbuf ring buffers, calling the callback function that was provided when calling open_ring_buffer for each entry. Unlike ring_buffer_poll, this method does not poll for data before attempting to consume. This reduces latency at the expense of higher CPU consumption. If you are unsure which to use, use ring_buffer_poll. Example: # loop with callback to print_event\nb[\"events\"].open_ring_buffer(print_event)\nwhile 1: try: b.ring_buffer_consume() except KeyboardInterrupt: exit(); Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 3. ring_buffer_consume()","id":"229","title":"3. ring_buffer_consume()"},"23":{"body":"#include \"vmlinux.h\"\n#include \n#include \n#include char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; SEC(\"kprobe/do_unlinkat\")\nint BPF_KPROBE(do_unlinkat, int dfd, struct filename *name)\n{ pid_t pid; const char *filename; pid = bpf_get_current_pid_tgid() >> 32; filename = BPF_CORE_READ(name, name); bpf_printk(\"KPROBE ENTRY pid = %d, filename = %s\\n\", pid, filename); return 0;\n} SEC(\"kretprobe/do_unlinkat\")\nint BPF_KRETPROBE(do_unlinkat_exit, long ret)\n{ pid_t pid; pid = bpf_get_current_pid_tgid() >> 32; bpf_printk(\"KPROBE EXIT: pid = %d, ret = %ld\\n\", pid, ret); return 0;\n} kprobe 是 eBPF 用于处理内核空间入口和出口(返回)探针(kprobe 和 kretprobe)的一个例子。它将 kprobe 和 kretprobe BPF 程序附加到 do_unlinkat() 函数上,并使用 bpf_printk() 宏分别记录 PID、文件名和返回值。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。 要编译这个程序,请使用 ecc 工具: $ ecc kprobe-link.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... 然后运行: sudo ecli package.json 在另外一个窗口中: touch test1\nrm test1\ntouch test2\nrm test2 在 /sys/kernel/debug/tracing/trace_pipe 文件中,应该能看到类似下面的 kprobe 演示输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe rm-9346 [005] d..3 4710.951696: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test1 rm-9346 [005] d..4 4710.951819: bpf_trace_printk: KPROBE EXIT: ret = 0 rm-9346 [005] d..3 4710.951852: bpf_trace_printk: KPROBE ENTRY pid = 9346, filename = test2 rm-9346 [005] d..4 4710.951895: bpf_trace_printk: KPROBE EXIT: ret = 0","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » kprobe","id":"23","title":"kprobe"},"230":{"body":"Maps are BPF data stores, and are used in bcc to implement a table, and then higher level objects on top of tables, including hashes and histograms.","breadcrumbs":"bcc Reference Guide » Map APIs","id":"230","title":"Map APIs"},"231":{"body":"Syntax: BPF.get_table(name) Returns a table object. This is no longer used, as tables can now be read as items from BPF. Eg: BPF[name]. Examples: counts = b.get_table(\"counts\") counts = b[\"counts\"] These are equivalent.","breadcrumbs":"bcc Reference Guide » 1. get_table()","id":"231","title":"1. get_table()"},"232":{"body":"Syntax: table.open_perf_buffers(callback, page_cnt=N, lost_cb=None) This operates on a table as defined in BPF as BPF_PERF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the perf ring buffer. This is part of the recommended mechanism for transferring per-event data from kernel to user space. The size of the perf ring buffer can be specified via the page_cnt parameter, which must be a power of two number of pages and defaults to 8. If the callback is not processing data fast enough, some submitted data may be lost. lost_cb will be called to log / monitor the lost count. If lost_cb is the default None value, it will just print a line of message to stderr. Example: # process event\ndef print_event(cpu, data, size): event = ct.cast(data, ct.POINTER(Data)).contents [...] # loop with callback to print_event\nb[\"events\"].open_perf_buffer(print_event)\nwhile 1: try: b.perf_buffer_poll() except KeyboardInterrupt: exit() Note that the data structure transferred will need to be declared in C in the BPF program. For example: // define output data structure in C\nstruct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_PERF_OUTPUT(events);\n[...] In Python, you can either let bcc generate the data structure from C declaration automatically (recommended): def print_event(cpu, data, size): event = b[\"events\"].event(data)\n[...] or define it manually: # define output data structure in Python\nTASK_COMM_LEN = 16 # linux/sched.h\nclass Data(ct.Structure): _fields_ = [(\"pid\", ct.c_ulonglong), (\"ts\", ct.c_ulonglong), (\"comm\", ct.c_char * TASK_COMM_LEN)] def print_event(cpu, data, size): event = ct.cast(data, ct.POINTER(Data)).contents\n[...] Examples in situ: code , search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. open_perf_buffer()","id":"232","title":"2. open_perf_buffer()"},"233":{"body":"Syntax: table.items() Returns an array of the keys in a table. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. Example: # print output\nprint(\"%10s %s\" % (\"COUNT\", \"STRING\"))\ncounts = b.get_table(\"counts\")\nfor k, v in sorted(counts.items(), key=lambda counts: counts[1].value): print(\"%10d \\\"%s\\\"\" % (v.value, k.c.encode('string-escape'))) This example also uses the sorted() method to sort by value. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. items()","id":"233","title":"3. items()"},"234":{"body":"Syntax: table.values() Returns an array of the values in a table.","breadcrumbs":"bcc Reference Guide » 4. values()","id":"234","title":"4. values()"},"235":{"body":"Syntax: table.clear() Clears the table: deletes all entries. Example: # print map summary every second:\nwhile True: time.sleep(1) print(\"%-8s\\n\" % time.strftime(\"%H:%M:%S\"), end=\"\") dist.print_log2_hist(sym + \" return:\") dist.clear() Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. clear()","id":"235","title":"5. clear()"},"236":{"body":"Syntax: table.items_lookup_and_delete_batch() Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. It also clears the table: deletes all entries. You should rather use table.items_lookup_and_delete_batch() than table.items() followed by table.clear(). It requires kernel v5.6. Example: # print call rate per second:\nprint(\"%9s-%9s-%8s-%9s\" % (\"PID\", \"COMM\", \"fname\", \"counter\"))\nwhile True: for k, v in sorted(b['map'].items_lookup_and_delete_batch(), key=lambda kv: (kv[0]).pid): print(\"%9s-%9s-%8s-%9d\" % (k.pid, k.comm, k.fname, v.counter)) sleep(1)","breadcrumbs":"bcc Reference Guide » 6. items_lookup_and_delete_batch()","id":"236","title":"6. items_lookup_and_delete_batch()"},"237":{"body":"Syntax: table.items_lookup_batch() Returns an array of the keys in a table with a single call to BPF syscall. This can be used with BPF_HASH maps to fetch, and iterate, over the keys. You should rather use table.items_lookup_batch() than table.items(). It requires kernel v5.6. Example: # print current value of map:\nprint(\"%9s-%9s-%8s-%9s\" % (\"PID\", \"COMM\", \"fname\", \"counter\"))\nwhile True: for k, v in sorted(b['map'].items_lookup_batch(), key=lambda kv: (kv[0]).pid): print(\"%9s-%9s-%8s-%9d\" % (k.pid, k.comm, k.fname, v.counter))","breadcrumbs":"bcc Reference Guide » 7. items_lookup_batch()","id":"237","title":"7. items_lookup_batch()"},"238":{"body":"Syntax: table.items_delete_batch(keys) It clears all entries of a BPF_HASH map when keys is None. It is more efficient than table.clear() since it generates only one system call. You can delete a subset of a map by giving an array of keys as parameter. Those keys and their associated values will be deleted. It requires kernel v5.6. Arguments: keys is optional and by default is None.","breadcrumbs":"bcc Reference Guide » 8. items_delete_batch()","id":"238","title":"8. items_delete_batch()"},"239":{"body":"Syntax: table.items_update_batch(keys, values) Update all the provided keys with new values. The two arguments must be the same length and within the map limits (between 1 and the maximum entries). It requires kernel v5.6. Arguments: keys is the list of keys to be updated values is the list containing the new values.","breadcrumbs":"bcc Reference Guide » 9. items_update_batch()","id":"239","title":"9. items_update_batch()"},"24":{"body":"通过本文的示例,我们学习了如何使用 eBPF 的 kprobe 和 kretprobe 捕获 unlink 系统调用。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 本文是 eBPF 入门开发实践教程的第二篇。下一篇文章将介绍如何在 eBPF 中使用 fentry 监测捕获 unlink 系统调用。 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程二:在 eBPF 中使用 kprobe 监测捕获 unlink 系统调用 » 总结","id":"24","title":"总结"},"240":{"body":"Syntax: table.print_log2_hist(val_type=\"value\", section_header=\"Bucket ptr\", section_print_fn=None) Prints a table as a log2 histogram in ASCII. The table must be stored as log2, which can be done using the BPF function bpf_log2l(). Arguments: val_type: optional, column header. section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each. section_print_fn: if section_print_fn is not None, it will be passed the bucket value. Example: b = BPF(text=\"\"\"\nBPF_HISTOGRAM(dist); int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)\n{ dist.increment(bpf_log2l(req->__data_len / 1024)); return 0;\n}\n\"\"\")\n[...] b[\"dist\"].print_log2_hist(\"kbytes\") Output: kbytes : count distribution 0 -> 1 : 3 | | 2 -> 3 : 0 | | 4 -> 7 : 211 |********** | 8 -> 15 : 0 | | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 1 | | 128 -> 255 : 800 |**************************************| This output shows a multi-modal distribution, with the largest mode of 128->255 kbytes and a count of 800. This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the count column is passed to user space. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 10. print_log2_hist()","id":"240","title":"10. print_log2_hist()"},"241":{"body":"Syntax: table.print_linear_hist(val_type=\"value\", section_header=\"Bucket ptr\", section_print_fn=None) Prints a table as a linear histogram in ASCII. This is intended to visualize small integer ranges, eg, 0 to 100. Arguments: val_type: optional, column header. section_header: if the histogram has a secondary key, multiple tables will print and section_header can be used as a header description for each. section_print_fn: if section_print_fn is not None, it will be passed the bucket value. Example: b = BPF(text=\"\"\"\nBPF_HISTOGRAM(dist); int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)\n{ dist.increment(req->__data_len / 1024); return 0;\n}\n\"\"\")\n[...] b[\"dist\"].print_linear_hist(\"kbytes\") Output: kbytes : count distribution 0 : 3 |****** | 1 : 0 | | 2 : 0 | | 3 : 0 | | 4 : 19 |****************************************| 5 : 0 | | 6 : 0 | | 7 : 0 | | 8 : 4 |******** | 9 : 0 | | 10 : 0 | | 11 : 0 | | 12 : 0 | | 13 : 0 | | 14 : 0 | | 15 : 0 | | 16 : 2 |**** |\n[...] This is an efficient way to summarize data, as the summarization is performed in-kernel, and only the values in the count column are passed to user space. Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 11. print_linear_hist()","id":"241","title":"11. print_linear_hist()"},"242":{"body":"Syntax: table.open_ring_buffer(callback, ctx=None) This operates on a table as defined in BPF as BPF_RINGBUF_OUTPUT(), and associates the callback Python function callback to be called when data is available in the ringbuf ring buffer. This is part of the new (Linux 5.8+) recommended mechanism for transferring per-event data from kernel to user space. Unlike perf buffers, ringbuf sizes are specified within the BPF program, as part of the BPF_RINGBUF_OUTPUT macro. If the callback is not processing data fast enough, some submitted data may be lost. In this case, the events should be polled more frequently and/or the size of the ring buffer should be increased. Example: # process event\ndef print_event(ctx, data, size): event = ct.cast(data, ct.POINTER(Data)).contents [...] # loop with callback to print_event\nb[\"events\"].open_ring_buffer(print_event)\nwhile 1: try: b.ring_buffer_poll() except KeyboardInterrupt: exit() Note that the data structure transferred will need to be declared in C in the BPF program. For example: // define output data structure in C\nstruct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_RINGBUF_OUTPUT(events, 8);\n[...] In Python, you can either let bcc generate the data structure from C declaration automatically (recommended): def print_event(ctx, data, size): event = b[\"events\"].event(data)\n[...] or define it manually: # define output data structure in Python\nTASK_COMM_LEN = 16 # linux/sched.h\nclass Data(ct.Structure): _fields_ = [(\"pid\", ct.c_ulonglong), (\"ts\", ct.c_ulonglong), (\"comm\", ct.c_char * TASK_COMM_LEN)] def print_event(ctx, data, size): event = ct.cast(data, ct.POINTER(Data)).contents\n[...] Examples in situ: search /examples ,","breadcrumbs":"bcc Reference Guide » 12. open_ring_buffer()","id":"242","title":"12. open_ring_buffer()"},"243":{"body":"Syntax: table.push(leaf, flags=0) Push an element onto a Stack or Queue table. Raises an exception if the operation does not succeed. Passing QueueStack.BPF_EXIST as a flag causes the Queue or Stack to discard the oldest element if it is full. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 13. push()","id":"243","title":"13. push()"},"244":{"body":"Syntax: leaf = table.pop() Pop an element from a Stack or Queue table. Unlike peek(), pop() removes the element from the table before returning it. Raises a KeyError exception if the operation does not succeed. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 14. pop()","id":"244","title":"14. pop()"},"245":{"body":"Syntax: leaf = table.peek() Peek the element at the head of a Stack or Queue table. Unlike pop(), peek() does not remove the element from the table. Raises an exception if the operation does not succeed. Examples in situ: search /tests ,","breadcrumbs":"bcc Reference Guide » 15. peek()","id":"245","title":"15. peek()"},"246":{"body":"Some helper methods provided by bcc. Note that since we're in Python, we can import any Python library and their methods, including, for example, the libraries: argparse, collections, ctypes, datetime, re, socket, struct, subprocess, sys, and time.","breadcrumbs":"bcc Reference Guide » Helpers","id":"246","title":"Helpers"},"247":{"body":"Syntax: BPF.ksym(addr) Translate a kernel memory address into a kernel function name, which is returned. Example: print(\"kernel function: \" + b.ksym(addr)) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 1. ksym()","id":"247","title":"1. ksym()"},"248":{"body":"Syntax: BPF.ksymname(name) Translate a kernel name into an address. This is the reverse of ksym. Returns -1 when the function name is unknown. Example: print(\"kernel address: %x\" % b.ksymname(\"vfs_read\")) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 2. ksymname()","id":"248","title":"2. ksymname()"},"249":{"body":"Syntax: BPF.sym(addr, pid, show_module=False, show_offset=False) Translate a memory address into a function name for a pid, which is returned. A pid of less than zero will access the kernel symbol cache. The show_module and show_offset parameters control whether the module in which the symbol lies should be displayed, and whether the instruction offset from the beginning of the symbol should be displayed. These extra parameters default to False. Example: print(\"function: \" + b.sym(addr, pid)) Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 3. sym()","id":"249","title":"3. sym()"},"25":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第三篇,在 eBPF 中使用 fentry 捕获 unlink 系统调用。","breadcrumbs":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用 » eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用","id":"25","title":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用"},"250":{"body":"Syntax: BPF.num_open_kprobes() Returns the number of open k[ret]probes. Can be useful for scenarios where event_re is used while attaching and detaching probes. Excludes perf_events readers. Example: b.attach_kprobe(event_re=pattern, fn_name=\"trace_count\")\nmatched = b.num_open_kprobes()\nif matched == 0: print(\"0 functions matched by \\\"%s\\\". Exiting.\" % args.pattern) exit() Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 4. num_open_kprobes()","id":"250","title":"4. num_open_kprobes()"},"251":{"body":"Syntax: BPF.get_syscall_fnname(name : str) Return the corresponding kernel function name of the syscall. This helper function will try different prefixes and use the right one to concatenate with the syscall name. Note that the return value may vary in different versions of linux kernel and sometimes it will causing trouble. (see #2590 ) Example: print(\"The function name of %s in kernel is %s\" % (\"clone\", b.get_syscall_fnname(\"clone\")))\n# sys_clone or __x64_sys_clone or ... Examples in situ: search /examples , search /tools","breadcrumbs":"bcc Reference Guide » 5. get_syscall_fnname()","id":"251","title":"5. get_syscall_fnname()"},"252":{"body":"See the \"Understanding eBPF verifier messages\" section in the kernel source under Documentation/networking/filter.txt.","breadcrumbs":"bcc Reference Guide » BPF Errors","id":"252","title":"BPF Errors"},"253":{"body":"This can be due to trying to read memory directly, instead of operating on memory on the BPF stack. All kernel memory reads must be passed via bpf_probe_read_kernel() to copy kernel memory into the BPF stack, which can be automatic by the bcc rewriter in some cases of simple dereferencing. bpf_probe_read_kernel() does all the required checks. Example: bpf: Permission denied\n0: (bf) r6 = r1\n1: (79) r7 = *(u64 *)(r6 +80)\n2: (85) call 14\n3: (bf) r8 = r0\n[...]\n23: (69) r1 = *(u16 *)(r7 +16)\nR7 invalid mem access 'inv' Traceback (most recent call last): File \"./tcpaccept\", line 179, in b = BPF(text=bpf_text) File \"/usr/lib/python2.7/dist-packages/bcc/__init__.py\", line 172, in __init__ self._trace_autoload() File \"/usr/lib/python2.7/dist-packages/bcc/__init__.py\", line 612, in _trace_autoload fn = self.load_func(func_name, BPF.KPROBE) File \"/usr/lib/python2.7/dist-packages/bcc/__init__.py\", line 212, in load_func raise Exception(\"Failed to load BPF program %s\" % func_name)\nException: Failed to load BPF program kretprobe__inet_csk_accept","breadcrumbs":"bcc Reference Guide » 1. Invalid mem access","id":"253","title":"1. Invalid mem access"},"254":{"body":"This error happens when a GPL-only helper is called from a non-GPL BPF program. To fix this error, do not use GPL-only helpers from a proprietary BPF program, or relicense the BPF program under a GPL-compatible license. Check which BPF helpers are GPL-only, and what licenses are considered GPL-compatible. Example calling bpf_get_stackid(), a GPL-only BPF helper, from a proprietary program (#define BPF_LICENSE Proprietary): bpf: Failed to load program: Invalid argument\n[...]\n8: (85) call bpf_get_stackid#27\ncannot call GPL only function from proprietary program","breadcrumbs":"bcc Reference Guide » 2. Cannot call GPL only function from proprietary program","id":"254","title":"2. Cannot call GPL only function from proprietary program"},"255":{"body":"","breadcrumbs":"bcc Reference Guide » Environment Variables","id":"255","title":"Environment Variables"},"256":{"body":"eBPF program compilation needs kernel sources or kernel headers with headers compiled. In case your kernel sources are at a non-standard location where BCC cannot find then, its possible to provide BCC the absolute path of the location by setting BCC_KERNEL_SOURCE to it.","breadcrumbs":"bcc Reference Guide » 1. Kernel source directory","id":"256","title":"1. Kernel source directory"},"257":{"body":"By default, BCC stores the LINUX_VERSION_CODE in the generated eBPF object which is then passed along to the kernel when the eBPF program is loaded. Sometimes this is quite inconvenient especially when the kernel is slightly updated such as an LTS kernel release. Its extremely unlikely the slight mismatch would cause any issues with the loaded eBPF program. By setting BCC_LINUX_VERSION_CODE to the version of the kernel that's running, the check for verifying the kernel version can be bypassed. This is needed for programs that use kprobes. This needs to be encoded in the format: (VERSION * 65536) + (PATCHLEVEL * 256) + SUBLEVEL. For example, if the running kernel is 4.9.10, then can set export BCC_LINUX_VERSION_CODE=264458 to override the kernel version check successfully.","breadcrumbs":"bcc Reference Guide » 2. Kernel version overriding","id":"257","title":"2. Kernel version overriding"},"258":{"body":"Some tools have special filtering capabitilies, the main use case is to trace processes running in containers, but those mechanisms are generic and could be used in other cases as well.","breadcrumbs":"Special Filtering » Special Filtering","id":"258","title":"Special Filtering"},"259":{"body":"Some tools have an option to filter by cgroup by referencing a pinned BPF hash map managed externally. Examples of commands: # ./opensnoop --cgroupmap /sys/fs/bpf/test01\n# ./execsnoop --cgroupmap /sys/fs/bpf/test01\n# ./tcpconnect --cgroupmap /sys/fs/bpf/test01\n# ./tcpaccept --cgroupmap /sys/fs/bpf/test01\n# ./tcptracer --cgroupmap /sys/fs/bpf/test01 The commands above will only display results from processes that belong to one of the cgroups whose id, returned by bpf_get_current_cgroup_id(), is in the pinned BPF hash map. The BPF hash map can be created by: # bpftool map create /sys/fs/bpf/test01 type hash key 8 value 8 entries 128 \\ name cgroupset flags 0 To get a shell in a new cgroup, you can use: # systemd-run --pty --unit test bash The shell will be running in the cgroup /sys/fs/cgroup/unified/system.slice/test.service. The cgroup id can be discovered using the name_to_handle_at() system call. In the examples/cgroupid, you will find an example of program to get the cgroup id. # cd examples/cgroupid\n# make\n# ./cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service or, using Docker: # cd examples/cgroupid\n# docker build -t cgroupid .\n# docker run --rm --privileged -v /sys/fs/cgroup:/sys/fs/cgroup \\ cgroupid cgroupid hex /sys/fs/cgroup/unified/system.slice/test.service This prints the cgroup id as a hexadecimal string in the host endianness such as 77 16 00 00 01 00 00 00. # FILE=/sys/fs/bpf/test01\n# CGROUPID_HEX=\"77 16 00 00 01 00 00 00\"\n# bpftool map update pinned $FILE key hex $CGROUPID_HEX value hex 00 00 00 00 00 00 00 00 any Now that the shell started by systemd-run has its cgroup id in the BPF hash map, bcc tools will display results from this shell. Cgroups can be added and removed from the BPF hash map without restarting the bcc tool. This feature is useful for integrating bcc tools in external projects.","breadcrumbs":"Special Filtering » Filtering by cgroups","id":"259","title":"Filtering by cgroups"},"26":{"body":"#include \"vmlinux.h\"\n#include \n#include char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; SEC(\"fentry/do_unlinkat\")\nint BPF_PROG(do_unlinkat, int dfd, struct filename *name)\n{ pid_t pid; pid = bpf_get_current_pid_tgid() >> 32; bpf_printk(\"fentry: pid = %d, filename = %s\\n\", pid, name->name); return 0;\n} SEC(\"fexit/do_unlinkat\")\nint BPF_PROG(do_unlinkat_exit, int dfd, struct filename *name, long ret)\n{ pid_t pid; pid = bpf_get_current_pid_tgid() >> 32; bpf_printk(\"fexit: pid = %d, filename = %s, ret = %ld\\n\", pid, name->name, ret); return 0;\n} 这段程序通过定义两个函数,分别附加到 do_unlinkat 和 do_unlinkat_exit 上。这两个函数分别在进入 do_unlinkat 和离开 do_unlinkat 时执行。这两个函数通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数来获取调用 do_unlinkat 的进程 ID,文件名和返回值,并在内核日志中打印出来。 与 kprobes 相比,fentry 和 fexit 程序有更高的性能和可用性。在这个例子中,我们可以直接访问函数的指针参数,就像在普通的 C 代码中一样,而不需要使用各种读取帮助程序。fexit 和 kretprobe 程序最大的区别在于,fexit 程序可以访问函数的输入参数和返回值,而 kretprobe 只能访问返回值。 从 5.5 内核开始,fentry 和 fexit 程序可用。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: $ ecc fentry-link.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 在另外一个窗口中: touch test_file\nrm test_file\ntouch test_file2\nrm test_file2 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe rm-9290 [004] d..2 4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file rm-9290 [004] d..2 4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file, ret = 0 rm-9290 [004] d..2 4637.798698: bpf_trace_printk: fentry: pid = 9290, filename = test_file2 rm-9290 [004] d..2 4637.798843: bpf_trace_printk: fexit: pid = 9290, filename = test_file2, ret = 0","breadcrumbs":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用 » Fentry","id":"26","title":"Fentry"},"260":{"body":"The BPF hash map can be created by: # bpftool map create /sys/fs/bpf/mnt_ns_set type hash key 8 value 4 entries 128 \\ name mnt_ns_set flags 0 Execute the execsnoop tool filtering only the mount namespaces in /sys/fs/bpf/mnt_ns_set: # tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set Start a terminal in a new mount namespace: # unshare -m bash Update the hash map with the mount namespace ID of the terminal above: FILE=/sys/fs/bpf/mnt_ns_set\nif [ $(printf '\\1' | od -dAn) -eq 1 ]; then HOST_ENDIAN_CMD=tac\nelse HOST_ENDIAN_CMD=cat\nfi NS_ID_HEX=\"$(printf '%016x' $(stat -Lc '%i' /proc/self/ns/mnt) | sed 's/.\\{2\\}/&\\n/g' | $HOST_ENDIAN_CMD)\"\nbpftool map update pinned $FILE key hex $NS_ID_HEX value hex 00 00 00 00 any Execute a command in this terminal: # ping kinvolk.io You'll see how on the execsnoop terminal you started above the call is logged: # tools/execsnoop.py --mntnsmap /sys/fs/bpf/mnt_ns_set\n[sudo] password for mvb:\nPCOMM PID PPID RET ARGS\nping 8096 7970 0 /bin/ping kinvolk.io","breadcrumbs":"Special Filtering » Filtering by mount by namespace","id":"260","title":"Filtering by mount by namespace"},"261":{"body":"This tutorial covers how to use bcc tools to quickly solve performance, troubleshooting, and networking issues. If you want to develop new bcc tools, see tutorial_bcc_python_developer.md for that tutorial. It is assumed for this tutorial that bcc is already installed, and you can run tools like execsnoop successfully. See INSTALL.md . This uses enhancements added to the Linux 4.x series.","breadcrumbs":"bcc Tutorial » bcc Tutorial","id":"261","title":"bcc Tutorial"},"262":{"body":"Some quick wins.","breadcrumbs":"bcc Tutorial » Observability","id":"262","title":"Observability"},"263":{"body":"Before using bcc, you should start with the Linux basics. One reference is the Linux Performance Analysis in 60,000 Milliseconds post, which covers these commands: uptime dmesg | tail vmstat 1 mpstat -P ALL 1 pidstat 1 iostat -xz 1 free -m sar -n DEV 1 sar -n TCP,ETCP 1 top","breadcrumbs":"bcc Tutorial » 0. Before bcc","id":"263","title":"0. Before bcc"},"264":{"body":"Here is a generic checklist for performance investigations with bcc, first as a list, then in detail: execsnoop opensnoop ext4slower (or btrfs*, xfs*, zfs*) biolatency biosnoop cachestat tcpconnect tcpaccept tcpretrans runqlat profile These tools may be installed on your system under /usr/share/bcc/tools, or you can run them from the bcc github repo under /tools where they have a .py extension. Browse the 50+ tools available for more analysis options. 1.1 execsnoop # ./execsnoop\nPCOMM PID RET ARGS\nsupervise 9660 0 ./run\nsupervise 9661 0 ./run\nmkdir 9662 0 /bin/mkdir -p ./main\nrun 9663 0 ./run\n[...] execsnoop prints one line of output for each new process. Check for short-lived processes. These can consume CPU resources, but not show up in most monitoring tools that periodically take snapshots of which processes are running. It works by tracing exec(), not the fork(), so it will catch many types of new processes but not all (eg, it won't see an application launching working processes, that doesn't exec() anything else). More examples . 1.2. opensnoop # ./opensnoop\nPID COMM FD ERR PATH\n1565 redis-server 5 0 /proc/1565/stat\n1565 redis-server 5 0 /proc/1565/stat\n1565 redis-server 5 0 /proc/1565/stat\n1603 snmpd 9 0 /proc/net/dev\n1603 snmpd 11 0 /proc/net/if_inet6\n1603 snmpd -1 2 /sys/class/net/eth0/device/vendor\n1603 snmpd 11 0 /proc/sys/net/ipv4/neigh/eth0/retrans_time_ms\n1603 snmpd 11 0 /proc/sys/net/ipv6/neigh/eth0/retrans_time_ms\n1603 snmpd 11 0 /proc/sys/net/ipv6/conf/eth0/forwarding\n[...] opensnoop prints one line of output for each open() syscall, including details. Files that are opened can tell you a lot about how applications work: identifying their data files, config files, and log files. Sometimes applications can misbehave, and perform poorly, when they are constantly attempting to read files that do not exist. opensnoop gives you a quick look. More examples . 1.3. ext4slower (or btrfs*, xfs*, zfs*) # ./ext4slower\nTracing ext4 operations slower than 10 ms\nTIME COMM PID T BYTES OFF_KB LAT(ms) FILENAME\n06:35:01 cron 16464 R 1249 0 16.05 common-auth\n06:35:01 cron 16463 R 1249 0 16.04 common-auth\n06:35:01 cron 16465 R 1249 0 16.03 common-auth\n06:35:01 cron 16465 R 4096 0 10.62 login.defs\n06:35:01 cron 16464 R 4096 0 10.61 login.defs ext4slower traces the ext4 file system and times common operations, and then only prints those that exceed a threshold. This is great for identifying or exonerating one type of performance issue: show individually slow disk i/O via the file system. Disks process I/O asynchronously, and it can be difficult to associate latency at that layer with the latency applications experience. Tracing higher up in the kernel stack, at the VFS -> file system interface, will more closely match what an application suffers. Use this tool to identify if file system latency exceeds a given threshold. Similar tools exist in bcc for other file systems: btrfsslower, xfsslower, and zfsslower. There is also fileslower, which works at the VFS layer and traces everything (although at some higher overhead). More examples . 1.4. biolatency # ./biolatency\nTracing block device I/O... Hit Ctrl-C to end.\n^C usecs : count distribution 0 -> 1 : 0 | | 2 -> 3 : 0 | | 4 -> 7 : 0 | | 8 -> 15 : 0 | | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 1 | | 128 -> 255 : 12 |******** | 256 -> 511 : 15 |********** | 512 -> 1023 : 43 |******************************* | 1024 -> 2047 : 52 |**************************************| 2048 -> 4095 : 47 |********************************** | 4096 -> 8191 : 52 |**************************************| 8192 -> 16383 : 36 |************************** | 16384 -> 32767 : 15 |********** | 32768 -> 65535 : 2 |* | 65536 -> 131071 : 2 |* | biolatency traces disk I/O latency (time from device issue to completion), and when the tool ends (Ctrl-C, or a given interval), it prints a histogram summary of the latency. This is great for understanding disk I/O latency beyond the average times given by tools like iostat. I/O latency outliers will be visible at the end of the distribution, as well as multi-mode distributions. More examples . 1.5. biosnoop # ./biosnoop\nTIME(s) COMM PID DISK T SECTOR BYTES LAT(ms)\n0.000004001 supervise 1950 xvda1 W 13092560 4096 0.74\n0.000178002 supervise 1950 xvda1 W 13092432 4096 0.61\n0.001469001 supervise 1956 xvda1 W 13092440 4096 1.24\n0.001588002 supervise 1956 xvda1 W 13115128 4096 1.09\n1.022346001 supervise 1950 xvda1 W 13115272 4096 0.98\n1.022568002 supervise 1950 xvda1 W 13188496 4096 0.93\n[...] biosnoop prints a line of output for each disk I/O, with details including latency (time from device issue to completion). This allows you to examine disk I/O in more detail, and look for time-ordered patterns (eg, reads queueing behind writes). Note that the output will be verbose if your system performs disk I/O at a high rate. More examples . 1.6. cachestat # ./cachestat HITS MISSES DIRTIES READ_HIT% WRITE_HIT% BUFFERS_MB CACHED_MB 1074 44 13 94.9% 2.9% 1 223 2195 170 8 92.5% 6.8% 1 143 182 53 56 53.6% 1.3% 1 143 62480 40960 20480 40.6% 19.8% 1 223 7 2 5 22.2% 22.2% 1 223 348 0 0 100.0% 0.0% 1 223\n[...] cachestat prints a one line summary every second (or every custom interval) showing statistics from the file system cache. Use this to identify a low cache hit ratio, and a high rate of misses: which gives one lead for performance tuning. More examples . 1.7. tcpconnect # ./tcpconnect\nPID COMM IP SADDR DADDR DPORT\n1479 telnet 4 127.0.0.1 127.0.0.1 23\n1469 curl 4 10.201.219.236 54.245.105.25 80\n1469 curl 4 10.201.219.236 54.67.101.145 80\n1991 telnet 6 ::1 ::1 23\n2015 ssh 6 fe80::2000:bff:fe82:3ac fe80::2000:bff:fe82:3ac 22\n[...] tcpconnect prints one line of output for every active TCP connection (eg, via connect()), with details including source and destination addresses. Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder. More examples . 1.8. tcpaccept # ./tcpaccept\nPID COMM IP RADDR LADDR LPORT\n907 sshd 4 192.168.56.1 192.168.56.102 22\n907 sshd 4 127.0.0.1 127.0.0.1 22\n5389 perl 6 1234:ab12:2040:5020:2299:0:5:0 1234:ab12:2040:5020:2299:0:5:0 7001\n[...] tcpaccept prints one line of output for every passive TCP connection (eg, via accept()), with details including source and destination addresses. Look for unexpected connections that may point to inefficiencies in application configuration, or an intruder. More examples . 1.9. tcpretrans # ./tcpretrans\nTIME PID IP LADDR:LPORT T> RADDR:RPORT STATE\n01:55:05 0 4 10.153.223.157:22 R> 69.53.245.40:34619 ESTABLISHED\n01:55:05 0 4 10.153.223.157:22 R> 69.53.245.40:34619 ESTABLISHED\n01:55:17 0 4 10.153.223.157:22 R> 69.53.245.40:22957 ESTABLISHED\n[...] tcprerans prints one line of output for every TCP retransmit packet, with details including source and destination addresses, and kernel state of the TCP connection. TCP retransmissions cause latency and throughput issues. For ESTABLISHED retransmits, look for patterns with networks. For SYN_SENT, this may point to target kernel CPU saturation and kernel packet drops. More examples . 1.10. runqlat # ./runqlat\nTracing run queue latency... Hit Ctrl-C to end.\n^C usecs : count distribution 0 -> 1 : 233 |*********** | 2 -> 3 : 742 |************************************ | 4 -> 7 : 203 |********** | 8 -> 15 : 173 |******** | 16 -> 31 : 24 |* | 32 -> 63 : 0 | | 64 -> 127 : 30 |* | 128 -> 255 : 6 | | 256 -> 511 : 3 | | 512 -> 1023 : 5 | | 1024 -> 2047 : 27 |* | 2048 -> 4095 : 30 |* | 4096 -> 8191 : 20 | | 8192 -> 16383 : 29 |* | 16384 -> 32767 : 809 |****************************************| 32768 -> 65535 : 64 |*** | runqlat times how long threads were waiting on the CPU run queues, and prints this as a histogram. This can help quantify time lost waiting for a turn on CPU, during periods of CPU saturation. More examples . 1.11. profile # ./profile\nSampling at 49 Hertz of all threads by user + kernel stack... Hit Ctrl-C to end.\n^C 00007f31d76c3251 [unknown] 47a2c1e752bf47f7 [unknown] - sign-file (8877) 1 ffffffff813d0af8 __clear_user ffffffff813d5277 iov_iter_zero ffffffff814ec5f2 read_iter_zero ffffffff8120be9d __vfs_read ffffffff8120c385 vfs_read ffffffff8120d786 sys_read ffffffff817cc076 entry_SYSCALL_64_fastpath 00007fc5652ad9b0 read - dd (25036) 4 0000000000400542 func_a 0000000000400598 main 00007f12a133e830 __libc_start_main 083e258d4c544155 [unknown] - func_ab (13549) 5 [...] ffffffff8105eb66 native_safe_halt ffffffff8103659e default_idle ffffffff81036d1f arch_cpu_idle ffffffff810bba5a default_idle_call ffffffff810bbd07 cpu_startup_entry ffffffff8104df55 start_secondary - swapper/1 (0) 75 profile is a CPU profiler, which takes samples of stack traces at timed intervals, and prints a summary of unique stack traces and a count of their occurrence. Use this tool to understand the code paths that are consuming CPU resources. More examples .","breadcrumbs":"bcc Tutorial » 1. General Performance","id":"264","title":"1. General Performance"},"265":{"body":"In addition to the above tools for performance tuning, below is a checklist for bcc generic tools, first as a list, and in detail: trace argdist funccount These generic tools may be useful to provide visibility to solve your specific problems. 2.1. trace Example 1 Suppose you want to track file ownership change. There are three syscalls, chown, fchown and lchown which users can use to change file ownership. The corresponding syscall entry is SyS_[f|l]chown. The following command can be used to print out syscall parameters and the calling process user id. You can use id command to find the uid of a particular user. $ trace.py \\ 'p::SyS_chown \"file = %s, to_uid = %d, to_gid = %d, from_uid = %d\", arg1, arg2, arg3, $uid' \\ 'p::SyS_fchown \"fd = %d, to_uid = %d, to_gid = %d, from_uid = %d\", arg1, arg2, arg3, $uid' \\ 'p::SyS_lchown \"file = %s, to_uid = %d, to_gid = %d, from_uid = %d\", arg1, arg2, arg3, $uid'\nPID TID COMM FUNC -\n1269255 1269255 python3.6 SyS_lchown file = /tmp/dotsync-usisgezu/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269441 1269441 zstd SyS_chown file = /tmp/dotsync-vic7ygj0/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269255 1269255 python3.6 SyS_lchown file = /tmp/dotsync-a40zd7ev/tmp, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269442 1269442 zstd SyS_chown file = /tmp/dotsync-gzp413o_/dotsync-package.zst, to_uid = 128203, to_gid = 100, from_uid = 128203\n1269255 1269255 python3.6 SyS_lchown file = /tmp/dotsync-whx4fivm/tmp/.bash_profile, to_uid = 128203, to_gid = 100, from_uid = 128203 Example 2 Suppose you want to count nonvoluntary context switches (nvcsw) in your bpf based performance monitoring tools and you do not know what is the proper method. /proc//status already tells you the number (nonvoluntary_ctxt_switches) for a pid and you can use trace.py to do a quick experiment to verify your method. With kernel source code, the nvcsw is counted at file linux/kernel/sched/core.c function __schedule and under condition !(!preempt && prev->state) // i.e., preempt || !prev->state The __schedule function is marked as notrace, and the best place to evaluate the above condition seems in sched/sched_switch tracepoint called inside function __schedule and defined in linux/include/trace/events/sched.h. trace.py already has args being the pointer to the tracepoint TP_STRUCT__entry. The above condition in function __schedule can be represented as args->prev_state == TASK_STATE_MAX || args->prev_state == 0 The below command can be used to count the involuntary context switches (per process or per pid) and compare to /proc//status or /proc//task//status for correctness, as in typical cases, involuntary context switches are not very common. $ trace.py -p 1134138 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'\nPID TID COMM FUNC\n1134138 1134140 contention_test sched_switch\n1134138 1134142 contention_test sched_switch\n...\n$ trace.py -L 1134140 't:sched:sched_switch (args->prev_state == TASK_STATE_MAX || args->prev_state == 0)'\nPID TID COMM FUNC\n1134138 1134140 contention_test sched_switch\n1134138 1134140 contention_test sched_switch\n... Example 3 This example is related to issue 1231 and 1516 where uprobe does not work at all in certain cases. First, you can do a strace as below $ strace trace.py 'r:bash:readline \"%s\", retval'\n...\nperf_event_open(0x7ffd968212f0, -1, 0, -1, 0x8 /* PERF_FLAG_??? */) = -1 EIO (Input/output error)\n... The perf_event_open syscall returns -EIO. Digging into kernel uprobe related codes in /kernel/trace and /kernel/events directories to search EIO, the function uprobe_register is the most suspicious. Let us find whether this function is called or not and what is the return value if it is called. In one terminal using the following command to print out the return value of uprobe_register, $ trace.py 'r::uprobe_register \"ret = %d\", retval' In another terminal run the same bash uretprobe tracing example, and you should get $ trace.py 'r::uprobe_register \"ret = %d\", retval'\nPID TID COMM FUNC -\n1041401 1041401 python2.7 uprobe_register ret = -5 The -5 error code is EIO. This confirms that the following code in function uprobe_register is the most suspicious culprit. if (!inode->i_mapping->a_ops->readpage && !shmem_mapping(inode->i_mapping)) return -EIO; The shmem_mapping function is defined as bool shmem_mapping(struct address_space *mapping)\n{ return mapping->a_ops == &shmem_aops;\n} To confirm the theory, find what is inode->i_mapping->a_ops with the following command $ trace.py -I 'linux/fs.h' 'p::uprobe_register(struct inode *inode) \"a_ops = %llx\", inode->i_mapping->a_ops'\nPID TID COMM FUNC -\n814288 814288 python2.7 uprobe_register a_ops = ffffffff81a2adc0\n^C$ grep ffffffff81a2adc0 /proc/kallsyms\nffffffff81a2adc0 R empty_aops The kernel symbol empty_aops does not have readpage defined and hence the above suspicious condition is true. Further examining the kernel source code shows that overlayfs does not provide its own a_ops while some other file systems (e.g., ext4) define their own a_ops (e.g., ext4_da_aops), and ext4_da_aops defines readpage. Hence, uprobe works fine on ext4 while not on overlayfs. More examples . 2.2. argdist More examples . 2.3. funccount More examples .","breadcrumbs":"bcc Tutorial » 2. Observability with Generic Tools","id":"265","title":"2. Observability with Generic Tools"},"266":{"body":"To do.","breadcrumbs":"bcc Tutorial » Networking","id":"266","title":"Networking"},"267":{"body":"This tutorial is about developing bcc tools and programs using the Python interface. There are two parts: observability then networking. Snippets are taken from various programs in bcc: see their files for licences. Also see the bcc developer's reference_guide.md , and a tutorial for end-users of tools: tutorial.md . There is also a lua interface for bcc.","breadcrumbs":"bcc Python Developer Tutorial » bcc Python Developer Tutorial","id":"267","title":"bcc Python Developer Tutorial"},"268":{"body":"This observability tutorial contains 17 lessons, and 46 enumerated things to learn.","breadcrumbs":"bcc Python Developer Tutorial » Observability","id":"268","title":"Observability"},"269":{"body":"Start by running examples/hello_world.py , while running some commands (eg, \"ls\") in another session. It should print \"Hello, World!\" for new processes. If not, start by fixing bcc: see INSTALL.md . # ./examples/hello_world.py bash-13364 [002] d... 24573433.052937: : Hello, World! bash-13364 [003] d... 24573436.642808: : Hello, World!\n[...] Here's the code for hello_world.py: from bcc import BPF\nBPF(text='int kprobe__sys_clone(void *ctx) { bpf_trace_printk(\"Hello, World!\\\\n\"); return 0; }').trace_print() There are six things to learn from this: text='...': This defines a BPF program inline. The program is written in C. kprobe__sys_clone(): This is a short-cut for kernel dynamic tracing via kprobes. If the C function begins with kprobe__, the rest is treated as a kernel function name to instrument, in this case, sys_clone(). void *ctx: ctx has arguments, but since we aren't using them here, we'll just cast it to void *. bpf_trace_printk(): A simple kernel facility for printf() to the common trace_pipe (/sys/kernel/debug/tracing/trace_pipe). This is ok for some quick examples, but has limitations: 3 args max, 1 %s only, and trace_pipe is globally shared, so concurrent programs will have clashing output. A better interface is via BPF_PERF_OUTPUT(), covered later. return 0;: Necessary formality (if you want to know why, see #139 ). .trace_print(): A bcc routine that reads trace_pipe and prints the output.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 1. Hello World","id":"269","title":"Lesson 1. Hello World"},"27":{"body":"这段程序是一个 eBPF 程序,通过使用 fentry 和 fexit 捕获 do_unlinkat 和 do_unlinkat_exit 函数,并通过使用 bpf_get_current_pid_tgid 和 bpf_printk 函数获取调用 do_unlinkat 的进程 ID、文件名和返回值,并在内核日志中打印出来。 编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令,并通过查看 /sys/kernel/debug/tracing/trace_pipe 文件查看 eBPF 程序的输出。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程三:在 eBPF 中使用 fentry 监测捕获 unlink 系统调用 » 总结","id":"27","title":"总结"},"270":{"body":"Write a program that traces the sys_sync() kernel function. Print \"sys_sync() called\" when it runs. Test by running sync in another session while tracing. The hello_world.py program has everything you need for this. Improve it by printing \"Tracing sys_sync()... Ctrl-C to end.\" when the program first starts. Hint: it's just Python.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 2. sys_sync()","id":"270","title":"Lesson 2. sys_sync()"},"271":{"body":"This program is in examples/tracing/hello_fields.py . Sample output (run commands in another session): # examples/tracing/hello_fields.py\nTIME(s) COMM PID MESSAGE\n24585001.174885999 sshd 1432 Hello, World!\n24585001.195710000 sshd 15780 Hello, World!\n24585001.991976000 systemd-udevd 484 Hello, World!\n24585002.276147000 bash 15787 Hello, World! Code: from bcc import BPF # define BPF program\nprog = \"\"\"\nint hello(void *ctx) { bpf_trace_printk(\"Hello, World!\\\\n\"); return 0;\n}\n\"\"\" # load BPF program\nb = BPF(text=prog)\nb.attach_kprobe(event=b.get_syscall_fnname(\"clone\"), fn_name=\"hello\") # header\nprint(\"%-18s %-16s %-6s %s\" % (\"TIME(s)\", \"COMM\", \"PID\", \"MESSAGE\")) # format output\nwhile 1: try: (task, pid, cpu, flags, ts, msg) = b.trace_fields() except ValueError: continue print(\"%-18.9f %-16s %-6d %s\" % (ts, task, pid, msg)) This is similar to hello_world.py, and traces new processes via sys_clone() again, but has a few more things to learn: prog =: This time we declare the C program as a variable, and later refer to it. This is useful if you want to add some string substitutions based on command line arguments. hello(): Now we're just declaring a C function, instead of the kprobe__ shortcut. We'll refer to this later. All C functions declared in the BPF program are expected to be executed on a probe, hence they all need to take a pt_reg* ctx as first argument. If you need to define some helper function that will not be executed on a probe, they need to be defined as static inline in order to be inlined by the compiler. Sometimes you would also need to add _always_inline function attribute to it. b.attach_kprobe(event=b.get_syscall_fnname(\"clone\"), fn_name=\"hello\"): Creates a kprobe for the kernel clone system call function, which will execute our defined hello() function. You can call attach_kprobe() more than once, and attach your C function to multiple kernel functions. b.trace_fields(): Returns a fixed set of fields from trace_pipe. Similar to trace_print(), this is handy for hacking, but for real tooling we should switch to BPF_PERF_OUTPUT().","breadcrumbs":"bcc Python Developer Tutorial » Lesson 3. hello_fields.py","id":"271","title":"Lesson 3. hello_fields.py"},"272":{"body":"Remember the days of sysadmins typing sync three times on a slow console before reboot, to give the first asynchronous sync time to complete? Then someone thought sync;sync;sync was clever, to run them all on one line, which became industry practice despite defeating the original purpose! And then sync became synchronous, so more reasons it was silly. Anyway. The following example times how quickly the do_sync function is called, and prints output if it has been called more recently than one second ago. A sync;sync;sync will print output for the 2nd and 3rd sync's: # examples/tracing/sync_timing.py\nTracing for quick sync's... Ctrl-C to end\nAt time 0.00 s: multiple syncs detected, last 95 ms ago\nAt time 0.10 s: multiple syncs detected, last 96 ms ago This program is examples/tracing/sync_timing.py : from __future__ import print_function\nfrom bcc import BPF # load BPF program\nb = BPF(text=\"\"\"\n#include BPF_HASH(last); int do_trace(struct pt_regs *ctx) { u64 ts, *tsp, delta, key = 0; // attempt to read stored timestamp tsp = last.lookup(&key); if (tsp != NULL) { delta = bpf_ktime_get_ns() - *tsp; if (delta < 1000000000) { // output if time is less than 1 second bpf_trace_printk(\"%d\\\\n\", delta / 1000000); } last.delete(&key); } // update stored timestamp ts = bpf_ktime_get_ns(); last.update(&key, &ts); return 0;\n}\n\"\"\") b.attach_kprobe(event=b.get_syscall_fnname(\"sync\"), fn_name=\"do_trace\")\nprint(\"Tracing for quick sync's... Ctrl-C to end\") # format output\nstart = 0\nwhile 1: (task, pid, cpu, flags, ts, ms) = b.trace_fields() if start == 0: start = ts ts = ts - start print(\"At time %.2f s: multiple syncs detected, last %s ms ago\" % (ts, ms)) Things to learn: bpf_ktime_get_ns(): Returns the time as nanoseconds. BPF_HASH(last): Creates a BPF map object that is a hash (associative array), called \"last\". We didn't specify any further arguments, so it defaults to key and value types of u64. key = 0: We'll only store one key/value pair in this hash, where the key is hardwired to zero. last.lookup(&key): Lookup the key in the hash, and return a pointer to its value if it exists, else NULL. We pass the key in as an address to a pointer. if (tsp != NULL) {: The verifier requires that pointer values derived from a map lookup must be checked for a null value before they can be dereferenced and used. last.delete(&key): Delete the key from the hash. This is currently required because of a kernel bug in .update() (fixed in 4.8.10). last.update(&key, &ts): Associate the value in the 2nd argument to the key, overwriting any previous value. This records the timestamp.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 4. sync_timing.py","id":"272","title":"Lesson 4. sync_timing.py"},"273":{"body":"Modify the sync_timing.py program (prior lesson) to store the count of all kernel sync system calls (both fast and slow), and print it with the output. This count can be recorded in the BPF program by adding a new key index to the existing hash.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 5. sync_count.py","id":"273","title":"Lesson 5. sync_count.py"},"274":{"body":"Browse the examples/tracing/disksnoop.py program to see what is new. Here is some sample output: # disksnoop.py\nTIME(s) T BYTES LAT(ms)\n16458043.436012 W 4096 3.13\n16458043.437326 W 4096 4.44\n16458044.126545 R 4096 42.82\n16458044.129872 R 4096 3.24\n[...] And a code snippet: [...]\nREQ_WRITE = 1 # from include/linux/blk_types.h # load BPF program\nb = BPF(text=\"\"\"\n#include \n#include BPF_HASH(start, struct request *); void trace_start(struct pt_regs *ctx, struct request *req) { // stash start timestamp by request ptr u64 ts = bpf_ktime_get_ns(); start.update(&req, &ts);\n} void trace_completion(struct pt_regs *ctx, struct request *req) { u64 *tsp, delta; tsp = start.lookup(&req); if (tsp != 0) { delta = bpf_ktime_get_ns() - *tsp; bpf_trace_printk(\"%d %x %d\\\\n\", req->__data_len, req->cmd_flags, delta / 1000); start.delete(&req); }\n}\n\"\"\")\nif BPF.get_kprobe_functions(b'blk_start_request'): b.attach_kprobe(event=\"blk_start_request\", fn_name=\"trace_start\")\nb.attach_kprobe(event=\"blk_mq_start_request\", fn_name=\"trace_start\")\nif BPF.get_kprobe_functions(b'__blk_account_io_done'): b.attach_kprobe(event=\"__blk_account_io_done\", fn_name=\"trace_completion\")\nelse: b.attach_kprobe(event=\"blk_account_io_done\", fn_name=\"trace_completion\")\n[...] Things to learn: REQ_WRITE: We're defining a kernel constant in the Python program because we'll use it there later. If we were using REQ_WRITE in the BPF program, it should just work (without needing to be defined) with the appropriate #includes. trace_start(struct pt_regs *ctx, struct request *req): This function will later be attached to kprobes. The arguments to kprobe functions are struct pt_regs *ctx, for registers and BPF context, and then the actual arguments to the function. We'll attach this to blk_start_request(), where the first argument is struct request *. start.update(&req, &ts): We're using the pointer to the request struct as a key in our hash. What? This is commonplace in tracing. Pointers to structs turn out to be great keys, as they are unique: two structs can't have the same pointer address. (Just be careful about when it gets free'd and reused.) So what we're really doing is tagging the request struct, which describes the disk I/O, with our own timestamp, so that we can time it. There's two common keys used for storing timestamps: pointers to structs, and, thread IDs (for timing function entry to return). req->__data_len: We're dereferencing members of struct request. See its definition in the kernel source for what members are there. bcc actually rewrites these expressions to be a series of bpf_probe_read_kernel() calls. Sometimes bcc can't handle a complex dereference, and you need to call bpf_probe_read_kernel() directly. This is a pretty interesting program, and if you can understand all the code, you'll understand many important basics. We're still using the bpf_trace_printk() hack, so let's fix that next.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 6. disksnoop.py","id":"274","title":"Lesson 6. disksnoop.py"},"275":{"body":"Let's finally stop using bpf_trace_printk() and use the proper BPF_PERF_OUTPUT() interface. This will also mean we stop getting the free trace_field() members like PID and timestamp, and will need to fetch them directly. Sample output while commands are run in another session: # hello_perf_output.py\nTIME(s) COMM PID MESSAGE\n0.000000000 bash 22986 Hello, perf_output!\n0.021080275 systemd-udevd 484 Hello, perf_output!\n0.021359520 systemd-udevd 484 Hello, perf_output!\n0.021590610 systemd-udevd 484 Hello, perf_output!\n[...] Code is examples/tracing/hello_perf_output.py : from bcc import BPF # define BPF program\nprog = \"\"\"\n#include // define output data structure in C\nstruct data_t { u32 pid; u64 ts; char comm[TASK_COMM_LEN];\n};\nBPF_PERF_OUTPUT(events); int hello(struct pt_regs *ctx) { struct data_t data = {}; data.pid = bpf_get_current_pid_tgid(); data.ts = bpf_ktime_get_ns(); bpf_get_current_comm(&data.comm, sizeof(data.comm)); events.perf_submit(ctx, &data, sizeof(data)); return 0;\n}\n\"\"\" # load BPF program\nb = BPF(text=prog)\nb.attach_kprobe(event=b.get_syscall_fnname(\"clone\"), fn_name=\"hello\") # header\nprint(\"%-18s %-16s %-6s %s\" % (\"TIME(s)\", \"COMM\", \"PID\", \"MESSAGE\")) # process event\nstart = 0\ndef print_event(cpu, data, size): global start event = b[\"events\"].event(data) if start == 0: start = event.ts time_s = (float(event.ts - start)) / 1000000000 print(\"%-18.9f %-16s %-6d %s\" % (time_s, event.comm, event.pid, \"Hello, perf_output!\")) # loop with callback to print_event\nb[\"events\"].open_perf_buffer(print_event)\nwhile 1: b.perf_buffer_poll() Things to learn: struct data_t: This defines the C struct we'll use to pass data from kernel to user space. BPF_PERF_OUTPUT(events): This names our output channel \"events\". struct data_t data = {};: Create an empty data_t struct that we'll then populate. bpf_get_current_pid_tgid(): Returns the process ID in the lower 32 bits (kernel's view of the PID, which in user space is usually presented as the thread ID), and the thread group ID in the upper 32 bits (what user space often thinks of as the PID). By directly setting this to a u32, we discard the upper 32 bits. Should you be presenting the PID or the TGID? For a multi-threaded app, the TGID will be the same, so you need the PID to differentiate them, if that's what you want. It's also a question of expectations for the end user. bpf_get_current_comm(): Populates the first argument address with the current process name. events.perf_submit(): Submit the event for user space to read via a perf ring buffer. def print_event(): Define a Python function that will handle reading events from the events stream. b[\"events\"].event(data): Now get the event as a Python object, auto-generated from the C declaration. b[\"events\"].open_perf_buffer(print_event): Associate the Python print_event function with the events stream. while 1: b.perf_buffer_poll(): Block waiting for events.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 7. hello_perf_output.py","id":"275","title":"Lesson 7. hello_perf_output.py"},"276":{"body":"Rewrite sync_timing.py, from a prior lesson, to use BPF_PERF_OUTPUT.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 8. sync_perf_output.py","id":"276","title":"Lesson 8. sync_perf_output.py"},"277":{"body":"The following tool records a histogram of disk I/O sizes. Sample output: # bitehist.py\nTracing... Hit Ctrl-C to end.\n^C kbytes : count distribution 0 -> 1 : 3 | | 2 -> 3 : 0 | | 4 -> 7 : 211 |********** | 8 -> 15 : 0 | | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 1 | | 128 -> 255 : 800 |**************************************| Code is examples/tracing/bitehist.py : from __future__ import print_function\nfrom bcc import BPF\nfrom time import sleep # load BPF program\nb = BPF(text=\"\"\"\n#include \n#include BPF_HISTOGRAM(dist); int kprobe__blk_account_io_done(struct pt_regs *ctx, struct request *req)\n{ dist.increment(bpf_log2l(req->__data_len / 1024)); return 0;\n}\n\"\"\") # header\nprint(\"Tracing... Hit Ctrl-C to end.\") # trace until Ctrl-C\ntry: sleep(99999999)\nexcept KeyboardInterrupt: print() # output\nb[\"dist\"].print_log2_hist(\"kbytes\") A recap from earlier lessons: kprobe__: This prefix means the rest will be treated as a kernel function name that will be instrumented using kprobe. struct pt_regs *ctx, struct request *req: Arguments to kprobe. The ctx is registers and BPF context, the req is the first argument to the instrumented function: blk_account_io_done(). req->__data_len: Dereferencing that member. New things to learn: BPF_HISTOGRAM(dist): Defines a BPF map object that is a histogram, and names it \"dist\". dist.increment(): Increments the histogram bucket index provided as first argument by one by default. Optionally, custom increments can be passed as the second argument. bpf_log2l(): Returns the log-2 of the provided value. This becomes the index of our histogram, so that we're constructing a power-of-2 histogram. b[\"dist\"].print_log2_hist(\"kbytes\"): Prints the \"dist\" histogram as power-of-2, with a column header of \"kbytes\". The only data transferred from kernel to user space is the bucket counts, making this efficient.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 9. bitehist.py","id":"277","title":"Lesson 9. bitehist.py"},"278":{"body":"Write a program that times disk I/O, and prints a histogram of their latency. Disk I/O instrumentation and timing can be found in the disksnoop.py program from a prior lesson, and histogram code can be found in bitehist.py from a prior lesson.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 10. disklatency.py","id":"278","title":"Lesson 10. disklatency.py"},"279":{"body":"This example is split into separate Python and C files. Example output: # vfsreadlat.py 1\nTracing... Hit Ctrl-C to end. usecs : count distribution 0 -> 1 : 0 | | 2 -> 3 : 2 |*********** | 4 -> 7 : 7 |****************************************| 8 -> 15 : 4 |********************** | usecs : count distribution 0 -> 1 : 29 |****************************************| 2 -> 3 : 28 |************************************** | 4 -> 7 : 4 |***** | 8 -> 15 : 8 |*********** | 16 -> 31 : 0 | | 32 -> 63 : 0 | | 64 -> 127 : 0 | | 128 -> 255 : 0 | | 256 -> 511 : 2 |** | 512 -> 1023 : 0 | | 1024 -> 2047 : 0 | | 2048 -> 4095 : 0 | | 4096 -> 8191 : 4 |***** | 8192 -> 16383 : 6 |******** | 16384 -> 32767 : 9 |************ | 32768 -> 65535 : 6 |******** | 65536 -> 131071 : 2 |** | usecs : count distribution 0 -> 1 : 11 |****************************************| 2 -> 3 : 2 |******* | 4 -> 7 : 10 |************************************ | 8 -> 15 : 8 |***************************** | 16 -> 31 : 1 |*** | 32 -> 63 : 2 |******* |\n[...] Browse the code in examples/tracing/vfsreadlat.py and examples/tracing/vfsreadlat.c . Things to learn: b = BPF(src_file = \"vfsreadlat.c\"): Read the BPF C program from a separate source file. b.attach_kretprobe(event=\"vfs_read\", fn_name=\"do_return\"): Attaches the BPF C function do_return() to the return of the kernel function vfs_read(). This is a kretprobe: instrumenting the return from a function, rather than its entry. b[\"dist\"].clear(): Clears the histogram.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 11. vfsreadlat.py","id":"279","title":"Lesson 11. vfsreadlat.py"},"28":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第四篇,主要介绍如何捕获进程打开文件的系统调用集合,并使用全局变量在 eBPF 中过滤进程 pid。","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid","id":"28","title":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid"},"280":{"body":"Tracing while a dd if=/dev/urandom of=/dev/null bs=8k count=5 is run: # urandomread.py\nTIME(s) COMM PID GOTBITS\n24652832.956994001 smtp 24690 384\n24652837.726500999 dd 24692 65536\n24652837.727111001 dd 24692 65536\n24652837.727703001 dd 24692 65536\n24652837.728294998 dd 24692 65536\n24652837.728888001 dd 24692 65536 Hah! I caught smtp by accident. Code is examples/tracing/urandomread.py : from __future__ import print_function\nfrom bcc import BPF # load BPF program\nb = BPF(text=\"\"\"\nTRACEPOINT_PROBE(random, urandom_read) { // args is from /sys/kernel/debug/tracing/events/random/urandom_read/format bpf_trace_printk(\"%d\\\\n\", args->got_bits); return 0;\n}\n\"\"\") # header\nprint(\"%-18s %-16s %-6s %s\" % (\"TIME(s)\", \"COMM\", \"PID\", \"GOTBITS\")) # format output\nwhile 1: try: (task, pid, cpu, flags, ts, msg) = b.trace_fields() except ValueError: continue print(\"%-18.9f %-16s %-6d %s\" % (ts, task, pid, msg)) Things to learn: TRACEPOINT_PROBE(random, urandom_read): Instrument the kernel tracepoint random:urandom_read. These have a stable API, and thus are recommend to use instead of kprobes, wherever possible. You can run perf list for a list of tracepoints. Linux >= 4.7 is required to attach BPF programs to tracepoints. args->got_bits: args is auto-populated to be a structure of the tracepoint arguments. The comment above says where you can see that structure. Eg: # cat /sys/kernel/debug/tracing/events/random/urandom_read/format\nname: urandom_read\nID: 972\nformat: field:unsigned short common_type;\toffset:0;\tsize:2;\tsigned:0; field:unsigned char common_flags;\toffset:2;\tsize:1;\tsigned:0; field:unsigned char common_preempt_count;\toffset:3;\tsize:1;\tsigned:0; field:int common_pid;\toffset:4;\tsize:4;\tsigned:1; field:int got_bits;\toffset:8;\tsize:4;\tsigned:1; field:int pool_left;\toffset:12;\tsize:4;\tsigned:1; field:int input_left;\toffset:16;\tsize:4;\tsigned:1; print fmt: \"got_bits %d nonblocking_pool_entropy_left %d input_entropy_left %d\", REC->got_bits, REC->pool_left, REC->input_left In this case, we were printing the got_bits member.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 12. urandomread.py","id":"280","title":"Lesson 12. urandomread.py"},"281":{"body":"Convert disksnoop.py from a previous lesson to use the block:block_rq_issue and block:block_rq_complete tracepoints.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 13. disksnoop.py fixed","id":"281","title":"Lesson 13. disksnoop.py fixed"},"282":{"body":"This program instruments a user-level function, the strlen() library function, and frequency counts its string argument. Example output: # strlen_count.py\nTracing strlen()... Hit Ctrl-C to end.\n^C COUNT STRING 1 \" \" 1 \"/bin/ls\" 1 \".\" 1 \"cpudist.py.1\" 1 \".bashrc\" 1 \"ls --color=auto\" 1 \"key_t\"\n[...] 10 \"a7:~# \" 10 \"/root\" 12 \"LC_ALL\" 12 \"en_US.UTF-8\" 13 \"en_US.UTF-8\" 20 \"~\" 70 \"#%^,~:-=?+/}\" 340 \"\\x01\\x1b]0;root@bgregg-test: ~\\x07\\x02root@bgregg-test:~# \" These are various strings that are being processed by this library function while tracing, along with their frequency counts. strlen() was called on \"LC_ALL\" 12 times, for example. Code is examples/tracing/strlen_count.py : from __future__ import print_function\nfrom bcc import BPF\nfrom time import sleep # load BPF program\nb = BPF(text=\"\"\"\n#include struct key_t { char c[80];\n};\nBPF_HASH(counts, struct key_t); int count(struct pt_regs *ctx) { if (!PT_REGS_PARM1(ctx)) return 0; struct key_t key = {}; u64 zero = 0, *val; bpf_probe_read_user(&key.c, sizeof(key.c), (void *)PT_REGS_PARM1(ctx)); // could also use `counts.increment(key)` val = counts.lookup_or_try_init(&key, &zero); if (val) { (*val)++; } return 0;\n};\n\"\"\")\nb.attach_uprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\") # header\nprint(\"Tracing strlen()... Hit Ctrl-C to end.\") # sleep until Ctrl-C\ntry: sleep(99999999)\nexcept KeyboardInterrupt: pass # print output\nprint(\"%10s %s\" % (\"COUNT\", \"STRING\"))\ncounts = b.get_table(\"counts\")\nfor k, v in sorted(counts.items(), key=lambda counts: counts[1].value): print(\"%10d \\\"%s\\\"\" % (v.value, k.c.encode('string-escape'))) Things to learn: PT_REGS_PARM1(ctx): This fetches the first argument to strlen(), which is the string. b.attach_uprobe(name=\"c\", sym=\"strlen\", fn_name=\"count\"): Attach to library \"c\" (if this is the main program, use its pathname), instrument the user-level function strlen(), and on execution call our C function count().","breadcrumbs":"bcc Python Developer Tutorial » Lesson 14. strlen_count.py","id":"282","title":"Lesson 14. strlen_count.py"},"283":{"body":"This program instruments a user statically-defined tracing (USDT) probe, which is the user-level version of a kernel tracepoint. Sample output: # nodejs_http_server.py 24728\nTIME(s) COMM PID ARGS\n24653324.561322998 node 24728 path:/index.html\n24653335.343401998 node 24728 path:/images/welcome.png\n24653340.510164998 node 24728 path:/images/favicon.png Relevant code from examples/tracing/nodejs_http_server.py : from __future__ import print_function\nfrom bcc import BPF, USDT\nimport sys if len(sys.argv) < 2: print(\"USAGE: nodejs_http_server PID\") exit()\npid = sys.argv[1]\ndebug = 0 # load BPF program\nbpf_text = \"\"\"\n#include \nint do_trace(struct pt_regs *ctx) { uint64_t addr; char path[128]={0}; bpf_usdt_readarg(6, ctx, &addr); bpf_probe_read_user(&path, sizeof(path), (void *)addr); bpf_trace_printk(\"path:%s\\\\n\", path); return 0;\n};\n\"\"\" # enable USDT probe from given PID\nu = USDT(pid=int(pid))\nu.enable_probe(probe=\"http__server__request\", fn_name=\"do_trace\")\nif debug: print(u.get_text()) print(bpf_text) # initialize BPF\nb = BPF(text=bpf_text, usdt_contexts=[u]) Things to learn: bpf_usdt_readarg(6, ctx, &addr): Read the address of argument 6 from the USDT probe into addr. bpf_probe_read_user(&path, sizeof(path), (void *)addr): Now the string addr points to into our path variable. u = USDT(pid=int(pid)): Initialize USDT tracing for the given PID. u.enable_probe(probe=\"http__server__request\", fn_name=\"do_trace\"): Attach our do_trace() BPF C function to the Node.js http__server__request USDT probe. b = BPF(text=bpf_text, usdt_contexts=[u]): Need to pass in our USDT object, u, to BPF object creation.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 15. nodejs_http_server.py","id":"283","title":"Lesson 15. nodejs_http_server.py"},"284":{"body":"This is an older tutorial included as a bonus lesson. Use this for recap and to reinforce what you've already learned. This is a slightly more complex tracing example than Hello World. This program will be invoked for every task change in the kernel, and record in a BPF map the new and old pids. The C program below introduces a new concept: the prev argument. This argument is treated specially by the BCC frontend, such that accesses to this variable are read from the saved context that is passed by the kprobe infrastructure. The prototype of the args starting from position 1 should match the prototype of the kernel function being kprobed. If done so, the program will have seamless access to the function parameters. #include \n#include struct key_t { u32 prev_pid; u32 curr_pid;\n}; BPF_HASH(stats, struct key_t, u64, 1024);\nint count_sched(struct pt_regs *ctx, struct task_struct *prev) { struct key_t key = {}; u64 zero = 0, *val; key.curr_pid = bpf_get_current_pid_tgid(); key.prev_pid = prev->pid; // could also use `stats.increment(key);` val = stats.lookup_or_try_init(&key, &zero); if (val) { (*val)++; } return 0;\n} The userspace component loads the file shown above, and attaches it to the finish_task_switch kernel function. The [] operator of the BPF object gives access to each BPF_HASH in the program, allowing pass-through access to the values residing in the kernel. Use the object as you would any other python dict object: read, update, and deletes are all allowed. from bcc import BPF\nfrom time import sleep b = BPF(src_file=\"task_switch.c\")\nb.attach_kprobe(event=\"finish_task_switch\", fn_name=\"count_sched\") # generate many schedule events\nfor i in range(0, 100): sleep(0.01) for k, v in b[\"stats\"].items(): print(\"task_switch[%5d->%5d]=%u\" % (k.prev_pid, k.curr_pid, v.value)) These programs can be found in the files examples/tracing/task_switch.c and examples/tracing/task_switch.py respectively.","breadcrumbs":"bcc Python Developer Tutorial » Lesson 16. task_switch.c","id":"284","title":"Lesson 16. task_switch.c"},"285":{"body":"For further study, see Sasha Goldshtein's linux-tracing-workshop , which contains additional labs. There are also many tools in bcc /tools to study. Please read CONTRIBUTING-SCRIPTS.md if you wish to contribute tools to bcc. At the bottom of the main README.md , you'll also find methods for contacting us. Good luck, and happy tracing!","breadcrumbs":"bcc Python Developer Tutorial » Lesson 17. Further Study","id":"285","title":"Lesson 17. Further Study"},"286":{"body":"To do.","breadcrumbs":"bcc Python Developer Tutorial » Networking","id":"286","title":"Networking"},"29":{"body":"首先,我们需要编写一段 eBPF 程序来捕获进程打开文件的系统调用,具体实现如下: #include \n#include /// @description \"Process ID to trace\"\nconst volatile int pid_target = 0; SEC(\"tracepoint/syscalls/sys_enter_openat\")\nint tracepoint__syscalls__sys_enter_openat(struct trace_event_raw_sys_enter* ctx)\n{ u64 id = bpf_get_current_pid_tgid(); u32 pid = id; if (pid_target && pid_target != pid) return false; // Use bpf_printk to print the process information bpf_printk(\"Process ID: %d enter sys openat\\n\", pid); return 0;\n} /// \"Trace open family syscalls.\"\nchar LICENSE[] SEC(\"license\") = \"GPL\"; 上面的 eBPF 程序通过定义函数 tracepoint__syscalls__sys_enter_openat 并使用 SEC 宏把它们附加到 sys_enter_openat 的 tracepoint(即在进入 openat 系统调用时执行)。这个函数通过使用 bpf_get_current_pid_tgid 函数获取调用 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: $ ecc fentry-link.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 3840345 enter sys openat <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 3840345 enter sys openat 此时,我们已经能够捕获进程打开文件的系统调用了。","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » 在 eBPF 中捕获进程打开文件的系统调用集合","id":"29","title":"在 eBPF 中捕获进程打开文件的系统调用集合"},"3":{"body":"本文不会对 eBPF 的原理做更详细的介绍,不过这里有一个学习规划和参考资料,也许会有一些价值:","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 2. 关于如何学习 eBPF 相关的开发的一些建议","id":"3","title":"2. 关于如何学习 eBPF 相关的开发的一些建议"},"30":{"body":"在上面的程序中,我们定义了一个全局变量 pid_target 来指定要捕获的进程的 pid。在 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数中,我们可以使用这个全局变量来过滤输出,只输出指定的进程的信息。 可以通过执行 ecli -h 命令来查看 opensnoop 的帮助信息: $ ecli package.json -h\nUsage: opensnoop_bpf [--help] [--version] [--verbose] [--pid_target VAR] Trace open family syscalls. Optional arguments: -h, --help shows help message and exits -v, --version prints version information and exits --verbose prints libbpf debug information --pid_target Process ID to trace Built with eunomia-bpf framework.\nSee https://github.com/eunomia-bpf/eunomia-bpf for more information. 可以通过 --pid_target 参数来指定要捕获的进程的 pid,例如: $ sudo ./ecli run package.json --pid_target 618\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe <...>-3840345 [010] d... 3220701.101179: bpf_trace_printk: Process ID: 618 enter sys openat <...>-3840345 [010] d... 3220702.158000: bpf_trace_printk: Process ID: 618 enter sys openat","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » 使用全局变量在 eBPF 中过滤进程 pid","id":"30","title":"使用全局变量在 eBPF 中过滤进程 pid"},"31":{"body":"本文介绍了如何使用 eBPF 程序来捕获进程打开文件的系统调用。在 eBPF 程序中,我们可以通过定义 tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数并使用 SEC 宏把它们附加到 sys_enter_open 和 sys_enter_openat 两个 tracepoint 来捕获进程打开文件的系统调用。我们可以使用 bpf_get_current_pid_tgid 函数获取调用 open 或 openat 系统调用的进程 ID,并使用 bpf_printk 函数在内核日志中打印出来。在 eBPF 程序中,我们还可以通过定义一个全局变量 pid_target 来指定要捕获的进程的 pid,从而过滤输出,只输出指定的进程的信息。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程四:在 eBPF 中捕获进程打开文件的系统调用集合,使用全局变量过滤进程 pid » 总结","id":"31","title":"总结"},"32":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第五篇,主要介绍如何使用 uprobe 捕获 bash 的 readline 函数调用。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用","id":"32","title":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用"},"33":{"body":"uprobe是一种用户空间探针,uprobe探针允许在用户空间程序中动态插桩,插桩位置包括:函数入口、特定偏移处,以及函数返回处。当我们定义uprobe时,内核会在附加的指令上创建快速断点指令(x86机器上为int3指令),当程序执行到该指令时,内核将触发事件,程序陷入到内核态,并以回调函数的方式调用探针函数,执行完探针函数再返回到用户态继续执行后序的指令。 uprobe基于文件,当一个二进制文件中的一个函数被跟踪时,所有使用到这个文件的进程都会被插桩,包括那些尚未启动的进程,这样就可以在全系统范围内跟踪系统调用。 uprobe适用于在用户态去解析一些内核态探针无法解析的流量,例如http2流量(报文header被编码,内核无法解码),https流量(加密流量,内核无法解密)。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » 什么是uprobe","id":"33","title":"什么是uprobe"},"34":{"body":"uprobe 是一种用于捕获用户空间函数调用的 eBPF 的探针,我们可以通过它来捕获用户空间程序调用的系统函数。 例如,我们可以使用 uprobe 来捕获 bash 的 readline 函数调用,从而获取用户在 bash 中输入的命令行。示例代码如下: #include \n#include \n#include #define TASK_COMM_LEN 16\n#define MAX_LINE_SIZE 80 /* Format of u[ret]probe section definition supporting auto-attach: * u[ret]probe/binary:function[+offset] * * binary can be an absolute/relative path or a filename; the latter is resolved to a * full binary path via bpf_program__attach_uprobe_opts. * * Specifying uprobe+ ensures we carry out strict matching; either \"uprobe\" must be * specified (and auto-attach is not possible) or the above format is specified for * auto-attach. */\nSEC(\"uretprobe//bin/bash:readline\")\nint BPF_KRETPROBE(printret, const void *ret)\n{ char str[MAX_LINE_SIZE]; char comm[TASK_COMM_LEN]; u32 pid; if (!ret) return 0; bpf_get_current_comm(&comm, sizeof(comm)); pid = bpf_get_current_pid_tgid() >> 32; bpf_probe_read_user_str(str, sizeof(str), ret); bpf_printk(\"PID %d (%s) read: %s \", pid, comm, str); return 0;\n}; char LICENSE[] SEC(\"license\") = \"GPL\"; 这段代码的作用是在 bash 的 readline 函数返回时执行指定的 BPF_KRETPROBE 函数,即 printret 函数。 在 printret 函数中,我们首先获取了调用 readline 函数的进程的进程名称和进程 ID,然后通过 bpf_probe_read_user_str 函数读取了用户输入的命令行字符串,最后通过 bpf_printk 函数打印出进程 ID、进程名称和输入的命令行字符串。 除此之外,我们还需要通过 SEC 宏来定义 uprobe 探针,并使用 BPF_KRETPROBE 宏来定义探针函数。 在 SEC 宏中,我们需要指定 uprobe 的类型、要捕获的二进制文件的路径和要捕获的函数名称。例如,上面的代码中的 SEC 宏的定义如下: SEC(\"uprobe//bin/bash:readline\") 这表示我们要捕获的是 /bin/bash 二进制文件中的 readline 函数。 接下来,我们需要使用 BPF_KRETPROBE 宏来定义探针函数,例如: BPF_KRETPROBE(printret, const void *ret) 这里的 printret 是探针函数的名称,const void *ret 是探针函数的参数,它代表被捕获的函数的返回值。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: $ ecc bashreadline.bpf.c bashreadline.h\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe bash-32969 [000] d..31 64001.375748: bpf_trace_printk: PID 32969 (bash) read: fff bash-32969 [000] d..31 64002.056951: bpf_trace_printk: PID 32969 (bash) read: fff 可以看到,我们成功的捕获了 bash 的 readline 函数调用,并获取了用户在 bash 中输入的命令行。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » 使用 uprobe 捕获 bash 的 readline 函数调用","id":"34","title":"使用 uprobe 捕获 bash 的 readline 函数调用"},"35":{"body":"在上述代码中,我们使用了 SEC 宏来定义了一个 uprobe 探针,它指定了要捕获的用户空间程序 (bin/bash) 和要捕获的函数 (readline)。此外,我们还使用了 BPF_KRETPROBE 宏来定义了一个用于处理 readline 函数返回值的回调函数 (printret)。该函数可以获取到 readline 函数的返回值,并将其打印到内核日志中。通过这样的方式,我们就可以使用 eBPF 来捕获 bash 的 readline 函数调用,并获取用户在 bash 中输入的命令行。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程五:在 eBPF 中使用 uprobe 捕获 bash 的 readline 函数调用 » 总结","id":"35","title":"总结"},"36":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第六篇,主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。","breadcrumbs":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态 » eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态","id":"36","title":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态"},"37":{"body":"示例代码如下: #include \n#include \n#include #define MAX_ENTRIES 10240\n#define TASK_COMM_LEN 16 struct event { unsigned int pid; unsigned int tpid; int sig; int ret; char comm[TASK_COMM_LEN];\n}; struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, __u32); __type(value, struct event);\n} values SEC(\".maps\"); static int probe_entry(pid_t tpid, int sig)\n{ struct event event = {}; __u64 pid_tgid; __u32 tid; pid_tgid = bpf_get_current_pid_tgid(); tid = (__u32)pid_tgid; event.pid = pid_tgid >> 32; event.tpid = tpid; event.sig = sig; bpf_get_current_comm(event.comm, sizeof(event.comm)); bpf_map_update_elem(&values, &tid, &event, BPF_ANY); return 0;\n} static int probe_exit(void *ctx, int ret)\n{ __u64 pid_tgid = bpf_get_current_pid_tgid(); __u32 tid = (__u32)pid_tgid; struct event *eventp; eventp = bpf_map_lookup_elem(&values, &tid); if (!eventp) return 0; eventp->ret = ret; bpf_printk(\"PID %d (%s) sent signal %d to PID %d, ret = %d\", eventp->pid, eventp->comm, eventp->sig, eventp->tpid, ret); cleanup: bpf_map_delete_elem(&values, &tid); return 0;\n} SEC(\"tracepoint/syscalls/sys_enter_kill\")\nint kill_entry(struct trace_event_raw_sys_enter *ctx)\n{ pid_t tpid = (pid_t)ctx->args[0]; int sig = (int)ctx->args[1]; return probe_entry(tpid, sig);\n} SEC(\"tracepoint/syscalls/sys_exit_kill\")\nint kill_exit(struct trace_event_raw_sys_exit *ctx)\n{ return probe_exit(ctx, ctx->ret);\n} char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; 上面的代码定义了一个 eBPF 程序,用于捕获进程发送信号的系统调用,包括 kill、tkill 和 tgkill。它通过使用 tracepoint 来捕获系统调用的进入和退出事件,并在这些事件发生时执行指定的探针函数,例如 probe_entry 和 probe_exit。 在探针函数中,我们使用 bpf_map 存储捕获的事件信息,包括发送信号的进程 ID、接收信号的进程 ID、信号值和系统调用的返回值。在系统调用退出时,我们将获取存储在 bpf_map 中的事件信息,并使用 bpf_printk 打印进程 ID、进程名称、发送的信号和系统调用的返回值。 最后,我们还需要使用 SEC 宏来定义探针,并指定要捕获的系统调用的名称,以及要执行的探针函数。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 编译运行上述代码: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 或者 $ ecc sigsnoop.bpf.c sigsnoop.h\nCompiling bpf object...\nGenerating export types...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program... 运行这段程序后,可以通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出: $ sudo cat /sys/kernel/debug/tracing/trace_pipe node-3517 [003] d..31 82575.798191: bpf_trace_printk: PID 3517 (node) sent signal 0 to PID 3427, ret = 0 node-15194 [003] d..31 82575.849227: bpf_trace_printk: PID 15194 (node) sent signal 0 to PID 3427, ret = 0 node-30016 [003] d..31 82576.001361: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0 cpptools-srv-38617 [002] d..31 82576.461085: bpf_trace_printk: PID 38617 (cpptools-srv) sent signal 0 to PID 30496, ret = 0 node-30040 [002] d..31 82576.467720: bpf_trace_printk: PID 30016 (node) sent signal 0 to PID 3427, ret = 0","breadcrumbs":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态 » sigsnoop","id":"37","title":"sigsnoop"},"38":{"body":"本文主要介绍如何实现一个 eBPF 工具,捕获进程发送信号的系统调用集合,使用 hash map 保存状态。使用 hash map 需要定义一个结构体: struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, __u32); __type(value, struct event);\n} values SEC(\".maps\"); 并使用一些对应的 API 进行访问,例如 bpf_map_lookup_elem、bpf_map_update_elem、bpf_map_delete_elem 等。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程六:捕获进程发送信号的系统调用集合,使用 hash map 保存状态 » 总结","id":"38","title":"总结"},"39":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具,它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第七篇,主要介绍如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,不需要再通过查看 /sys/kernel/debug/tracing/trace_pipe 文件来查看 eBPF 程序的输出。通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出","id":"39","title":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出"},"4":{"body":"Google 或者其他搜索引擎查找:eBPF 询问 ChatGPT 之类的东西:eBPF 是什么? 推荐: 阅读 ebpf 简介: https://ebpf.io/(30min) 简要了解一下 ebpf 内核相关文档: https://prototype-kernel.readthedocs.io/en/latest/bpf/ (知道有问题去哪里查询: 30min) 阅读 ebpf 中文入门指南: https://www.modb.pro/db/391570(1h) 有大量的参考资料: https://github.com/zoidbergwill/awesome-ebpf(2-3h) 可以选自己感兴趣的 PPT 翻一翻: https://github.com/gojue/ebpf-slide(1-2h) 回答三个问题: 了解 eBPF 是什么东西?为啥要有这个玩意,不能用内核模块? 它有什么功能?能在 Linux 内核里面完成哪些事情?有哪些 eBPF 程序的类型和 helper(不需要知道全部,但是需要知道去哪里找)? 能拿来做什么?比如说在哪些场景中进行运用?网络、安全、可观测性?","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF 入门(5-7h)","id":"4","title":"eBPF 入门(5-7h)"},"40":{"body":"eBPF 提供了两个环形缓冲区,可以用来将信息从 eBPF 程序传输到用户区控制器。第一个是perf环形缓冲区,,它至少从内核v4.15开始就存在了。第二个是后来引入的 BPF 环形缓冲区。本文只考虑perf环形缓冲区。","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » perf buffer","id":"40","title":"perf buffer"},"41":{"body":"通过 perf event array 向用户态命令行打印输出,需要编写一个头文件,一个 C 源文件。示例代码如下: 头文件:execsnoop.h #ifndef __EXECSNOOP_H\n#define __EXECSNOOP_H #define TASK_COMM_LEN 16 struct event { int pid; int ppid; int uid; int retval; bool is_exit; char comm[TASK_COMM_LEN];\n}; #endif /* __EXECSNOOP_H */ 源文件:execsnoop.bpf.c // SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)\n#include \n#include \n#include \n#include \"execsnoop.h\" struct { __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); __uint(key_size, sizeof(u32)); __uint(value_size, sizeof(u32));\n} events SEC(\".maps\"); SEC(\"tracepoint/syscalls/sys_enter_execve\")\nint tracepoint__syscalls__sys_enter_execve(struct trace_event_raw_sys_enter* ctx)\n{ u64 id; pid_t pid, tgid; struct event event; struct task_struct *task; uid_t uid = (u32)bpf_get_current_uid_gid(); id = bpf_get_current_pid_tgid(); pid = (pid_t)id; tgid = id >> 32; event.pid = tgid; event.uid = uid; task = (struct task_struct*)bpf_get_current_task(); event.ppid = BPF_CORE_READ(task, real_parent, tgid); bpf_get_current_comm(&event.comm, sizeof(event.comm)); bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); return 0;\n} char LICENSE[] SEC(\"license\") = \"GPL\"; 这段代码定义了个 eBPF 程序,用于捕获进程执行 execve 系统调用的入口。 在入口程序中,我们首先获取了当前进程的进程 ID 和用户 ID,然后通过 bpf_get_current_task 函数获取了当前进程的 task_struct 结构体,并通过 bpf_probe_read_str 函数读取了进程名称。最后,我们通过 bpf_perf_event_output 函数将进程执行事件输出到 perf buffer。 使用这段代码,我们就可以捕获 Linux 内核中进程执行的事件, 并分析进程的执行情况。 eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 使用容器编译: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 或者使用 ecc 编译: ecc execsnoop.bpf.c execsnoop.h 运行 $ sudo ./ecli run package.json TIME PID PPID UID COMM 21:28:30 40747 3517 1000 node\n21:28:30 40748 40747 1000 sh\n21:28:30 40749 3517 1000 node\n21:28:30 40750 40749 1000 sh\n21:28:30 40751 3517 1000 node\n21:28:30 40752 40751 1000 sh\n21:28:30 40753 40752 1000 cpuUsage.sh","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » execsnoop","id":"41","title":"execsnoop"},"42":{"body":"本文介绍了如何捕获 Linux 内核中进程执行的事件,并且通过 perf event array 向用户态命令行打印输出,通过 perf event array 向用户态发送信息之后,可以进行复杂的数据处理和分析。在 libbpf 对应的内核态代码中,定义这样一个结构体和对应的头文件: struct { __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); __uint(key_size, sizeof(u32)); __uint(value_size, sizeof(u32));\n} events SEC(\".maps\"); 就可以往用户态直接发送信息。 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门实践教程七:捕获进程执行/退出时间,通过 perf event array 向用户态打印输出 » 总结","id":"42","title":"总结"},"43":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出","id":"43","title":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出"},"44":{"body":"现在有一个新的 BPF 数据结构可用。BPF 环形缓冲区(ring buffer)。它解决了 BPF perf buffer(当今从内核向用户空间发送数据的事实上的标准)的内存效率和事件重排问题,同时达到或超过了它的性能。它既提供了与 perf buffer 兼容以方便迁移,又有新的保留/提交API,具有更好的可用性。另外,合成和真实世界的基准测试表明,在几乎所有的情况下,所以考虑将其作为从BPF程序向用户空间发送数据的默认选择。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » ring buffer","id":"44","title":"ring buffer"},"45":{"body":"今天,只要BPF程序需要将收集到的数据发送到用户空间进行后处理和记录,它通常会使用BPF perf buffer(perfbuf)来实现。Perfbuf 是每个CPU循环缓冲区的集合,它允许在内核和用户空间之间有效地交换数据。它在实践中效果很好,但由于其按CPU设计,它有两个主要的缺点,在实践中被证明是不方便的:内存的低效使用和事件的重新排序。 为了解决这些问题,从Linux 5.8开始,BPF提供了一个新的BPF数据结构(BPF map)。BPF环形缓冲区(ringbuf)。它是一个多生产者、单消费者(MPSC)队列,可以同时在多个CPU上安全共享。 BPF ringbuf 支持来自 BPF perfbuf 的熟悉的功能: 变长的数据记录。 能够通过内存映射区域有效地从用户空间读取数据,而不需要额外的内存拷贝和/或进入内核的系统调用。 既支持epoll通知,又能以绝对最小的延迟进行忙环操作。 同时,BPF ringbuf解决了BPF perfbuf的以下问题: 内存开销。 数据排序。 浪费的工作和额外的数据复制。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » BPF ringbuf vs BPF perfbuf","id":"45","title":"BPF ringbuf vs BPF perfbuf"},"46":{"body":"本文是 eBPF 入门开发实践教程的第八篇,在 eBPF 中使用 exitsnoop 监控进程退出事件,并使用 ring buffer 向用户态打印输出。 使用 ring buffer 向用户态打印输出的步骤和 perf buffer 类似,首先需要定义一个头文件: 头文件:exitsnoop.h #ifndef __BOOTSTRAP_H\n#define __BOOTSTRAP_H #define TASK_COMM_LEN 16\n#define MAX_FILENAME_LEN 127 struct event { int pid; int ppid; unsigned exit_code; unsigned long long duration_ns; char comm[TASK_COMM_LEN];\n}; #endif /* __BOOTSTRAP_H */ 源文件:exitsnoop.bpf.c #include \"vmlinux.h\"\n#include \n#include \n#include \n#include \"exitsnoop.h\"\nchar LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; struct { __uint(type, BPF_MAP_TYPE_RINGBUF); __uint(max_entries, 256 * 1024);\n} rb SEC(\".maps\"); SEC(\"tp/sched/sched_process_exit\")\nint handle_exit(struct trace_event_raw_sched_process_template* ctx)\n{ struct task_struct *task; struct event *e; pid_t pid, tid; u64 id, ts, *start_ts, duration_ns = 0; /* get PID and TID of exiting thread/process */ id = bpf_get_current_pid_tgid(); pid = id >> 32; tid = (u32)id; /* ignore thread exits */ if (pid != tid) return 0; /* reserve sample from BPF ringbuf */ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); if (!e) return 0; /* fill out the sample with data */ task = (struct task_struct *)bpf_get_current_task(); e->duration_ns = duration_ns; e->pid = pid; e->ppid = BPF_CORE_READ(task, real_parent, tgid); e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff; bpf_get_current_comm(&e->comm, sizeof(e->comm)); /* send data to user-space for post-processing */ bpf_ringbuf_submit(e, 0); return 0;\n} 这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件。 该程序通过注册一个 tracepoint,来监控进程退出事件。Tracepoint 是一种内核特性,允许内核模块获取特定事件的通知。在本程序中,注册的 tracepoint 是“tp/sched/sched_process_exit”,表示该程序监控的是进程退出事件。 当系统中发生进程退出事件时,BPF 程序会捕获该事件,并调用“handle_exit”函数来处理它。该函数首先检查当前退出事件是否是进程退出事件(而不是线程退出事件),然后在 BPF 环形缓冲区(“rb”)中保留一个事件结构体,并填充该结构体中的其他信息,例如进程 ID、进程名称、退出代码和退出信号等信息。最后,该函数还会调用 BPF 的“perf_event_output”函数,将捕获的事件发送给用户空间程序。 总而言之,这段代码是一个 BPF 程序,用于监控 Linux 系统中的进程退出事件.","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » exitsnoop","id":"46","title":"exitsnoop"},"47":{"body":"eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 Compile: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest Or $ ecc exitsnoop.bpf.c exitsnoop.h\nCompiling bpf object...\nGenerating export types...\nPacking ebpf object and config into package.json... Run: $ sudo ./ecli run package.json TIME PID PPID EXIT_CODE DURATION_NS COMM 21:40:09 42050 42049 0 0 which\n21:40:09 42049 3517 0 0 sh\n21:40:09 42052 42051 0 0 ps\n21:40:09 42051 3517 0 0 sh\n21:40:09 42055 42054 0 0 sed\n21:40:09 42056 42054 0 0 cat\n21:40:09 42057 42054 0 0 cat\n21:40:09 42058 42054 0 0 cat\n21:40:09 42059 42054 0 0 cat","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » Compile and Run","id":"47","title":"Compile and Run"},"48":{"body":"本文介绍了如何使用 eunomia-bpf 开发一个简单的 BPF 程序,该程序可以监控 Linux 系统中的进程退出事件, 并将捕获的事件通过 ring buffer 发送给用户空间程序。在本文中,我们使用 eunomia-bpf 编译运行了这个例子。如果你想了解更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程八:在 eBPF 中使用 exitsnoop 监控进程退出事件,使用 ring buffer 向用户态打印输出 » 总结","id":"48","title":"总结"},"49":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度","id":"49","title":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度"},"5":{"body":"了解并尝试一下 eBPF 开发框架: BCC 开发各类小工具的例子: https://github.com/iovisor/bcc/blob/master/docs/tutorial_bcc_python_developer.md(跑一遍:3-4h) libbpf 的一些例子: https://github.com/libbpf/libbpf-bootstrap(选感兴趣的运行一下,并阅读一下源代码:2h ) 基于 libbpf 和 eunomia-bpf 的教程: https://github.com/eunomia-bpf/bpf-developer-tutorial(阅读 1-10 的部分: 3-4h) 其他开发框架:Go 语言或者 Rust 语言,请自行搜索并且尝试(0-2h) 有任何问题或者想了解的东西,不管是不是和本项目相关,都可以在本项目的 discussions 里面开始讨论。 回答一些问题,并且进行一些尝试(2-5h): 如何开发一个最简单的 eBPF 程序? 如何用 eBPF 追踪一个内核功能或函数?有很多种方法,举出对应的代码; 有哪些方案能通过用户态和内核态通信?如何从用户态向内核态传送信息?如何从内核态向用户态传递信息?举出代码示例; 编写一个你自己的 eBPF 程序,实现一个功能; eBPF 程序的整个生命周期里面,分别在用户态和内核态做了哪些事情?","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 了解如何开发 eBPF 程序(10-15h)","id":"5","title":"了解如何开发 eBPF 程序(10-15h)"},"50":{"body":"bcc-tools 是一组用于在 Linux 系统上使用 BPF 程序的工具。runqlat 是 bcc-tools 中的一个工具,用于分析 Linux 系统的调度性能。具体来说,runqlat 用于测量一个任务在被调度到 CPU 上运行之前在运行队列中等待的时间。这些信息对于识别性能瓶颈和提高 Linux 内核调度算法的整体效率非常有用。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » runqlat是什么?","id":"50","title":"runqlat是什么?"},"51":{"body":"runqlat 使用内核跟踪点和函数探针的结合来测量进程在运行队列中的时间。当进程被排队时,trace_enqueue 函数会在一个映射中记录时间戳。当进程被调度到 CPU 上运行时,handle_switch 函数会检索时间戳,并计算当前时间与排队时间之间的时间差。这个差值(或 delta)然后用于更新进程的直方图,该直方图记录运行队列延迟的分布。该直方图可用于分析 Linux 内核的调度性能。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » runqlat 原理","id":"51","title":"runqlat 原理"},"52":{"body":"首先我们需要编写一个源代码文件 runqlat.bpf.c: // SPDX-License-Identifier: GPL-2.0\n// Copyright (c) 2020 Wenbo Zhang\n#include \n#include \n#include \n#include \n#include \"runqlat.h\"\n#include \"bits.bpf.h\"\n#include \"maps.bpf.h\"\n#include \"core_fixes.bpf.h\" #define MAX_ENTRIES 10240\n#define TASK_RUNNING 0 const volatile bool filter_cg = false;\nconst volatile bool targ_per_process = false;\nconst volatile bool targ_per_thread = false;\nconst volatile bool targ_per_pidns = false;\nconst volatile bool targ_ms = false;\nconst volatile pid_t targ_tgid = 0; struct { __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY); __type(key, u32); __type(value, u32); __uint(max_entries, 1);\n} cgroup_map SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, u32); __type(value, u64);\n} start SEC(\".maps\"); static struct hist zero; /// @sample {\"interval\": 1000, \"type\" : \"log2_hist\"}\nstruct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, u32); __type(value, struct hist);\n} hists SEC(\".maps\"); static int trace_enqueue(u32 tgid, u32 pid)\n{ u64 ts; if (!pid) return 0; if (targ_tgid && targ_tgid != tgid) return 0; ts = bpf_ktime_get_ns(); bpf_map_update_elem(&start, &pid, &ts, BPF_ANY); return 0;\n} static unsigned int pid_namespace(struct task_struct *task)\n{ struct pid *pid; unsigned int level; struct upid upid; unsigned int inum; /* get the pid namespace by following task_active_pid_ns(), * pid->numbers[pid->level].ns */ pid = BPF_CORE_READ(task, thread_pid); level = BPF_CORE_READ(pid, level); bpf_core_read(&upid, sizeof(upid), &pid->numbers[level]); inum = BPF_CORE_READ(upid.ns, ns.inum); return inum;\n} static int handle_switch(bool preempt, struct task_struct *prev, struct task_struct *next)\n{ struct hist *histp; u64 *tsp, slot; u32 pid, hkey; s64 delta; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; if (get_task_state(prev) == TASK_RUNNING) trace_enqueue(BPF_CORE_READ(prev, tgid), BPF_CORE_READ(prev, pid)); pid = BPF_CORE_READ(next, pid); tsp = bpf_map_lookup_elem(&start, &pid); if (!tsp) return 0; delta = bpf_ktime_get_ns() - *tsp; if (delta < 0) goto cleanup; if (targ_per_process) hkey = BPF_CORE_READ(next, tgid); else if (targ_per_thread) hkey = pid; else if (targ_per_pidns) hkey = pid_namespace(next); else hkey = -1; histp = bpf_map_lookup_or_try_init(&hists, &hkey, &zero); if (!histp) goto cleanup; if (!histp->comm[0]) bpf_probe_read_kernel_str(&histp->comm, sizeof(histp->comm), next->comm); if (targ_ms) delta /= 1000000U; else delta /= 1000U; slot = log2l(delta); if (slot >= MAX_SLOTS) slot = MAX_SLOTS - 1; __sync_fetch_and_add(&histp->slots[slot], 1); cleanup: bpf_map_delete_elem(&start, &pid); return 0;\n} SEC(\"raw_tp/sched_wakeup\")\nint BPF_PROG(handle_sched_wakeup, struct task_struct *p)\n{ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));\n} SEC(\"raw_tp/sched_wakeup_new\")\nint BPF_PROG(handle_sched_wakeup_new, struct task_struct *p)\n{ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; return trace_enqueue(BPF_CORE_READ(p, tgid), BPF_CORE_READ(p, pid));\n} SEC(\"raw_tp/sched_switch\")\nint BPF_PROG(handle_sched_switch, bool preempt, struct task_struct *prev, struct task_struct *next)\n{ return handle_switch(preempt, prev, next);\n} char LICENSE[] SEC(\"license\") = \"GPL\"; 然后我们需要定义一个头文件runqlat.h,用来给用户态处理从内核态上报的事件: /* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */\n#ifndef __RUNQLAT_H\n#define __RUNQLAT_H #define TASK_COMM_LEN 16\n#define MAX_SLOTS 26 struct hist { __u32 slots[MAX_SLOTS]; char comm[TASK_COMM_LEN];\n}; #endif /* __RUNQLAT_H */ 这是一个 Linux 内核 BPF 程序,旨在收集和报告运行队列的延迟。BPF 是 Linux 内核中一项技术,它允许将程序附加到内核中的特定点并进行安全高效的执行。这些程序可用于收集有关内核行为的信息,并实现自定义行为。这个 BPF 程序使用 BPF maps 来收集有关任务何时从内核的运行队列中排队和取消排队的信息,并记录任务在被安排执行之前在运行队列上等待的时间。然后,它使用这些信息生成直方图,显示不同组任务的运行队列延迟分布。这些直方图可用于识别和诊断内核调度行为中的性能问题。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » runqlat 代码实现","id":"52","title":"runqlat 代码实现"},"53":{"body":"eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 Compile: docker run -it -v `pwd`/:/src/ yunwei37/ebpm:latest 或者 $ ecc runqlat.bpf.c runqlat.h\nCompiling bpf object...\nGenerating export types...\nPacking ebpf object and config into package.json... Run: $ sudo ecli examples/bpftools/runqlat/package.json -h\nUsage: runqlat_bpf [--help] [--version] [--verbose] [--filter_cg] [--targ_per_process] [--targ_per_thread] [--targ_per_pidns] [--targ_ms] [--targ_tgid VAR] A simple eBPF program Optional arguments: -h, --help shows help message and exits -v, --version prints version information and exits --verbose prints libbpf debug information --filter_cg set value of bool variable filter_cg --targ_per_process set value of bool variable targ_per_process --targ_per_thread set value of bool variable targ_per_thread --targ_per_pidns set value of bool variable targ_per_pidns --targ_ms set value of bool variable targ_ms --targ_tgid set value of pid_t variable targ_tgid Built with eunomia-bpf framework.\nSee https://github.com/eunomia-bpf/eunomia-bpf for more information. $ sudo ecli examples/bpftools/runqlat/package.json\nkey = 4294967295\ncomm = rcu_preempt (unit) : count distribution 0 -> 1 : 9 |**** | 2 -> 3 : 6 |** | 4 -> 7 : 12 |***** | 8 -> 15 : 28 |************* | 16 -> 31 : 40 |******************* | 32 -> 63 : 83 |****************************************| 64 -> 127 : 57 |*************************** | 128 -> 255 : 19 |********* | 256 -> 511 : 11 |***** | 512 -> 1023 : 2 | | 1024 -> 2047 : 2 | | 2048 -> 4095 : 0 | | 4096 -> 8191 : 0 | | 8192 -> 16383 : 0 | | 16384 -> 32767 : 1 | | $ sudo ecli examples/bpftools/runqlat/package.json --targ_per_process\nkey = 3189\ncomm = cpptools (unit) : count distribution 0 -> 1 : 0 | | 2 -> 3 : 0 | | 4 -> 7 : 0 | | 8 -> 15 : 1 |*** | 16 -> 31 : 2 |******* | 32 -> 63 : 11 |****************************************| 64 -> 127 : 8 |***************************** | 128 -> 255 : 3 |********** |","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » 编译运行","id":"53","title":"编译运行"},"54":{"body":"runqlat 是一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度。编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。 runqlat 是一种用于监控Linux内核中进程调度延迟的工具。它可以帮助您了解进程在内核中等待执行的时间,并根据这些信息优化进程调度,提高系统的性能。可以在 libbpf-tools 中找到最初的源代码: https://github.com/iovisor/bcc/blob/master/libbpf-tools/runqlat.bpf.c 更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程九:一个 Linux 内核 BPF 程序,通过柱状图来总结调度程序运行队列延迟,显示任务等待运行在 CPU 上的时间长度 » 总结","id":"54","title":"总结"},"55":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。 本文是 eBPF 入门开发实践教程的第十篇,在 eBPF 中。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件","id":"55","title":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件"},"56":{"body":"hardirqs 是 bcc-tools 工具包的一部分,该工具包是一组用于在 Linux 系统上执行系统跟踪和分析的实用程序。 hardirqs 是一种用于跟踪和分析 Linux 内核中的中断处理程序的工具。它使用 BPF(Berkeley Packet Filter)程序来收集有关中断处理程序的数据, 并可用于识别内核中的性能问题和其他与中断处理相关的问题。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » hardirqs是什么?","id":"56","title":"hardirqs是什么?"},"57":{"body":"在 Linux 内核中,每个中断处理程序都有一个唯一的名称,称为中断向量。hardirqs 通过检查每个中断处理程序的中断向量,来监控内核中的中断处理程序。当内核接收到一个中断时,它会查找与该中断相关的中断处理程序,并执行该程序。hardirqs 通过检查内核中执行的中断处理程序,来监控内核中的中断处理程序。另外,hardirqs 还可以通过注入 BPF 程序到内核中,来捕获内核中的中断处理程序。这样,hardirqs 就可以监控内核中执行的中断处理程序,并收集有关它们的信息。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 实现原理","id":"57","title":"实现原理"},"58":{"body":"// SPDX-License-Identifier: GPL-2.0\n// Copyright (c) 2020 Wenbo Zhang\n#include \n#include \n#include \n#include \n#include \"hardirqs.h\"\n#include \"bits.bpf.h\"\n#include \"maps.bpf.h\" #define MAX_ENTRIES 256 const volatile bool filter_cg = false;\nconst volatile bool targ_dist = false;\nconst volatile bool targ_ns = false;\nconst volatile bool do_count = false; struct { __uint(type, BPF_MAP_TYPE_CGROUP_ARRAY); __type(key, u32); __type(value, u32); __uint(max_entries, 1);\n} cgroup_map SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_PERCPU_ARRAY); __uint(max_entries, 1); __type(key, u32); __type(value, u64);\n} start SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, MAX_ENTRIES); __type(key, struct irq_key); __type(value, struct info);\n} infos SEC(\".maps\"); static struct info zero; static int handle_entry(int irq, struct irqaction *action)\n{ if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; if (do_count) { struct irq_key key = {}; struct info *info; bpf_probe_read_kernel_str(&key.name, sizeof(key.name), BPF_CORE_READ(action, name)); info = bpf_map_lookup_or_try_init(&infos, &key, &zero); if (!info) return 0; info->count += 1; return 0; } else { u64 ts = bpf_ktime_get_ns(); u32 key = 0; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; bpf_map_update_elem(&start, &key, &ts, BPF_ANY); return 0; }\n} static int handle_exit(int irq, struct irqaction *action)\n{ struct irq_key ikey = {}; struct info *info; u32 key = 0; u64 delta; u64 *tsp; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0)) return 0; tsp = bpf_map_lookup_elem(&start, &key); if (!tsp) return 0; delta = bpf_ktime_get_ns() - *tsp; if (!targ_ns) delta /= 1000U; bpf_probe_read_kernel_str(&ikey.name, sizeof(ikey.name), BPF_CORE_READ(action, name)); info = bpf_map_lookup_or_try_init(&infos, &ikey, &zero); if (!info) return 0; if (!targ_dist) { info->count += delta; } else { u64 slot; slot = log2(delta); if (slot >= MAX_SLOTS) slot = MAX_SLOTS - 1; info->slots[slot]++; } return 0;\n} SEC(\"tp_btf/irq_handler_entry\")\nint BPF_PROG(irq_handler_entry_btf, int irq, struct irqaction *action)\n{ return handle_entry(irq, action);\n} SEC(\"tp_btf/irq_handler_exit\")\nint BPF_PROG(irq_handler_exit_btf, int irq, struct irqaction *action)\n{ return handle_exit(irq, action);\n} SEC(\"raw_tp/irq_handler_entry\")\nint BPF_PROG(irq_handler_entry, int irq, struct irqaction *action)\n{ return handle_entry(irq, action);\n} SEC(\"raw_tp/irq_handler_exit\")\nint BPF_PROG(irq_handler_exit, int irq, struct irqaction *action)\n{ return handle_exit(irq, action);\n} char LICENSE[] SEC(\"license\") = \"GPL\"; 这是一个 BPF(Berkeley Packet Filter)程序。BPF 程序是小型程序,可以直接在 Linux 内核中运行,用于过滤和操纵网络流量。这个特定的程序似乎旨在收集内核中中断处理程序的统计信息。它定义了一些地图(可以在 BPF 程序和内核的其他部分之间共享的数据结构)和两个函数:handle_entry 和 handle_exit。当内核进入和退出中断处理程序时,分别执行这些函数。handle_entry 函数用于跟踪中断处理程序被执行的次数,而 handle_exit 则用于测量中断处理程序中花费的时间。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 代码实现","id":"58","title":"代码实现"},"59":{"body":"eunomia-bpf 是一个结合 Wasm 的开源 eBPF 动态加载运行时和开发工具链,它的目的是简化 eBPF 程序的开发、构建、分发、运行。可以参考 https://github.com/eunomia-bpf/eunomia-bpf 下载和安装 ecc 编译工具链和 ecli 运行时。我们使用 eunomia-bpf 编译运行这个例子。 要编译这个程序,请使用 ecc 工具: $ ecc hardirqs.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json... 然后运行: sudo ecli ./package.json","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 运行代码","id":"59","title":"运行代码"},"6":{"body":"原始的eBPF程序编写是非常繁琐和困难的。为了改变这一现状,llvm于2015年推出了可以将由高级语言编写的代码编译为eBPF字节码的功能,同时,eBPF 社区将 bpf() 等原始的系统调用进行了初步地封装,给出了libbpf库。这些库会包含将字节码加载到内核中的函数以及一些其他的关键函数。在Linux的源码包的samples/bpf/目录下,有大量Linux提供的基于libbpf的eBPF样例代码。 一个典型的基于 libbpf 的eBPF程序具有*_kern.c和*_user.c两个文件,*_kern.c中书写在内核中的挂载点以及处理函数,*_user.c中书写用户态代码,完成内核态代码注入以及与用户交互的各种任务。 更为详细的教程可以参考 该视频 然而由于该方法仍然较难理解且入门存在一定的难度,因此现阶段的eBPF程序开发大多基于一些工具,比如: BCC BPFtrace libbpf-bootstrap Go eBPF library 以及还有比较新的工具,例如 eunomia-bpf.","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 3. 如何使用eBPF编程","id":"6","title":"3. 如何使用eBPF编程"},"60":{"body":"更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档: https://github.com/eunomia-bpf/eunomia-bpf 完整的教程和源代码已经全部开源,可以在 https://github.com/eunomia-bpf/bpf-developer-tutorial 中查看。","breadcrumbs":"eBPF 入门开发实践教程十:在 eBPF 中使用 hardirqs 或 softirqs 捕获中断事件 » 总结","id":"60","title":"总结"},"61":{"body":"eBPF (Extended Berkeley Packet Filter) 是 Linux 内核上的一个强大的网络和性能分析工具。它允许开发者在内核运行时动态加载、更新和运行用户定义的代码。","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用","id":"61","title":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用"},"62":{"body":"Bootstrap是一个工具,它使用BPF(Berkeley Packet Filter)程序跟踪执行exec()系统调用(使用SEC(“tp/sched/sched_process_exec”)handle_exit BPF程序),这大致对应于新进程的生成(忽略fork()部分)。此外,它还跟踪exit()(使用SEC(“tp/sched/sched_process_exit”)handle_exit BPF程序)以了解每个进程何时退出。这两个BPF程序共同工作,允许捕获有关任何新进程的有趣信息,例如二进制文件的文件名,以及测量进程的生命周期并在进程死亡时收集有趣的统计信息,例如退出代码或消耗的资源量等。我认为这是深入了解内核内部并观察事物如何真正运作的良好起点。 Bootstrap还使用argp API(libc的一部分)进行命令行参数解析。","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » 什么是bootstrap?","id":"62","title":"什么是bootstrap?"},"63":{"body":"TODO: 添加关于用户态的应用部分,以及关于 libbpf-boostrap 的完整介绍。也许可以参考类似:http://cn-sec.com/archives/1267522.html 的文档。 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause\n/* Copyright (c) 2020 Facebook */\n#include \"vmlinux.h\"\n#include \n#include \n#include \n#include \"bootstrap.h\" char LICENSE[] SEC(\"license\") = \"Dual BSD/GPL\"; struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, 8192); __type(key, pid_t); __type(value, u64);\n} exec_start SEC(\".maps\"); struct { __uint(type, BPF_MAP_TYPE_RINGBUF); __uint(max_entries, 256 * 1024);\n} rb SEC(\".maps\"); const volatile unsigned long long min_duration_ns = 0; SEC(\"tp/sched/sched_process_exec\")\nint handle_exec(struct trace_event_raw_sched_process_exec *ctx)\n{ struct task_struct *task; unsigned fname_off; struct event *e; pid_t pid; u64 ts; /* remember time exec() was executed for this PID */ pid = bpf_get_current_pid_tgid() >> 32; ts = bpf_ktime_get_ns(); bpf_map_update_elem(&exec_start, &pid, &ts, BPF_ANY); /* don't emit exec events when minimum duration is specified */ if (min_duration_ns) return 0; /* reserve sample from BPF ringbuf */ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); if (!e) return 0; /* fill out the sample with data */ task = (struct task_struct *)bpf_get_current_task(); e->exit_event = false; e->pid = pid; e->ppid = BPF_CORE_READ(task, real_parent, tgid); bpf_get_current_comm(&e->comm, sizeof(e->comm)); fname_off = ctx->__data_loc_filename & 0xFFFF; bpf_probe_read_str(&e->filename, sizeof(e->filename), (void *)ctx + fname_off); /* successfully submit it to user-space for post-processing */ bpf_ringbuf_submit(e, 0); return 0;\n} SEC(\"tp/sched/sched_process_exit\")\nint handle_exit(struct trace_event_raw_sched_process_template* ctx)\n{ struct task_struct *task; struct event *e; pid_t pid, tid; u64 id, ts, *start_ts, duration_ns = 0; /* get PID and TID of exiting thread/process */ id = bpf_get_current_pid_tgid(); pid = id >> 32; tid = (u32)id; /* ignore thread exits */ if (pid != tid) return 0; /* if we recorded start of the process, calculate lifetime duration */ start_ts = bpf_map_lookup_elem(&exec_start, &pid); if (start_ts) duration_ns = bpf_ktime_get_ns() - *start_ts; else if (min_duration_ns) return 0; bpf_map_delete_elem(&exec_start, &pid); /* if process didn't live long enough, return early */ if (min_duration_ns && duration_ns < min_duration_ns) return 0; /* reserve sample from BPF ringbuf */ e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); if (!e) return 0; /* fill out the sample with data */ task = (struct task_struct *)bpf_get_current_task(); e->exit_event = true; e->duration_ns = duration_ns; e->pid = pid; e->ppid = BPF_CORE_READ(task, real_parent, tgid); e->exit_code = (BPF_CORE_READ(task, exit_code) >> 8) & 0xff; bpf_get_current_comm(&e->comm, sizeof(e->comm)); /* send data to user-space for post-processing */ bpf_ringbuf_submit(e, 0); return 0;\n} 这是一段使用BPF(Berkeley Packet Filter)的C程序,用于跟踪进程启动和退出事件,并显示有关它们的信息。BPF是一种强大的机制,允许您将称为BPF程序的小程序附加到Linux内核的各个部分。这些程序可用于过滤,监视或修改内核的行为。 程序首先定义一些常量,并包含一些头文件。然后定义了一个名为env的struct,用于存储一些程序选项,例如详细模式和进程报告的最小持续时间。 然后,程序定义了一个名为parse_arg的函数,用于解析传递给程序的命令行参数。它接受三个参数:一个表示正在解析的选项的整数key,一个表示选项参数的字符指针arg和一个表示当前解析状态的struct argp_state指针state。该函数处理选项并在env struct中设置相应的值。 然后,程序定义了一个名为sig_handler的函数,当被调用时会将全局标志exiting设置为true。这用于在接收到信号时允许程序干净地退出。 接下来,我们将继续描述这段代码中的其他部分。 程序定义了一个名为exec_start的BPF map,它的类型为BPF_MAP_TYPE_HASH,最大条目数为8192,键类型为pid_t,值类型为u64。 另外,程序还定义了一个名为rb的BPF map,它的类型为BPF_MAP_TYPE_RINGBUF,最大条目数为256 * 1024。 程序还定义了一个名为min_duration_ns的常量,其值为0。 程序定义了一个名为handle_exec的SEC(static evaluator of code)函数,它被附加到跟踪进程执行的BPF程序上。该函数记录为该PID执行exec()的时间,并在指定了最小持续时间时不发出exec事件。如果未指定最小持续时间,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。 程序还定义了一个名为handle_exit的SEC函数,它被附加到跟踪进程退出的BPF程序上。该函数会在确定PID和TID后计算进程的生命周期,然后根据min_duration_ns的值决定是否发出退出事件。如果进程的生命周期足够长,则会从BPF ringbuf保留样本并使用数据填充样本,然后将其提交给用户空间进行后处理。 最后,主函数调用bpf_ringbuf_poll来轮询BPF ringbuf,并在接收到新的事件时处理该事件。这个函数会持续运行,直到全局标志exiting被设置为true,此时它会清理资源并退出。 编译运行上述代码: $ ecc bootstrap.bpf.c\nCompiling bpf object...\nPacking ebpf object and config into package.json...\n$ sudo ecli package.json\nRuning eBPF program...","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » Bootstrap","id":"63","title":"Bootstrap"},"64":{"body":"这是一个使用BPF的C程序,用于跟踪进程的启动和退出事件,并显示有关这些事件的信息。它通过使用argp API来解析命令行参数,并使用BPF地图存储进程的信息,包括进程的PID和执行文件的文件名。程序还使用了SEC函数来附加BPF程序,以监视进程的执行和退出事件。最后,程序在终端中打印出启动和退出的进程信息。 编译这个程序可以使用 ecc 工具,运行时可以使用 ecli 命令。更多的例子和详细的开发指南,请参考 eunomia-bpf 的官方文档:https://github.com/eunomia-bpf/eunomia-bpf","breadcrumbs":"eBPF 入门开发实践教程十一:在 eBPF 中使用 bootstrap 开发用户态程序并跟踪 exec() 和 exit() 系统调用 » 总结","id":"64","title":"总结"},"65":{"body":"","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时","id":"65","title":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时"},"66":{"body":"在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。 tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 背景","id":"66","title":"背景"},"67":{"body":"tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » tcpconnlat 的实现原理","id":"67","title":"tcpconnlat 的实现原理"},"68":{"body":"tcp 连接的整个过程如图所示: tcpconnlate 在这个连接过程中,我们来简单分析一下每一步的耗时: 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销 SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销 SYC/ACK传到客户端:长途网络跋涉 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销 ACK传到服务器:长途网络跋涉 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销 在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » tcp 连接原理","id":"68","title":"tcp 连接原理"},"69":{"body":"在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是: 半连接队列,也称 SYN 队列; 全连接队列,也称 accepet 队列; 服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。 我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中: 它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点: SEC(\"kprobe/tcp_v4_connect\")\nint BPF_KPROBE(tcp_v4_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_v6_connect\")\nint BPF_KPROBE(tcp_v6_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_rcv_state_process\")\nint BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)\n{ return handle_tcp_rcv_state_process(ctx, sk);\n} 在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中: struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, 4096); __type(key, struct sock *); __type(value, struct piddata);\n} start SEC(\".maps\"); static int trace_connect(struct sock *sk)\n{ u32 tgid = bpf_get_current_pid_tgid() >> 32; struct piddata piddata = {}; if (targ_tgid && targ_tgid != tgid) return 0; bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm)); piddata.ts = bpf_ktime_get_ns(); piddata.tgid = tgid; bpf_map_update_elem(&start, &sk, &piddata, 0); return 0;\n} 在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟: static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)\n{ struct piddata *piddatap; struct event event = {}; s64 delta; u64 ts; if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT) return 0; piddatap = bpf_map_lookup_elem(&start, &sk); if (!piddatap) return 0; ts = bpf_ktime_get_ns(); delta = (s64)(ts - piddatap->ts); if (delta < 0) goto cleanup; event.delta_us = delta / 1000U; if (targ_min_us && event.delta_us < targ_min_us) goto cleanup; __builtin_memcpy(&event.comm, piddatap->comm, sizeof(event.comm)); event.ts_us = ts / 1000; event.tgid = piddatap->tgid; event.lport = BPF_CORE_READ(sk, __sk_common.skc_num); event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport); event.af = BPF_CORE_READ(sk, __sk_common.skc_family); if (event.af == AF_INET) { event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr); event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr); } else { BPF_CORE_READ_INTO(&event.saddr_v6, sk, __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); BPF_CORE_READ_INTO(&event.daddr_v6, sk, __sk_common.skc_v6_daddr.in6_u.u6_addr32); } bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); cleanup: bpf_map_delete_elem(&start, &sk); return 0;\n}","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » ebpf 实现原理","id":"69","title":"ebpf 实现原理"},"7":{"body":"eBPF 程序由内核态部分和用户态部分构成。内核态部分包含程序的实际逻辑,用户态部分负责加载和管理内核态部分。使用 eunomia-bpf 开发工具,只需编写内核态部分的代码。 内核态部分的代码需要符合 eBPF 的语法和指令集。eBPF 程序主要由若干个函数组成,每个函数都有其特定的作用。可以使用的函数类型包括: kprobe:插探函数,在指定的内核函数前或后执行。 tracepoint:跟踪点函数,在指定的内核跟踪点处执行。 raw_tracepoint:原始跟踪点函数,在指定的内核原始跟踪点处执行。 xdp:网络数据处理函数,拦截和处理网络数据包。 perf_event:性能事件函数,用于处理内核性能事件。 kretprobe:函数返回插探函数,在指定的内核函数返回时执行。 tracepoint_return:跟踪点函数返回,在指定的内核跟踪点返回时执行。 raw_tracepoint_return:原始跟踪点函数返回,在指定的内核原始跟踪","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » 编写 eBPF 程序","id":"7","title":"编写 eBPF 程序"},"70":{"body":"git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned 将 libbpf-bootstrap 目录下的文件复制到 libbpf-bootstrap-cloned/examples/c下 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpconnlat 在 libbpf-bootstrap-cloned/examples/c 下运行 make tcpconnlat sudo ./tcpconnlat","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 编译运行","id":"70","title":"编译运行"},"71":{"body":"root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpconnlat PID COMM IP SADDR DADDR DPORT LAT(ms)\n222564 wget 4 192.168.88.15 110.242.68.3 80 25.29\n222684 wget 4 192.168.88.15 167.179.101.42 443 246.76\n222726 ssh 4 192.168.88.15 167.179.101.42 22 241.17\n222774 ssh 4 192.168.88.15 1.15.149.151 22 25.31","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 效果","id":"71","title":"效果"},"72":{"body":"通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheus 和 grafana 等工具进行网络性能分析。 来源: https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpconnlat.bpf.c","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 总结","id":"72","title":"总结"},"73":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时","id":"73","title":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时"},"74":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 代码解释","id":"74","title":"代码解释"},"75":{"body":"在互联网后端日常开发接口的时候中,不管你使用的是C、Java、PHP还是Golang,都避免不了需要调用mysql、redis等组件来获取数据,可能还需要执行一些rpc远程调用,或者再调用一些其它restful api。 在这些调用的底层,基本都是在使用TCP协议进行传输。这是因为在传输层协议中,TCP协议具备可靠的连接,错误重传,拥塞控制等优点,所以目前应用比UDP更广泛一些。但相对而言,tcp 连接也有一些缺点,例如建立连接的延时较长等。因此也会出现像 QUIC ,即 快速UDP网络连接 ( Quick UDP Internet Connections )这样的替代方案。 tcp 连接延时分析对于网络性能分析优化或者故障排查都能起到不少作用。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 背景","id":"75","title":"背景"},"76":{"body":"tcpconnlat 这个工具跟踪执行活动TCP连接的内核函数 (例如,通过connect()系统调用),并显示本地测量的连接的延迟(时间),即从发送 SYN 到响应包的时间。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » tcpconnlat 的实现原理","id":"76","title":"tcpconnlat 的实现原理"},"77":{"body":"tcp 连接的整个过程如图所示: tcpconnlate 在这个连接过程中,我们来简单分析一下每一步的耗时: 客户端发出SYNC包:客户端一般是通过connect系统调用来发出 SYN 的,这里牵涉到本机的系统调用和软中断的 CPU 耗时开销 SYN传到服务器:SYN从客户端网卡被发出,这是一次长途远距离的网络传输 服务器处理SYN包:内核通过软中断来收包,然后放到半连接队列中,然后再发出SYN/ACK响应。主要是 CPU 耗时开销 SYC/ACK传到客户端:长途网络跋涉 客户端处理 SYN/ACK:客户端内核收包并处理SYN后,经过几us的CPU处理,接着发出 ACK。同样是软中断处理开销 ACK传到服务器:长途网络跋涉 服务端收到ACK:服务器端内核收到并处理ACK,然后把对应的连接从半连接队列中取出来,然后放到全连接队列中。一次软中断CPU开销 服务器端用户进程唤醒:正在被accpet系统调用阻塞的用户进程被唤醒,然后从全连接队列中取出来已经建立好的连接。一次上下文切换的CPU开销 在客户端视角,在正常情况下一次TCP连接总的耗时也就就大约是一次网络RTT的耗时。但在某些情况下,可能会导致连接时的网络传输耗时上涨、CPU处理开销增加、甚至是连接失败。这种时候在发现延时过长之后,就可以结合其他信息进行分析。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » tcp 连接原理","id":"77","title":"tcp 连接原理"},"78":{"body":"在 TCP 三次握手的时候,Linux 内核会维护两个队列,分别是: 半连接队列,也称 SYN 队列; 全连接队列,也称 accepet 队列; 服务端收到客户端发起的 SYN 请求后,内核会把该连接存储到半连接队列,并向客户端响应 SYN+ACK,接着客户端会返回 ACK,服务端收到第三次握手的 ACK 后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到 accept 队列,等待进程调用 accept 函数时把连接取出来。 我们的 ebpf 代码实现在 https://github.com/yunwei37/Eunomia/blob/master/bpftools/tcpconnlat/tcpconnlat.bpf.c 中: 它主要使用了 trace_tcp_rcv_state_process 和 kprobe/tcp_v4_connect 这样的跟踪点: SEC(\"kprobe/tcp_v4_connect\")\nint BPF_KPROBE(tcp_v4_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_v6_connect\")\nint BPF_KPROBE(tcp_v6_connect, struct sock *sk)\n{ return trace_connect(sk);\n} SEC(\"kprobe/tcp_rcv_state_process\")\nint BPF_KPROBE(tcp_rcv_state_process, struct sock *sk)\n{ return handle_tcp_rcv_state_process(ctx, sk);\n} 在 trace_connect 中,我们跟踪新的 tcp 连接,记录到达时间,并且把它加入 map 中: struct { __uint(type, BPF_MAP_TYPE_HASH); __uint(max_entries, 4096); __type(key, struct sock *); __type(value, struct piddata);\n} start SEC(\".maps\"); static int trace_connect(struct sock *sk)\n{ u32 tgid = bpf_get_current_pid_tgid() >> 32; struct piddata piddata = {}; if (targ_tgid && targ_tgid != tgid) return 0; bpf_get_current_comm(&piddata.comm, sizeof(piddata.comm)); piddata.ts = bpf_ktime_get_ns(); piddata.tgid = tgid; bpf_map_update_elem(&start, &sk, &piddata, 0); return 0;\n} 在 handle_tcp_rcv_state_process 中,我们跟踪接收到的 tcp 数据包,从 map 从提取出对应的 connect 事件,并且计算延迟: static int handle_tcp_rcv_state_process(void *ctx, struct sock *sk)\n{ struct piddata *piddatap; struct event event = {}; s64 delta; u64 ts; if (BPF_CORE_READ(sk, __sk_common.skc_state) != TCP_SYN_SENT) return 0; piddatap = bpf_map_lookup_elem(&start, &sk); if (!piddatap) return 0; ts = bpf_ktime_get_ns(); delta = (s64)(ts - piddatap->ts); if (delta < 0) goto cleanup; event.delta_us = delta / 1000U; if (targ_min_us && event.delta_us < targ_min_us) goto cleanup; __builtin_memcpy(&event.comm, piddatap->comm, sizeof(event.comm)); event.ts_us = ts / 1000; event.tgid = piddatap->tgid; event.lport = BPF_CORE_READ(sk, __sk_common.skc_num); event.dport = BPF_CORE_READ(sk, __sk_common.skc_dport); event.af = BPF_CORE_READ(sk, __sk_common.skc_family); if (event.af == AF_INET) { event.saddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_rcv_saddr); event.daddr_v4 = BPF_CORE_READ(sk, __sk_common.skc_daddr); } else { BPF_CORE_READ_INTO(&event.saddr_v6, sk, __sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); BPF_CORE_READ_INTO(&event.daddr_v6, sk, __sk_common.skc_v6_daddr.in6_u.u6_addr32); } bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); cleanup: bpf_map_delete_elem(&start, &sk); return 0;\n}","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » ebpf 实现原理","id":"78","title":"ebpf 实现原理"},"79":{"body":"使用命令行进行追踪: $ sudo build/bin/Release/eunomia run tcpconnlat\n[sudo] password for yunwei: [2022-08-07 02:13:39.601] [info] eunomia run in cmd...\n[2022-08-07 02:13:40.534] [info] press 'Ctrl C' key to exit...\nPID COMM IP SRC DEST PORT LAT(ms) CONATINER/OS\n3477 openresty 4 172.19.0.7 172.19.0.5 2379 0.05 docker-apisix_apisix_1\n3483 openresty 4 172.19.0.7 172.19.0.5 2379 0.08 docker-apisix_apisix_1\n3477 openresty 4 172.19.0.7 172.19.0.5 2379 0.04 docker-apisix_apisix_1\n3478 openresty 4 172.19.0.7 172.19.0.5 2379 0.05 docker-apisix_apisix_1\n3478 openresty 4 172.19.0.7 172.19.0.5 2379 0.03 docker-apisix_apisix_1\n3478 openresty 4 172.19.0.7 172.19.0.5 2379 0.03 docker-apisix_apisix_1 还可以使用 eunomia 作为 prometheus exporter,在运行上述命令之后,打开 prometheus 自带的可视化面板: 使用下述查询命令即可看到延时的统计图表: rate(eunomia_observed_tcpconnlat_v4_histogram_sum[5m])\n/ rate(eunomia_observed_tcpconnlat_v4_histogram_count[5m]) 结果: result","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » Eunomia 测试 demo","id":"79","title":"Eunomia 测试 demo"},"8":{"body":"BCC全称为BPF Compiler Collection,该项目是一个python库, 包含了完整的编写、编译、和加载BPF程序的工具链,以及用于调试和诊断性能问题的工具。 自2015年发布以来,BCC经过上百位贡献者地不断完善后,目前已经包含了大量随时可用的跟踪工具。 其官方项目库 提供了一个方便上手的教程,用户可以快速地根据教程完成BCC入门工作。 用户可以在BCC上使用Python、Lua等高级语言进行编程。 相较于使用C语言直接编程,这些高级语言具有极大的便捷性,用户只需要使用C来设计内核中的 BPF程序,其余包括编译、解析、加载等工作在内,均可由BCC完成。 然而使用BCC存在一个缺点便是在于其兼容性并不好。基于BCC的 eBPF程序每次执行时候都需要进行编译,编译则需要用户配置相关的头文件和对应实现。在实际应用中, 相信大家也会有体会,编译依赖问题是一个很棘手的问题。也正是因此,在本项目的开发中我们放弃了BCC, 选择了可以做到一次编译-多次运行的libbpf-bootstrap工具。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » BCC","id":"8","title":"BCC"},"80":{"body":"通过上面的实验,我们可以看到,tcpconnlat 工具的实现原理是基于内核的TCP连接的跟踪,并且可以跟踪到 tcp 连接的延迟时间;除了命令行使用方式之外,还可以将其和容器、k8s 等元信息综合起来,通过 prometheus 和 grafana 等工具进行网络性能分析。 Eunomia 是一个使用 C/C++ 开发的基于 eBPF的轻量级,高性能云原生监控工具,旨在帮助用户了解容器的各项行为、监控可疑的容器安全事件,力求提供覆盖容器全生命周期的轻量级开源监控解决方案。它使用 Linux eBPF 技术在运行时跟踪您的系统和应用程序,并分析收集的事件以检测可疑的行为模式。目前,它包含性能分析、容器集群网络可视化分析*、容器安全感知告警、一键部署、持久化存储监控等功能,提供了多样化的 ebpf 追踪点。其核心导出器/命令行工具最小仅需要约 4MB 大小的二进制程序,即可在支持的 Linux 内核上启动。 项目地址: https://github.com/yunwei37/Eunomia","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 总结","id":"80","title":"总结"},"81":{"body":"http://kerneltravel.net/blog/2020/tcpconnlat/ https://network.51cto.com/article/640631.html","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 tcpconnlat 测量 tcp 连接延时 » 参考资料","id":"81","title":"参考资料"},"82":{"body":"tcpstates 是一个追踪当前系统上的TCP套接字的TCP状态的程序,主要通过跟踪内核跟踪点 inet_sock_set_state 来实现。统计数据通过 perf_event向用户态传输。 SEC(\"tracepoint/sock/inet_sock_set_state\")\nint handle_set_state(struct trace_event_raw_inet_sock_set_state *ctx) 在套接字改变状态处附加一个eBPF跟踪函数。 if (ctx->protocol != IPPROTO_TCP) return 0; if (target_family && target_family != family) return 0; if (filter_by_sport && !bpf_map_lookup_elem(&sports, &sport)) return 0; if (filter_by_dport && !bpf_map_lookup_elem(&dports, &dport)) return 0; 跟踪函数被调用后,先判断当前改变状态的套接字是否满足我们需要的过滤条件,如果不满足则不进行记录。 tsp = bpf_map_lookup_elem(×tamps, &sk); ts = bpf_ktime_get_ns(); if (!tsp) delta_us = 0; else delta_us = (ts - *tsp) / 1000; event.skaddr = (__u64)sk; event.ts_us = ts / 1000; event.delta_us = delta_us; event.pid = bpf_get_current_pid_tgid() >> 32; event.oldstate = ctx->oldstate; event.newstate = ctx->newstate; event.family = family; event.sport = sport; event.dport = dport; bpf_get_current_comm(&event.task, sizeof(event.task)); if (family == AF_INET) { bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_rcv_saddr); bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_daddr); } else { /* family == AF_INET6 */ bpf_probe_read_kernel(&event.saddr, sizeof(event.saddr), &sk->__sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); bpf_probe_read_kernel(&event.daddr, sizeof(event.daddr), &sk->__sk_common.skc_v6_daddr.in6_u.u6_addr32); } 使用状态改变相关填充event结构体。 此处使用了libbpf 的 CO-RE 支持。 bpf_perf_event_output(ctx, &events, BPF_F_CURRENT_CPU, &event, sizeof(event)); 将事件结构体发送至用户态程序。 if (ctx->newstate == TCP_CLOSE) bpf_map_delete_elem(×tamps, &sk); else bpf_map_update_elem(×tamps, &sk, &ts, BPF_ANY); 根据这个TCP链接的新状态,决定是更新下时间戳记录还是不再记录它的时间戳。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时","id":"82","title":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时"},"83":{"body":"while (!exiting) { err = perf_buffer__poll(pb, PERF_POLL_TIMEOUT_MS); if (err < 0 && err != -EINTR) { warn(\"error polling perf buffer: %s\\n\", strerror(-err)); goto cleanup; } /* reset err to return 0 if exiting */ err = 0; } 不停轮询内核程序所发过来的 perf event。 static void handle_event(void* ctx, int cpu, void* data, __u32 data_sz) { char ts[32], saddr[26], daddr[26]; struct event* e = data; struct tm* tm; int family; time_t t; if (emit_timestamp) { time(&t); tm = localtime(&t); strftime(ts, sizeof(ts), \"%H:%M:%S\", tm); printf(\"%8s \", ts); } inet_ntop(e->family, &e->saddr, saddr, sizeof(saddr)); inet_ntop(e->family, &e->daddr, daddr, sizeof(daddr)); if (wide_output) { family = e->family == AF_INET ? 4 : 6; printf( \"%-16llx %-7d %-16s %-2d %-26s %-5d %-26s %-5d %-11s -> %-11s \" \"%.3f\\n\", e->skaddr, e->pid, e->task, family, saddr, e->sport, daddr, e->dport, tcp_states[e->oldstate], tcp_states[e->newstate], (double)e->delta_us / 1000); } else { printf( \"%-16llx %-7d %-10.10s %-15s %-5d %-15s %-5d %-11s -> %-11s %.3f\\n\", e->skaddr, e->pid, e->task, saddr, e->sport, daddr, e->dport, tcp_states[e->oldstate], tcp_states[e->newstate], (double)e->delta_us / 1000); }\n} static void handle_lost_events(void* ctx, int cpu, __u64 lost_cnt) { warn(\"lost %llu events on CPU #%d\\n\", lost_cnt, cpu);\n} 收到事件后所调用对应的处理函数并进行输出打印。","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 用户态程序","id":"83","title":"用户态程序"},"84":{"body":"git clone https://github.com/libbpf/libbpf-bootstrap libbpf-bootstrap-cloned 将 libbpf-bootstrap 目录下的文件复制到 libbpf-bootstrap-cloned/examples/c下 修改 libbpf-bootstrap-cloned/examples/c/Makefile ,在其 APPS 项后添加 tcpstates 在 libbpf-bootstrap-cloned/examples/c 下运行 make tcpstates sudo ./tcpstates","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 编译运行","id":"84","title":"编译运行"},"85":{"body":"root@yutong-VirtualBox:~/libbpf-bootstrap/examples/c# ./tcpstates SKADDR PID COMM LADDR LPORT RADDR RPORT OLDSTATE -> NEWSTATE MS\nffff9bf61bb62bc0 164978 node 192.168.88.15 0 52.178.17.2 443 CLOSE -> SYN_SENT 0.000\nffff9bf61bb62bc0 0 swapper/0 192.168.88.15 41596 52.178.17.2 443 SYN_SENT -> ESTABLISHED 225.794\nffff9bf61bb62bc0 0 swapper/0 192.168.88.15 41596 52.178.17.2 443 ESTABLISHED -> CLOSE_WAIT 901.454\nffff9bf61bb62bc0 164978 node 192.168.88.15 41596 52.178.17.2 443 CLOSE_WAIT -> LAST_ACK 0.793\nffff9bf61bb62bc0 164978 node 192.168.88.15 41596 52.178.17.2 443 LAST_ACK -> LAST_ACK 0.086\nffff9bf61bb62bc0 228759 kworker/u6 192.168.88.15 41596 52.178.17.2 443 LAST_ACK -> CLOSE 0.193\nffff9bf6d8ee88c0 229832 redis-serv 0.0.0.0 6379 0.0.0.0 0 CLOSE -> LISTEN 0.000\nffff9bf6d8ee88c0 229832 redis-serv 0.0.0.0 6379 0.0.0.0 0 LISTEN -> CLOSE 1.763\nffff9bf7109d6900 88750 node 127.0.0.1 39755 127.0.0.1 50966 ESTABLISHED -> FIN_WAIT1 0.000 对于输出的详细解释,详见 README.md","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 效果","id":"85","title":"效果"},"86":{"body":"这里的代码修改自 https://github.com/iovisor/bcc/blob/master/libbpf-tools/tcpstates.bpf.c","breadcrumbs":"eBPF入门实践教程:使用 libbpf-bootstrap 开发程序统计 TCP 连接延时 » 总结","id":"86","title":"总结"},"87":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间","id":"87","title":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间"},"88":{"body":"网络质量在互联网社会中是一个很重要的因素。导致网络质量差的因素有很多,可能是硬件因素导致,也可能是程序 写的不好导致。为了能更好地定位网络问题,tcprtt 工具被提出。它可以监测TCP链接的往返时间,从而分析 网络质量,帮助用户定位问题来源。 当有tcp链接建立时,该工具会自动根据当前系统的支持情况,选择合适的执行函数。 在执行函数中,tcprtt会收集tcp链接的各项基本底薪,包括地址,源端口,目标端口,耗时 等等,并将其更新到直方图的map中。运行结束后通过用户态代码,展现给用户。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 背景","id":"88","title":"背景"},"89":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 编写 eBPF 程序","id":"89","title":"编写 eBPF 程序"},"9":{"body":"eBPF Go库提供了一个通用的eBPF库,它解耦了获取 eBPF 字节码的过程和 eBPF 程序的加载和管理,并实现了类似 libbpf 一样的 CO- 功能。eBPF程序通常是通过编写高级语言创建的,然后使用clang/LLVM编译器编译为eBPF字节码。","breadcrumbs":"eBPF 入门开发实践教程一:介绍 eBPF 的基本概念、常见的开发工具 » eBPF Go library","id":"9","title":"eBPF Go library"},"90":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 编译运行","id":"90","title":"编译运行"},"91":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Tcprtt 测量 TCP 连接的往返时间 » 总结","id":"91","title":"总结"},"92":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏","id":"92","title":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏"},"93":{"body":"内存泄漏对于一个程序而言是一个很严重的问题。倘若放任一个存在内存泄漏的程序运行,久而久之 系统的内存会慢慢被耗尽,导致程序运行速度显著下降。为了避免这一情况,memleak工具被提出。 它可以跟踪并匹配内存分配和释放的请求,并且打印出已经被分配资源而又尚未释放的堆栈信息。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 背景","id":"93","title":"背景"},"94":{"body":"memleak 的实现逻辑非常直观。它在我们常用的动态分配内存的函数接口路径上挂载了ebpf程序, 同时在free上也挂载了ebpf程序。在调用分配内存相关函数时,memleak 会记录调用者的pid,分配得到 内存的地址,分配得到的内存大小等基本数据。在free之后,memeleak则会去map中删除记录的对应的分配 信息。对于用户态常用的分配函数 malloc, calloc 等,memleak使用了 uporbe 技术实现挂载,对于 内核态的函数,比如 kmalloc 等,memleak 则使用了现有的 tracepoint 来实现。","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 实现原理","id":"94","title":"实现原理"},"95":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 编写 eBPF 程序","id":"95","title":"编写 eBPF 程序"},"96":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 编译运行","id":"96","title":"编译运行"},"97":{"body":"TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Memleak 监控内存泄漏 » 总结","id":"97","title":"总结"},"98":{"body":"","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O","id":"98","title":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O"},"99":{"body":"Biopattern 可以统计随机/顺序磁盘I/O次数的比例。 TODO","breadcrumbs":"eBPF 入门实践教程:编写 eBPF 程序 Biopattern: 统计随机/顺序磁盘 I/O » 背景","id":"99","title":"背景"}},"length":287,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"0":{".":{"0":{".":{"0":{".":{"0":{"df":1,"docs":{"85":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"7":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"1":{"4":{"6":{"9":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"8":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}}},"2":{"1":{"0":{"8":{"0":{"2":{"7":{"5":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"5":{"9":{"5":{"2":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"9":{"0":{"6":{"1":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"79":{"tf":1.0}}},"5":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"4":{"0":{"0":{"5":{"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"8":{"df":1,"docs":{"264":{"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":{}},"7":{"df":0,"docs":{},"f":{"1":{"2":{"a":{"1":{"3":{"3":{"df":0,"docs":{},"e":{"8":{"3":{"0":{"df":1,"docs":{"264":{"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":{}},"3":{"1":{"d":{"7":{"6":{"c":{"3":{"2":{"5":{"1":{"df":1,"docs":{"264":{"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":{}},"c":{"5":{"6":{"5":{"2":{"a":{"d":{"9":{"b":{"0":{"df":1,"docs":{"264":{"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":1,"docs":{"34":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.4142135623730951}}},"3":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.7320508075688772}}},"4":{"d":{"4":{"b":{"2":{"7":{"4":{"df":0,"docs":{},"e":{"2":{"a":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{"26":{"tf":2.0}}},"5":{"df":1,"docs":{"23":{"tf":2.0}}},"6":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":2,"docs":{"259":{"tf":4.242640687119285},"260":{"tf":2.0}}},"1":{"0":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}}},"5":{"6":{"3":{"2":{"b":{"b":{"3":{"0":{"d":{"a":{"df":1,"docs":{"123":{"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":{}},"6":{"5":{"c":{"c":{"8":{"1":{"7":{"0":{"7":{"5":{"df":1,"docs":{"123":{"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":{},"x":{"df":1,"docs":{"260":{"tf":1.0}}}},":":{"5":{"5":{":":{"0":{"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"2":{"4":{"0":{"a":{"0":{"4":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"2":{":":{"1":{"3":{":":{"3":{"9":{".":{"6":{"0":{"1":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{".":{"5":{"3":{"4":{"df":1,"docs":{"79":{"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":{}},"3":{"df":0,"docs":{},"e":{"6":{"9":{"b":{"5":{"0":{"8":{"b":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"f":{"5":{"7":{"8":{"1":{"b":{"df":0,"docs":{},"e":{"2":{"c":{"7":{"df":1,"docs":{"116":{"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":{}}},"4":{"5":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"8":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"5":{"6":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"d":{"6":{"1":{"a":{"b":{"3":{"6":{"df":0,"docs":{},"e":{"c":{"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"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":{}}},"5":{"1":{"5":{"df":0,"docs":{},"e":{"5":{"9":{"9":{"9":{"a":{"4":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"4":{"6":{"2":{"3":{"1":{"0":{"5":{"7":{"2":{"8":{"df":1,"docs":{"116":{"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":{}},"7":{"9":{"9":{"6":{"3":{"8":{"0":{"a":{"4":{"2":{"df":1,"docs":{"121":{"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":{}},"c":{"7":{"4":{"df":0,"docs":{},"e":{"5":{"df":0,"docs":{},"e":{"5":{"3":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"7":{"3":{"df":0,"docs":{},"f":{"5":{"2":{"b":{"9":{"6":{"df":1,"docs":{"122":{"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":{}},"6":{":":{"3":{"5":{":":{"0":{"1":{"df":1,"docs":{"264":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"4":{"3":{"1":{"1":{"0":{"b":{"2":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"4":{"c":{"4":{"a":{"3":{"df":0,"docs":{},"e":{"7":{"a":{"df":1,"docs":{"123":{"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":{"79":{"tf":1.4142135623730951}}},"8":{"1":{"3":{"a":{"8":{"4":{"1":{"5":{"6":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"2":{"5":{"8":{"d":{"4":{"c":{"5":{"4":{"4":{"1":{"5":{"5":{"df":1,"docs":{"264":{"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":1,"docs":{"79":{"tf":1.4142135623730951}}},";":{"df":0,"docs":{},":":{"df":0,"docs":{},"必":{"df":0,"docs":{},"须":{"df":0,"docs":{},"这":{"df":0,"docs":{},"样":{"df":0,"docs":{},",":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"0":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}},"c":{"8":{"4":{"9":{"3":{"d":{"9":{"0":{"b":{"6":{"b":{"df":1,"docs":{"122":{"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":{}},"d":{"0":{"1":{"d":{"a":{"6":{"a":{"df":0,"docs":{},"f":{"c":{"5":{"4":{"df":1,"docs":{"118":{"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":{}},"4":{"df":0,"docs":{},"f":{"a":{"d":{"3":{"df":0,"docs":{},"e":{"5":{"7":{"d":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"5":{"1":{"d":{"a":{"7":{"a":{"8":{"df":0,"docs":{},"e":{"9":{"df":1,"docs":{"122":{"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":70,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"164":{"tf":1.0},"169":{"tf":1.0},"17":{"tf":1.7320508075688772},"195":{"tf":1.4142135623730951},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.4142135623730951},"212":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"23":{"tf":2.0},"240":{"tf":2.449489742783178},"241":{"tf":4.0},"250":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.0},"26":{"tf":2.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.0},"264":{"tf":5.656854249492381},"265":{"tf":2.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":2.23606797749979},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":2.449489742783178},"279":{"tf":3.3166247903554},"280":{"tf":1.0},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":3.605551275463989},"41":{"tf":1.0},"46":{"tf":2.449489742783178},"47":{"tf":4.242640687119285},"5":{"tf":1.0},"52":{"tf":3.7416573867739413},"53":{"tf":2.8284271247461903},"58":{"tf":3.7416573867739413},"63":{"tf":3.7416573867739413},"69":{"tf":2.6457513110645907},"78":{"tf":2.6457513110645907},"82":{"tf":2.23606797749979},"83":{"tf":1.7320508075688772},"85":{"tf":2.23606797749979}},"e":{"3":{"3":{"6":{"6":{"1":{"d":{"df":0,"docs":{},"e":{"4":{"9":{"3":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"f":{"8":{"df":0,"docs":{},"e":{"4":{"b":{"d":{"8":{"a":{"1":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"120":{"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":{}},"x":{"0":{"8":{"0":{"0":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"2":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"4":{"df":1,"docs":{"207":{"tf":1.0}}},"8":{"df":2,"docs":{"207":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}},"1":{".":{"0":{"2":{"2":{"3":{"4":{"6":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{".":{"1":{"4":{"9":{".":{"1":{"5":{"1":{"df":1,"docs":{"71":{"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":1,"docs":{"264":{"tf":1.0}}},"2":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{".":{"1":{"0":{"df":1,"docs":{"83":{"tf":1.0}}},"5":{"3":{".":{"2":{"2":{"3":{".":{"1":{"5":{"7":{":":{"2":{"2":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"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":{}},"2":{"0":{"1":{".":{"2":{"1":{"9":{".":{"2":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{".":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":2,"docs":{"272":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}},"u":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"274":{"tf":1.0},"41":{"tf":2.6457513110645907},"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"u":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"241":{"tf":1.0},"265":{"tf":2.23606797749979},"284":{"tf":1.0}}},"2":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"0":{"df":4,"docs":{"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"37":{"tf":1.0},"52":{"tf":1.0}}},"df":13,"docs":{"169":{"tf":1.0},"173":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"284":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"4":{"1":{"4":{"0":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"e":{"b":{"6":{"2":{"9":{"df":0,"docs":{},"e":{"1":{"9":{"df":1,"docs":{"123":{"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":16,"docs":{"128":{"tf":2.23606797749979},"140":{"tf":1.0},"153":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"195":{"tf":1.0},"219":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"282":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951}}},"1":{"0":{".":{"2":{"4":{"2":{".":{"6":{"8":{".":{"3":{"df":1,"docs":{"71":{"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":{}},"3":{"4":{"1":{"3":{"8":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"265":{"tf":2.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"128":{"tf":2.23606797749979},"141":{"tf":1.0},"154":{"tf":1.0},"179":{"tf":1.0},"220":{"tf":1.0},"241":{"tf":1.4142135623730951},"264":{"tf":2.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"83":{"tf":2.0}}},"2":{"3":{"1":{"df":1,"docs":{"265":{"tf":1.0}}},"4":{":":{"a":{"b":{"1":{"2":{":":{"2":{"0":{"4":{"0":{":":{"5":{"0":{"2":{"0":{":":{"2":{"2":{"9":{"9":{":":{"0":{":":{"5":{":":{"0":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"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":{}},"4":{"9":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"5":{"4":{"7":{"2":{"8":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"1":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"9":{"2":{"5":{"5":{"df":1,"docs":{"265":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"4":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{".":{"0":{".":{"1":{"df":2,"docs":{"264":{"tf":2.0},"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"8":{"2":{"0":{"3":{"df":1,"docs":{"265":{"tf":3.1622776601683795}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"240":{"tf":1.4142135623730951},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"e":{"d":{"7":{"6":{"0":{"a":{"7":{"8":{"d":{"df":1,"docs":{"123":{"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":11,"docs":{"128":{"tf":2.23606797749979},"142":{"tf":1.0},"155":{"tf":1.0},"180":{"tf":1.0},"221":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.7320508075688772},"53":{"tf":1.0}}},"3":{"0":{"9":{"2":{"4":{"3":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"7":{"1":{"df":2,"docs":{"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"1":{"2":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"7":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"4":{"9":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"6":{"4":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"4":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":2,"docs":{"17":{"tf":1.0},"269":{"tf":1.0}}},"a":{"2":{"7":{"d":{"df":0,"docs":{},"f":{"c":{"6":{"6":{"9":{"7":{"df":1,"docs":{"117":{"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":{}},"b":{"b":{"b":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"a":{"7":{"5":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"4":{"0":{"df":0,"docs":{},"f":{"7":{"8":{"9":{"df":1,"docs":{"123":{"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":8,"docs":{"128":{"tf":1.7320508075688772},"181":{"tf":1.0},"222":{"tf":1.0},"241":{"tf":1.0},"243":{"tf":1.0},"264":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0}}},"4":{"3":{"2":{"df":1,"docs":{"271":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"6":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"0":{"7":{"5":{"1":{"c":{"9":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":6,"docs":{"128":{"tf":1.4142135623730951},"182":{"tf":1.0},"241":{"tf":1.0},"244":{"tf":1.0},"253":{"tf":1.0},"282":{"tf":1.0}}},"5":{"1":{"6":{"df":1,"docs":{"265":{"tf":1.0}}},"9":{"4":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"5":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"d":{"0":{"df":0,"docs":{},"e":{"2":{"9":{"0":{"df":0,"docs":{},"e":{"9":{"6":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"8":{"0":{"df":1,"docs":{"271":{"tf":1.0}}},"7":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":11,"docs":{"128":{"tf":1.4142135623730951},"183":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"245":{"tf":1.0},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"283":{"tf":1.0},"53":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{".":{"0":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"3":{"8":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"5":{"8":{"0":{"4":{"3":{".":{"4":{"3":{"6":{"0":{"1":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"2":{"6":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"1":{"2":{"6":{"5":{"4":{"5":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"7":{"2":{"df":1,"docs":{"274":{"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":{}},"6":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"7":{"8":{"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"1":{"7":{"9":{".":{"1":{"0":{"1":{".":{"4":{"2":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}},"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":23,"docs":{"128":{"tf":1.0},"180":{"tf":1.0},"184":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"284":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"83":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"x":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}},"7":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{".":{"1":{"9":{".":{"0":{".":{"5":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"7":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"253":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"a":{"7":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"9":{"5":{"1":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"1":{"6":{"9":{"4":{"6":{"df":0,"docs":{},"e":{"3":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"df":1,"docs":{"253":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"d":{"a":{"b":{"2":{"7":{"2":{"3":{"1":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"185":{"tf":1.0},"268":{"tf":1.0},"285":{"tf":1.0}}},"8":{".":{"9":{"df":0,"docs":{},"f":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"1":{"3":{"9":{"d":{"c":{"a":{"8":{"b":{"3":{"df":1,"docs":{"117":{"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":{}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":5,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"9":{".":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{".":{"1":{"6":{"8":{".":{"5":{"6":{".":{"1":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{".":{"1":{"5":{"df":2,"docs":{"71":{"tf":2.0},"85":{"tf":2.449489742783178}}},"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":{}},"5":{"0":{"df":1,"docs":{"264":{"tf":2.0}}},"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"187":{"tf":1.0},"241":{"tf":1.0},"53":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"7":{"5":{"d":{"1":{"6":{"6":{"8":{"df":1,"docs":{"117":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"c":{"a":{"df":0,"docs":{},"e":{"9":{"6":{"3":{"c":{"2":{"df":1,"docs":{"117":{"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":{}}},"d":{"1":{"1":{"b":{"3":{"0":{"1":{"6":{"c":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"123":{"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":49,"docs":{"1":{"tf":1.0},"111":{"tf":1.7320508075688772},"128":{"tf":3.605551275463989},"131":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.4142135623730951},"163":{"tf":1.0},"169":{"tf":1.0},"192":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.0},"210":{"tf":1.0},"218":{"tf":2.6457513110645907},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"253":{"tf":1.4142135623730951},"256":{"tf":1.0},"260":{"tf":1.4142135623730951},"263":{"tf":2.449489742783178},"264":{"tf":3.7416573867739413},"265":{"tf":2.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":2.23606797749979},"280":{"tf":1.0},"282":{"tf":2.6457513110645907},"284":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":2.0},"58":{"tf":2.0}},"e":{"6":{"c":{"6":{"2":{"a":{"8":{"8":{"2":{"1":{"5":{"df":1,"docs":{"117":{"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":{}},"f":{"2":{"1":{"1":{"a":{"1":{"b":{"9":{"2":{"9":{"c":{"df":1,"docs":{"117":{"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":{}},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"2":{".":{"0":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"1":{"df":4,"docs":{"17":{"tf":1.0},"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"3":{"df":1,"docs":{"265":{"tf":1.0}}},"6":{".":{"3":{"2":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"9":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"1":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{"0":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"2":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"2":{"tf":1.0}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"5":{"7":{"1":{"5":{"6":{"7":{"3":{"8":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"6":{"0":{"5":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"2":{"0":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"188":{"tf":1.0},"264":{"tf":1.0},"282":{"tf":1.0}}},"1":{"1":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"9":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},":":{"2":{"8":{":":{"3":{"0":{"df":1,"docs":{"41":{"tf":2.6457513110645907}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{":":{"0":{"9":{"df":1,"docs":{"47":{"tf":3.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"189":{"tf":1.0}}},"2":{".":{"2":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"2":{"tf":1.0}}},"2":{"5":{"6":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"8":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":2.0}}},"5":{".":{"7":{"9":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"7":{"5":{"9":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"3":{"2":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"6":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"190":{"tf":1.0},"264":{"tf":1.7320508075688772},"71":{"tf":1.4142135623730951}}},"3":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"3":{"df":0,"docs":{},"e":{"c":{"c":{"6":{"df":0,"docs":{},"f":{"9":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"191":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"4":{"1":{".":{"1":{"7":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"7":{"3":{"4":{"3":{"3":{".":{"0":{"5":{"2":{"9":{"3":{"7":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"6":{"4":{"2":{"8":{"0":{"8":{"df":1,"docs":{"269":{"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":{}},"8":{"5":{"0":{"0":{"1":{".":{"1":{"7":{"4":{"8":{"8":{"5":{"9":{"9":{"9":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"7":{"1":{"0":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"9":{"9":{"1":{"9":{"7":{"6":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"2":{".":{"2":{"7":{"6":{"1":{"4":{"7":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"6":{".":{"7":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"2":{"8":{"3":{"2":{".":{"9":{"5":{"6":{"9":{"9":{"4":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"7":{".":{"7":{"2":{"6":{"5":{"0":{"0":{"9":{"9":{"9":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"1":{"1":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"0":{"3":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"2":{"9":{"4":{"9":{"9":{"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"8":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"3":{"3":{"2":{"4":{".":{"5":{"6":{"1":{"3":{"2":{"2":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"3":{"5":{".":{"3":{"4":{"3":{"4":{"0":{"1":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"4":{"0":{".":{"5":{"1":{"0":{"1":{"6":{"4":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"9":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"2":{"df":1,"docs":{"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"8":{"df":1,"docs":{"283":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"192":{"tf":1.0},"264":{"tf":1.0}}},"5":{".":{"2":{"9":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"3":{"1":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"1":{"5":{"1":{"7":{"c":{"3":{"2":{"b":{"df":0,"docs":{},"e":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"5":{"df":5,"docs":{"240":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"6":{"df":7,"docs":{"257":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"8":{"9":{"7":{"2":{"6":{"d":{"1":{"2":{"a":{"1":{"df":1,"docs":{"117":{"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":{}},"9":{"0":{"df":1,"docs":{"251":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"193":{"tf":1.0}}},"6":{"3":{"a":{"df":0,"docs":{},"e":{"1":{"5":{"2":{"df":0,"docs":{},"e":{"9":{"6":{"2":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"194":{"tf":1.0},"52":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"7":{"6":{"7":{"2":{"df":0,"docs":{},"f":{"0":{"d":{"2":{"8":{"0":{"a":{"df":1,"docs":{"123":{"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":{}},"a":{"df":0,"docs":{},"e":{"7":{"9":{"9":{"7":{"a":{"6":{"6":{"1":{"df":1,"docs":{"118":{"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":{}}},"b":{"2":{"9":{"df":0,"docs":{},"f":{"6":{"3":{"0":{"5":{"8":{"d":{"df":1,"docs":{"123":{"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":3,"docs":{"128":{"tf":1.0},"195":{"tf":1.0},"264":{"tf":1.0}}},"8":{"df":4,"docs":{"128":{"tf":1.0},"196":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.0}},"f":{"b":{"c":{"df":0,"docs":{},"f":{"a":{"0":{"8":{"d":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"9":{"b":{"a":{"7":{"3":{"2":{"a":{"c":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"120":{"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":4,"docs":{"128":{"tf":1.0},"197":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0}}},"a":{"1":{"0":{"0":{"3":{"1":{"7":{"c":{"9":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"e":{"2":{"1":{"2":{"d":{"5":{"4":{"1":{"df":1,"docs":{"123":{"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":{}}},"c":{"1":{"6":{"d":{"6":{"0":{"3":{"3":{"2":{"6":{"4":{"df":1,"docs":{"117":{"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":{}},"d":{"0":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"3":{"0":{"df":0,"docs":{},"f":{"8":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"9":{"b":{"9":{"df":0,"docs":{},"e":{"6":{"d":{"df":0,"docs":{},"f":{"6":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{"83":{"tf":1.0}}},"df":32,"docs":{"128":{"tf":3.4641016151377544},"132":{"tf":1.0},"145":{"tf":1.0},"151":{"tf":1.4142135623730951},"160":{"tf":1.0},"17":{"tf":1.0},"170":{"tf":1.0},"195":{"tf":1.4142135623730951},"203":{"tf":1.0},"208":{"tf":1.0},"211":{"tf":1.0},"218":{"tf":1.4142135623730951},"225":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"248":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"270":{"tf":1.0},"277":{"tf":2.0},"279":{"tf":2.8284271247461903},"283":{"tf":1.0},"3":{"tf":1.0},"41":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":2.23606797749979}},"f":{"df":1,"docs":{"272":{"tf":1.0}}},"h":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{".":{"1":{"3":{"df":1,"docs":{"274":{"tf":1.0}}},"5":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"116":{"tf":1.0}}},"8":{"df":3,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"121":{"tf":1.0}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"1":{"6":{"df":1,"docs":{"37":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"9":{"6":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"198":{"tf":1.0},"264":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"1":{"8":{"9":{"df":1,"docs":{"53":{"tf":1.0}}},"df":0,"docs":{}},"df":7,"docs":{"128":{"tf":1.0},"199":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"2":{"2":{"0":{"7":{"0":{"1":{".":{"1":{"0":{"1":{"1":{"4":{"3":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"1":{"5":{"8":{"0":{"0":{"0":{"df":2,"docs":{"29":{"tf":1.0},"30":{"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":{}},"7":{"4":{"df":0,"docs":{},"f":{"5":{"2":{"0":{"7":{"3":{"d":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"9":{"df":1,"docs":{"34":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":24,"docs":{"128":{"tf":1.0},"147":{"tf":2.0},"148":{"tf":1.0},"17":{"tf":1.0},"171":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"195":{"tf":1.0},"200":{"tf":1.0},"23":{"tf":1.4142135623730951},"240":{"tf":1.0},"26":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"k":{"b":{"df":2,"docs":{"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{"2":{"a":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"6":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"f":{"9":{"8":{"8":{"5":{"0":{"4":{"0":{"c":{"df":1,"docs":{"123":{"tf":2.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":2,"docs":{"128":{"tf":1.0},"201":{"tf":1.0}}},"4":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"2":{"7":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}},"7":{"7":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"79":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"8":{"3":{"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"b":{"2":{"0":{"2":{"1":{"c":{"c":{"6":{"1":{"6":{"df":1,"docs":{"123":{"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":{}},"d":{"4":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"7":{"7":{"5":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"202":{"tf":1.0}}},"5":{"1":{"7":{"df":3,"docs":{"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"1":{"5":{"8":{"1":{"3":{"9":{"5":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"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":{"7":{"8":{"d":{"7":{"9":{"8":{"4":{"0":{"0":{"df":1,"docs":{"123":{"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":{}},"6":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"2":{"c":{"7":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"0":{"4":{"0":{"df":0,"docs":{},"e":{"4":{"7":{"3":{"3":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"4":{"0":{"3":{"4":{"5":{"df":3,"docs":{"17":{"tf":2.0},"29":{"tf":2.0},"30":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"280":{"tf":1.0}}},"6":{"1":{"7":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"d":{"6":{"5":{"5":{"df":0,"docs":{},"f":{"4":{"d":{"4":{"df":1,"docs":{"123":{"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":{}},"9":{"7":{"5":{"5":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"4":{"0":{"8":{"4":{"7":{"0":{"8":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"1":{"3":{"c":{"2":{"0":{"4":{"b":{"b":{"1":{"df":1,"docs":{"116":{"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":{}},"a":{"0":{"8":{"c":{"2":{"df":0,"docs":{},"f":{"d":{"7":{"6":{"3":{"4":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"f":{"8":{"df":0,"docs":{},"f":{"d":{"6":{"1":{"df":0,"docs":{},"f":{"9":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772},"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"e":{"a":{"0":{"8":{"9":{"2":{"4":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"2":{"5":{"3":{"c":{"2":{"df":0,"docs":{},"e":{"6":{"5":{"2":{"df":1,"docs":{"123":{"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":{}},"c":{"a":{"1":{"0":{"3":{"2":{"a":{"b":{"7":{"a":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"7":{"8":{"4":{"1":{"7":{"b":{"6":{"0":{"df":0,"docs":{},"f":{"b":{"df":1,"docs":{"123":{"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":25,"docs":{"1":{"tf":1.0},"128":{"tf":2.8284271247461903},"133":{"tf":1.0},"146":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"171":{"tf":1.0},"212":{"tf":1.0},"218":{"tf":1.4142135623730951},"229":{"tf":1.0},"233":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"249":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"6":{"tf":1.0},"63":{"tf":1.0}},"e":{"8":{"7":{"df":0,"docs":{},"f":{"1":{"9":{"2":{"b":{"4":{"0":{"5":{"df":1,"docs":{"121":{"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":{}},"f":{"3":{"6":{"4":{"2":{"2":{"2":{"d":{"0":{"3":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"7":{"1":{"9":{"c":{"7":{"b":{"6":{"2":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{},"n":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"h":{"df":1,"docs":{"4":{"tf":1.0}}},"r":{"d":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}},"4":{".":{"1":{"0":{"df":5,"docs":{"117":{"tf":2.0},"118":{"tf":2.23606797749979},"120":{"tf":1.4142135623730951},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"1":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}},"2":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.4142135623730951}}},"3":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.7320508075688772},"150":{"tf":1.0}}},"4":{"df":7,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":5,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"6":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"7":{"df":4,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"8":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":2.6457513110645907},"118":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"123":{"tf":4.0},"186":{"tf":1.0}}},"9":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903}}},"2":{"0":{"df":7,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0}}},"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"3":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.449489742783178}}},"4":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":2,"docs":{"117":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}},"6":{"df":3,"docs":{"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"280":{"tf":1.0}}},"8":{".":{"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":2.449489742783178},"123":{"tf":2.449489742783178}}},"9":{".":{"1":{"0":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.7320508075688772},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"df":0,"docs":{},"x":{"df":1,"docs":{"261":{"tf":1.0}}}},"0":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"3":{"0":{"4":{"b":{"2":{"a":{"1":{"5":{"6":{"7":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"7":{"4":{"7":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"41":{"tf":1.0}}},"9":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"41":{"tf":1.0}}},"1":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":6,"docs":{"264":{"tf":3.1622776601683795},"274":{"tf":2.0},"279":{"tf":1.0},"53":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":1.0}}},"1":{"5":{"9":{"6":{"df":1,"docs":{"85":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"8":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"4":{"9":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"47":{"tf":1.0}}},"1":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"47":{"tf":1.0}}},"4":{"df":1,"docs":{"47":{"tf":2.23606797749979}}},"5":{"df":1,"docs":{"47":{"tf":1.0}}},"6":{"df":1,"docs":{"47":{"tf":1.0}}},"7":{"df":1,"docs":{"47":{"tf":1.0}}},"8":{"df":1,"docs":{"47":{"tf":1.0}}},"9":{"df":1,"docs":{"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"4":{"9":{"6":{"7":{"2":{"9":{"5":{"df":1,"docs":{"53":{"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":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"3":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":2.449489742783178}}},"df":1,"docs":{"264":{"tf":1.0}}},"5":{"7":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"6":{"3":{"a":{"8":{"8":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"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":{}},"6":{"3":{"7":{".":{"7":{"9":{"8":{"6":{"9":{"8":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"3":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"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":1,"docs":{"268":{"tf":1.0}},"f":{"8":{"b":{"c":{"9":{"2":{"7":{"5":{"8":{"c":{"df":1,"docs":{"123":{"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":{}}},"7":{"1":{"0":{".":{"9":{"5":{"1":{"6":{"9":{"6":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"9":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"5":{"2":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"9":{"5":{"df":1,"docs":{"23":{"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":{}},"8":{"c":{"df":0,"docs":{},"f":{"b":{"d":{"df":0,"docs":{},"f":{"5":{"df":0,"docs":{},"f":{"1":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"7":{"5":{"2":{"b":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"264":{"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":{}},"3":{"8":{"df":0,"docs":{},"e":{"1":{"5":{"5":{"0":{"3":{"7":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"8":{"4":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"9":{"2":{"df":0,"docs":{},"e":{"6":{"3":{"9":{"df":0,"docs":{},"f":{"0":{"c":{"2":{"2":{"df":1,"docs":{"123":{"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":{"df":0,"docs":{},"e":{"0":{"5":{"1":{"7":{"0":{"9":{"5":{"8":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"a":{"4":{"8":{"2":{"df":0,"docs":{},"f":{"3":{"4":{"a":{"df":0,"docs":{},"f":{"c":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"f":{"6":{"c":{"0":{"b":{"8":{"4":{"c":{"9":{"df":1,"docs":{"122":{"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":{}},"b":{"df":0,"docs":{},"e":{"b":{"d":{"c":{"7":{"a":{"8":{"5":{"a":{"a":{"df":1,"docs":{"123":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"b":{"c":{"1":{"df":0,"docs":{},"f":{"1":{"0":{"4":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"2":{"2":{"0":{"df":0,"docs":{},"e":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"1":{"4":{"df":1,"docs":{"117":{"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":20,"docs":{"128":{"tf":2.6457513110645907},"134":{"tf":1.0},"147":{"tf":1.0},"162":{"tf":1.0},"172":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.4142135623730951},"234":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"250":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":3.3166247903554},"272":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":2.449489742783178},"53":{"tf":1.4142135623730951},"71":{"tf":2.0},"79":{"tf":2.449489742783178},"83":{"tf":1.0}},"e":{"1":{"0":{"d":{"df":0,"docs":{},"f":{"9":{"a":{"6":{"0":{"d":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"5":{"6":{"c":{"d":{"c":{"5":{"9":{"df":1,"docs":{"123":{"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":{}}},"6":{"3":{"a":{"c":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"c":{"5":{"2":{"1":{"df":0,"docs":{},"e":{"d":{"5":{"df":1,"docs":{"120":{"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":{}},"f":{"1":{"9":{"c":{"a":{"b":{"7":{"6":{"1":{"3":{"6":{"df":1,"docs":{"123":{"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":{}},"3":{"4":{"4":{"6":{"b":{"b":{"8":{"0":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"7":{"3":{"8":{"a":{"d":{"b":{"a":{"3":{"0":{"a":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"b":{"a":{"c":{"7":{"7":{"d":{"2":{"d":{"0":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"m":{"b":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}},"5":{".":{"0":{"df":3,"docs":{"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"1":{"0":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":3.7416573867739413}}},"1":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"3":{"df":2,"docs":{"116":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"118":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":1,"docs":{"123":{"tf":2.449489742783178}}},"8":{"df":1,"docs":{"123":{"tf":2.8284271247461903}}},"9":{"df":1,"docs":{"123":{"tf":3.1622776601683795}}},"df":3,"docs":{"116":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":2.449489742783178}}},"2":{"df":5,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":3.1622776601683795}}},"3":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"120":{"tf":1.0}}},"5":{"df":6,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903},"26":{"tf":1.0}}},"6":{"df":5,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"7":{"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":2.6457513110645907},"141":{"tf":1.0}}},"8":{"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0},"163":{"tf":1.0},"242":{"tf":1.0}},"开":{"df":0,"docs":{},"始":{"df":0,"docs":{},",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"提":{"df":0,"docs":{},"供":{"df":0,"docs":{},"了":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"新":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"结":{"df":0,"docs":{},"构":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0}}},"df":0,"docs":{}},"0":{"9":{"6":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"c":{"6":{"6":{"a":{"d":{"8":{"4":{"9":{"a":{"7":{"df":1,"docs":{"116":{"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":{}},"2":{".":{"1":{"7":{"8":{".":{"1":{"7":{".":{"2":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"6":{"2":{"d":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"3":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"8":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"4":{".":{"2":{"4":{"5":{".":{"1":{"0":{"5":{".":{"2":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"7":{".":{"1":{"0":{"1":{".":{"1":{"4":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"a":{"c":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"b":{"7":{"0":{"d":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"6":{"b":{"9":{"9":{"1":{"df":0,"docs":{},"e":{"9":{"c":{"1":{"df":1,"docs":{"123":{"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":{}},"6":{"df":1,"docs":{"264":{"tf":1.0}},"f":{"6":{"6":{"8":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"0":{"d":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"df":1,"docs":{"53":{"tf":1.0}}},"8":{"3":{"c":{"1":{"df":0,"docs":{},"f":{"4":{"2":{"0":{"1":{"7":{"3":{"df":1,"docs":{"120":{"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":{}},"9":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"9":{"8":{"8":{"8":{"d":{"7":{"8":{"df":1,"docs":{"121":{"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":{}},"d":{"8":{"b":{"5":{"8":{"3":{"d":{"0":{"4":{"a":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"c":{"4":{"b":{"7":{"d":{"4":{"df":0,"docs":{},"e":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"5":{"5":{"2":{"0":{"c":{"4":{"d":{"df":1,"docs":{"116":{"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":1,"docs":{"83":{"tf":2.0}}},"df":15,"docs":{"128":{"tf":2.6457513110645907},"135":{"tf":1.0},"148":{"tf":1.0},"163":{"tf":1.0},"173":{"tf":1.0},"194":{"tf":1.0},"214":{"tf":1.0},"224":{"tf":1.0},"235":{"tf":1.0},"241":{"tf":1.0},"251":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"273":{"tf":1.0},"4":{"tf":1.0}},"f":{"3":{"1":{"6":{"b":{"6":{"5":{"df":0,"docs":{},"e":{"9":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{".":{"0":{"df":1,"docs":{"123":{"tf":2.0}}},"1":{"df":3,"docs":{"116":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{",":{"0":{"0":{"0":{"df":1,"docs":{"263":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"2":{"7":{"4":{"c":{"5":{"a":{"b":{"d":{"8":{"df":1,"docs":{"123":{"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":{}},"d":{"2":{"0":{"df":0,"docs":{},"f":{"9":{"1":{"9":{"5":{"b":{"2":{"df":1,"docs":{"123":{"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":{}},"1":{"0":{"2":{"3":{"6":{"5":{"8":{"7":{"6":{"0":{"0":{"df":1,"docs":{"118":{"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":{}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"8":{"df":1,"docs":{"30":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"2":{"5":{"8":{"2":{"7":{"8":{"6":{"c":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"116":{"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":{}},"4":{"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"7":{"9":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"d":{"9":{"b":{"8":{"0":{"d":{"c":{"df":0,"docs":{},"f":{"2":{"c":{"df":1,"docs":{"123":{"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":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"4":{"0":{"0":{"1":{".":{"3":{"7":{"5":{"7":{"4":{"8":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"0":{"5":{"6":{"9":{"5":{"1":{"df":1,"docs":{"34":{"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":{}},"1":{"c":{"d":{"7":{"b":{"0":{"6":{"c":{"9":{"1":{"df":1,"docs":{"117":{"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":{}},"5":{"3":{"0":{"7":{"3":{"9":{"8":{"7":{"b":{"a":{"df":1,"docs":{"122":{"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":9,"docs":{"112":{"tf":2.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"5":{"5":{"3":{"5":{"df":3,"docs":{"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"6":{"df":4,"docs":{"257":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"a":{"5":{"1":{"df":0,"docs":{},"e":{"5":{"3":{"6":{"c":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"8":{"1":{"7":{"1":{"a":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"0":{"df":0,"docs":{},"e":{"1":{"1":{"2":{"6":{"9":{"3":{"4":{"df":1,"docs":{"120":{"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":{}},"9":{".":{"5":{"3":{".":{"2":{"4":{"5":{".":{"4":{"0":{":":{"2":{"2":{"9":{"5":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"4":{"6":{"1":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"b":{"6":{"9":{"3":{"df":0,"docs":{},"f":{"0":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"8":{"7":{"b":{"a":{"6":{"2":{"2":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.0}}},"a":{"7":{"7":{"3":{"a":{"1":{"5":{"a":{"1":{"df":0,"docs":{},"e":{"8":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"9":{"9":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"2":{"3":{"d":{"4":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"9":{"1":{"0":{"6":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"b":{"4":{"3":{"2":{"df":0,"docs":{},"e":{"6":{"7":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{},"e":{"0":{"8":{"a":{"df":0,"docs":{},"e":{"3":{"d":{"df":0,"docs":{},"e":{"a":{"2":{"df":1,"docs":{"123":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"5":{"a":{"a":{"6":{"df":0,"docs":{},"f":{"c":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"5":{"9":{"8":{"1":{"7":{"4":{"3":{"2":{"df":1,"docs":{"121":{"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":{},"e":{"9":{"6":{"c":{"a":{"3":{"4":{"8":{"a":{"9":{"df":1,"docs":{"122":{"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":{}}},"d":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"136":{"tf":1.0},"149":{"tf":1.0},"164":{"tf":1.0},"174":{"tf":1.0},"215":{"tf":1.0},"236":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":2.0},"274":{"tf":1.0},"279":{"tf":1.4142135623730951},"283":{"tf":1.0},"53":{"tf":1.0},"83":{"tf":1.0}},"e":{"2":{"2":{"a":{"b":{"9":{"d":{"a":{"7":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"b":{"0":{"4":{"a":{"8":{"2":{"2":{"4":{"df":1,"docs":{"121":{"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":{}},"f":{"9":{"d":{"4":{"5":{"1":{"a":{"b":{"1":{"a":{"3":{"df":1,"docs":{"120":{"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":{},"f":{"df":0,"docs":{},"f":{"6":{"0":{"7":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"1":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"7":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"d":{"6":{"6":{"2":{"4":{"4":{"3":{"1":{"7":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"1":{"b":{"b":{"4":{"2":{"8":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"2":{"c":{"1":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"1":{"9":{"2":{"1":{"4":{"7":{"7":{"6":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"2":{"4":{"6":{"d":{"8":{"df":0,"docs":{},"e":{"d":{"4":{"d":{"c":{"c":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"1":{"8":{"7":{"6":{"c":{"8":{"5":{"7":{"c":{"b":{"df":1,"docs":{"122":{"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":{}},"7":{"2":{"3":{"6":{"2":{"8":{"1":{"0":{"1":{"a":{"a":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.0}}},"9":{"7":{"0":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"a":{"7":{"df":0,"docs":{},"f":{"8":{"b":{"d":{"b":{"1":{"5":{"9":{"df":2,"docs":{"118":{"tf":1.0},"123":{"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":2,"docs":{"112":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"a":{"1":{"2":{"b":{"5":{"0":{"3":{"1":{"c":{"6":{"b":{"df":1,"docs":{"116":{"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":{}},"4":{"b":{"2":{"8":{"c":{"6":{"c":{"c":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"f":{"c":{"6":{"c":{"9":{"b":{"3":{"1":{"5":{"df":1,"docs":{"123":{"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":{}},"b":{"1":{"4":{"6":{"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"2":{"3":{"a":{"9":{"8":{"9":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"5":{"0":{"9":{"df":0,"docs":{},"e":{"3":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"117":{"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":{}},"c":{"7":{"df":0,"docs":{},"e":{"3":{"d":{"3":{"1":{"df":0,"docs":{},"e":{"7":{"8":{"5":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"e":{"c":{"5":{"4":{"df":0,"docs":{},"f":{"9":{"7":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"d":{"6":{"7":{"2":{"3":{"4":{"5":{"df":0,"docs":{},"e":{"d":{"2":{"9":{"df":1,"docs":{"123":{"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":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"137":{"tf":1.0},"150":{"tf":1.0},"165":{"tf":1.0},"175":{"tf":1.0},"216":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":2.0},"53":{"tf":1.4142135623730951}},"e":{"2":{"7":{"3":{"a":{"8":{"df":0,"docs":{},"e":{"b":{"d":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"h":{"df":1,"docs":{"4":{"tf":1.0}}}},"8":{"0":{"0":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"8":{"6":{"4":{"9":{"df":0,"docs":{},"f":{"b":{"7":{"8":{"7":{"d":{"df":1,"docs":{"123":{"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":{}},"9":{"6":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":4,"docs":{"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"34":{"tf":1.0},"71":{"tf":1.0}}},"1":{"1":{"1":{"0":{"3":{"8":{"4":{"4":{"4":{"1":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"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":{}},"4":{"2":{"8":{"8":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"4":{"b":{"d":{"0":{"c":{"df":0,"docs":{},"e":{"6":{"c":{"7":{"c":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"5":{".":{"7":{"9":{"8":{"1":{"9":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"9":{"2":{"2":{"7":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"0":{"0":{"1":{"3":{"6":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"6":{"1":{"0":{"8":{"5":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"7":{"2":{"0":{"df":1,"docs":{"37":{"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":{}},"3":{"8":{"c":{"9":{"3":{"d":{"c":{"5":{"4":{"4":{"9":{"df":1,"docs":{"122":{"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":1,"docs":{"53":{"tf":1.0}}},"4":{"8":{"2":{"9":{"4":{"1":{"df":0,"docs":{},"f":{"0":{"9":{"0":{"6":{"df":1,"docs":{"123":{"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":{}},"5":{"6":{"c":{"0":{"2":{"d":{"b":{"c":{"df":0,"docs":{},"e":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"3":{"d":{"df":0,"docs":{},"f":{"3":{"5":{"7":{"b":{"6":{"df":1,"docs":{"120":{"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":2,"docs":{"253":{"tf":1.0},"254":{"tf":1.0}}},"6":{"9":{"9":{"4":{"1":{"5":{"6":{"c":{"7":{"3":{"6":{"df":1,"docs":{"122":{"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":{}},"7":{"3":{"7":{"8":{"3":{"1":{".":{"6":{"7":{"1":{"0":{"7":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"3":{"3":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"4":{"9":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"0":{"df":1,"docs":{"112":{"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":{}},"d":{"df":0,"docs":{},"f":{"1":{"5":{"d":{"df":0,"docs":{},"e":{"4":{"4":{"1":{"b":{"df":1,"docs":{"121":{"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":{},"f":{"5":{"df":0,"docs":{},"f":{"c":{"7":{"df":0,"docs":{},"e":{"4":{"8":{"d":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"8":{"7":{"5":{"0":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"a":{"a":{"0":{"7":{"5":{"8":{"3":{"2":{"b":{"0":{"df":1,"docs":{"117":{"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":{}},"b":{"4":{"0":{"1":{"df":0,"docs":{},"f":{"9":{"df":0,"docs":{},"e":{"d":{"2":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"4":{"c":{"7":{"df":0,"docs":{},"e":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"2":{"0":{"a":{"a":{"b":{"df":0,"docs":{},"e":{"1":{"c":{"7":{"6":{"df":1,"docs":{"123":{"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":24,"docs":{"128":{"tf":2.449489742783178},"138":{"tf":1.0},"151":{"tf":1.0},"163":{"tf":1.4142135623730951},"166":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"217":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"254":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"264":{"tf":1.7320508075688772},"276":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":2.23606797749979},"282":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.7320508075688772},"63":{"tf":1.0}},"e":{"a":{"6":{"3":{"6":{"8":{"4":{"8":{"a":{"c":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"f":{"8":{"4":{"4":{"9":{"3":{"8":{"4":{"df":0,"docs":{},"e":{"c":{"3":{"df":1,"docs":{"120":{"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":{},"e":{"4":{"5":{"9":{"2":{"4":{"3":{"8":{"7":{"b":{"df":1,"docs":{"121":{"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":{}}},"s":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}}},"9":{"0":{"1":{".":{"4":{"5":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"8":{"4":{"3":{"2":{"c":{"a":{"8":{"4":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"123":{"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":{}},"1":{"8":{"4":{"3":{"d":{"5":{"4":{"0":{"a":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"8":{"2":{"7":{"0":{"df":0,"docs":{},"f":{"2":{"a":{"4":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"8":{"2":{"2":{"c":{"3":{"d":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"2":{".":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"7":{"0":{"8":{"0":{"8":{"1":{"6":{"2":{"9":{"df":1,"docs":{"122":{"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":{}},"9":{"0":{"df":1,"docs":{"26":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"3":{"0":{"9":{"8":{"6":{"c":{"0":{"3":{"0":{"0":{"df":1,"docs":{"120":{"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":{}},"4":{"6":{"df":1,"docs":{"23":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"c":{"3":{"1":{"2":{"d":{"df":1,"docs":{"118":{"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":{}},"5":{"df":1,"docs":{"272":{"tf":1.0}}},"6":{"0":{"4":{"9":{"df":0,"docs":{},"f":{"3":{"a":{"df":0,"docs":{},"f":{"d":{"5":{"0":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"7":{"8":{"b":{"6":{"3":{"4":{"7":{"4":{"df":1,"docs":{"120":{"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":{}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"b":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"e":{"b":{"3":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"e":{"5":{"2":{"2":{"7":{"9":{"5":{"9":{"4":{"df":1,"docs":{"123":{"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":{}}},"b":{"3":{"b":{"6":{"c":{"9":{"0":{"9":{"1":{"d":{"df":1,"docs":{"121":{"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":{},"e":{"4":{"3":{"2":{"5":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"df":1,"docs":{"118":{"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":{"272":{"tf":1.0}},"e":{"a":{"b":{"df":0,"docs":{},"e":{"7":{"a":{"4":{"0":{"a":{"a":{"df":1,"docs":{"121":{"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":{}}},"7":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{},"f":{"9":{"1":{"a":{"7":{"c":{"df":0,"docs":{},"f":{"0":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"8":{"0":{"2":{"d":{"8":{"6":{"5":{"8":{"5":{"d":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"5":{"c":{"2":{"c":{"6":{"5":{"c":{"2":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"9":{"c":{"5":{"5":{"df":0,"docs":{},"f":{"7":{"d":{"4":{"7":{"c":{"0":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}},"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":{}},"a":{"a":{"1":{"2":{"0":{"6":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"4":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"b":{"9":{"8":{"4":{"df":0,"docs":{},"f":{"2":{"8":{"d":{"5":{"b":{"df":1,"docs":{"123":{"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":{}},"c":{"9":{"5":{"9":{"c":{"8":{"6":{"3":{"df":0,"docs":{},"f":{"8":{"2":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"9":{"4":{"8":{"b":{"5":{"a":{"2":{"0":{"df":1,"docs":{"122":{"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":{}},"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}},"f":{"1":{"c":{"2":{"8":{"b":{"b":{"7":{"5":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":12,"docs":{"128":{"tf":2.449489742783178},"139":{"tf":1.0},"152":{"tf":1.0},"167":{"tf":1.0},"177":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.0}},"e":{"d":{"4":{"0":{"5":{"0":{"c":{"0":{"d":{"7":{"5":{"df":1,"docs":{"122":{"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":{},"e":{"b":{"3":{"a":{"a":{"3":{"3":{"a":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"123":{"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":{}}},"s":{"df":2,"docs":{"236":{"tf":1.7320508075688772},"237":{"tf":1.7320508075688772}}}},"_":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"46":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}}},"o":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"p":{"df":1,"docs":{"138":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"_":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"b":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"111":{"tf":1.0},"161":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"c":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"v":{"6":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"d":{"d":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"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":{}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"u":{"3":{"2":{")":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":4,"docs":{"37":{"tf":1.7320508075688772},"38":{"tf":1.0},"52":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":2,"docs":{"37":{"tf":1.4142135623730951},"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"d":{"_":{"_":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"138":{"tf":2.23606797749979}}}}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"6":{"4":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"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":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"169":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"a":{".":{"df":0,"docs":{},"k":{".":{"a":{"df":2,"docs":{"117":{"tf":1.0},"119":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{"0":{"4":{"2":{"3":{"b":{"8":{"7":{"a":{"7":{"df":1,"docs":{"120":{"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":{}},"4":{"0":{"df":0,"docs":{},"z":{"d":{"7":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"c":{"3":{"0":{"4":{"2":{"5":{"9":{"df":1,"docs":{"123":{"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":{}},"5":{"df":0,"docs":{},"e":{"8":{"c":{"0":{"7":{"0":{"5":{"9":{"d":{"0":{"df":1,"docs":{"123":{"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":{}}},"6":{"7":{"df":0,"docs":{},"e":{"d":{"b":{"df":0,"docs":{},"f":{"4":{"df":0,"docs":{},"f":{"b":{"6":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"6":{"5":{"8":{"df":0,"docs":{},"e":{"1":{"a":{"4":{"1":{"6":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}}}},"a":{"2":{"df":0,"docs":{},"e":{"9":{"3":{"b":{"8":{"df":0,"docs":{},"e":{"5":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"df":0,"docs":{},"f":{"c":{"3":{"2":{"0":{"d":{"9":{"4":{"df":1,"docs":{"117":{"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":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":7,"docs":{"133":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"265":{"tf":2.0},"280":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"256":{"tf":1.0}},"e":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"t":{"df":4,"docs":{"126":{"tf":1.0},"264":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":11,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":2.23606797749979},"249":{"tf":1.0},"253":{"tf":1.4142135623730951},"284":{"tf":2.0}}}}},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":4,"docs":{"68":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"178":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":2.0},"126":{"tf":1.0},"58":{"tf":3.1622776601683795}}}},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"d":{"5":{"b":{"1":{"7":{"7":{"b":{"d":{"7":{"3":{"df":0,"docs":{},"f":{"df":1,"docs":{"121":{"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":{}},"d":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"200":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"123":{"tf":1.0},"207":{"tf":1.7320508075688772},"265":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":3,"docs":{"136":{"tf":2.0},"213":{"tf":1.4142135623730951},"283":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":17,"docs":{"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"187":{"tf":1.0},"204":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"264":{"tf":1.7320508075688772},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}}}}},"df":5,"docs":{"142":{"tf":1.0},"200":{"tf":1.0},"259":{"tf":1.0},"261":{"tf":1.0},"273":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"163":{"tf":1.0},"212":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"7":{"df":0,"docs":{},"e":{"c":{"1":{"3":{"8":{"3":{"3":{"6":{"1":{"df":1,"docs":{"123":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"82":{"tf":1.0}}},"df":4,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0},"83":{"tf":1.0}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"181":{"tf":2.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":1,"docs":{"272":{"tf":2.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":6,"docs":{"121":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0}}},"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":8,"docs":{"118":{"tf":1.0},"126":{"tf":2.449489742783178},"141":{"tf":1.4142135623730951},"157":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"264":{"tf":1.0},"284":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"162":{"tf":1.0},"257":{"tf":1.0},"282":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"h":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":5,"docs":{"200":{"tf":1.4142135623730951},"218":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"164":{"tf":1.0},"264":{"tf":1.0}}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"131":{"tf":1.0},"138":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}}}}},"d":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"242":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":6,"docs":{"195":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"218":{"tf":1.0},"272":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":14,"docs":{"121":{"tf":1.4142135623730951},"126":{"tf":1.4142135623730951},"128":{"tf":1.4142135623730951},"133":{"tf":1.0},"136":{"tf":1.0},"163":{"tf":1.7320508075688772},"19":{"tf":1.0},"2":{"tf":1.0},"226":{"tf":1.0},"230":{"tf":1.0},"280":{"tf":1.0},"38":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"1":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"c":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":3,"docs":{"275":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"136":{"tf":1.0},"204":{"tf":1.0},"264":{"tf":2.6457513110645907}}},"df":1,"docs":{"126":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"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":3,"docs":{"116":{"tf":1.0},"126":{"tf":1.4142135623730951},"2":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"116":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"204":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"1":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"2":{"df":2,"docs":{"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"3":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":14,"docs":{"133":{"tf":2.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"212":{"tf":1.7320508075688772},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.6457513110645907},"269":{"tf":1.0},"280":{"tf":2.0},"283":{"tf":1.0},"284":{"tf":1.0}},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{".":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"[":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"1":{"df":2,"docs":{"137":{"tf":1.0},"37":{"tf":1.0}}},"2":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"1":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}}},"df":43,"docs":{"128":{"tf":1.0},"130":{"tf":1.0},"131":{"tf":2.23606797749979},"133":{"tf":2.0},"134":{"tf":1.7320508075688772},"136":{"tf":1.7320508075688772},"137":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.7320508075688772},"140":{"tf":2.0},"141":{"tf":1.0},"142":{"tf":1.0},"149":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.0},"210":{"tf":1.0},"212":{"tf":1.7320508075688772},"213":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":2.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"x":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}},"m":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"y":{"df":22,"docs":{"120":{"tf":2.6457513110645907},"121":{"tf":1.0},"149":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":2.0},"174":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"176":{"tf":2.0},"178":{"tf":1.7320508075688772},"182":{"tf":1.4142135623730951},"183":{"tf":1.0},"186":{"tf":1.0},"207":{"tf":1.4142135623730951},"233":{"tf":1.0},"234":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"272":{"tf":1.0},"39":{"tf":1.7320508075688772},"41":{"tf":1.0},"42":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.0}}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":18,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"167":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"200":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"261":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"264":{"tf":1.0},"272":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"128":{"tf":1.0},"219":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"210":{"tf":1.7320508075688772},"271":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"211":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"\"":{":":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"217":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"216":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"212":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.4142135623730951},"220":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"213":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"214":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"218":{"tf":1.0}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.7320508075688772},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":24,"docs":{"117":{"tf":3.1622776601683795},"126":{"tf":2.0},"133":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"196":{"tf":1.0},"200":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"250":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"153":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.0}}}}}},"r":{"df":1,"docs":{"141":{"tf":1.0}},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"o":{"df":4,"docs":{"212":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"t":{"df":6,"docs":{"133":{"tf":1.0},"144":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":15,"docs":{"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"b":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"210":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"b":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"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":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"212":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"214":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":1,"docs":{"214":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"1":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"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":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"221":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"222":{"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":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"231":{"tf":1.0},"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"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":{}}}},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"248":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":1,"docs":{"196":{"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":{}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"242":{"tf":1.0}},"l":{"(":{"3":{"0":{"df":1,"docs":{"228":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":4,"docs":{"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"{":{"1":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":1,"docs":{"224":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"0":{"0":{"5":{"df":0,"docs":{},"f":{"d":{"1":{"8":{"9":{"c":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"2":{"8":{"b":{"1":{"c":{"7":{"d":{"5":{"df":1,"docs":{"123":{"tf":2.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":{"3":{"d":{"8":{"8":{"0":{"7":{"2":{"1":{"7":{"2":{"df":1,"docs":{"123":{"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":{}},"2":{"1":{"9":{"7":{"7":{"5":{"5":{"b":{"2":{"6":{"3":{"df":1,"docs":{"117":{"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":{}},"3":{"2":{"c":{"c":{"5":{"b":{"9":{"a":{"3":{"4":{"6":{"df":1,"docs":{"123":{"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":{}},"4":{"2":{"6":{"c":{"df":0,"docs":{},"e":{"8":{"3":{"b":{"a":{"a":{"7":{"df":1,"docs":{"123":{"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":{}},"4":{"1":{"2":{"3":{"b":{"4":{"a":{"3":{"d":{"c":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"c":{"5":{"c":{"4":{"df":0,"docs":{},"e":{"0":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"b":{"3":{"1":{"4":{"1":{"4":{"9":{"7":{"0":{"df":1,"docs":{"123":{"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":{}},"5":{"c":{"d":{"a":{"df":0,"docs":{},"e":{"3":{"2":{"9":{"1":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"122":{"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":{}},"7":{"4":{"1":{"df":0,"docs":{},"f":{"1":{"6":{"3":{"0":{"3":{"4":{"6":{"df":1,"docs":{"120":{"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":{}},"b":{"7":{"0":{"1":{"3":{"c":{"a":{"c":{"5":{"5":{"df":1,"docs":{"116":{"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":{}},"9":{"5":{"a":{"5":{"c":{"4":{"d":{"b":{"0":{"9":{"b":{"df":1,"docs":{"120":{"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":{}},"[":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"231":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"[":{"\"":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"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":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"\"":{"]":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"241":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}},"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":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"228":{"tf":1.0},"229":{"tf":1.0},"242":{"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":{}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"2":{"b":{"2":{"3":{"2":{"1":{"0":{"8":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"124":{"tf":3.7416573867739413},"126":{"tf":2.6457513110645907},"186":{"tf":1.4142135623730951},"196":{"tf":1.0},"265":{"tf":1.0},"271":{"tf":1.0}}},"h":{"df":9,"docs":{"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"32":{"tf":1.4142135623730951},"34":{"tf":3.1622776601683795},"35":{"tf":1.4142135623730951}},"r":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"263":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"168":{"tf":1.0}}}}},"c":{"3":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"6":{"5":{"a":{"6":{"5":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"6":{"b":{"1":{"b":{"7":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"256":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}},"e":{"=":{"2":{"6":{"4":{"4":{"5":{"8":{"df":1,"docs":{"257":{"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":40,"docs":{"11":{"tf":1.0},"119":{"tf":1.0},"12":{"tf":1.0},"127":{"tf":1.4142135623730951},"128":{"tf":1.0},"129":{"tf":1.0},"14":{"tf":2.0},"144":{"tf":1.0},"203":{"tf":1.4142135623730951},"205":{"tf":1.0},"218":{"tf":1.0},"230":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.4142135623730951},"257":{"tf":1.0},"259":{"tf":1.7320508075688772},"261":{"tf":2.0},"263":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"267":{"tf":2.23606797749979},"269":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.4142135623730951},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.0}},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"13":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"上":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"、":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"全":{"df":0,"docs":{},"称":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"d":{"4":{"c":{"df":0,"docs":{},"f":{"0":{"df":0,"docs":{},"e":{"d":{"3":{"3":{"1":{"a":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"1":{"3":{"c":{"d":{"0":{"8":{"df":0,"docs":{},"f":{"1":{"0":{"df":1,"docs":{"121":{"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":20,"docs":{"138":{"tf":1.0},"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"8":{"7":{"0":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"7":{"d":{"2":{"df":1,"docs":{"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"141":{"tf":1.0},"277":{"tf":1.0}}}}},"df":6,"docs":{"200":{"tf":1.0},"207":{"tf":1.0},"217":{"tf":1.0},"265":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"136":{"tf":1.0},"139":{"tf":1.0},"150":{"tf":1.0},"229":{"tf":1.0},"244":{"tf":1.0},"263":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"121":{"tf":1.0},"249":{"tf":1.0},"269":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}},"w":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"203":{"tf":1.0},"265":{"tf":1.7320508075688772},"284":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":11,"docs":{"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"239":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"6":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"8":{"9":{"3":{"c":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.0}}},"m":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":1,"docs":{"260":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"213":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"126":{"tf":1.0},"208":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"215":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}}},"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"181":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":4,"docs":{"100":{"tf":1.7320508075688772},"102":{"tf":1.0},"98":{"tf":1.0},"99":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"264":{"tf":2.0}}}}}}}},"t":{"df":5,"docs":{"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":2,"docs":{"277":{"tf":1.4142135623730951},"278":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{":":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":2.449489742783178},"53":{"tf":2.23606797749979},"58":{"tf":2.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"df":1,"docs":{"146":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"63":{"tf":1.0}}}},"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":10,"docs":{"10":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"65":{"tf":1.0},"70":{"tf":2.449489742783178},"8":{"tf":1.0},"82":{"tf":1.0},"84":{"tf":2.449489742783178}},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"基":{"df":0,"docs":{},"于":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"库":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"用":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"将":{"*":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"10":{"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":{},"用":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"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":{},"代":{"df":0,"docs":{},"码":{"df":0,"docs":{},":":{"2":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":5,"docs":{"163":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"273":{"tf":1.0}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"285":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"117":{"tf":1.0},"217":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"'":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"269":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"138":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"253":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"df":7,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}}}}}},"{":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"210":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"132":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"211":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"217":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"134":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"213":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"135":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"214":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"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":{}}}},"c":{"df":1,"docs":{"16":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"221":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"222":{"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"b":{"'":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"251":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"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":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"231":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"h":{"df":1,"docs":{"137":{"tf":1.0}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":2,"docs":{"195":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"248":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"228":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"225":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"196":{"tf":1.4142135623730951},"218":{"tf":1.0}}}},"df":0,"docs":{}}},"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"23":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":13,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"h":{"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":12,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"27":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":23,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"/":{"df":0,"docs":{},"e":{"c":{"c":{"df":1,"docs":{"16":{"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":{}}}}}},"2":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"136":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"231":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":6,"docs":{"200":{"tf":1.0},"37":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"171":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"1":{"df":1,"docs":{"183":{"tf":1.0}}},"2":{"df":1,"docs":{"183":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"171":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"182":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"171":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"&":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":4,"docs":{"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772}}}},"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":{}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"179":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"179":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"200":{"tf":1.0}}}}}}},"f":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"177":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"169":{"tf":1.0}},"e":{"(":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"219":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"c":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"123":{"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":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"d":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"b":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.449489742783178}}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"t":{"a":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"3":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.8284271247461903}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"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":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"c":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"k":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"b":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"c":{"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"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":{}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"y":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}}},"v":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"(":{"&":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"149":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"128":{"tf":1.0},"149":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"147":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":21,"docs":{"128":{"tf":1.0},"147":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772},"27":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"150":{"tf":1.7320508075688772},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"155":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"155":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"128":{"tf":1.0},"152":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"#":{"2":{"7":{"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"282":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"170":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"170":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"183":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"183":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"(":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"142":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":13,"docs":{"128":{"tf":1.0},"146":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":2,"docs":{"203":{"tf":1.7320508075688772},"254":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"151":{"tf":1.0}}}}}}}}},"df":4,"docs":{"128":{"tf":1.0},"151":{"tf":1.0},"240":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":2,"docs":{"128":{"tf":1.0},"177":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"121":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"38":{"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":{}}}}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}},"e":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"120":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":9,"docs":{"120":{"tf":1.0},"192":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"120":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":3,"docs":{"120":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"120":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.0},"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"142":{"tf":1.0},"37":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"l":{"3":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"128":{"tf":1.0},"157":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"176":{"tf":1.0}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"176":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"176":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"175":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"128":{"tf":1.0},"175":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.0},"194":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"41":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"160":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"160":{"tf":1.0}}}},"df":0,"docs":{}}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"155":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"26":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"34":{"tf":1.0},"37":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"29":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"144":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"145":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"145":{"tf":1.0}}}}}},"df":5,"docs":{"128":{"tf":1.0},"144":{"tf":1.7320508075688772},"204":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"41":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":3,"docs":{"128":{"tf":1.0},"153":{"tf":1.4142135623730951},"204":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"(":{"&":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"153":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"154":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"154":{"tf":1.0},"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}},"y":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"178":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"118":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"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":1,"docs":{"118":{"tf":1.0}}}}}}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":3,"docs":{"118":{"tf":1.0},"124":{"tf":1.0},"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"217":{"tf":1.4142135623730951}},"r":{"a":{"df":0,"docs":{},"m":{"_":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"185":{"tf":1.0}}}},"df":0,"docs":{}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"185":{"tf":1.0}}}}}}},"df":2,"docs":{"128":{"tf":1.0},"185":{"tf":1.0}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"163":{"tf":1.0},"242":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}},"df":7,"docs":{"128":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"242":{"tf":1.4142135623730951}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"来":{"df":0,"docs":{},"轮":{"df":0,"docs":{},"询":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"186":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":2,"docs":{"128":{"tf":1.0},"173":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"173":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"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":2,"docs":{"128":{"tf":1.0},"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"169":{"tf":1.0}},"e":{"(":{"\"":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"171":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"170":{"tf":1.0},"182":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"176":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"178":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"(":{"\"":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"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":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"283":{"tf":1.0}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"%":{"d":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":4,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"s":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.0},"17":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"26":{"tf":2.0},"269":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"6":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"181":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"219":{"tf":1.0},"220":{"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":111,"docs":{"108":{"tf":1.0},"11":{"tf":2.8284271247461903},"111":{"tf":1.0},"112":{"tf":1.4142135623730951},"114":{"tf":1.0},"117":{"tf":5.5677643628300215},"12":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":5.0990195135927845},"128":{"tf":2.0},"129":{"tf":1.0},"13":{"tf":1.0},"131":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":2.6457513110645907},"142":{"tf":2.23606797749979},"144":{"tf":1.7320508075688772},"145":{"tf":1.4142135623730951},"15":{"tf":3.3166247903554},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.0},"16":{"tf":2.0},"160":{"tf":1.0},"163":{"tf":1.7320508075688772},"168":{"tf":1.0},"17":{"tf":1.0},"178":{"tf":1.7320508075688772},"18":{"tf":2.23606797749979},"186":{"tf":1.7320508075688772},"192":{"tf":1.0},"195":{"tf":1.4142135623730951},"2":{"tf":1.7320508075688772},"20":{"tf":2.23606797749979},"203":{"tf":1.7320508075688772},"204":{"tf":1.0},"207":{"tf":2.23606797749979},"210":{"tf":2.0},"211":{"tf":2.0},"212":{"tf":2.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"219":{"tf":1.4142135623730951},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"24":{"tf":1.4142135623730951},"240":{"tf":1.0},"242":{"tf":1.7320508075688772},"252":{"tf":1.0},"253":{"tf":2.23606797749979},"254":{"tf":2.449489742783178},"259":{"tf":2.23606797749979},"26":{"tf":2.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"271":{"tf":2.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"282":{"tf":1.4142135623730951},"283":{"tf":2.23606797749979},"284":{"tf":1.7320508075688772},"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"34":{"tf":2.0},"35":{"tf":1.4142135623730951},"37":{"tf":2.0},"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.7320508075688772},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"45":{"tf":2.23606797749979},"46":{"tf":2.449489742783178},"47":{"tf":2.0},"48":{"tf":2.23606797749979},"49":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":2.449489742783178},"54":{"tf":1.7320508075688772},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":2.0},"6":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"64":{"tf":1.4142135623730951},"7":{"tf":1.0}},"f":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"181":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"117":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":3,"docs":{"56":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"a":{"d":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}}}}},"s":{"=":{"8":{"df":0,"docs":{},"k":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"f":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":2.0}}},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":7,"docs":{"135":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"f":{"[":{"6":{"4":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"134":{"tf":1.0},"149":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":20,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.7320508075688772},"275":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.7320508075688772},"46":{"tf":1.7320508075688772},"48":{"tf":1.0},"83":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},")":{"df":0,"docs":{},"来":{"df":0,"docs":{},"实":{"df":0,"docs":{},"现":{"df":0,"docs":{},"。":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}},"g":{"df":1,"docs":{"272":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"126":{"tf":1.4142135623730951},"259":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"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":{},"多":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"y":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":8,"docs":{"144":{"tf":1.0},"145":{"tf":1.7320508075688772},"153":{"tf":1.0},"154":{"tf":1.7320508075688772},"162":{"tf":1.0},"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}},"c":{"/":{"c":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}},"0":{"4":{"1":{"6":{"7":{"c":{"df":0,"docs":{},"e":{"2":{"c":{"a":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"d":{"2":{"b":{"9":{"6":{"8":{"a":{"df":1,"docs":{"117":{"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":{}},"a":{"5":{"a":{"2":{"1":{"c":{"2":{"5":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"123":{"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":{}},"4":{"6":{"6":{"4":{"6":{"d":{"0":{"4":{"8":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"df":0,"docs":{},"f":{"b":{"3":{"8":{"a":{"9":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"0":{"b":{"df":0,"docs":{},"f":{"b":{"4":{"5":{"0":{"6":{"8":{"df":1,"docs":{"123":{"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":{},"f":{"6":{"6":{"9":{"9":{"d":{"df":0,"docs":{},"f":{"c":{"b":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"5":{"df":0,"docs":{},"f":{"b":{"1":{"9":{"9":{"3":{"7":{"4":{"5":{"5":{"df":1,"docs":{"123":{"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":{}}},"6":{"d":{"3":{"0":{"df":0,"docs":{},"e":{"8":{"3":{"9":{"1":{"b":{"8":{"df":1,"docs":{"122":{"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":{}},"7":{"a":{"df":0,"docs":{},"e":{"c":{"5":{"9":{"6":{"5":{"7":{"b":{"6":{"df":1,"docs":{"122":{"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":{}},"8":{"9":{"9":{"6":{"c":{"9":{"8":{"df":0,"docs":{},"f":{"7":{"0":{"3":{"df":1,"docs":{"123":{"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":{}},"[":{"8":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"f":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"16":{"tf":1.0},"249":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"d":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"174":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":6,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.7320508075688772},"229":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":43,"docs":{"117":{"tf":2.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"171":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.23606797749979},"2":{"tf":1.4142135623730951},"210":{"tf":2.23606797749979},"211":{"tf":2.23606797749979},"213":{"tf":2.23606797749979},"214":{"tf":1.7320508075688772},"218":{"tf":1.0},"219":{"tf":1.0},"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":2.23606797749979},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":2.0},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"258":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"274":{"tf":1.0}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"34":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":14,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.0},"213":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.0},"258":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"280":{"tf":1.0}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"211":{"tf":1.0},"264":{"tf":1.0}}}},"df":11,"docs":{"112":{"tf":1.4142135623730951},"133":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"280":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.7320508075688772},"216":{"tf":1.0}}},"y":{">":{":":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}},"s":{"df":9,"docs":{"141":{"tf":1.7320508075688772},"157":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"204":{"tf":1.0},"243":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}}},"b":{"2":{"0":{"b":{"0":{"8":{"df":0,"docs":{},"e":{"a":{"d":{"4":{"0":{"df":1,"docs":{"123":{"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":{}},"4":{"d":{"0":{"3":{"a":{"b":{"4":{"9":{"9":{"d":{"df":1,"docs":{"121":{"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":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"c":{"8":{"b":{"0":{"b":{"9":{"2":{"a":{"1":{"6":{"9":{"df":1,"docs":{"117":{"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":{}},"d":{"3":{"3":{"9":{"4":{"3":{"1":{"7":{"6":{"5":{"3":{"df":1,"docs":{"123":{"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":{}},"8":{"6":{"d":{"1":{"df":0,"docs":{},"f":{"d":{"2":{"1":{"0":{"2":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"df":36,"docs":{"128":{"tf":1.0},"129":{"tf":1.4142135623730951},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"26":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":2.0},"282":{"tf":2.449489742783178},"283":{"tf":1.0},"284":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{}}}},"f":{"7":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"6":{"6":{"0":{"df":0,"docs":{},"f":{"2":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"174":{"tf":1.0},"207":{"tf":1.4142135623730951}},"s":{"=":{"[":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":6,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":2.449489742783178},"120":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"219":{"tf":1.0},"259":{"tf":3.1622776601683795}},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"7":{"7":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"259":{"tf":1.0}}}}}},"df":1,"docs":{"259":{"tf":2.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":2.23606797749979}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":4,"docs":{"141":{"tf":1.0},"211":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"r":{"df":28,"docs":{"111":{"tf":1.0},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"149":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"26":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"83":{"tf":1.0}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":11,"docs":{"123":{"tf":1.0},"126":{"tf":1.0},"127":{"tf":1.0},"181":{"tf":1.0},"203":{"tf":1.0},"215":{"tf":1.4142135623730951},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"264":{"tf":1.0},"272":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}},"s":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}},"i":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"s":{"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"37":{"tf":1.0},"52":{"tf":1.7320508075688772},"69":{"tf":1.7320508075688772},"78":{"tf":1.7320508075688772},"83":{"tf":1.0}}}}},"r":{"df":5,"docs":{"128":{"tf":1.0},"235":{"tf":1.4142135623730951},"236":{"tf":1.0},"238":{"tf":1.0},"279":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"251":{"tf":1.0},"271":{"tf":1.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":2.0}}}},"u":{"d":{"df":1,"docs":{"109":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":2,"docs":{"141":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{"df":25,"docs":{"123":{"tf":1.0},"126":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"203":{"tf":1.4142135623730951},"212":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"246":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},",":{"df":0,"docs":{},"该":{"df":0,"docs":{},"项":{"df":0,"docs":{},"目":{"df":0,"docs":{},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"=":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"[":{"0":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":11,"docs":{"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":1,"docs":{"141":{"tf":1.0}},"n":{"d":{"df":7,"docs":{"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"263":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":25,"docs":{"142":{"tf":1.0},"163":{"tf":1.4142135623730951},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":2.23606797749979},"265":{"tf":2.23606797749979},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":1.0},"71":{"tf":1.0},"78":{"tf":1.0},"79":{"tf":1.0},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"203":{"tf":1.0},"280":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":8,"docs":{"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":5,"docs":{"159":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":1,"docs":{"265":{"tf":1.0}}},"t":{"df":3,"docs":{"123":{"tf":1.7320508075688772},"203":{"tf":1.4142135623730951},"254":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":20,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"116":{"tf":1.0},"12":{"tf":1.0},"126":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"207":{"tf":1.4142135623730951},"23":{"tf":1.0},"256":{"tf":1.4142135623730951},"26":{"tf":1.0},"271":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"272":{"tf":1.0}}},"x":{"df":2,"docs":{"274":{"tf":1.0},"284":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"122":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"150":{"tf":1.0},"218":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":5,"docs":{"159":{"tf":1.0},"192":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"200":{"tf":1.0},"265":{"tf":2.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"126":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"=":{"df":0,"docs":{},"i":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"126":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{",":{"df":0,"docs":{},"y":{"a":{"df":0,"docs":{},"m":{"a":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"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":1,"docs":{"141":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}},"p":{"a":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":15,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"204":{"tf":1.4142135623730951},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"u":{"df":1,"docs":{"141":{"tf":1.0}},"r":{"df":5,"docs":{"125":{"tf":1.0},"126":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"194":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"127":{"tf":1.0},"265":{"tf":1.4142135623730951}}}}}},"n":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"108":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"108":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"264":{"tf":2.449489742783178},"66":{"tf":1.0},"69":{"tf":1.0},"75":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"254":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"116":{"tf":1.4142135623730951},"274":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":14,"docs":{"138":{"tf":2.23606797749979},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"151":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"206":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":3,"docs":{"163":{"tf":1.0},"229":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"229":{"tf":1.0}}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":8,"docs":{"137":{"tf":1.0},"141":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"239":{"tf":1.0},"258":{"tf":1.0},"268":{"tf":1.0},"285":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"224":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"131":{"tf":1.0},"133":{"tf":1.0},"265":{"tf":1.7320508075688772},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":7,"docs":{"195":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"207":{"tf":1.0},"249":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"155":{"tf":1.0}}},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":7,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"217":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"138":{"tf":1.0},"251":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"134":{"tf":1.0},"135":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"=":{"5":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":19,"docs":{"171":{"tf":1.4142135623730951},"173":{"tf":1.0},"174":{"tf":1.0},"176":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.7320508075688772},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"265":{"tf":1.7320508075688772},"273":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.6457513110645907},"53":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"126":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"[":{"1":{"]":{".":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":29,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"269":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"37":{"tf":1.4142135623730951},"53":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"122":{"tf":1.0}}}},"u":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{".":{"1":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":22,"docs":{"120":{"tf":2.0},"150":{"tf":1.0},"163":{"tf":2.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.7320508075688772},"194":{"tf":1.0},"196":{"tf":1.4142135623730951},"225":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"51":{"tf":1.0},"54":{"tf":1.0},"68":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"83":{"tf":2.0}},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":32,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"151":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"207":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"121":{"tf":1.7320508075688772},"283":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":2.23606797749979}}}}},"t":{".":{"c":{"_":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}}}}}}}},"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{")":{")":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}},"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":{},"r":{"df":0,"docs":{},"l":{"df":8,"docs":{"127":{"tf":1.0},"264":{"tf":2.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.7320508075688772},"279":{"tf":1.0},"282":{"tf":1.7320508075688772},"79":{"tf":1.0}}}},"x":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"242":{"tf":1.0}}}}}}},"df":44,"docs":{"111":{"tf":1.4142135623730951},"131":{"tf":1.7320508075688772},"132":{"tf":1.4142135623730951},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.4142135623730951},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"193":{"tf":1.4142135623730951},"195":{"tf":1.7320508075688772},"196":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"282":{"tf":1.0},"283":{"tf":1.7320508075688772},"284":{"tf":1.0},"29":{"tf":1.0},"37":{"tf":2.0},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":2.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951}},":":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":13,"docs":{"123":{"tf":1.0},"142":{"tf":1.0},"147":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"155":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"195":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"237":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"183":{"tf":1.0}}}}}},"df":9,"docs":{"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}}}}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{".":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"3":{"1":{"df":2,"docs":{"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}},"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"0":{"0":{"3":{"df":0,"docs":{},"e":{"c":{"0":{"1":{"c":{"6":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"1":{"2":{"6":{"1":{"8":{"0":{"5":{"6":{"df":1,"docs":{"123":{"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":{}},"2":{"4":{"8":{"5":{"c":{"4":{"2":{"4":{"2":{"a":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"a":{"0":{"9":{"c":{"1":{"7":{"a":{"0":{"6":{"df":1,"docs":{"117":{"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":{}},"3":{"a":{"a":{"4":{"5":{"c":{"df":0,"docs":{},"e":{"6":{"b":{"9":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"4":{"4":{"5":{"5":{"1":{"6":{"9":{"6":{"6":{"d":{"c":{"df":1,"docs":{"122":{"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":{}},"5":{"8":{"df":0,"docs":{},"e":{"4":{"6":{"8":{"b":{"1":{"1":{"1":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"a":{"3":{"b":{"1":{"df":0,"docs":{},"f":{"6":{"9":{"1":{"8":{"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"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":{}},"6":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"0":{"8":{"a":{"8":{"7":{"2":{"b":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"9":{"6":{"2":{"df":0,"docs":{},"f":{"3":{"df":0,"docs":{},"e":{"6":{"2":{"7":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"b":{"a":{"d":{"4":{"df":0,"docs":{},"e":{"7":{"4":{"df":0,"docs":{},"e":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"4":{"c":{"b":{"9":{"b":{"6":{"7":{"0":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"8":{"3":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"4":{"b":{"df":0,"docs":{},"f":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"5":{"2":{"5":{"c":{"a":{"6":{"2":{"c":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":{}},"9":{"8":{"4":{"7":{"d":{"3":{"1":{"0":{"a":{"b":{"4":{"df":1,"docs":{"123":{"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":{},"n":{"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":1,"docs":{"117":{"tf":1.0}},"n":{"df":1,"docs":{"260":{"tf":1.0}}},"t":{"a":{"(":{"c":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"111":{"tf":2.0}}},"df":0,"docs":{}}},"s":{"df":4,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0}},"z":{"df":1,"docs":{"83":{"tf":1.0}}}},"t":{"df":5,"docs":{"160":{"tf":1.4142135623730951},"163":{"tf":2.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.23606797749979}}}},"df":29,"docs":{"111":{"tf":1.7320508075688772},"117":{"tf":1.0},"122":{"tf":1.0},"128":{"tf":1.0},"143":{"tf":1.0},"160":{"tf":2.23606797749979},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":3.0},"164":{"tf":2.0},"165":{"tf":1.4142135623730951},"166":{"tf":2.23606797749979},"167":{"tf":2.449489742783178},"168":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"232":{"tf":3.3166247903554},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":3.3166247903554},"264":{"tf":1.0},"275":{"tf":2.449489742783178},"277":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"246":{"tf":1.0}}}}}}},"y":{"df":2,"docs":{"109":{"tf":1.0},"272":{"tf":1.0}}}},"b":{"2":{"0":{"df":0,"docs":{},"f":{"d":{"2":{"b":{"0":{"1":{"0":{"8":{"df":1,"docs":{"121":{"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":{}},"a":{"df":0,"docs":{},"f":{"d":{"7":{"d":{"d":{"d":{"6":{"2":{"3":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"b":{"0":{"df":0,"docs":{},"e":{"2":{"3":{"5":{"6":{"1":{"df":1,"docs":{"117":{"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":{}},"d":{"6":{"df":0,"docs":{},"e":{"1":{"0":{"df":0,"docs":{},"f":{"b":{"d":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"8":{"7":{"2":{"b":{"c":{"3":{"0":{"9":{"8":{"df":1,"docs":{"118":{"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":2,"docs":{"264":{"tf":1.0},"280":{"tf":2.449489742783178}}},"df":12,"docs":{"111":{"tf":1.4142135623730951},"134":{"tf":1.0},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"265":{"tf":3.4641016151377544},"269":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":2.0}},"e":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"f":{"4":{"8":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"8":{"df":0,"docs":{},"f":{"3":{"a":{"8":{"3":{"b":{"0":{"a":{"0":{"df":1,"docs":{"123":{"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":{}}},"9":{"c":{"b":{"b":{"a":{"a":{"d":{"b":{"a":{"5":{"df":1,"docs":{"120":{"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":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"207":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":10,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"156":{"tf":1.0},"207":{"tf":1.4142135623730951},"215":{"tf":1.0},"223":{"tf":1.0},"283":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"r":{"df":11,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"0":{"9":{"2":{"c":{"d":{"7":{"3":{"c":{"2":{"df":1,"docs":{"123":{"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":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":22,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.0},"172":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.0},"177":{"tf":1.4142135623730951},"186":{"tf":1.0},"192":{"tf":1.0},"204":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"238":{"tf":1.0},"249":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":3,"docs":{"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":38,"docs":{"111":{"tf":1.4142135623730951},"133":{"tf":1.4142135623730951},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"17":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"232":{"tf":2.0},"242":{"tf":2.0},"254":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":2.0},"277":{"tf":1.0},"283":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"274":{"tf":1.0},"34":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":9,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"189":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"82":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}}},"df":6,"docs":{"272":{"tf":2.0},"274":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"n":{"df":0,"docs":{},"i":{"df":2,"docs":{"141":{"tf":1.4142135623730951},"253":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"169":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"c":{"df":5,"docs":{"144":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"272":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"129":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"274":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"29":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"178":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}},"t":{"df":1,"docs":{"79":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":3,"docs":{"128":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"221":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"222":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":4,"docs":{"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"250":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}}},"df":4,"docs":{"155":{"tf":1.7320508075688772},"217":{"tf":1.7320508075688772},"218":{"tf":1.0},"263":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":14,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":1.0},"267":{"tf":1.4142135623730951},"27":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"c":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"179":{"tf":1.0},"218":{"tf":2.0},"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"[":{"c":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"3":{"2":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"f":{"d":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"181":{"tf":1.0},"186":{"tf":1.0},"195":{"tf":1.0},"207":{"tf":1.0},"251":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}}}}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"g":{"df":1,"docs":{"265":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"150":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"147":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"128":{"tf":1.0},"137":{"tf":1.0},"256":{"tf":1.0},"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":7,"docs":{"147":{"tf":1.0},"167":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"217":{"tf":1.0},"243":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"142":{"tf":1.0},"259":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.0}}}}}}},"k":{"df":4,"docs":{"264":{"tf":2.8284271247461903},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"278":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":4,"docs":{"170":{"tf":1.0},"274":{"tf":1.4142135623730951},"278":{"tf":1.0},"281":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"249":{"tf":1.4142135623730951},"259":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"277":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"241":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"235":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"277":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"=":{"%":{"d":{"df":1,"docs":{"174":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":3,"docs":{"210":{"tf":1.0},"216":{"tf":1.0},"283":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"136":{"tf":1.0},"149":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"150":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":1.0},"27":{"tf":1.0}}}}}}},"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":2.0},"27":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"259":{"tf":1.7320508075688772},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":2.449489742783178}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"252":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"211":{"tf":1.0}}}}}}}},"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"169":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{},"’":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":5,"docs":{"131":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"155":{"tf":1.0},"218":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"240":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{")":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"a":{"2":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":3,"docs":{"122":{"tf":4.795831523312719},"124":{"tf":1.0},"218":{"tf":2.449489742783178}}}}}},"o":{"df":0,"docs":{},"p":{"df":4,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.7320508075688772},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":4,"docs":{"150":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"253":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":3,"docs":{"46":{"tf":2.0},"47":{"tf":1.0},"63":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"146":{"tf":1.0},"264":{"tf":1.0}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"269":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":3,"docs":{"188":{"tf":1.0},"207":{"tf":1.0},"265":{"tf":1.4142135623730951}}}},"2":{"df":0,"docs":{},"e":{"9":{"b":{"6":{"5":{"4":{"1":{"d":{"d":{"4":{"df":1,"docs":{"117":{"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":{}}},"5":{"4":{"b":{"c":{"d":{"df":0,"docs":{},"e":{"3":{"d":{"6":{"9":{"d":{"df":1,"docs":{"116":{"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":{}},"6":{"df":0,"docs":{},"f":{"2":{"d":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"0":{"6":{"7":{"df":1,"docs":{"123":{"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":{}}},"9":{"d":{"d":{"b":{"b":{"7":{"7":{"0":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"a":{"3":{"1":{"7":{"b":{"2":{"6":{"7":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"120":{"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":{}},"a":{"6":{"b":{"c":{"b":{"7":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"h":{"df":21,"docs":{"126":{"tf":1.4142135623730951},"133":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"218":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"284":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"63":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"277":{"tf":1.0}}}}}}}},"b":{"4":{"1":{"1":{"3":{"7":{"7":{"a":{"df":0,"docs":{},"e":{"d":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"a":{"3":{"6":{"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"6":{"1":{"4":{"df":0,"docs":{},"f":{"6":{"8":{"7":{"3":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{},"p":{"df":0,"docs":{},"f":{"df":75,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.7320508075688772},"100":{"tf":1.0},"101":{"tf":1.0},"104":{"tf":1.0},"107":{"tf":1.0},"108":{"tf":1.0},"109":{"tf":1.0},"11":{"tf":3.3166247903554},"110":{"tf":1.4142135623730951},"111":{"tf":1.7320508075688772},"112":{"tf":1.0},"115":{"tf":1.0},"117":{"tf":1.0},"12":{"tf":1.0},"126":{"tf":1.0},"13":{"tf":2.23606797749979},"14":{"tf":3.3166247903554},"15":{"tf":3.872983346207417},"16":{"tf":1.7320508075688772},"17":{"tf":2.0},"18":{"tf":1.4142135623730951},"2":{"tf":3.4641016151377544},"20":{"tf":4.69041575982343},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"21":{"tf":2.23606797749979},"23":{"tf":2.0},"24":{"tf":1.7320508075688772},"25":{"tf":2.23606797749979},"252":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"26":{"tf":2.23606797749979},"27":{"tf":1.4142135623730951},"28":{"tf":2.23606797749979},"29":{"tf":2.8284271247461903},"3":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"31":{"tf":1.7320508075688772},"32":{"tf":2.0},"34":{"tf":2.449489742783178},"35":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":2.449489742783178},"38":{"tf":1.0},"39":{"tf":2.0},"4":{"tf":2.8284271247461903},"40":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"43":{"tf":2.23606797749979},"46":{"tf":1.4142135623730951},"47":{"tf":1.7320508075688772},"49":{"tf":1.4142135623730951},"5":{"tf":2.449489742783178},"53":{"tf":2.0},"55":{"tf":2.23606797749979},"59":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"65":{"tf":1.0},"69":{"tf":1.4142135623730951},"7":{"tf":2.0},"73":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"80":{"tf":1.4142135623730951},"82":{"tf":1.4142135623730951},"87":{"tf":1.4142135623730951},"89":{"tf":1.0},"9":{"tf":2.0},"92":{"tf":1.4142135623730951},"95":{"tf":1.0},"98":{"tf":1.4142135623730951}},"(":{"2":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"c":{"c":{"df":18,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"16":{"tf":1.7320508075688772},"17":{"tf":1.7320508075688772},"20":{"tf":1.0},"23":{"tf":1.7320508075688772},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.7320508075688772},"63":{"tf":1.0},"64":{"tf":1.0}}},"d":{"6":{"3":{"a":{"0":{"2":{"1":{"7":{"d":{"5":{"df":1,"docs":{"122":{"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":{},"l":{"df":0,"docs":{},"i":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":2.449489742783178},"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":2.0},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.0}}}}},"d":{"b":{"df":0,"docs":{},"f":{"8":{"c":{"0":{"1":{"d":{"df":0,"docs":{},"e":{"5":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"117":{"tf":1.0},"46":{"tf":2.6457513110645907},"63":{"tf":3.7416573867739413},"83":{"tf":3.7416573867739413}},"f":{"c":{"2":{"2":{"1":{"4":{"b":{"6":{"0":{"4":{"7":{"df":1,"docs":{"122":{"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":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":5,"docs":{"231":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":2.0},"269":{"tf":1.0},"280":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"155":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":1,"docs":{"265":{"tf":2.23606797749979}}}},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":11,"docs":{"142":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.4142135623730951},"199":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"126":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"63":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"195":{"tf":1.0},"275":{"tf":1.0}}},"y":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"218":{"tf":1.0}}}}},"n":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"126":{"tf":4.0},"215":{"tf":1.0},"283":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"122":{"tf":1.0}}},"c":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}}},"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"d":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":11,"docs":{"195":{"tf":1.0},"218":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":2.23606797749979},"267":{"tf":1.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}},"i":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"169":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"261":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"157":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"63":{"tf":1.0}}}}}},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":2,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"218":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"136":{"tf":1.0},"207":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":32,"docs":{"126":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"195":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"200":{"tf":2.23606797749979},"210":{"tf":1.0},"213":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}},"y":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"6":{"4":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"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":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"118":{"tf":1.0},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"268":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"128":{"tf":1.0},"255":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":1.0}}}}},"q":{"df":1,"docs":{"260":{"tf":1.0}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"136":{"tf":1.0},"231":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"r":{"df":2,"docs":{"264":{"tf":1.0},"83":{"tf":2.449489742783178}},"o":{"df":0,"docs":{},"r":{"df":14,"docs":{"128":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.4142135623730951},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"252":{"tf":1.0},"254":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}}}}},"s":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"126":{"tf":1.0},"264":{"tf":2.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"c":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":30,"docs":{"11":{"tf":2.6457513110645907},"12":{"tf":1.0},"15":{"tf":3.1622776601683795},"16":{"tf":1.7320508075688772},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"47":{"tf":1.4142135623730951},"48":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0},"7":{"tf":1.0},"79":{"tf":1.7320508075688772},"80":{"tf":1.0}}},"df":0,"docs":{}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"265":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"a":{"df":0,"docs":{},"f":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"275":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}},"k":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"t":{"df":1,"docs":{"275":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"df":42,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":2.6457513110645907},"128":{"tf":1.4142135623730951},"130":{"tf":1.0},"133":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"140":{"tf":1.0},"141":{"tf":1.0},"160":{"tf":1.7320508075688772},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.4142135623730951},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"20":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":2.23606797749979},"242":{"tf":2.449489742783178},"275":{"tf":3.0},"284":{"tf":1.0},"37":{"tf":2.449489742783178},"38":{"tf":1.0},"39":{"tf":1.7320508075688772},"41":{"tf":2.6457513110645907},"42":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.7320508075688772}},"p":{"df":1,"docs":{"37":{"tf":2.8284271247461903}}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"&":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"163":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"127":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"264":{"tf":1.0},"270":{"tf":1.0}}}}}}}},"x":{"1":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.0}}},"2":{"df":1,"docs":{"182":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"134":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}},"p":{"df":0,"docs":{},"l":{"df":118,"docs":{"126":{"tf":1.0},"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"133":{"tf":1.7320508075688772},"134":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":2.0},"142":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.7320508075688772},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"157":{"tf":1.0},"159":{"tf":1.7320508075688772},"160":{"tf":1.7320508075688772},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"164":{"tf":1.4142135623730951},"165":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.7320508075688772},"170":{"tf":2.0},"171":{"tf":2.0},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.4142135623730951},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.7320508075688772},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.7320508075688772},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":2.0},"215":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"219":{"tf":1.7320508075688772},"220":{"tf":1.7320508075688772},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.7320508075688772},"225":{"tf":1.7320508075688772},"227":{"tf":1.7320508075688772},"228":{"tf":1.7320508075688772},"229":{"tf":1.7320508075688772},"231":{"tf":1.0},"232":{"tf":2.0},"233":{"tf":2.0},"235":{"tf":1.7320508075688772},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.7320508075688772},"242":{"tf":2.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.7320508075688772},"248":{"tf":1.7320508075688772},"249":{"tf":1.7320508075688772},"250":{"tf":1.7320508075688772},"251":{"tf":1.7320508075688772},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":3.3166247903554},"265":{"tf":2.8284271247461903},"269":{"tf":1.0},"272":{"tf":1.0},"279":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"108":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"53":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"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":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":1,"docs":{"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"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":{}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":16,"docs":{"182":{"tf":1.0},"183":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"253":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"264":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":5,"docs":{"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"261":{"tf":1.0},"264":{"tf":2.0},"41":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"t":{"df":12,"docs":{"118":{"tf":1.0},"126":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"157":{"tf":1.0},"195":{"tf":1.4142135623730951},"213":{"tf":1.0},"218":{"tf":1.0},"260":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"282":{"tf":1.0},"63":{"tf":1.0}}}},"v":{"df":2,"docs":{"138":{"tf":1.0},"41":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"155":{"tf":1.0},"169":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.7320508075688772},"204":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0}}}},"t":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":3,"docs":{"46":{"tf":1.7320508075688772},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.4142135623730951}}}}},"df":16,"docs":{"219":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"250":{"tf":1.4142135623730951},"283":{"tf":1.0},"30":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.0},"63":{"tf":1.4142135623730951},"79":{"tf":1.0},"83":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"46":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":2,"docs":{"43":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"219":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"229":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.0},"204":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":6,"docs":{"16":{"tf":1.0},"257":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}}},"t":{"4":{"_":{"d":{"a":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":2.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":12,"docs":{"126":{"tf":1.4142135623730951},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":2,"docs":{"118":{"tf":1.0},"264":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":1,"docs":{"249":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"f":{"1":{"a":{"2":{"df":0,"docs":{},"e":{"4":{"4":{"a":{"3":{"a":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"9":{"5":{"0":{"9":{"c":{"2":{"df":0,"docs":{},"f":{"b":{"0":{"df":1,"docs":{"118":{"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":{}},"3":{"0":{"7":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"b":{"4":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{"8":{"9":{"0":{"3":{"c":{"0":{"b":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"1":{"b":{"df":0,"docs":{},"f":{"6":{"d":{"8":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"116":{"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":{}},"4":{"3":{"6":{"4":{"d":{"c":{"df":0,"docs":{},"f":{"c":{"8":{"6":{"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"0":{"0":{"b":{"6":{"9":{"0":{"5":{"0":{"1":{"5":{"df":1,"docs":{"122":{"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":{}},"7":{"c":{"9":{"1":{"7":{"b":{"a":{"1":{"1":{"a":{"6":{"df":1,"docs":{"123":{"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":{}},"9":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"1":{"8":{"3":{"6":{"0":{"4":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"a":{"2":{"8":{"d":{"c":{"b":{"8":{"2":{"a":{"3":{"8":{"df":1,"docs":{"123":{"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":{}},"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":8,"docs":{"136":{"tf":1.7320508075688772},"141":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"155":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"l":{"df":0,"docs":{},"s":{"df":6,"docs":{"225":{"tf":1.0},"249":{"tf":1.0},"29":{"tf":1.0},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"63":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":4,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":2.449489742783178}}}}}},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}}}}}}},"b":{"df":0,"docs":{},"f":{"c":{"5":{"0":{"4":{"a":{"2":{"4":{"df":0,"docs":{},"f":{"5":{"df":2,"docs":{"117":{"tf":1.0},"120":{"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":{}}},"c":{"6":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"2":{"1":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"7":{"0":{"2":{"2":{"7":{"3":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"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":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"df":3,"docs":{"178":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}},"df":1,"docs":{"127":{"tf":1.0}},"e":{"8":{"0":{":":{":":{"2":{"0":{"0":{"0":{":":{"b":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"8":{"2":{":":{"3":{"a":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"9":{"4":{"c":{"c":{"2":{"9":{"0":{"df":0,"docs":{},"f":{"5":{"3":{"df":1,"docs":{"123":{"tf":2.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":{}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":8,"docs":{"114":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.7320508075688772},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"125":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.0}}}}}},"c":{"5":{"6":{"df":0,"docs":{},"f":{"5":{"8":{"9":{"0":{"d":{"9":{"df":1,"docs":{"117":{"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":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"127":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"24":{"tf":1.0},"25":{"tf":1.4142135623730951},"26":{"tf":2.449489742783178},"27":{"tf":1.0},"29":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":6,"docs":{"174":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"275":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":2.449489742783178},"27":{"tf":1.0}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"a":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"f":{"0":{"2":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"f":{"7":{"b":{"6":{"4":{"3":{"5":{"5":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"123":{"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":{"34":{"tf":1.4142135623730951}},"f":{"9":{"b":{"df":0,"docs":{},"f":{"6":{"1":{"b":{"b":{"6":{"2":{"b":{"c":{"0":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"8":{"c":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"0":{"9":{"d":{"6":{"9":{"0":{"0":{"df":1,"docs":{"85":{"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":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"1":{"0":{"3":{"6":{"5":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"d":{"df":0,"docs":{},"f":{"5":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"df":0,"docs":{},"e":{"b":{"6":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"a":{"5":{"a":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"0":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"0":{"b":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"8":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"7":{"8":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"d":{"0":{"a":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"2":{"7":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"df":0,"docs":{},"e":{"c":{"5":{"df":0,"docs":{},"f":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"c":{"c":{"0":{"7":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"2":{"a":{"d":{"c":{"0":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"d":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}}}}}}}},"df":5,"docs":{"137":{"tf":1.0},"150":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"e":{"=":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"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":21,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"133":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"178":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"253":{"tf":2.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":3.4641016151377544},"265":{"tf":3.3166247903554},"267":{"tf":1.0},"279":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":2.6457513110645907},"26":{"tf":2.8284271247461903},"264":{"tf":1.0},"34":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":3,"docs":{"52":{"tf":2.0},"53":{"tf":1.7320508075688772},"58":{"tf":2.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"126":{"tf":2.0},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"258":{"tf":1.4142135623730951},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"61":{"tf":1.0}},")":{"df":0,"docs":{},"程":{"df":0,"docs":{},"序":{"df":0,"docs":{},"。":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"n":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}},"d":{"df":5,"docs":{"142":{"tf":1.0},"256":{"tf":1.0},"259":{"tf":1.0},"265":{"tf":1.7320508075688772},"285":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.0}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":15,"docs":{"131":{"tf":1.4142135623730951},"134":{"tf":1.0},"138":{"tf":1.0},"149":{"tf":1.0},"162":{"tf":1.0},"212":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0}}}}},"x":{"df":7,"docs":{"127":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"281":{"tf":1.0}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":26,"docs":{"121":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.4142135623730951},"200":{"tf":1.4142135623730951},"201":{"tf":2.0},"202":{"tf":2.0},"207":{"tf":1.0},"218":{"tf":2.6457513110645907},"219":{"tf":1.0},"225":{"tf":1.0},"243":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}},"s":{"=":{"0":{"df":1,"docs":{"243":{"tf":1.0}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"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":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}},"o":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"w":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":3,"docs":{"159":{"tf":1.0},"224":{"tf":1.0},"280":{"tf":1.0}}}},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"217":{"tf":2.0}}}},"df":0,"docs":{}}}},"=":{"b":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"\"":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"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":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"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":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"213":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"211":{"tf":1.0},"214":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":4,"docs":{"210":{"tf":1.0},"215":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"250":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"221":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"222":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"215":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"218":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.7320508075688772}}}}}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":4,"docs":{"123":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":12,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":1.0},"155":{"tf":1.0},"163":{"tf":1.0},"218":{"tf":1.0},"236":{"tf":1.0},"265":{"tf":2.0},"272":{"tf":1.0},"277":{"tf":1.0},"52":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}},"k":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"269":{"tf":1.0}}},"t":{"df":8,"docs":{"117":{"tf":1.0},"133":{"tf":1.4142135623730951},"224":{"tf":1.0},"257":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}},"df":1,"docs":{"217":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"137":{"tf":1.0},"141":{"tf":1.0},"193":{"tf":1.0},"278":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":1,"docs":{"186":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"195":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":3,"docs":{"126":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"263":{"tf":1.0},"275":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"186":{"tf":1.0}}}},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"121":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}},"df":0,"docs":{},"t":{"df":1,"docs":{"242":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":7,"docs":{"126":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"213":{"tf":1.4142135623730951},"217":{"tf":1.0},"243":{"tf":1.0},"34":{"tf":1.0}}}},"n":{"c":{"_":{"a":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"171":{"tf":1.0}}}}},"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"265":{"tf":2.23606797749979}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"135":{"tf":1.0}}}},"df":0,"docs":{}}},"df":57,"docs":{"117":{"tf":1.0},"124":{"tf":5.291502622129181},"126":{"tf":2.6457513110645907},"128":{"tf":1.0},"131":{"tf":2.6457513110645907},"132":{"tf":2.449489742783178},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":2.449489742783178},"140":{"tf":2.449489742783178},"141":{"tf":1.0},"157":{"tf":2.23606797749979},"171":{"tf":1.0},"188":{"tf":1.0},"196":{"tf":1.0},"210":{"tf":3.1622776601683795},"211":{"tf":3.3166247903554},"212":{"tf":1.0},"213":{"tf":3.0},"214":{"tf":2.8284271247461903},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.7320508075688772},"254":{"tf":1.4142135623730951},"265":{"tf":2.8284271247461903},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.8284271247461903},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.23606797749979},"283":{"tf":1.0},"284":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0},"285":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":15,"docs":{"122":{"tf":1.0},"126":{"tf":2.0},"218":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.4142135623730951},"265":{"tf":1.7320508075688772},"275":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"251":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"231":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"e":{"df":1,"docs":{"11":{"tf":1.0}}},"h":{"df":0,"docs":{},"u":{"b":{"df":3,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"238":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"n":{"df":6,"docs":{"132":{"tf":1.0},"135":{"tf":1.0},"213":{"tf":1.7320508075688772},"215":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"159":{"tf":1.0},"219":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.0}},"e":{"df":1,"docs":{"195":{"tf":1.0}}},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"d":{"df":2,"docs":{"142":{"tf":1.0},"285":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"t":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"280":{"tf":2.449489742783178}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":4,"docs":{"52":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"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":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"111":{"tf":1.0},"123":{"tf":6.0},"128":{"tf":1.0},"203":{"tf":2.8284271247461903},"254":{"tf":3.0},"29":{"tf":1.0},"34":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"n":{"a":{"df":2,"docs":{"72":{"tf":1.0},"80":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}},"df":0,"docs":{},"p":{"df":8,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"265":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":4,"docs":{"124":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"275":{"tf":1.0}}}}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"127":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"z":{"df":0,"docs":{},"p":{"4":{"1":{"3":{"df":0,"docs":{},"o":{"_":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"271":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"280":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"218":{"tf":1.7320508075688772}},"i":{"df":1,"docs":{"271":{"tf":1.0}}},"l":{"df":4,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}},"e":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"e":{"c":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"58":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}}}}},"df":1,"docs":{"51":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":3,"docs":{"126":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"144":{"tf":1.0},"254":{"tf":1.0}}}},"i":{"df":1,"docs":{"285":{"tf":1.0}}}}},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":3,"docs":{"55":{"tf":1.0},"56":{"tf":1.7320508075688772},"57":{"tf":1.0}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"117":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":19,"docs":{"120":{"tf":2.23606797749979},"121":{"tf":1.0},"168":{"tf":1.0},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.4142135623730951},"186":{"tf":1.7320508075688772},"189":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0},"259":{"tf":2.449489742783178},"260":{"tf":1.7320508075688772},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.4142135623730951}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"116":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"16":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}},"e":{"a":{"d":{"df":2,"docs":{"199":{"tf":1.0},"245":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":8,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"256":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"207":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":6,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":2.0},"271":{"tf":2.449489742783178},"275":{"tf":2.23606797749979},"284":{"tf":1.0}}}},"p":{"df":5,"docs":{"127":{"tf":1.0},"16":{"tf":1.0},"264":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"117":{"tf":1.4142135623730951},"123":{"tf":2.0},"124":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"150":{"tf":1.0},"159":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.7320508075688772},"20":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.4142135623730951},"246":{"tf":1.4142135623730951},"251":{"tf":1.0},"254":{"tf":2.0},"271":{"tf":1.0},"4":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"n":{"c":{"df":2,"docs":{"265":{"tf":1.4142135623730951},"271":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"269":{"tf":1.0}}},"df":4,"docs":{"218":{"tf":1.0},"264":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}}},"t":{"df":0,"docs":{},"z":{"df":1,"docs":{"264":{"tf":1.0}}}}},"x":{"a":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"259":{"tf":2.0},"260":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"155":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"168":{"tf":1.0},"169":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"270":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":2.23606797749979}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":12,"docs":{"135":{"tf":1.0},"151":{"tf":1.4142135623730951},"168":{"tf":1.0},"172":{"tf":1.4142135623730951},"192":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":2.449489742783178},"278":{"tf":1.4142135623730951},"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"df":1,"docs":{"52":{"tf":2.0}}}}},"t":{"df":7,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"264":{"tf":2.23606797749979},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"52":{"tf":2.449489742783178}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"117":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"141":{"tf":2.8284271247461903},"219":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"m":{"d":{"=":{"c":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"c":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"259":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{":":{"/":{"/":{"c":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"/":{"2":{"0":{"2":{"0":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"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":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{":":{"/":{"/":{"a":{"df":0,"docs":{},"k":{"a":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"(":{"3":{"0":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":25,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.4142135623730951},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.4142135623730951},"37":{"tf":1.0},"38":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.4142135623730951},"5":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"54":{"tf":1.0},"72":{"tf":1.0},"86":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"3":{"9":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"o":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"109":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"5":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"/":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"4":{"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":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{".":{"5":{"1":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"6":{"4":{"0":{"6":{"3":{"1":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"81":{"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":{}}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}}}},"w":{"df":0,"docs":{},"w":{"df":0,"docs":{},"w":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"b":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"/":{"d":{"b":{"/":{"3":{"9":{"1":{"5":{"7":{"0":{"df":0,"docs":{},"(":{"1":{"df":0,"docs":{},"h":{"df":1,"docs":{"4":{"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":{}}}}},"v":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"i":{".":{"df":3,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"265":{"tf":1.0}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"o":{"df":8,"docs":{"170":{"tf":1.0},"19":{"tf":1.0},"264":{"tf":3.0},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"98":{"tf":1.0},"99":{"tf":1.0}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"4":{"0":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"122":{"tf":1.0}}},"d":{"df":25,"docs":{"117":{"tf":1.0},"147":{"tf":1.7320508075688772},"148":{"tf":1.4142135623730951},"169":{"tf":1.0},"17":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.7320508075688772},"193":{"tf":1.0},"208":{"tf":1.0},"259":{"tf":2.23606797749979},"26":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.4142135623730951},"27":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"280":{"tf":1.0},"29":{"tf":2.6457513110645907},"30":{"tf":1.7320508075688772},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":8,"docs":{"150":{"tf":1.0},"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"264":{"tf":2.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"179":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{}}},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"186":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0}}}}}}},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":11,"docs":{"246":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.7320508075688772},"284":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"270":{"tf":1.0}}}}}}},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":34,"docs":{"111":{"tf":2.0},"133":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"154":{"tf":1.0},"168":{"tf":1.0},"17":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.7320508075688772},"264":{"tf":2.23606797749979},"272":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"37":{"tf":1.7320508075688772},"41":{"tf":2.0},"46":{"tf":2.23606797749979},"52":{"tf":2.8284271247461903},"58":{"tf":2.6457513110645907},"63":{"tf":2.23606797749979}},"e":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"126":{"tf":1.0},"196":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"127":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"242":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"135":{"tf":1.0},"192":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}}}}},"x":{"df":12,"docs":{"135":{"tf":1.0},"136":{"tf":1.0},"151":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"273":{"tf":1.0},"277":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"(":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"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":{"195":{"tf":1.0}}}}}},"o":{"df":3,"docs":{"126":{"tf":1.0},"58":{"tf":3.7416573867739413},"79":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"m":{"df":6,"docs":{"126":{"tf":1.4142135623730951},"150":{"tf":1.0},"169":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"111":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.4142135623730951}},"i":{"df":5,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"188":{"tf":1.4142135623730951},"206":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"269":{"tf":1.0},"271":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":2,"docs":{"182":{"tf":1.0},"183":{"tf":1.0}}}}},"o":{"d":{"df":3,"docs":{"120":{"tf":1.0},"155":{"tf":1.0},"265":{"tf":2.23606797749979}}},"df":1,"docs":{"155":{"tf":1.0}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"225":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"188":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"211":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.0}},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"261":{"tf":1.0},"269":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":8,"docs":{"141":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"192":{"tf":1.0},"213":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.4142135623730951},"249":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":27,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"138":{"tf":1.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"269":{"tf":1.0},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}}}}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":66,"docs":{"111":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.7320508075688772},"140":{"tf":2.23606797749979},"141":{"tf":1.4142135623730951},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"151":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"17":{"tf":1.7320508075688772},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"18":{"tf":1.0},"182":{"tf":2.0},"183":{"tf":1.4142135623730951},"193":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":2.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"23":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"26":{"tf":2.0},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":3.3166247903554},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"52":{"tf":2.8284271247461903},"58":{"tf":3.1622776601683795},"63":{"tf":1.4142135623730951},"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979},"82":{"tf":1.0},"83":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"134":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"241":{"tf":1.0}},"r":{"df":1,"docs":{"259":{"tf":1.0}}}},"l":{"df":1,"docs":{"122":{"tf":2.23606797749979}}},"n":{"d":{"df":4,"docs":{"127":{"tf":1.0},"131":{"tf":1.0},"138":{"tf":1.0},"241":{"tf":1.0}}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"218":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}},"f":{"a":{"c":{"df":13,"docs":{"126":{"tf":1.0},"142":{"tf":1.0},"159":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"217":{"tf":1.0},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"111":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.7320508075688772}}}}}},"v":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"52":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":3,"docs":{"142":{"tf":1.0},"204":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"155":{"tf":1.0},"52":{"tf":1.7320508075688772}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"128":{"tf":1.0},"157":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"253":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"195":{"tf":1.0},"284":{"tf":1.0}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"157":{"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":2,"docs":{"100":{"tf":1.0},"2":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"1":{"\"":{")":{"[":{"0":{"df":1,"docs":{"196":{"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":6,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"71":{"tf":1.0},"79":{"tf":1.0}},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"4":{"df":1,"docs":{"111":{"tf":1.0}}},"6":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":1,"docs":{"207":{"tf":1.0}},"q":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.7320508075688772}}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":5,"docs":{"150":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0}}}}},"t":{"'":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"270":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"238":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"237":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"239":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":6,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"142":{"tf":2.23606797749979},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"j":{"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"126":{"tf":1.0}}},"df":2,"docs":{"116":{"tf":1.4142135623730951},"126":{"tf":1.7320508075688772}}}},"o":{"b":{"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.4142135623730951}}}}}},"k":{".":{"c":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"(":{"'":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":5,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}},".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"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":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":66,"docs":{"114":{"tf":1.0},"115":{"tf":1.0},"116":{"tf":1.4142135623730951},"117":{"tf":2.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"123":{"tf":2.0},"124":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":3.1622776601683795},"127":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":2.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.7320508075688772},"144":{"tf":1.7320508075688772},"145":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"2":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.7320508075688772},"210":{"tf":2.449489742783178},"211":{"tf":2.6457513110645907},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.7320508075688772},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"252":{"tf":1.0},"253":{"tf":1.4142135623730951},"256":{"tf":2.0},"257":{"tf":2.8284271247461903},"264":{"tf":2.23606797749979},"265":{"tf":2.0},"269":{"tf":1.7320508075688772},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":2.0}}}}}},"y":{"'":{"df":2,"docs":{"188":{"tf":1.0},"192":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"/":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"272":{"tf":1.0}}}}},"df":0,"docs":{}}},"=":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":4,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"282":{"tf":2.0},"284":{"tf":1.7320508075688772}},"y":{"df":0,"docs":{},"p":{"df":6,"docs":{"170":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"183":{"tf":1.0},"186":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"172":{"tf":1.0}}}}},"u":{"3":{"2":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":3,"docs":{"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"6":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":7,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":31,"docs":{"170":{"tf":1.4142135623730951},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.7320508075688772},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":2.23606797749979},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"238":{"tf":2.0},"239":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"272":{"tf":2.8284271247461903},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"282":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":1.4142135623730951},"58":{"tf":2.449489742783178},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"244":{"tf":1.0}}}}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"139":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"139":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"139":{"tf":1.0}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"、":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"265":{"tf":1.0},"269":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"277":{"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":4,"docs":{"131":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"157":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"131":{"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":24,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":3.0},"128":{"tf":1.0},"131":{"tf":2.0},"138":{"tf":1.0},"157":{"tf":1.7320508075688772},"161":{"tf":1.0},"21":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"22":{"tf":1.4142135623730951},"221":{"tf":1.0},"23":{"tf":3.1622776601683795},"24":{"tf":1.0},"257":{"tf":1.0},"26":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"284":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"140":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"140":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"128":{"tf":1.0},"132":{"tf":2.0},"161":{"tf":1.0},"211":{"tf":1.4142135623730951},"222":{"tf":1.0},"23":{"tf":1.4142135623730951},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"279":{"tf":1.0}},"e":{"_":{"_":{"df":1,"docs":{"132":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"132":{"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":{}}}}}},"p":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":3,"docs":{"128":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"248":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"[":{"0":{"]":{")":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"u":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"2":{"df":1,"docs":{"111":{"tf":2.0}}},"3":{"df":1,"docs":{"111":{"tf":2.0}}},"a":{"b":{"df":1,"docs":{"285":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"224":{"tf":1.0},"225":{"tf":1.0}}}},"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"240":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"85":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"140":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":2.0}}}},"t":{"(":{"df":0,"docs":{},"m":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"163":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":3.1622776601683795},"278":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":28,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"196":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"181":{"tf":1.0},"34":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"c":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"23":{"tf":1.0},"26":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"122":{"tf":1.0},"265":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":7,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951}},"e":{"=":{"df":0,"docs":{},"u":{"6":{"4":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"244":{"tf":1.0},"245":{"tf":1.0}}},"r":{"df":0,"docs":{},"n":{"df":12,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"145":{"tf":1.7320508075688772},"154":{"tf":1.7320508075688772},"239":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"249":{"tf":1.0},"272":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"df":18,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"278":{"tf":1.7320508075688772},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0}}}}}},"t":{"'":{"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"]":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":11,"docs":{"136":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"230":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}}},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":3,"docs":{"17":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":17,"docs":{"10":{"tf":2.449489742783178},"11":{"tf":2.23606797749979},"15":{"tf":1.0},"207":{"tf":1.0},"30":{"tf":1.0},"42":{"tf":1.0},"5":{"tf":1.4142135623730951},"53":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"65":{"tf":1.0},"70":{"tf":2.23606797749979},"8":{"tf":1.0},"82":{"tf":1.4142135623730951},"84":{"tf":2.23606797749979},"9":{"tf":1.0}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"214":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.4142135623730951}},"p":{"c":{"a":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"126":{"tf":1.0},"136":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"246":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"6":{"tf":1.0},"9":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":15,"docs":{"123":{"tf":2.0},"128":{"tf":1.0},"17":{"tf":1.4142135623730951},"203":{"tf":2.6457513110645907},"23":{"tf":1.0},"254":{"tf":1.4142135623730951},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"df":1,"docs":{"249":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"117":{"tf":1.0},"159":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"211":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"239":{"tf":1.0},"269":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":7,"docs":{"207":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":2.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0}}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"119":{"tf":1.0}}}},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"274":{"tf":1.0}}}},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"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":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"m":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{".":{"c":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":46,"docs":{"1":{"tf":1.0},"111":{"tf":1.0},"114":{"tf":1.0},"126":{"tf":1.0},"13":{"tf":1.0},"137":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":2.23606797749979},"20":{"tf":1.0},"21":{"tf":1.0},"242":{"tf":1.0},"25":{"tf":1.0},"251":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.4142135623730951},"28":{"tf":1.0},"280":{"tf":1.0},"285":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"50":{"tf":1.7320508075688772},"51":{"tf":1.0},"52":{"tf":1.4142135623730951},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.4142135623730951},"57":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"80":{"tf":1.4142135623730951}}}}},"r":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":13,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"133":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":1.0},"280":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"63":{"tf":1.0}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"83":{"tf":1.0}}},"v":{"df":0,"docs":{},"m":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"207":{"tf":1.0}}}},"x":{"df":1,"docs":{"265":{"tf":1.0}}}},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":1,"docs":{"120":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":4,"docs":{"169":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"256":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"2":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":1,"docs":{"240":{"tf":1.4142135623730951}},"l":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":5,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"151":{"tf":1.0},"157":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"231":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"112":{"tf":1.0},"264":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":10,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"df":8,"docs":{"117":{"tf":1.0},"195":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"_":{"c":{"b":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":1,"docs":{"232":{"tf":1.4142135623730951}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":4,"docs":{"155":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.0}}},"w":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"m":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}}},"s":{"df":2,"docs":{"269":{"tf":1.0},"282":{"tf":1.0}},"m":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":8,"docs":{"104":{"tf":1.0},"106":{"tf":1.0},"108":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.0},"141":{"tf":2.0}}}},"t":{"df":1,"docs":{"257":{"tf":1.0}}},"u":{"a":{"df":1,"docs":{"267":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"t":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"124":{"tf":2.23606797749979},"219":{"tf":1.0}}}}},"m":{"a":{"c":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"116":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"df":18,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"203":{"tf":1.7320508075688772},"242":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"207":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.4142135623730951},"282":{"tf":1.0},"285":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":8,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0},"277":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"163":{"tf":1.0},"259":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":6,"docs":{"150":{"tf":1.0},"211":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":2.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"189":{"tf":1.0}},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"189":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"193":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"173":{"tf":1.0},"193":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"192":{"tf":2.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"191":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"191":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"187":{"tf":1.0}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"201":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"201":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"199":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"199":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"198":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"198":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"197":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"197":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":5,"docs":{"128":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"163":{"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":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"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":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"202":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"202":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"200":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"190":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"190":{"tf":1.0}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":49,"docs":{"117":{"tf":2.23606797749979},"119":{"tf":1.0},"120":{"tf":2.23606797749979},"121":{"tf":2.23606797749979},"128":{"tf":1.4142135623730951},"142":{"tf":1.0},"168":{"tf":1.4142135623730951},"169":{"tf":2.449489742783178},"170":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.7320508075688772},"174":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":2.6457513110645907},"183":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.4142135623730951},"192":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.7320508075688772},"200":{"tf":2.0},"201":{"tf":1.0},"202":{"tf":1.0},"226":{"tf":1.4142135623730951},"230":{"tf":1.4142135623730951},"233":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.4142135623730951},"238":{"tf":1.4142135623730951},"239":{"tf":1.0},"259":{"tf":2.6457513110645907},"260":{"tf":2.0},"265":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"277":{"tf":1.0},"284":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.4142135623730951},"52":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"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":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}}},",":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},",":{"df":0,"docs":{},"最":{"df":0,"docs":{},"大":{"df":0,"docs":{},"条":{"df":0,"docs":{},"目":{"df":0,"docs":{},"数":{"df":0,"docs":{},"为":{"2":{"5":{"6":{"df":1,"docs":{"63":{"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":{}}}}}}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"265":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":9,"docs":{"120":{"tf":1.0},"126":{"tf":1.0},"155":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"250":{"tf":1.7320508075688772},"264":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"173":{"tf":1.0},"174":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"=":{"1":{"0":{"2":{"4":{"0":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"269":{"tf":1.0}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":4,"docs":{"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"195":{"tf":1.0},"239":{"tf":1.0}}}}}}}},"df":2,"docs":{"260":{"tf":1.0},"263":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"163":{"tf":1.0},"218":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":6,"docs":{"126":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"258":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0}}}}},"df":2,"docs":{"128":{"tf":1.0},"253":{"tf":1.4142135623730951}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":2,"docs":{"92":{"tf":1.0},"94":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"204":{"tf":2.23606797749979},"247":{"tf":1.0},"249":{"tf":1.0},"253":{"tf":2.0}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":9,"docs":{"201":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.0},"232":{"tf":1.0},"252":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":3,"docs":{"142":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":35,"docs":{"136":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"229":{"tf":1.0},"233":{"tf":1.0},"246":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"285":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"263":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":2.23606797749979}},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"常":{"df":0,"docs":{},"量":{"df":0,"docs":{},",":{"df":0,"docs":{},"其":{"df":0,"docs":{},"值":{"df":0,"docs":{},"为":{"0":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"17":{"tf":1.0}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"116":{"tf":1.0}}},"s":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":2,"docs":{"127":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}}}},"t":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"x":{"4":{"df":1,"docs":{"122":{"tf":1.0}}},"5":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"o":{"d":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"240":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0}}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"126":{"tf":2.0},"249":{"tf":1.0},"253":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"117":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":18,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"192":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":3.7416573867739413},"265":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.0}}}}}},"p":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"q":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":2.23606797749979},"85":{"tf":1.0}},"g":{"df":5,"docs":{"118":{"tf":1.0},"201":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"v":{"b":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":50,"docs":{"121":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":2.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.7320508075688772},"171":{"tf":1.7320508075688772},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.7320508075688772},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"184":{"tf":1.7320508075688772},"185":{"tf":1.7320508075688772},"186":{"tf":1.7320508075688772},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"216":{"tf":1.0},"23":{"tf":1.4142135623730951},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":2.449489742783178},"260":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"58":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"155":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.0},"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"146":{"tf":1.0},"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":2,"docs":{"109":{"tf":1.0},"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"215":{"tf":1.0},"263":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"144":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"138":{"tf":1.0},"150":{"tf":1.0},"203":{"tf":1.0},"212":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"283":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":5,"docs":{"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"228":{"tf":1.0}}},"t":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"124":{"tf":1.0},"219":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":11,"docs":{"126":{"tf":1.0},"162":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"261":{"tf":1.0},"264":{"tf":1.0},"266":{"tf":1.0},"267":{"tf":1.0},"286":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}},"w":{"df":20,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"242":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":3,"docs":{"137":{"tf":2.0},"274":{"tf":1.0},"52":{"tf":2.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"f":{"df":0,"docs":{},"p":{"df":1,"docs":{"122":{"tf":1.0}}}},"i":{"c":{"'":{"df":1,"docs":{"181":{"tf":1.0}}},"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":6,"docs":{"112":{"tf":1.4142135623730951},"121":{"tf":1.0},"283":{"tf":1.7320508075688772},"37":{"tf":2.8284271247461903},"41":{"tf":1.7320508075688772},"85":{"tf":2.0}},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"225":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"141":{"tf":1.0},"204":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"254":{"tf":1.0},"256":{"tf":1.0}},"e":{"df":5,"docs":{"224":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}},"y":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"195":{"tf":1.4142135623730951},"226":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"133":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":19,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"159":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"188":{"tf":1.0},"192":{"tf":1.0},"195":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"251":{"tf":1.0},"264":{"tf":1.0}}},"h":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951}}}},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":8,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"231":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"$":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"260":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":1,"docs":{"155":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":8,"docs":{"121":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"165":{"tf":1.0},"178":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":2.0}}}},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":3,"docs":{"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"a":{"df":1,"docs":{"121":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":8,"docs":{"146":{"tf":1.0},"155":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":2.0},"195":{"tf":1.0},"232":{"tf":1.0},"250":{"tf":1.0},"265":{"tf":1.0}},"s":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"v":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":25,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"150":{"tf":1.0},"16":{"tf":1.4142135623730951},"168":{"tf":1.0},"17":{"tf":1.4142135623730951},"207":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"257":{"tf":1.0},"26":{"tf":1.4142135623730951},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"217":{"tf":1.0},"262":{"tf":1.0},"265":{"tf":1.0},"267":{"tf":1.0},"268":{"tf":1.4142135623730951}}}}}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"16":{"tf":1.0}},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"k":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"1":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"6":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"3":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":1.0}}},"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"213":{"tf":1.4142135623730951},"249":{"tf":1.0}}}}}}},"k":{"df":3,"docs":{"136":{"tf":1.0},"159":{"tf":1.0},"269":{"tf":1.0}}},"l":{"d":{"df":4,"docs":{"188":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"c":{"df":6,"docs":{"126":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"271":{"tf":1.0}}},"df":17,"docs":{"133":{"tf":1.0},"155":{"tf":1.0},"165":{"tf":1.0},"174":{"tf":1.0},"181":{"tf":1.0},"200":{"tf":1.0},"204":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"225":{"tf":1.0},"238":{"tf":1.0},"251":{"tf":1.0},"259":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"277":{"tf":1.0}},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"p":{"df":2,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":3,"docs":{"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.0}}}},"df":8,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"250":{"tf":1.0},"264":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":2.449489742783178}}}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"30":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"259":{"tf":1.0},"264":{"tf":2.23606797749979},"30":{"tf":1.0}}}}}}}},"r":{"df":15,"docs":{"121":{"tf":1.0},"141":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"192":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":24,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"16":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.4142135623730951},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"r":{"'":{"df":1,"docs":{"207":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"123":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"159":{"tf":1.0},"272":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"2":{"tf":1.0}}},"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":6,"docs":{"169":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"df":9,"docs":{"118":{"tf":1.0},"127":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"34":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"126":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":33,"docs":{"112":{"tf":1.4142135623730951},"128":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.4142135623730951},"138":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"207":{"tf":1.4142135623730951},"223":{"tf":1.0},"224":{"tf":1.0},"226":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"233":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"264":{"tf":2.6457513110645907},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"163":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"192":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"f":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"126":{"tf":1.4142135623730951},"128":{"tf":1.0},"257":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"190":{"tf":1.0},"272":{"tf":1.0}}}}}}}}},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}}}},"p":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":14,"docs":{"108":{"tf":1.0},"112":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.4142135623730951},"53":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"z":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"s":{"/":{"b":{"c":{"c":{"/":{"_":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}},"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":13,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"181":{"tf":1.4142135623730951}}},"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"162":{"tf":1.4142135623730951}}}},"df":26,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0},"117":{"tf":1.0},"122":{"tf":1.0},"126":{"tf":2.449489742783178},"13":{"tf":1.0},"162":{"tf":1.0},"181":{"tf":1.4142135623730951},"196":{"tf":2.449489742783178},"21":{"tf":1.0},"217":{"tf":2.23606797749979},"218":{"tf":1.7320508075688772},"25":{"tf":1.0},"264":{"tf":1.4142135623730951},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"d":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}},"df":2,"docs":{"163":{"tf":1.0},"232":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":18,"docs":{"137":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0},"284":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"200":{"tf":1.0}}}}},"t":{"df":5,"docs":{"129":{"tf":1.0},"141":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"267":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"187":{"tf":1.0},"197":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"243":{"tf":1.0},"253":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"260":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":1,"docs":{"174":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"h":{":":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"~":{"/":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"208":{"tf":1.0}}}}},"df":0,"docs":{}}},"[":{"1":{"2":{"8":{"]":{"=":{"df":0,"docs":{},"{":{"0":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"136":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"256":{"tf":1.0},"264":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"282":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"260":{"tf":1.0},"264":{"tf":1.0}}}}}},"df":5,"docs":{"217":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"52":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.7320508075688772}}}},"r":{"df":10,"docs":{"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"174":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"236":{"tf":1.0},"242":{"tf":1.0},"265":{"tf":1.4142135623730951}},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"b":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"250":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"(":{"0":{"df":0,"docs":{},"x":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"d":{"9":{"6":{"8":{"2":{"1":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"265":{"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":1,"docs":{"265":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"226":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"_":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":2.23606797749979}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"161":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"162":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"162":{"tf":1.0}}},"df":0,"docs":{}}}},"df":4,"docs":{"128":{"tf":1.0},"133":{"tf":1.0},"161":{"tf":1.0},"164":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.7320508075688772}}}}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":1.4142135623730951},"160":{"tf":1.0},"174":{"tf":1.4142135623730951},"227":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"39":{"tf":1.7320508075688772},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"45":{"tf":1.0},"46":{"tf":1.0},"83":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"174":{"tf":1.0},"194":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"l":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}}}},"i":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.7320508075688772}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":2.23606797749979},"31":{"tf":1.0}}}}}}},"df":9,"docs":{"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.7320508075688772}},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979}},"p":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":42,"docs":{"142":{"tf":1.0},"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":2.449489742783178},"208":{"tf":1.0},"215":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":3.3166247903554},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.4142135623730951},"249":{"tf":2.0},"26":{"tf":3.4641016151377544},"260":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":2.6457513110645907},"271":{"tf":2.0},"272":{"tf":1.0},"275":{"tf":2.8284271247461903},"28":{"tf":1.4142135623730951},"280":{"tf":2.0},"283":{"tf":2.23606797749979},"284":{"tf":1.4142135623730951},"29":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"31":{"tf":1.0},"34":{"tf":2.23606797749979},"37":{"tf":3.605551275463989},"41":{"tf":2.0},"46":{"tf":2.6457513110645907},"47":{"tf":1.0},"52":{"tf":4.242640687119285},"63":{"tf":3.7416573867739413},"71":{"tf":1.0},"79":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0},"94":{"tf":1.0}},"n":{"df":1,"docs":{"155":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"150":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.0}}},"n":{"df":4,"docs":{"169":{"tf":2.0},"181":{"tf":1.0},"259":{"tf":1.7320508075688772},"260":{"tf":1.0}},"g":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":5,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"213":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"285":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"137":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"165":{"tf":1.0},"170":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"274":{"tf":2.0}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":5,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.0},"242":{"tf":1.0},"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.4142135623730951},"199":{"tf":1.0},"244":{"tf":1.7320508075688772},"245":{"tf":1.0}},"u":{"df":0,"docs":{},"l":{"df":5,"docs":{"149":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"122":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"256":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"263":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"277":{"tf":1.4142135623730951}},"p":{"c":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":5,"docs":{"260":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":4,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"207":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"137":{"tf":1.0},"265":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0}}}},"i":{"df":0,"docs":{},"x":{"df":9,"docs":{"120":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"142":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"251":{"tf":1.0},"277":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"147":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"s":{"df":1,"docs":{"79":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":4,"docs":{"137":{"tf":2.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"52":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":8,"docs":{"190":{"tf":1.0},"191":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"272":{"tf":1.0},"281":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"%":{"1":{"0":{"d":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"9":{"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"250":{"tf":1.0}}},"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"247":{"tf":1.0},"248":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"[":{"%":{"5":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"251":{"tf":1.0}}},"r":{"a":{"c":{"df":3,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":2,"docs":{"232":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"242":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"241":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"240":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":28,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.7320508075688772},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"259":{"tf":1.0},"264":{"tf":3.3166247903554},"265":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"280":{"tf":2.0},"282":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}},"f":{"(":{"\"":{"%":{"8":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"260":{"tf":1.0},"269":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"273":{"tf":1.0},"276":{"tf":1.0},"278":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"111":{"tf":1.0}}},"y":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"37":{"tf":1.0}}},"y":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":13,"docs":{"126":{"tf":2.0},"128":{"tf":1.4142135623730951},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":2.0},"140":{"tf":1.0},"141":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"215":{"tf":2.0},"250":{"tf":1.0},"271":{"tf":1.4142135623730951},"283":{"tf":2.0}}},"l":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"c":{"/":{"1":{"5":{"6":{"5":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"/":{"<":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"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":{},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"6":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"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":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"126":{"tf":1.0},"147":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"196":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.7320508075688772},"282":{"tf":1.0},"29":{"tf":2.0},"30":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":2.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"264":{"tf":2.23606797749979}}}}},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{".":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"195":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"[":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"120":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}},"r":{"a":{"df":0,"docs":{},"m":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":59,"docs":{"112":{"tf":1.0},"117":{"tf":2.8284271247461903},"118":{"tf":1.4142135623730951},"122":{"tf":1.0},"124":{"tf":1.7320508075688772},"126":{"tf":3.0},"128":{"tf":1.0},"129":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":2.23606797749979},"144":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.4142135623730951},"178":{"tf":2.0},"186":{"tf":1.0},"195":{"tf":1.7320508075688772},"200":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"218":{"tf":2.6457513110645907},"219":{"tf":1.4142135623730951},"225":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"254":{"tf":2.6457513110645907},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.7320508075688772},"270":{"tf":1.7320508075688772},"271":{"tf":2.23606797749979},"272":{"tf":1.4142135623730951},"273":{"tf":1.4142135623730951},"274":{"tf":2.23606797749979},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":2.23606797749979},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":3,"docs":{"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"80":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"265":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"128":{"tf":1.0},"254":{"tf":2.23606797749979}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"284":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":19,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"151":{"tf":1.0},"161":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"213":{"tf":1.4142135623730951},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"239":{"tf":1.0},"246":{"tf":1.0},"256":{"tf":1.0},"265":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":1,"docs":{"47":{"tf":1.0}},"e":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"o":{"df":1,"docs":{"152":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":22,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"149":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"193":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"1":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"134":{"tf":1.0},"282":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"132":{"tf":1.4142135623730951},"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"259":{"tf":1.0}}},"r":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"127":{"tf":1.0},"136":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":5,"docs":{"128":{"tf":1.0},"160":{"tf":1.7320508075688772},"163":{"tf":1.7320508075688772},"197":{"tf":1.0},"243":{"tf":1.4142135623730951}}}}},"w":{"d":{"`":{"/":{":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"y":{"df":1,"docs":{"264":{"tf":1.0}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"2":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{".":{"6":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":18,"docs":{"128":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"205":{"tf":1.0},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"246":{"tf":1.4142135623730951},"267":{"tf":1.4142135623730951},"270":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"279":{"tf":1.0},"284":{"tf":1.0}}}}}}}},"q":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"217":{"tf":1.7320508075688772}},"e":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"275":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":13,"docs":{"120":{"tf":1.0},"150":{"tf":1.0},"181":{"tf":2.0},"184":{"tf":1.0},"185":{"tf":2.0},"196":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"264":{"tf":1.7320508075688772}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"243":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"i":{"c":{"df":2,"docs":{"66":{"tf":1.0},"75":{"tf":1.0}},"k":{"df":8,"docs":{"159":{"tf":1.0},"262":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"272":{"tf":1.4142135623730951},"66":{"tf":1.0},"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"272":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}}}},"r":{"0":{"df":1,"docs":{"253":{"tf":1.0}}},"1":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}},"8":{"df":1,"docs":{"253":{"tf":1.0}}},":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":4,"docs":{"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0}}}},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"150":{"tf":1.0},"152":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"150":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"150":{"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":{},"g":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"(":{"0":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"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":2,"docs":{"236":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"137":{"tf":1.0},"216":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"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":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"137":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"217":{"tf":1.0}}}},"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"157":{"tf":1.4142135623730951}},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"274":{"tf":1.4142135623730951}},"e":{"a":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":18,"docs":{"134":{"tf":1.0},"136":{"tf":1.4142135623730951},"144":{"tf":1.0},"153":{"tf":1.4142135623730951},"217":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"231":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"269":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.4142135623730951},"279":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"34":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"215":{"tf":1.0}}}},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"32":{"tf":1.4142135623730951},"34":{"tf":2.449489742783178},"35":{"tf":2.0}}}}},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"285":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"271":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":1,"docs":{"280":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":5,"docs":{"188":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"r":{"d":{"df":5,"docs":{"272":{"tf":1.0},"273":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"v":{"df":1,"docs":{"217":{"tf":2.0}}}},"d":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"85":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"122":{"tf":1.0},"181":{"tf":1.0},"186":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"c":{"df":1,"docs":{"229":{"tf":1.0}}},"df":0,"docs":{}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"246":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"120":{"tf":2.449489742783178},"126":{"tf":1.0},"127":{"tf":1.4142135623730951},"186":{"tf":1.0},"203":{"tf":1.0},"263":{"tf":1.0},"271":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"207":{"tf":1.4142135623730951},"274":{"tf":1.0},"277":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"213":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"265":{"tf":1.4142135623730951}}}},"df":1,"docs":{"213":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"133":{"tf":1.0},"283":{"tf":1.0}}}},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"254":{"tf":1.0}}}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"138":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"v":{"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"264":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":3,"docs":{"180":{"tf":1.0},"181":{"tf":1.0},"265":{"tf":1.0}}}}}},"q":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.7320508075688772}}}}}}},"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":2.449489742783178},"277":{"tf":2.0}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":7,"docs":{"127":{"tf":1.0},"170":{"tf":2.0},"175":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":3.0},"277":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"r":{"df":13,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"141":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"203":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":6,"docs":{"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"34":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":2,"docs":{"269":{"tf":1.0},"277":{"tf":1.0}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"192":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.0},"259":{"tf":1.4142135623730951},"79":{"tf":1.0}}}}}},"t":{"df":9,"docs":{"132":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"23":{"tf":2.23606797749979},"26":{"tf":2.23606797749979},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"34":{"tf":2.23606797749979},"37":{"tf":3.4641016151377544}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"116":{"tf":1.0},"122":{"tf":1.0},"124":{"tf":1.0},"150":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"0":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":92,"docs":{"111":{"tf":2.0},"126":{"tf":1.0},"132":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.7320508075688772},"136":{"tf":1.0},"140":{"tf":1.4142135623730951},"141":{"tf":2.6457513110645907},"142":{"tf":1.4142135623730951},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.4142135623730951},"157":{"tf":1.7320508075688772},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.7320508075688772},"174":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":2.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"211":{"tf":2.449489742783178},"212":{"tf":1.0},"214":{"tf":2.23606797749979},"225":{"tf":1.0},"228":{"tf":1.0},"23":{"tf":1.4142135623730951},"231":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"244":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"259":{"tf":1.0},"26":{"tf":1.4142135623730951},"265":{"tf":2.23606797749979},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979},"41":{"tf":1.0},"46":{"tf":1.7320508075688772},"52":{"tf":3.4641016151377544},"58":{"tf":3.605551275463989},"63":{"tf":3.0},"69":{"tf":2.8284271247461903},"78":{"tf":2.8284271247461903},"82":{"tf":2.0},"83":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"41":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"195":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"120":{"tf":1.0}}}}}}}}},"v":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"248":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"204":{"tf":1.7320508075688772},"253":{"tf":1.0},"274":{"tf":1.0},"276":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"251":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"167":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"167":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"164":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"165":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"166":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"120":{"tf":1.0},"163":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"解":{"df":0,"docs":{},"决":{"df":0,"docs":{},"了":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":16,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"275":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"48":{"tf":1.0}}}},"s":{"c":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"m":{"df":3,"docs":{"23":{"tf":2.449489742783178},"259":{"tf":1.0},"26":{"tf":2.449489742783178}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"df":0,"docs":{},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}}}}}},"df":2,"docs":{"117":{"tf":1.0},"282":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"s":{"df":1,"docs":{"11":{"tf":1.0}}},"u":{"df":0,"docs":{},"n":{"df":30,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"126":{"tf":1.0},"150":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":2.0},"257":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":2.0},"261":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"47":{"tf":2.0},"53":{"tf":1.4142135623730951},"79":{"tf":1.4142135623730951}},"e":{"df":7,"docs":{"17":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"63":{"tf":1.0}}},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"53":{"tf":1.0}}}}},"df":0,"docs":{}},"df":5,"docs":{"264":{"tf":2.0},"50":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"3":{"2":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"6":{"4":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"/":{".":{"\\":{"df":0,"docs":{},"{":{"2":{"\\":{"df":0,"docs":{},"}":{"/":{"&":{"\\":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"g":{"df":1,"docs":{"260":{"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":{}},"1":{"df":1,"docs":{"112":{"tf":2.0}}},"3":{"2":{"df":1,"docs":{"137":{"tf":1.0}}},"9":{"0":{"df":2,"docs":{"116":{"tf":1.0},"204":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{")":{"(":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"153":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"144":{"tf":1.0},"153":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"239":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"142":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0}}}}},"r":{"df":1,"docs":{"263":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"a":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"193":{"tf":1.0},"284":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"250":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"161":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":15,"docs":{"159":{"tf":1.0},"233":{"tf":1.4142135623730951},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"253":{"tf":1.0},"26":{"tf":1.0},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":93,"docs":{"127":{"tf":1.0},"133":{"tf":1.4142135623730951},"136":{"tf":1.4142135623730951},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"159":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"208":{"tf":1.4142135623730951},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"214":{"tf":1.4142135623730951},"215":{"tf":1.4142135623730951},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"227":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"235":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951},"250":{"tf":1.4142135623730951},"251":{"tf":1.4142135623730951},"265":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"(":{"\"":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":12,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"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":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}},".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"2":{"6":{"7":{"5":{"2":{"2":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"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":6,"docs":{"17":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.7320508075688772},"35":{"tf":1.0},"37":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":10,"docs":{"134":{"tf":1.0},"159":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"=":{"\"":{"b":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":11,"docs":{"129":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"226":{"tf":1.0},"252":{"tf":1.0},"34":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"141":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"d":{"df":2,"docs":{"260":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":22,"docs":{"112":{"tf":1.0},"117":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"203":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.4142135623730951},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"280":{"tf":1.0},"285":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"m":{"df":1,"docs":{"265":{"tf":1.0}}},"n":{"df":1,"docs":{"155":{"tf":1.0}}}},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"f":{".":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"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":{}}},"n":{"d":{"df":6,"docs":{"127":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":5,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"196":{"tf":1.7320508075688772},"37":{"tf":2.449489742783178}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"141":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"279":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"142":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"274":{"tf":1.0}}},"v":{"df":1,"docs":{"85":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"t":{"df":14,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.0},"154":{"tf":1.0},"203":{"tf":1.0},"204":{"tf":1.7320508075688772},"213":{"tf":1.0},"225":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"53":{"tf":2.449489742783178}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"163":{"tf":1.0}}}}}},"f":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":5,"docs":{"159":{"tf":1.0},"163":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}},"df":2,"docs":{"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"259":{"tf":2.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":3,"docs":{"264":{"tf":1.0},"269":{"tf":1.0},"280":{"tf":1.0}}}},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"249":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"249":{"tf":1.0}}}}}}}}},"df":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"n":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"121":{"tf":1.4142135623730951},"188":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":2.449489742783178}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":2.449489742783178}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"264":{"tf":1.0}},"e":{"d":{":":{"0":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}},"1":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":1,"docs":{"37":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"126":{"tf":1.0},"192":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":4,"docs":{"159":{"tf":1.0},"253":{"tf":1.0},"269":{"tf":1.0},"53":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"159":{"tf":1.0}}}},"i":{"df":1,"docs":{"141":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"165":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":95,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"x":{"df":1,"docs":{"269":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"136":{"tf":1.0}}}}},"z":{"df":0,"docs":{},"e":{":":{"1":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"=":{"1":{"0":{"2":{"4":{"0":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"172":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"149":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":23,"docs":{"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":2.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":2.0},"155":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.0},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.23606797749979},"275":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"*":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":4,"docs":{"37":{"tf":1.0},"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}},"u":{"3":{"2":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"k":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"202":{"tf":1.4142135623730951}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"201":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"df":3,"docs":{"117":{"tf":1.0},"161":{"tf":1.0},"202":{"tf":1.7320508075688772}},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":4,"docs":{"131":{"tf":1.4142135623730951},"69":{"tf":3.3166247903554},"78":{"tf":3.3166247903554},"82":{"tf":2.6457513110645907}},"h":{"df":1,"docs":{"186":{"tf":1.0}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"157":{"tf":1.0}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"0":{".":{"0":{"1":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"236":{"tf":1.0}}},"9":{"9":{"9":{"9":{"9":{"9":{"9":{"9":{"df":2,"docs":{"277":{"tf":1.0},"282":{"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":{}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"(":{"1":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"257":{"tf":1.0},"284":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":2.0},"58":{"tf":2.0}},"s":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"w":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"267":{"tf":1.0},"274":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"o":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}}}}}},"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}},"k":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"186":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":5,"docs":{"118":{"tf":1.4142135623730951},"131":{"tf":1.4142135623730951},"186":{"tf":1.0},"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"161":{"tf":1.0}}}}}}},"df":13,"docs":{"117":{"tf":2.6457513110645907},"118":{"tf":2.449489742783178},"120":{"tf":2.0},"126":{"tf":1.0},"142":{"tf":1.0},"181":{"tf":1.7320508075688772},"186":{"tf":1.0},"196":{"tf":1.0},"200":{"tf":1.7320508075688772},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"217":{"tf":1.0},"246":{"tf":1.0}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"200":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"261":{"tf":1.0},"265":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"112":{"tf":1.0},"127":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":5,"docs":{"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"233":{"tf":1.4142135623730951}},"e":{"d":{"(":{"b":{"[":{"'":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"'":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"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":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":13,"docs":{"117":{"tf":1.0},"123":{"tf":1.0},"127":{"tf":1.0},"128":{"tf":1.0},"157":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.4142135623730951},"252":{"tf":1.0},"256":{"tf":1.7320508075688772},"264":{"tf":1.7320508075688772},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"279":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":23,"docs":{"126":{"tf":2.0},"144":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.4142135623730951},"167":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.0},"277":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"c":{"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"x":{"df":6,"docs":{"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"203":{"tf":1.4142135623730951},"258":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":2,"docs":{"126":{"tf":1.0},"265":{"tf":1.0}},"i":{"df":22,"docs":{"121":{"tf":1.0},"131":{"tf":1.4142135623730951},"133":{"tf":1.0},"138":{"tf":1.4142135623730951},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"186":{"tf":1.0},"192":{"tf":1.0},"203":{"tf":2.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"272":{"tf":1.0},"34":{"tf":1.7320508075688772},"63":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"207":{"tf":1.0},"279":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"c":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"207":{"tf":1.0}}}}}}},"df":5,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}},"s":{"df":1,"docs":{"217":{"tf":1.0}},"h":{"d":{"df":3,"docs":{"112":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951}}},"df":2,"docs":{"264":{"tf":1.0},"71":{"tf":1.4142135623730951}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":21,"docs":{"120":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"173":{"tf":2.0},"184":{"tf":2.0},"185":{"tf":1.0},"193":{"tf":1.7320508075688772},"195":{"tf":1.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"218":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":2.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"256":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":1,"docs":{"215":{"tf":1.0}}},"r":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":2.0}}}},"df":20,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"146":{"tf":1.0},"163":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"272":{"tf":2.0},"274":{"tf":1.0},"275":{"tf":2.23606797749979},"284":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"136":{"tf":1.0},"208":{"tf":1.0},"271":{"tf":1.0},"283":{"tf":1.0},"37":{"tf":1.4142135623730951},"52":{"tf":2.0},"58":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"163":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"274":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"146":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":2.23606797749979}}}},"df":0,"docs":{},"e":{"df":9,"docs":{"132":{"tf":1.0},"168":{"tf":1.0},"173":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"251":{"tf":1.0},"34":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"134":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"207":{"tf":1.0},"224":{"tf":1.0},"233":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"282":{"tf":2.23606797749979},"283":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":2.449489742783178}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":48,"docs":{"111":{"tf":1.7320508075688772},"118":{"tf":1.0},"120":{"tf":1.0},"131":{"tf":2.23606797749979},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"135":{"tf":1.0},"137":{"tf":2.8284271247461903},"138":{"tf":1.0},"142":{"tf":1.4142135623730951},"150":{"tf":2.0},"155":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"163":{"tf":1.7320508075688772},"165":{"tf":1.4142135623730951},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":2.0},"193":{"tf":1.0},"212":{"tf":1.7320508075688772},"23":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.4142135623730951},"274":{"tf":3.4641016151377544},"275":{"tf":2.449489742783178},"277":{"tf":1.7320508075688772},"282":{"tf":1.7320508075688772},"284":{"tf":2.0},"37":{"tf":2.23606797749979},"38":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"42":{"tf":1.0},"46":{"tf":2.23606797749979},"52":{"tf":3.872983346207417},"58":{"tf":4.0},"63":{"tf":3.0},"69":{"tf":3.1622776601683795},"78":{"tf":3.1622776601683795},"83":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"u":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"285":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"u":{"b":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"63":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"238":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":6,"docs":{"141":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0}},"s":{"df":0,"docs":{},"s":{"df":18,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"112":{"tf":1.0},"196":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.0},"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"o":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"260":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.7320508075688772},"59":{"tf":1.0},"63":{"tf":1.0},"70":{"tf":1.0},"79":{"tf":1.4142135623730951},"84":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"163":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"i":{"df":3,"docs":{"226":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"163":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":2.8284271247461903}}}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":3,"docs":{"155":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":19,"docs":{"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":2.0},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.7320508075688772},"123":{"tf":1.0},"124":{"tf":1.0},"126":{"tf":2.6457513110645907},"136":{"tf":1.0},"142":{"tf":1.7320508075688772},"163":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":2.23606797749979},"224":{"tf":1.0},"225":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"219":{"tf":1.0}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"c":{"/":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"246":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"m":{"=":{"\"":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":1,"docs":{"213":{"tf":1.0}}}}},"r":{"df":1,"docs":{"213":{"tf":1.0}},"e":{"=":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"126":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.0},"249":{"tf":1.7320508075688772},"265":{"tf":1.0}}}}},"df":3,"docs":{"128":{"tf":1.0},"213":{"tf":1.4142135623730951},"249":{"tf":1.0}}},"n":{"+":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}}},"c":{"'":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}},";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"272":{"tf":1.0},"273":{"tf":1.0},"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":3,"docs":{"270":{"tf":1.0},"272":{"tf":2.449489742783178},"273":{"tf":1.0}},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"272":{"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":{},"过":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":6,"docs":{"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}},"t":{"a":{"df":0,"docs":{},"x":{"df":105,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.4142135623730951},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"[":{"1":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"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":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":2,"docs":{"169":{"tf":1.0},"181":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}},"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":{}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":14,"docs":{"112":{"tf":1.7320508075688772},"159":{"tf":1.0},"17":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"269":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"39":{"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":{},"f":{"df":0,"docs":{},"|":{"df":0,"docs":{},"l":{"]":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"210":{"tf":1.0},"251":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"29":{"tf":1.0},"31":{"tf":1.0}}}},"df":1,"docs":{"31":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"270":{"tf":2.0}}},"df":0,"docs":{}}}}},"a":{"d":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":11,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"126":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"251":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":2.0},"29":{"tf":1.0},"30":{"tf":1.0}},"l":{"_":{"_":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"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":{},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"d":{"df":3,"docs":{"259":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":13,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"138":{"tf":1.7320508075688772},"146":{"tf":1.0},"17":{"tf":1.4142135623730951},"174":{"tf":1.0},"238":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0}}}}}}}},"t":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":31,"docs":{"117":{"tf":1.0},"119":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"186":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"230":{"tf":1.4142135623730951},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}},"e":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":3,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"238":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"239":{"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":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"232":{"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":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"242":{"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":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"245":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"244":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"241":{"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":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"240":{"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":{}}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"243":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"234":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"117":{"tf":1.0},"157":{"tf":1.0},"274":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.4142135623730951}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":4,"docs":{"117":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.0},"263":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":4,"docs":{"141":{"tf":1.4142135623730951},"169":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0}},"n":{"df":1,"docs":{"267":{"tf":1.0}}}}},"p":{"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"g":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"m":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"n":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"52":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":6,"docs":{"133":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.0},"264":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":8,"docs":{"149":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"*":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"41":{"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":8,"docs":{"137":{"tf":2.449489742783178},"142":{"tf":1.0},"150":{"tf":2.0},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":2.6457513110645907},"63":{"tf":2.0}}}},"df":0,"docs":{}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":14,"docs":{"120":{"tf":1.0},"142":{"tf":3.0},"150":{"tf":1.0},"155":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0},"83":{"tf":1.4142135623730951}}}}},"c":{"'":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":2.23606797749979}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"df":6,"docs":{"110":{"tf":1.0},"111":{"tf":1.7320508075688772},"112":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"219":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"p":{",":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"/":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":1,"docs":{"83":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"253":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"259":{"tf":1.0},"264":{"tf":2.0}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":10,"docs":{"67":{"tf":1.4142135623730951},"68":{"tf":1.0},"70":{"tf":1.7320508075688772},"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.0},"76":{"tf":1.4142135623730951},"77":{"tf":1.0},"79":{"tf":1.0},"80":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"df":17,"docs":{"126":{"tf":1.0},"264":{"tf":2.23606797749979},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.4142135623730951},"69":{"tf":1.7320508075688772},"72":{"tf":1.0},"73":{"tf":1.0},"75":{"tf":1.0},"76":{"tf":1.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.7320508075688772},"80":{"tf":1.0},"82":{"tf":1.0},"87":{"tf":1.0},"88":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"t":{"df":2,"docs":{"87":{"tf":1.0},"88":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"82":{"tf":1.0},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":5,"docs":{"150":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.7320508075688772},"274":{"tf":1.0},"83":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.0},"265":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"26":{"tf":2.0}},"e":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":21,"docs":{"117":{"tf":1.0},"141":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0},"270":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"174":{"tf":1.0},"207":{"tf":1.0},"269":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"d":{"df":11,"docs":{"137":{"tf":2.23606797749979},"142":{"tf":1.0},"147":{"tf":1.0},"155":{"tf":1.0},"275":{"tf":1.4142135623730951},"41":{"tf":2.0},"46":{"tf":1.0},"52":{"tf":2.449489742783178},"63":{"tf":1.4142135623730951},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"163":{"tf":1.0}}}},"t":{"'":{"df":2,"docs":{"257":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"204":{"tf":1.0}}}}},"’":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":11,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"k":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"d":{"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"126":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"238":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":7,"docs":{"147":{"tf":1.4142135623730951},"150":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":2,"docs":{"265":{"tf":1.0},"272":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"144":{"tf":1.0},"153":{"tf":1.0},"284":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"u":{"df":1,"docs":{"280":{"tf":1.0}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":4,"docs":{"265":{"tf":2.23606797749979},"37":{"tf":2.449489742783178},"46":{"tf":2.0},"63":{"tf":2.0}}},"df":1,"docs":{"122":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":6,"docs":{"264":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0}}},".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"1":{"df":1,"docs":{"235":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"%":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"235":{"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":{"275":{"tf":1.4142135623730951}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":22,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"146":{"tf":1.0},"150":{"tf":1.0},"169":{"tf":1.0},"174":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"246":{"tf":1.0},"264":{"tf":3.1622776601683795},"271":{"tf":1.0},"272":{"tf":2.8284271247461903},"274":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"63":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":4,"docs":{"170":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.7320508075688772},"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"m":{"df":1,"docs":{"83":{"tf":2.0}},"p":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"o":{"df":16,"docs":{"101":{"tf":1.0},"102":{"tf":1.0},"103":{"tf":1.0},"105":{"tf":1.0},"106":{"tf":1.0},"107":{"tf":1.0},"109":{"tf":1.0},"113":{"tf":1.0},"63":{"tf":1.0},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0},"95":{"tf":1.0},"96":{"tf":1.0},"97":{"tf":1.0},"99":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"140":{"tf":1.0},"207":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"l":{"df":72,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"258":{"tf":1.0},"259":{"tf":2.0},"260":{"tf":1.0},"261":{"tf":1.7320508075688772},"264":{"tf":3.0},"265":{"tf":2.23606797749979},"267":{"tf":1.4142135623730951},"271":{"tf":1.0},"277":{"tf":1.0},"285":{"tf":1.7320508075688772},"50":{"tf":1.4142135623730951},"54":{"tf":1.0},"56":{"tf":1.0}},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"86":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":1,"docs":{"142":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"p":{"df":2,"docs":{"230":{"tf":1.0},"263":{"tf":1.0}}},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":3.0}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"128":{"tf":1.0},"225":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":5,"docs":{"159":{"tf":1.4142135623730951},"17":{"tf":1.0},"224":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"128":{"tf":1.0},"224":{"tf":1.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":34,"docs":{"11":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"124":{"tf":2.23606797749979},"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.0},"173":{"tf":2.0},"193":{"tf":1.4142135623730951},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":3.1622776601683795},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"270":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.0},"285":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"100":{"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":{}},"_":{"_":{"<":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{">":{"_":{"_":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"tf":1.4142135623730951}}},"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":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}},"df":2,"docs":{"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"133":{"tf":1.0},"212":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":22,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"126":{"tf":2.449489742783178},"128":{"tf":1.7320508075688772},"133":{"tf":3.1622776601683795},"136":{"tf":1.0},"137":{"tf":2.0},"138":{"tf":1.0},"17":{"tf":1.0},"19":{"tf":1.0},"212":{"tf":2.449489742783178},"216":{"tf":2.0},"265":{"tf":1.4142135623730951},"280":{"tf":2.0},"281":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0},"94":{"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":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}},"r":{"df":1,"docs":{"126":{"tf":1.4142135623730951}}}},"k":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"118":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0}}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":5,"docs":{"117":{"tf":1.0},"121":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"142":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"269":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"137":{"tf":1.0},"157":{"tf":1.0}}}},"i":{"df":13,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"251":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"e":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.7320508075688772}}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"251":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"261":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":6,"docs":{"225":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"265":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"[":{"3":{"2":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":18,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":3.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":2.0},"83":{"tf":1.0}},"p":{"df":5,"docs":{"272":{"tf":2.23606797749979},"274":{"tf":2.0},"52":{"tf":2.0},"58":{"tf":2.0},"82":{"tf":1.7320508075688772}}}},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"204":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"127":{"tf":1.0},"267":{"tf":1.0}}},"df":0,"docs":{}}},"_":{"b":{"c":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"261":{"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":17,"docs":{"12":{"tf":1.0},"127":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":2.0},"267":{"tf":1.7320508075688772},"268":{"tf":1.0},"27":{"tf":1.0},"284":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"o":{"df":6,"docs":{"150":{"tf":1.0},"163":{"tf":1.7320508075688772},"232":{"tf":1.0},"239":{"tf":1.0},"267":{"tf":1.0},"274":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":30,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.4142135623730951},"120":{"tf":1.7320508075688772},"124":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"141":{"tf":1.0},"162":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.4142135623730951},"172":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"192":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"217":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"37":{"tf":1.0},"47":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"2":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}}}}},"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":{"6":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"3":{"2":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"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":{},"i":{"d":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"df":20,"docs":{"147":{"tf":1.0},"152":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"186":{"tf":2.0},"212":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"34":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.23606797749979},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":36,"docs":{"146":{"tf":1.4142135623730951},"147":{"tf":1.0},"148":{"tf":1.0},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":2.23606797749979},"63":{"tf":1.7320508075688772},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"[":{"+":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}},"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"h":{"df":7,"docs":{"212":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"d":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"p":{"df":2,"docs":{"66":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951}}}},"df":4,"docs":{"207":{"tf":1.4142135623730951},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.7320508075688772}},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":2,"docs":{"265":{"tf":2.0},"41":{"tf":2.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"6":{"4":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"161":{"tf":1.0},"162":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"133":{"tf":1.0},"252":{"tf":1.0},"254":{"tf":1.0},"264":{"tf":1.4142135623730951},"265":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"252":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"141":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":3,"docs":{"193":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":2,"docs":{"259":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"248":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":8,"docs":{"141":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"257":{"tf":1.0}}},"n":{"df":0,"docs":{},"k":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":8,"docs":{"141":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"229":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"228":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":10,"docs":{"121":{"tf":1.4142135623730951},"171":{"tf":1.0},"176":{"tf":1.0},"200":{"tf":1.0},"239":{"tf":1.4142135623730951},"257":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"126":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"264":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"b":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"126":{"tf":2.23606797749979},"128":{"tf":1.0},"134":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"265":{"tf":1.7320508075688772},"32":{"tf":1.4142135623730951},"33":{"tf":1.0},"34":{"tf":2.6457513110645907},"35":{"tf":1.0}},"e":{"_":{"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":1,"docs":{"265":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":4,"docs":{"128":{"tf":1.0},"135":{"tf":1.4142135623730951},"214":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"d":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"{":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"208":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"215":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"215":{"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":{}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"=":{"[":{"df":0,"docs":{},"u":{"df":3,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"283":{"tf":1.4142135623730951}},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"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":6,"docs":{"128":{"tf":1.4142135623730951},"136":{"tf":3.0},"207":{"tf":1.0},"208":{"tf":2.0},"215":{"tf":1.7320508075688772},"283":{"tf":2.6457513110645907}}}},"df":68,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.7320508075688772},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"141":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.4142135623730951},"161":{"tf":1.0},"165":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"186":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.7320508075688772},"200":{"tf":1.0},"201":{"tf":2.0},"202":{"tf":2.0},"203":{"tf":1.4142135623730951},"204":{"tf":2.23606797749979},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"226":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"250":{"tf":1.4142135623730951},"251":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.4142135623730951},"259":{"tf":2.0},"261":{"tf":1.4142135623730951},"263":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":2.6457513110645907},"267":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.23606797749979},"275":{"tf":1.7320508075688772},"276":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.0}},"e":{"c":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772}}},"df":0,"docs":{},"r":{"df":30,"docs":{"120":{"tf":1.0},"126":{"tf":2.449489742783178},"136":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"166":{"tf":1.0},"204":{"tf":2.23606797749979},"208":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"267":{"tf":1.0},"275":{"tf":2.23606797749979},"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"121":{"tf":1.0},"163":{"tf":1.4142135623730951},"167":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"z":{"df":0,"docs":{},"u":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"213":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"147":{"tf":1.0},"218":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"v":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":3,"docs":{"233":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"5":{".":{"3":{"df":1,"docs":{"181":{"tf":1.0}}},"6":{"df":4,"docs":{"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":8,"docs":{"187":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"282":{"tf":2.0},"284":{"tf":2.0}},"u":{"df":47,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"132":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"151":{"tf":1.0},"155":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.4142135623730951},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":2.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"251":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"272":{"tf":2.449489742783178},"277":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"53":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"225":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}}}}}}},"r":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":8,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"207":{"tf":1.0},"255":{"tf":1.0},"271":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":2.449489742783178}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":1,"docs":{"251":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"267":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":17,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"116":{"tf":1.4142135623730951},"151":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"259":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}}}},"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"118":{"tf":1.4142135623730951},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":5,"docs":{"117":{"tf":1.0},"252":{"tf":1.0},"257":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":17,"docs":{"114":{"tf":1.0},"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"128":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":2.23606797749979},"283":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}}}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"122":{"tf":1.0}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":3,"docs":{"211":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"a":{"df":20,"docs":{"126":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"169":{"tf":1.0},"193":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0}}},"c":{"7":{"df":0,"docs":{},"y":{"df":0,"docs":{},"g":{"df":0,"docs":{},"j":{"0":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"l":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{":":{"df":0,"docs":{},"~":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"117":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0}},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":1,"docs":{"126":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":11,"docs":{"111":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"i":{"d":{"df":25,"docs":{"111":{"tf":2.449489742783178},"134":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"195":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"63":{"tf":1.0},"83":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"29":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":1,"docs":{"45":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"225":{"tf":1.0},"264":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"l":{"df":0,"docs":{},"k":{"df":1,"docs":{"193":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"192":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.4142135623730951}}},"m":{"df":13,"docs":{"11":{"tf":1.7320508075688772},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"2":{"tf":2.23606797749979},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0}}}},"y":{"df":8,"docs":{"133":{"tf":1.0},"163":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0}}}},"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"124":{"tf":1.0},"264":{"tf":2.449489742783178},"274":{"tf":1.4142135623730951}},"e":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}},"r":{"df":5,"docs":{"127":{"tf":1.0},"246":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":2.23606797749979},"277":{"tf":1.0}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"258":{"tf":1.0},"264":{"tf":1.0}}}},"n":{"b":{"df":0,"docs":{},"o":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"141":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"280":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"181":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"259":{"tf":1.0}}}}},"x":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"/":{".":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":1,"docs":{"262":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"285":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"239":{"tf":1.0},"242":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"259":{"tf":1.0},"274":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"195":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":7,"docs":{"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"218":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"285":{"tf":1.0}}}}}}},"l":{"d":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":2.0},"271":{"tf":2.0},"284":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":9,"docs":{"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":5,"docs":{"122":{"tf":1.0},"17":{"tf":2.0},"264":{"tf":1.0},"270":{"tf":1.0},"278":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}}}}},"x":{"0":{"1":{"\\":{"df":0,"docs":{},"x":{"1":{"b":{"]":{"0":{";":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"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":{}},"7":{"\\":{"df":0,"docs":{},"x":{"0":{"2":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"6":{"_":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"p":{"_":{"a":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"218":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"b":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"d":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"196":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":9,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":2.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"218":{"tf":3.1622776601683795},"219":{"tf":1.0},"7":{"tf":1.0}}}},"df":3,"docs":{"16":{"tf":1.4142135623730951},"248":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"120":{"tf":1.0},"181":{"tf":1.0}}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"d":{"a":{"1":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"263":{"tf":1.0}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"260":{"tf":1.0},"274":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"df":1,"docs":{"136":{"tf":1.0}}},"v":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"79":{"tf":1.0}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":11,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"188":{"tf":1.4142135623730951},"249":{"tf":1.0},"272":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.7320508075688772}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"breadcrumbs":{"root":{"0":{".":{"0":{".":{"0":{".":{"0":{"df":1,"docs":{"85":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"7":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"1":{"4":{"6":{"9":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"8":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}}},"2":{"1":{"0":{"8":{"0":{"2":{"7":{"5":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"5":{"9":{"5":{"2":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"9":{"0":{"6":{"1":{"0":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"79":{"tf":1.0}}},"5":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"0":{"4":{"0":{"0":{"5":{"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"8":{"df":1,"docs":{"264":{"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":{}},"7":{"df":0,"docs":{},"f":{"1":{"2":{"a":{"1":{"3":{"3":{"df":0,"docs":{},"e":{"8":{"3":{"0":{"df":1,"docs":{"264":{"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":{}},"3":{"1":{"d":{"7":{"6":{"c":{"3":{"2":{"5":{"1":{"df":1,"docs":{"264":{"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":{}},"c":{"5":{"6":{"5":{"2":{"a":{"d":{"9":{"b":{"0":{"df":1,"docs":{"264":{"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":1,"docs":{"34":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.4142135623730951}}},"3":{"df":2,"docs":{"269":{"tf":1.0},"37":{"tf":1.7320508075688772}}},"4":{"d":{"4":{"b":{"2":{"7":{"4":{"df":0,"docs":{},"e":{"2":{"a":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{"26":{"tf":2.0}}},"5":{"df":1,"docs":{"23":{"tf":2.0}}},"6":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":2,"docs":{"259":{"tf":4.242640687119285},"260":{"tf":2.0}}},"1":{"0":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}}},"5":{"6":{"3":{"2":{"b":{"b":{"3":{"0":{"d":{"a":{"df":1,"docs":{"123":{"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":{}},"6":{"5":{"c":{"c":{"8":{"1":{"7":{"0":{"7":{"5":{"df":1,"docs":{"123":{"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":{},"x":{"df":1,"docs":{"260":{"tf":1.0}}}},":":{"5":{"5":{":":{"0":{"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"1":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"2":{"4":{"0":{"a":{"0":{"4":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"2":{":":{"1":{"3":{":":{"3":{"9":{".":{"6":{"0":{"1":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{".":{"5":{"3":{"4":{"df":1,"docs":{"79":{"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":{}},"3":{"df":0,"docs":{},"e":{"6":{"9":{"b":{"5":{"0":{"8":{"b":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"f":{"5":{"7":{"8":{"1":{"b":{"df":0,"docs":{},"e":{"2":{"c":{"7":{"df":1,"docs":{"116":{"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":{}}},"4":{"5":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"8":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"5":{"6":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"d":{"6":{"1":{"a":{"b":{"3":{"6":{"df":0,"docs":{},"e":{"c":{"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"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":{}}},"5":{"1":{"5":{"df":0,"docs":{},"e":{"5":{"9":{"9":{"9":{"a":{"4":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"4":{"6":{"2":{"3":{"1":{"0":{"5":{"7":{"2":{"8":{"df":1,"docs":{"116":{"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":{}},"7":{"9":{"9":{"6":{"3":{"8":{"0":{"a":{"4":{"2":{"df":1,"docs":{"121":{"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":{}},"c":{"7":{"4":{"df":0,"docs":{},"e":{"5":{"df":0,"docs":{},"e":{"5":{"3":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"7":{"3":{"df":0,"docs":{},"f":{"5":{"2":{"b":{"9":{"6":{"df":1,"docs":{"122":{"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":{}},"6":{":":{"3":{"5":{":":{"0":{"1":{"df":1,"docs":{"264":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"4":{"3":{"1":{"1":{"0":{"b":{"2":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"4":{"c":{"4":{"a":{"3":{"df":0,"docs":{},"e":{"7":{"a":{"df":1,"docs":{"123":{"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":{"79":{"tf":1.4142135623730951}}},"8":{"1":{"3":{"a":{"8":{"4":{"1":{"5":{"6":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":0,"docs":{},"e":{"2":{"5":{"8":{"d":{"4":{"c":{"5":{"4":{"4":{"1":{"5":{"5":{"df":1,"docs":{"264":{"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":1,"docs":{"79":{"tf":1.4142135623730951}}},";":{"df":0,"docs":{},":":{"df":0,"docs":{},"必":{"df":0,"docs":{},"须":{"df":0,"docs":{},"这":{"df":0,"docs":{},"样":{"df":0,"docs":{},",":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"0":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}},"c":{"8":{"4":{"9":{"3":{"d":{"9":{"0":{"b":{"6":{"b":{"df":1,"docs":{"122":{"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":{}},"d":{"0":{"1":{"d":{"a":{"6":{"a":{"df":0,"docs":{},"f":{"c":{"5":{"4":{"df":1,"docs":{"118":{"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":{}},"4":{"df":0,"docs":{},"f":{"a":{"d":{"3":{"df":0,"docs":{},"e":{"5":{"7":{"d":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"5":{"1":{"d":{"a":{"7":{"a":{"8":{"df":0,"docs":{},"e":{"9":{"df":1,"docs":{"122":{"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":70,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"164":{"tf":1.0},"169":{"tf":1.0},"17":{"tf":1.7320508075688772},"195":{"tf":1.4142135623730951},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.4142135623730951},"212":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"23":{"tf":2.0},"240":{"tf":2.449489742783178},"241":{"tf":4.0},"250":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.0},"26":{"tf":2.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.4142135623730951},"264":{"tf":5.656854249492381},"265":{"tf":2.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":2.23606797749979},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":2.449489742783178},"279":{"tf":3.3166247903554},"280":{"tf":1.0},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":3.605551275463989},"41":{"tf":1.0},"46":{"tf":2.449489742783178},"47":{"tf":4.242640687119285},"5":{"tf":1.0},"52":{"tf":3.7416573867739413},"53":{"tf":2.8284271247461903},"58":{"tf":3.7416573867739413},"63":{"tf":3.7416573867739413},"69":{"tf":2.6457513110645907},"78":{"tf":2.6457513110645907},"82":{"tf":2.23606797749979},"83":{"tf":1.7320508075688772},"85":{"tf":2.23606797749979}},"e":{"3":{"3":{"6":{"6":{"1":{"d":{"df":0,"docs":{},"e":{"4":{"9":{"3":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"f":{"8":{"df":0,"docs":{},"e":{"4":{"b":{"d":{"8":{"a":{"1":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"120":{"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":{}},"x":{"0":{"8":{"0":{"0":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"2":{"0":{"df":1,"docs":{"207":{"tf":1.0}}},"df":1,"docs":{"207":{"tf":1.0}}},"4":{"df":1,"docs":{"207":{"tf":1.0}}},"8":{"df":2,"docs":{"207":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}},"1":{".":{"0":{"2":{"2":{"3":{"4":{"6":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"8":{"0":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"1":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{".":{"1":{"4":{"9":{".":{"1":{"5":{"1":{"df":1,"docs":{"71":{"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":1,"docs":{"264":{"tf":1.0}}},"2":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"3":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{".":{"1":{"0":{"df":1,"docs":{"83":{"tf":1.0}}},"5":{"3":{".":{"2":{"2":{"3":{".":{"1":{"5":{"7":{":":{"2":{"2":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"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":{}},"2":{"0":{"1":{".":{"2":{"1":{"9":{".":{"2":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"6":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{".":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"0":{"df":2,"docs":{"272":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"272":{"tf":1.0}},"u":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"274":{"tf":1.0},"41":{"tf":2.6457513110645907},"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"u":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.0},"241":{"tf":1.0},"265":{"tf":2.23606797749979},"284":{"tf":1.0}}},"2":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"0":{"df":4,"docs":{"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"37":{"tf":1.0},"52":{"tf":1.0}}},"df":13,"docs":{"169":{"tf":1.0},"173":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"284":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"4":{"1":{"4":{"0":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"e":{"b":{"6":{"2":{"9":{"df":0,"docs":{},"e":{"1":{"9":{"df":1,"docs":{"123":{"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":16,"docs":{"128":{"tf":2.23606797749979},"140":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"195":{"tf":1.0},"219":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":1.0},"278":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951},"5":{"tf":1.7320508075688772}}},"1":{"0":{".":{"2":{"4":{"2":{".":{"6":{"8":{".":{"3":{"df":1,"docs":{"71":{"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":{}},"3":{"4":{"1":{"3":{"8":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"265":{"tf":2.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"128":{"tf":2.23606797749979},"141":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"220":{"tf":1.4142135623730951},"241":{"tf":1.7320508075688772},"264":{"tf":2.0},"279":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"83":{"tf":2.0}}},"2":{"3":{"1":{"df":1,"docs":{"265":{"tf":1.0}}},"4":{":":{"a":{"b":{"1":{"2":{":":{"2":{"0":{"4":{"0":{":":{"5":{"0":{"2":{"0":{":":{"2":{"2":{"9":{"9":{":":{"0":{":":{"5":{":":{"0":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"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":{}},"4":{"9":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"5":{"4":{"7":{"2":{"8":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"1":{"df":1,"docs":{"112":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"9":{"2":{"5":{"5":{"df":1,"docs":{"265":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"4":{"1":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"0":{".":{"0":{".":{"1":{"df":2,"docs":{"264":{"tf":2.0},"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"8":{"2":{"0":{"3":{"df":1,"docs":{"265":{"tf":3.1622776601683795}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":7,"docs":{"240":{"tf":1.4142135623730951},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"e":{"d":{"7":{"6":{"0":{"a":{"7":{"8":{"d":{"df":1,"docs":{"123":{"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":11,"docs":{"128":{"tf":2.23606797749979},"142":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"221":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"264":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"53":{"tf":1.0}}},"3":{"0":{"9":{"2":{"4":{"3":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"0":{"7":{"1":{"df":2,"docs":{"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"1":{"2":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"7":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"4":{"9":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"6":{"4":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"4":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":2,"docs":{"17":{"tf":1.0},"269":{"tf":1.0}}},"a":{"2":{"7":{"d":{"df":0,"docs":{},"f":{"c":{"6":{"6":{"9":{"7":{"df":1,"docs":{"117":{"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":{}},"b":{"b":{"b":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"a":{"7":{"5":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"4":{"0":{"df":0,"docs":{},"f":{"7":{"8":{"9":{"df":1,"docs":{"123":{"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":8,"docs":{"128":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"222":{"tf":1.4142135623730951},"241":{"tf":1.0},"243":{"tf":1.4142135623730951},"264":{"tf":1.0},"281":{"tf":1.4142135623730951},"282":{"tf":1.0}}},"4":{"3":{"2":{"df":1,"docs":{"271":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"6":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"0":{"7":{"5":{"1":{"c":{"9":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":6,"docs":{"128":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"241":{"tf":1.0},"244":{"tf":1.4142135623730951},"253":{"tf":1.0},"282":{"tf":1.4142135623730951}}},"5":{"1":{"6":{"df":1,"docs":{"265":{"tf":1.0}}},"9":{"4":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"5":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"d":{"0":{"df":0,"docs":{},"e":{"2":{"9":{"0":{"df":0,"docs":{},"e":{"9":{"6":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"8":{"0":{"df":1,"docs":{"271":{"tf":1.0}}},"7":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":11,"docs":{"128":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"245":{"tf":1.4142135623730951},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"6":{".":{"0":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"3":{"8":{"3":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"4":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"5":{"8":{"0":{"4":{"3":{".":{"4":{"3":{"6":{"0":{"1":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"3":{"2":{"6":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"1":{"2":{"6":{"5":{"4":{"5":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"7":{"2":{"df":1,"docs":{"274":{"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":{}},"6":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"5":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"7":{"8":{"df":1,"docs":{"85":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{".":{"1":{"7":{"9":{".":{"1":{"0":{"1":{".":{"4":{"2":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}},"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":23,"docs":{"128":{"tf":1.0},"180":{"tf":1.0},"184":{"tf":1.4142135623730951},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.4142135623730951},"83":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"x":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}}},"7":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{".":{"1":{"9":{".":{"0":{".":{"5":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"7":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"253":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"a":{"7":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"9":{"5":{"1":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"1":{"6":{"9":{"4":{"6":{"df":0,"docs":{},"e":{"3":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"df":1,"docs":{"253":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"d":{"a":{"b":{"2":{"7":{"2":{"3":{"1":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"185":{"tf":1.4142135623730951},"268":{"tf":1.0},"285":{"tf":1.4142135623730951}}},"8":{".":{"9":{"df":0,"docs":{},"f":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"1":{"3":{"9":{"d":{"c":{"a":{"8":{"b":{"3":{"df":1,"docs":{"117":{"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":{}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":5,"docs":{"128":{"tf":1.0},"186":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"9":{".":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{".":{"1":{"6":{"8":{".":{"5":{"6":{".":{"1":{"0":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{".":{"1":{"5":{"df":2,"docs":{"71":{"tf":2.0},"85":{"tf":2.449489742783178}}},"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":{}},"5":{"0":{"df":1,"docs":{"264":{"tf":2.0}}},"6":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"9":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"187":{"tf":1.4142135623730951},"241":{"tf":1.0},"53":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"7":{"5":{"d":{"1":{"6":{"6":{"8":{"df":1,"docs":{"117":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"c":{"a":{"df":0,"docs":{},"e":{"9":{"6":{"3":{"c":{"2":{"df":1,"docs":{"117":{"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":{}}},"d":{"1":{"1":{"b":{"3":{"0":{"1":{"6":{"c":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"123":{"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":49,"docs":{"1":{"tf":1.4142135623730951},"111":{"tf":1.7320508075688772},"128":{"tf":3.605551275463989},"131":{"tf":1.4142135623730951},"144":{"tf":1.4142135623730951},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.7320508075688772},"163":{"tf":1.0},"169":{"tf":1.4142135623730951},"192":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.4142135623730951},"210":{"tf":1.4142135623730951},"218":{"tf":2.6457513110645907},"224":{"tf":1.4142135623730951},"225":{"tf":1.0},"227":{"tf":1.7320508075688772},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"253":{"tf":1.7320508075688772},"256":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"263":{"tf":2.449489742783178},"264":{"tf":3.872983346207417},"265":{"tf":2.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":2.23606797749979},"280":{"tf":1.0},"282":{"tf":2.6457513110645907},"284":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":2.0},"53":{"tf":2.0},"58":{"tf":2.0}},"e":{"6":{"c":{"6":{"2":{"a":{"8":{"8":{"2":{"1":{"5":{"df":1,"docs":{"117":{"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":{}},"f":{"2":{"1":{"1":{"a":{"1":{"b":{"9":{"2":{"9":{"c":{"df":1,"docs":{"117":{"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":{}},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"2":{".":{"0":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"1":{"df":4,"docs":{"17":{"tf":1.0},"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}},"2":{"df":1,"docs":{"265":{"tf":1.0}}},"3":{"df":1,"docs":{"265":{"tf":1.0}}},"6":{".":{"3":{"2":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{"0":{"9":{"df":1,"docs":{"19":{"tf":1.0}}},"df":0,"docs":{}},"1":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"2":{"0":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"2":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"2":{"tf":1.0}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"5":{"7":{"1":{"5":{"6":{"7":{"3":{"8":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"6":{"0":{"5":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"2":{"0":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"188":{"tf":1.4142135623730951},"264":{"tf":1.0},"282":{"tf":1.0}}},"1":{"1":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"9":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},":":{"2":{"8":{":":{"3":{"0":{"df":1,"docs":{"41":{"tf":2.6457513110645907}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"0":{":":{"0":{"9":{"df":1,"docs":{"47":{"tf":3.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"189":{"tf":1.4142135623730951}}},"2":{".":{"2":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"2":{"tf":1.0}}},"2":{"5":{"6":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"8":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"7":{"4":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"264":{"tf":2.0}}},"5":{".":{"7":{"9":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"7":{"5":{"9":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"8":{"3":{"2":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"6":{"df":1,"docs":{"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"190":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"71":{"tf":1.4142135623730951}}},"3":{"3":{"df":1,"docs":{"264":{"tf":1.0}}},"5":{"3":{"df":0,"docs":{},"e":{"c":{"c":{"6":{"df":0,"docs":{},"f":{"9":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"9":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"191":{"tf":1.4142135623730951},"253":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"4":{"1":{".":{"1":{"7":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"7":{"3":{"4":{"3":{"3":{".":{"0":{"5":{"2":{"9":{"3":{"7":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"6":{"4":{"2":{"8":{"0":{"8":{"df":1,"docs":{"269":{"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":{}},"8":{"5":{"0":{"0":{"1":{".":{"1":{"7":{"4":{"8":{"8":{"5":{"9":{"9":{"9":{"df":1,"docs":{"271":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"7":{"1":{"0":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"9":{"9":{"1":{"9":{"7":{"6":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"2":{".":{"2":{"7":{"6":{"1":{"4":{"7":{"0":{"0":{"0":{"df":1,"docs":{"271":{"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":{}},"6":{".":{"7":{"6":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"2":{"8":{"3":{"2":{".":{"9":{"5":{"6":{"9":{"9":{"4":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"7":{".":{"7":{"2":{"6":{"5":{"0":{"0":{"9":{"9":{"9":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"1":{"1":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"0":{"3":{"0":{"0":{"1":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"2":{"9":{"4":{"9":{"9":{"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"8":{"8":{"0":{"0":{"1":{"df":1,"docs":{"280":{"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":{}},"3":{"3":{"2":{"4":{".":{"5":{"6":{"1":{"3":{"2":{"2":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"3":{"5":{".":{"3":{"4":{"3":{"4":{"0":{"1":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"4":{"0":{".":{"5":{"1":{"0":{"1":{"6":{"4":{"9":{"9":{"8":{"df":1,"docs":{"283":{"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":{}},"9":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"2":{"df":1,"docs":{"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"2":{"8":{"df":1,"docs":{"283":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"192":{"tf":1.4142135623730951},"264":{"tf":1.0}}},"5":{".":{"2":{"9":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"3":{"1":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"3":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"1":{"5":{"1":{"7":{"c":{"3":{"2":{"b":{"df":0,"docs":{},"e":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"5":{"df":5,"docs":{"240":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"6":{"df":7,"docs":{"257":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}},"8":{"9":{"7":{"2":{"6":{"d":{"1":{"2":{"a":{"1":{"df":1,"docs":{"117":{"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":{}},"9":{"0":{"df":1,"docs":{"251":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"193":{"tf":1.4142135623730951}}},"6":{"3":{"a":{"df":0,"docs":{},"e":{"1":{"5":{"2":{"df":0,"docs":{},"e":{"9":{"6":{"2":{"df":1,"docs":{"123":{"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":4,"docs":{"128":{"tf":1.0},"194":{"tf":1.4142135623730951},"52":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"7":{"6":{"7":{"2":{"df":0,"docs":{},"f":{"0":{"d":{"2":{"8":{"0":{"a":{"df":1,"docs":{"123":{"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":{}},"a":{"df":0,"docs":{},"e":{"7":{"9":{"9":{"7":{"a":{"6":{"6":{"1":{"df":1,"docs":{"118":{"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":{}}},"b":{"2":{"9":{"df":0,"docs":{},"f":{"6":{"3":{"0":{"5":{"8":{"d":{"df":1,"docs":{"123":{"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":3,"docs":{"128":{"tf":1.0},"195":{"tf":1.4142135623730951},"264":{"tf":1.0}}},"8":{"df":4,"docs":{"128":{"tf":1.0},"196":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}},"f":{"b":{"c":{"df":0,"docs":{},"f":{"a":{"0":{"8":{"d":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"9":{"b":{"a":{"7":{"3":{"2":{"a":{"c":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"120":{"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":4,"docs":{"128":{"tf":1.0},"197":{"tf":1.4142135623730951},"264":{"tf":1.0},"279":{"tf":1.0}}},"a":{"1":{"0":{"0":{"3":{"1":{"7":{"c":{"9":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"e":{"2":{"1":{"2":{"d":{"5":{"4":{"1":{"df":1,"docs":{"123":{"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":{}}},"c":{"1":{"6":{"d":{"6":{"0":{"3":{"3":{"2":{"6":{"4":{"df":1,"docs":{"117":{"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":{}},"d":{"0":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"3":{"0":{"df":0,"docs":{},"f":{"8":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"9":{"b":{"9":{"df":0,"docs":{},"e":{"6":{"d":{"df":0,"docs":{},"f":{"6":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{"83":{"tf":1.0}}},"df":32,"docs":{"128":{"tf":3.4641016151377544},"132":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"17":{"tf":1.0},"170":{"tf":1.4142135623730951},"195":{"tf":1.4142135623730951},"203":{"tf":1.0},"208":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"248":{"tf":1.4142135623730951},"253":{"tf":1.0},"254":{"tf":1.4142135623730951},"257":{"tf":1.4142135623730951},"264":{"tf":2.449489742783178},"265":{"tf":1.7320508075688772},"270":{"tf":1.4142135623730951},"277":{"tf":2.0},"279":{"tf":2.8284271247461903},"283":{"tf":1.0},"3":{"tf":1.4142135623730951},"41":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":2.23606797749979}},"f":{"df":1,"docs":{"272":{"tf":1.0}}},"h":{"df":2,"docs":{"4":{"tf":1.0},"5":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{".":{"1":{"3":{"df":1,"docs":{"274":{"tf":1.0}}},"5":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"116":{"tf":1.0}}},"8":{"df":3,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"121":{"tf":1.0}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"1":{"6":{"df":1,"docs":{"37":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"4":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"9":{"6":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"198":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"1":{"8":{"9":{"df":1,"docs":{"53":{"tf":1.0}}},"df":0,"docs":{}},"df":7,"docs":{"128":{"tf":1.0},"199":{"tf":1.4142135623730951},"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"2":{"2":{"0":{"7":{"0":{"1":{".":{"1":{"0":{"1":{"1":{"4":{"3":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"7":{"9":{"df":2,"docs":{"29":{"tf":1.0},"30":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"1":{"5":{"8":{"0":{"0":{"0":{"df":2,"docs":{"29":{"tf":1.0},"30":{"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":{}},"7":{"4":{"df":0,"docs":{},"f":{"5":{"2":{"0":{"7":{"3":{"d":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"7":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"8":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"9":{"df":1,"docs":{"34":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":24,"docs":{"128":{"tf":1.0},"147":{"tf":2.0},"148":{"tf":1.0},"17":{"tf":1.0},"171":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"195":{"tf":1.0},"200":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"240":{"tf":1.0},"26":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"53":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"k":{"b":{"df":2,"docs":{"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"3":{"2":{"a":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"6":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"f":{"9":{"8":{"8":{"5":{"0":{"4":{"0":{"c":{"df":1,"docs":{"123":{"tf":2.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":2,"docs":{"128":{"tf":1.0},"201":{"tf":1.4142135623730951}}},"4":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"2":{"7":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}},"7":{"7":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"79":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"8":{"3":{"df":1,"docs":{"79":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"b":{"2":{"0":{"2":{"1":{"c":{"c":{"6":{"1":{"6":{"df":1,"docs":{"123":{"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":{}},"d":{"4":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"7":{"7":{"5":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"202":{"tf":1.4142135623730951}}},"5":{"1":{"7":{"df":3,"docs":{"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"1":{"5":{"8":{"1":{"3":{"9":{"5":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"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":{"7":{"8":{"d":{"7":{"9":{"8":{"4":{"0":{"0":{"df":1,"docs":{"123":{"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":{}},"6":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"5":{"2":{"c":{"7":{"df":0,"docs":{},"e":{"b":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"7":{"6":{"0":{"4":{"0":{"df":0,"docs":{},"e":{"4":{"7":{"3":{"3":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"4":{"0":{"3":{"4":{"5":{"df":3,"docs":{"17":{"tf":2.0},"29":{"tf":2.0},"30":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"280":{"tf":1.0}}},"6":{"1":{"7":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"6":{"d":{"6":{"5":{"5":{"df":0,"docs":{},"f":{"4":{"d":{"4":{"df":1,"docs":{"123":{"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":{}},"9":{"7":{"5":{"5":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"4":{"0":{"8":{"4":{"7":{"0":{"8":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"1":{"3":{"c":{"2":{"0":{"4":{"b":{"b":{"1":{"df":1,"docs":{"116":{"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":{}},"a":{"0":{"8":{"c":{"2":{"df":0,"docs":{},"f":{"d":{"7":{"6":{"3":{"4":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"f":{"8":{"df":0,"docs":{},"f":{"d":{"6":{"1":{"df":0,"docs":{},"f":{"9":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772},"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"e":{"a":{"0":{"8":{"9":{"2":{"4":{"6":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"2":{"5":{"3":{"c":{"2":{"df":0,"docs":{},"e":{"6":{"5":{"2":{"df":1,"docs":{"123":{"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":{}},"c":{"a":{"1":{"0":{"3":{"2":{"a":{"b":{"7":{"a":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"7":{"8":{"4":{"1":{"7":{"b":{"6":{"0":{"df":0,"docs":{},"f":{"b":{"df":1,"docs":{"123":{"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":25,"docs":{"1":{"tf":1.0},"128":{"tf":2.8284271247461903},"133":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"159":{"tf":1.0},"161":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"6":{"tf":1.4142135623730951},"63":{"tf":1.0}},"e":{"8":{"7":{"df":0,"docs":{},"f":{"1":{"9":{"2":{"b":{"4":{"0":{"5":{"df":1,"docs":{"121":{"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":{}},"f":{"3":{"6":{"4":{"2":{"2":{"2":{"d":{"0":{"3":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"7":{"1":{"9":{"c":{"7":{"b":{"6":{"2":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{},"n":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"h":{"df":1,"docs":{"4":{"tf":1.0}}},"r":{"d":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}},"4":{".":{"1":{"0":{"df":5,"docs":{"117":{"tf":2.0},"118":{"tf":2.23606797749979},"120":{"tf":1.4142135623730951},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"1":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}},"2":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.4142135623730951}}},"3":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.7320508075688772},"150":{"tf":1.0}}},"4":{"df":7,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":5,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"6":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"7":{"df":4,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"8":{"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":2.6457513110645907},"118":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"123":{"tf":4.0},"186":{"tf":1.0}}},"9":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903}}},"2":{"0":{"df":7,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0}}},"df":3,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"3":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.449489742783178}}},"4":{"4":{"df":1,"docs":{"274":{"tf":1.0}}},"df":2,"docs":{"117":{"tf":1.7320508075688772},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}},"6":{"df":3,"docs":{"120":{"tf":1.7320508075688772},"121":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":4,"docs":{"116":{"tf":1.0},"117":{"tf":1.4142135623730951},"118":{"tf":1.0},"280":{"tf":1.0}}},"8":{".":{"1":{"0":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":2.449489742783178},"123":{"tf":2.449489742783178}}},"9":{".":{"1":{"0":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.7320508075688772},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.23606797749979}}},"df":0,"docs":{},"x":{"df":1,"docs":{"261":{"tf":1.0}}}},"0":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"3":{"0":{"4":{"b":{"2":{"a":{"1":{"5":{"6":{"7":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"7":{"4":{"7":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"41":{"tf":1.0}}},"9":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"41":{"tf":1.0}}},"1":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"5":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":6,"docs":{"264":{"tf":3.1622776601683795},"274":{"tf":2.0},"279":{"tf":1.0},"53":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"53":{"tf":1.0}}},"1":{"5":{"9":{"6":{"df":1,"docs":{"85":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"8":{"2":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"4":{"9":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"5":{"0":{"df":1,"docs":{"47":{"tf":1.0}}},"1":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"47":{"tf":1.0}}},"4":{"df":1,"docs":{"47":{"tf":2.23606797749979}}},"5":{"df":1,"docs":{"47":{"tf":1.0}}},"6":{"df":1,"docs":{"47":{"tf":1.0}}},"7":{"df":1,"docs":{"47":{"tf":1.0}}},"8":{"df":1,"docs":{"47":{"tf":1.0}}},"9":{"df":1,"docs":{"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"4":{"9":{"6":{"7":{"2":{"9":{"5":{"df":1,"docs":{"53":{"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":{}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"4":{"3":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":2.449489742783178}}},"df":1,"docs":{"264":{"tf":1.0}}},"5":{"7":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"6":{"3":{"a":{"8":{"8":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.23606797749979}}},"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":{}},"6":{"3":{"7":{".":{"7":{"9":{"8":{"6":{"9":{"8":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"3":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}},"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":1,"docs":{"268":{"tf":1.0}},"f":{"8":{"b":{"c":{"9":{"2":{"7":{"5":{"8":{"c":{"df":1,"docs":{"123":{"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":{}}},"7":{"1":{"0":{".":{"9":{"5":{"1":{"6":{"9":{"6":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"1":{"9":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"5":{"2":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"9":{"5":{"df":1,"docs":{"23":{"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":{}},"8":{"c":{"df":0,"docs":{},"f":{"b":{"d":{"df":0,"docs":{},"f":{"5":{"df":0,"docs":{},"f":{"1":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"7":{"5":{"2":{"b":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"264":{"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":{}},"3":{"8":{"df":0,"docs":{},"e":{"1":{"5":{"5":{"0":{"3":{"7":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"8":{"4":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"9":{"2":{"df":0,"docs":{},"e":{"6":{"3":{"9":{"df":0,"docs":{},"f":{"0":{"c":{"2":{"2":{"df":1,"docs":{"123":{"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":{"df":0,"docs":{},"e":{"0":{"5":{"1":{"7":{"0":{"9":{"5":{"8":{"df":1,"docs":{"122":{"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":1,"docs":{"264":{"tf":1.0}}},"a":{"4":{"8":{"2":{"df":0,"docs":{},"f":{"3":{"4":{"a":{"df":0,"docs":{},"f":{"c":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"f":{"6":{"c":{"0":{"b":{"8":{"4":{"c":{"9":{"df":1,"docs":{"122":{"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":{}},"b":{"df":0,"docs":{},"e":{"b":{"d":{"c":{"7":{"a":{"8":{"5":{"a":{"a":{"df":1,"docs":{"123":{"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":{}}},"c":{"df":0,"docs":{},"f":{"1":{"b":{"c":{"1":{"df":0,"docs":{},"f":{"1":{"0":{"4":{"5":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"2":{"2":{"0":{"df":0,"docs":{},"e":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"1":{"4":{"df":1,"docs":{"117":{"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":20,"docs":{"128":{"tf":2.6457513110645907},"134":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"234":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"250":{"tf":1.4142135623730951},"260":{"tf":1.0},"264":{"tf":3.3166247903554},"272":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":2.449489742783178},"53":{"tf":1.4142135623730951},"71":{"tf":2.0},"79":{"tf":2.449489742783178},"83":{"tf":1.0}},"e":{"1":{"0":{"d":{"df":0,"docs":{},"f":{"9":{"a":{"6":{"0":{"d":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"5":{"6":{"c":{"d":{"c":{"5":{"9":{"df":1,"docs":{"123":{"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":{}}},"6":{"3":{"a":{"c":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"c":{"5":{"2":{"1":{"df":0,"docs":{},"e":{"d":{"5":{"df":1,"docs":{"120":{"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":{}},"f":{"1":{"9":{"c":{"a":{"b":{"7":{"6":{"1":{"3":{"6":{"df":1,"docs":{"123":{"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":{}},"3":{"4":{"4":{"6":{"b":{"b":{"8":{"0":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"7":{"3":{"8":{"a":{"d":{"b":{"a":{"3":{"0":{"a":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"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":{}},"b":{"a":{"c":{"7":{"7":{"d":{"2":{"d":{"0":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}},"m":{"b":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}},"5":{".":{"0":{"df":3,"docs":{"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"1":{"0":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":3.7416573867739413}}},"1":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"3":{"df":2,"docs":{"116":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"4":{"df":2,"docs":{"121":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"5":{"df":2,"docs":{"118":{"tf":1.0},"123":{"tf":2.6457513110645907}}},"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":2.0}}},"7":{"df":1,"docs":{"123":{"tf":2.449489742783178}}},"8":{"df":1,"docs":{"123":{"tf":2.8284271247461903}}},"9":{"df":1,"docs":{"123":{"tf":3.1622776601683795}}},"df":3,"docs":{"116":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":2.449489742783178}}},"2":{"df":5,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"123":{"tf":3.1622776601683795}}},"3":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"120":{"tf":1.0}}},"5":{"df":6,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.7320508075688772},"123":{"tf":2.8284271247461903},"26":{"tf":1.0}}},"6":{"df":5,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.4142135623730951},"123":{"tf":2.0}}},"7":{"df":5,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":2.6457513110645907},"141":{"tf":1.0}}},"8":{"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0},"163":{"tf":1.0},"242":{"tf":1.0}},"开":{"df":0,"docs":{},"始":{"df":0,"docs":{},",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"提":{"df":0,"docs":{},"供":{"df":0,"docs":{},"了":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"新":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"结":{"df":0,"docs":{},"构":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}},"9":{"df":5,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":2.449489742783178},"142":{"tf":1.0}}},"df":0,"docs":{}},"0":{"9":{"6":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"1":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"c":{"6":{"6":{"a":{"d":{"8":{"4":{"9":{"a":{"7":{"df":1,"docs":{"116":{"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":{}},"2":{".":{"1":{"7":{"8":{".":{"1":{"7":{".":{"2":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"6":{"2":{"d":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"3":{".":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"8":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"264":{"tf":1.0}}},"4":{".":{"2":{"4":{"5":{".":{"1":{"0":{"5":{".":{"2":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"7":{".":{"1":{"0":{"1":{".":{"1":{"4":{"5":{"df":1,"docs":{"264":{"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":{}},"6":{"a":{"c":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"b":{"7":{"0":{"d":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"6":{"b":{"9":{"9":{"1":{"df":0,"docs":{},"e":{"9":{"c":{"1":{"df":1,"docs":{"123":{"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":{}},"6":{"df":1,"docs":{"264":{"tf":1.0}},"f":{"6":{"6":{"8":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"0":{"0":{"d":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"df":1,"docs":{"53":{"tf":1.0}}},"8":{"3":{"c":{"1":{"df":0,"docs":{},"f":{"4":{"2":{"0":{"1":{"7":{"3":{"df":1,"docs":{"120":{"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":{}},"9":{"1":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"9":{"8":{"8":{"8":{"d":{"7":{"8":{"df":1,"docs":{"121":{"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":{}},"d":{"8":{"b":{"5":{"8":{"3":{"d":{"0":{"4":{"a":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"c":{"4":{"b":{"7":{"d":{"4":{"df":0,"docs":{},"e":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"1":{"5":{"5":{"2":{"0":{"c":{"4":{"d":{"df":1,"docs":{"116":{"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":1,"docs":{"83":{"tf":2.0}}},"df":15,"docs":{"128":{"tf":2.6457513110645907},"135":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"163":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"194":{"tf":1.0},"214":{"tf":1.4142135623730951},"224":{"tf":1.0},"235":{"tf":1.4142135623730951},"241":{"tf":1.0},"251":{"tf":1.4142135623730951},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"273":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951}},"f":{"3":{"1":{"6":{"b":{"6":{"5":{"df":0,"docs":{},"e":{"9":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"116":{"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":{}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{".":{"0":{"df":1,"docs":{"123":{"tf":2.0}}},"1":{"df":3,"docs":{"116":{"tf":1.0},"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"0":{",":{"0":{"0":{"0":{"df":1,"docs":{"263":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"2":{"7":{"4":{"c":{"5":{"a":{"b":{"d":{"8":{"df":1,"docs":{"123":{"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":{}},"d":{"2":{"0":{"df":0,"docs":{},"f":{"9":{"1":{"9":{"5":{"b":{"2":{"df":1,"docs":{"123":{"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":{}},"1":{"0":{"2":{"3":{"6":{"5":{"8":{"7":{"6":{"0":{"0":{"df":1,"docs":{"118":{"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":{}},"2":{"df":1,"docs":{"253":{"tf":1.0}}},"8":{"df":1,"docs":{"30":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"2":{"2":{"5":{"8":{"2":{"7":{"8":{"6":{"c":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"116":{"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":{}},"4":{"8":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"7":{"9":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"d":{"9":{"b":{"8":{"0":{"d":{"c":{"df":0,"docs":{},"f":{"2":{"c":{"df":1,"docs":{"123":{"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":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}},"4":{"0":{"0":{"1":{".":{"3":{"7":{"5":{"7":{"4":{"8":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{".":{"0":{"5":{"6":{"9":{"5":{"1":{"df":1,"docs":{"34":{"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":{}},"1":{"c":{"d":{"7":{"b":{"0":{"6":{"c":{"9":{"1":{"df":1,"docs":{"117":{"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":{}},"5":{"3":{"0":{"7":{"3":{"9":{"8":{"7":{"b":{"a":{"df":1,"docs":{"122":{"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":9,"docs":{"112":{"tf":2.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"277":{"tf":1.0},"279":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"5":{"5":{"3":{"5":{"df":3,"docs":{"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"279":{"tf":1.0}}},"6":{"df":4,"docs":{"257":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":2.23606797749979}}},"df":0,"docs":{}},"a":{"5":{"1":{"df":0,"docs":{},"e":{"5":{"3":{"6":{"c":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"8":{"1":{"7":{"1":{"a":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"0":{"df":0,"docs":{},"e":{"1":{"1":{"2":{"6":{"9":{"3":{"4":{"df":1,"docs":{"120":{"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":{}},"9":{".":{"5":{"3":{".":{"2":{"4":{"5":{".":{"4":{"0":{":":{"2":{"2":{"9":{"5":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"4":{"6":{"1":{"9":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"b":{"6":{"9":{"3":{"df":0,"docs":{},"f":{"0":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"8":{"7":{"b":{"a":{"6":{"2":{"2":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.0}}},"a":{"7":{"7":{"3":{"a":{"1":{"5":{"a":{"1":{"df":0,"docs":{},"e":{"8":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"9":{"9":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"2":{"3":{"d":{"4":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"5":{"c":{"2":{"9":{"1":{"0":{"6":{"8":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"b":{"4":{"3":{"2":{"df":0,"docs":{},"e":{"6":{"7":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{},"e":{"0":{"8":{"a":{"df":0,"docs":{},"e":{"3":{"d":{"df":0,"docs":{},"e":{"a":{"2":{"df":1,"docs":{"123":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"5":{"a":{"a":{"6":{"df":0,"docs":{},"f":{"c":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"5":{"9":{"8":{"1":{"7":{"4":{"3":{"2":{"df":1,"docs":{"121":{"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":{},"e":{"9":{"6":{"c":{"a":{"3":{"4":{"8":{"a":{"9":{"df":1,"docs":{"122":{"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":{}}},"d":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"136":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"164":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"215":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":2.0},"274":{"tf":1.4142135623730951},"279":{"tf":1.4142135623730951},"283":{"tf":1.0},"53":{"tf":1.0},"83":{"tf":1.0}},"e":{"2":{"2":{"a":{"b":{"9":{"d":{"a":{"7":{"9":{"3":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"b":{"0":{"4":{"a":{"8":{"2":{"2":{"4":{"df":1,"docs":{"121":{"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":{}},"f":{"9":{"d":{"4":{"5":{"1":{"a":{"b":{"1":{"a":{"3":{"df":1,"docs":{"120":{"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":{},"f":{"df":0,"docs":{},"f":{"6":{"0":{"7":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"f":{"1":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":3,"docs":{"271":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0}}}},"7":{"0":{"0":{"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"d":{"6":{"6":{"2":{"4":{"4":{"3":{"1":{"7":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"1":{"b":{"b":{"4":{"2":{"8":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"2":{"c":{"1":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"1":{"9":{"2":{"1":{"4":{"7":{"7":{"6":{"df":0,"docs":{},"e":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"2":{"4":{"6":{"d":{"8":{"df":0,"docs":{},"e":{"d":{"4":{"d":{"c":{"c":{"df":1,"docs":{"123":{"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":1,"docs":{"112":{"tf":1.0}}},"4":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"5":{"df":1,"docs":{"264":{"tf":1.0}}},"6":{"1":{"8":{"7":{"6":{"c":{"8":{"5":{"7":{"c":{"b":{"df":1,"docs":{"122":{"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":{}},"7":{"2":{"3":{"6":{"2":{"8":{"1":{"0":{"1":{"a":{"a":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.0}}},"9":{"7":{"0":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"a":{"7":{"df":0,"docs":{},"f":{"8":{"b":{"d":{"b":{"1":{"5":{"9":{"df":2,"docs":{"118":{"tf":1.0},"123":{"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":2,"docs":{"112":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"a":{"1":{"2":{"b":{"5":{"0":{"3":{"1":{"c":{"6":{"b":{"df":1,"docs":{"116":{"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":{}},"4":{"b":{"2":{"8":{"c":{"6":{"c":{"c":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"f":{"c":{"6":{"c":{"9":{"b":{"3":{"1":{"5":{"df":1,"docs":{"123":{"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":{}},"b":{"1":{"4":{"6":{"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"e":{"3":{"0":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"2":{"3":{"a":{"9":{"8":{"9":{"b":{"df":1,"docs":{"123":{"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":{}},"d":{"5":{"0":{"9":{"df":0,"docs":{},"e":{"3":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"117":{"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":{}},"c":{"7":{"df":0,"docs":{},"e":{"3":{"d":{"3":{"1":{"df":0,"docs":{},"e":{"7":{"8":{"5":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"e":{"c":{"5":{"4":{"df":0,"docs":{},"f":{"9":{"7":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"d":{"6":{"7":{"2":{"3":{"4":{"5":{"df":0,"docs":{},"e":{"d":{"2":{"9":{"df":1,"docs":{"123":{"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":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":14,"docs":{"128":{"tf":2.449489742783178},"137":{"tf":1.4142135623730951},"150":{"tf":1.4142135623730951},"165":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"216":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":2.0},"53":{"tf":1.4142135623730951}},"e":{"2":{"7":{"3":{"a":{"8":{"df":0,"docs":{},"e":{"b":{"d":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"h":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}},"8":{"0":{"0":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"8":{"6":{"4":{"9":{"df":0,"docs":{},"f":{"b":{"7":{"8":{"7":{"d":{"df":1,"docs":{"123":{"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":{}},"9":{"6":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":4,"docs":{"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"34":{"tf":1.0},"71":{"tf":1.0}}},"1":{"1":{"1":{"0":{"3":{"8":{"4":{"4":{"4":{"1":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.7320508075688772}}},"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":{}},"4":{"2":{"8":{"8":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"1":{"df":3,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}}},"2":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"4":{"b":{"d":{"0":{"c":{"df":0,"docs":{},"e":{"6":{"c":{"7":{"c":{"df":1,"docs":{"120":{"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":{}},"5":{"7":{"5":{".":{"7":{"9":{"8":{"1":{"9":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"4":{"9":{"2":{"2":{"7":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{".":{"0":{"0":{"1":{"3":{"6":{"1":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"6":{"1":{"0":{"8":{"5":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"7":{"2":{"0":{"df":1,"docs":{"37":{"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":{}},"3":{"8":{"c":{"9":{"3":{"d":{"c":{"5":{"4":{"4":{"9":{"df":1,"docs":{"122":{"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":1,"docs":{"53":{"tf":1.0}}},"4":{"8":{"2":{"9":{"4":{"1":{"df":0,"docs":{},"f":{"0":{"9":{"0":{"6":{"df":1,"docs":{"123":{"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":{}},"5":{"6":{"c":{"0":{"2":{"d":{"b":{"c":{"df":0,"docs":{},"e":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"3":{"3":{"d":{"df":0,"docs":{},"f":{"3":{"5":{"7":{"b":{"6":{"df":1,"docs":{"120":{"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":2,"docs":{"253":{"tf":1.0},"254":{"tf":1.0}}},"6":{"9":{"9":{"4":{"1":{"5":{"6":{"c":{"7":{"3":{"6":{"df":1,"docs":{"122":{"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":{}},"7":{"3":{"7":{"8":{"3":{"1":{".":{"6":{"7":{"1":{"0":{"7":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"3":{"3":{"4":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"4":{"9":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"0":{"df":1,"docs":{"112":{"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":{}},"d":{"df":0,"docs":{},"f":{"1":{"5":{"d":{"df":0,"docs":{},"e":{"4":{"4":{"1":{"b":{"df":1,"docs":{"121":{"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":{},"f":{"5":{"df":0,"docs":{},"f":{"c":{"7":{"df":0,"docs":{},"e":{"4":{"8":{"d":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"8":{"7":{"5":{"0":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"a":{"a":{"0":{"7":{"5":{"8":{"3":{"2":{"b":{"0":{"df":1,"docs":{"117":{"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":{}},"b":{"4":{"0":{"1":{"df":0,"docs":{},"f":{"9":{"df":0,"docs":{},"e":{"d":{"2":{"4":{"4":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"4":{"c":{"7":{"df":0,"docs":{},"e":{"9":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"2":{"0":{"a":{"a":{"b":{"df":0,"docs":{},"e":{"1":{"c":{"7":{"6":{"df":1,"docs":{"123":{"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":24,"docs":{"128":{"tf":2.449489742783178},"138":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"163":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"181":{"tf":1.0},"217":{"tf":1.4142135623730951},"232":{"tf":1.0},"238":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"254":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"264":{"tf":1.7320508075688772},"276":{"tf":1.4142135623730951},"277":{"tf":1.0},"279":{"tf":2.23606797749979},"282":{"tf":1.4142135623730951},"46":{"tf":1.0},"53":{"tf":1.7320508075688772},"63":{"tf":1.0}},"e":{"a":{"6":{"3":{"6":{"8":{"4":{"8":{"a":{"c":{"a":{"df":2,"docs":{"120":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"f":{"8":{"4":{"4":{"9":{"3":{"8":{"4":{"df":0,"docs":{},"e":{"c":{"3":{"df":1,"docs":{"120":{"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":{},"e":{"4":{"5":{"9":{"2":{"4":{"3":{"8":{"7":{"b":{"df":1,"docs":{"121":{"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":{}}},"s":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}}},"9":{"0":{"1":{".":{"4":{"5":{"4":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"8":{"4":{"3":{"2":{"c":{"a":{"8":{"4":{"df":0,"docs":{},"f":{"c":{"df":1,"docs":{"123":{"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":{}},"1":{"8":{"4":{"3":{"d":{"5":{"4":{"0":{"a":{"1":{"3":{"df":1,"docs":{"123":{"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":{}},"b":{"8":{"2":{"7":{"0":{"df":0,"docs":{},"f":{"2":{"a":{"4":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"4":{"8":{"2":{"2":{"c":{"3":{"d":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"2":{".":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"4":{"7":{"0":{"8":{"0":{"8":{"1":{"6":{"2":{"9":{"df":1,"docs":{"122":{"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":{}},"9":{"0":{"df":1,"docs":{"26":{"tf":2.8284271247461903}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"3":{"0":{"9":{"8":{"6":{"c":{"0":{"3":{"0":{"0":{"df":1,"docs":{"120":{"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":{}},"4":{"6":{"df":1,"docs":{"23":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{".":{"9":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"c":{"3":{"1":{"2":{"d":{"df":1,"docs":{"118":{"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":{}},"5":{"df":1,"docs":{"272":{"tf":1.0}}},"6":{"0":{"4":{"9":{"df":0,"docs":{},"f":{"3":{"a":{"df":0,"docs":{},"f":{"d":{"5":{"0":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"5":{"7":{"8":{"b":{"6":{"3":{"4":{"7":{"4":{"df":1,"docs":{"120":{"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":{}},"6":{"0":{"df":1,"docs":{"264":{"tf":1.0}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"2":{"df":1,"docs":{"264":{"tf":1.0}}},"3":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"9":{"b":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"e":{"b":{"3":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"e":{"5":{"2":{"2":{"7":{"9":{"5":{"9":{"4":{"df":1,"docs":{"123":{"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":{}}},"b":{"3":{"b":{"6":{"c":{"9":{"0":{"9":{"1":{"d":{"df":1,"docs":{"121":{"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":{},"e":{"4":{"3":{"2":{"5":{"df":0,"docs":{},"f":{"4":{"4":{"3":{"df":1,"docs":{"118":{"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":{"272":{"tf":1.0}},"e":{"a":{"b":{"df":0,"docs":{},"e":{"7":{"a":{"4":{"0":{"a":{"a":{"df":1,"docs":{"121":{"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":{}}},"7":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{},"f":{"9":{"1":{"a":{"7":{"c":{"df":0,"docs":{},"f":{"0":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"8":{"0":{"2":{"d":{"8":{"6":{"5":{"8":{"5":{"d":{"b":{"df":1,"docs":{"123":{"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":{}},"b":{"5":{"c":{"2":{"c":{"6":{"5":{"c":{"2":{"9":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"9":{"c":{"5":{"5":{"df":0,"docs":{},"f":{"7":{"d":{"4":{"7":{"c":{"0":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}},"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":{}},"a":{"a":{"1":{"2":{"0":{"6":{"df":0,"docs":{},"e":{"8":{"df":0,"docs":{},"f":{"4":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"b":{"9":{"8":{"4":{"df":0,"docs":{},"f":{"2":{"8":{"d":{"5":{"b":{"df":1,"docs":{"123":{"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":{}},"c":{"9":{"5":{"9":{"c":{"8":{"6":{"3":{"df":0,"docs":{},"f":{"8":{"2":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"9":{"4":{"8":{"b":{"5":{"a":{"2":{"0":{"df":1,"docs":{"122":{"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":{}},"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}},"f":{"1":{"c":{"2":{"8":{"b":{"b":{"7":{"5":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":12,"docs":{"128":{"tf":2.449489742783178},"139":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"239":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"53":{"tf":1.0}},"e":{"d":{"4":{"0":{"5":{"0":{"c":{"0":{"d":{"7":{"5":{"df":1,"docs":{"122":{"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":{},"e":{"b":{"3":{"a":{"a":{"3":{"3":{"a":{"df":0,"docs":{},"e":{"0":{"df":1,"docs":{"123":{"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":{}}},"s":{"df":2,"docs":{"236":{"tf":1.7320508075688772},"237":{"tf":1.7320508075688772}}}},"_":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"46":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}}},"o":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"p":{"df":1,"docs":{"138":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"_":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"b":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":2.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"111":{"tf":1.0},"161":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"c":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"v":{"6":{"_":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"6":{"_":{"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"u":{"6":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"3":{"2":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"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":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"d":{"d":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"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":{}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":7,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"u":{"3":{"2":{")":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":4,"docs":{"37":{"tf":1.7320508075688772},"38":{"tf":1.0},"52":{"tf":1.0},"83":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":2,"docs":{"37":{"tf":1.4142135623730951},"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":2,"docs":{"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"d":{"_":{"_":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"138":{"tf":2.23606797749979}}}}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"6":{"4":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"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":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"169":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"169":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"a":{".":{"df":0,"docs":{},"k":{".":{"a":{"df":2,"docs":{"117":{"tf":1.0},"119":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"1":{"0":{"4":{"2":{"3":{"b":{"8":{"7":{"a":{"7":{"df":1,"docs":{"120":{"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":{}},"4":{"0":{"df":0,"docs":{},"z":{"d":{"7":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"3":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"c":{"3":{"0":{"4":{"2":{"5":{"9":{"df":1,"docs":{"123":{"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":{}},"5":{"df":0,"docs":{},"e":{"8":{"c":{"0":{"7":{"0":{"5":{"9":{"d":{"0":{"df":1,"docs":{"123":{"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":{}}},"6":{"7":{"df":0,"docs":{},"e":{"d":{"b":{"df":0,"docs":{},"f":{"4":{"df":0,"docs":{},"f":{"b":{"6":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"7":{"6":{"5":{"8":{"df":0,"docs":{},"e":{"1":{"a":{"4":{"1":{"6":{"4":{"df":1,"docs":{"123":{"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":1,"docs":{"282":{"tf":1.0}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}}}},"a":{"2":{"df":0,"docs":{},"e":{"9":{"3":{"b":{"8":{"df":0,"docs":{},"e":{"5":{"8":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"df":0,"docs":{},"f":{"c":{"3":{"2":{"0":{"d":{"9":{"4":{"df":1,"docs":{"117":{"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":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":7,"docs":{"133":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"265":{"tf":2.0},"280":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"256":{"tf":1.0}},"e":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"t":{"df":4,"docs":{"126":{"tf":1.0},"264":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"s":{"df":11,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":2.23606797749979},"249":{"tf":1.0},"253":{"tf":1.7320508075688772},"284":{"tf":2.0}}}}},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":4,"docs":{"68":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"178":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":2.0},"126":{"tf":1.0},"58":{"tf":3.1622776601683795}}}},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"d":{"5":{"b":{"1":{"7":{"7":{"b":{"d":{"7":{"3":{"df":0,"docs":{},"f":{"df":1,"docs":{"121":{"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":{}},"d":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"200":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"123":{"tf":1.0},"207":{"tf":1.7320508075688772},"265":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":3,"docs":{"136":{"tf":2.0},"213":{"tf":1.4142135623730951},"283":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":17,"docs":{"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"187":{"tf":1.0},"204":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"264":{"tf":1.7320508075688772},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}}}}},"df":5,"docs":{"142":{"tf":1.0},"200":{"tf":1.0},"259":{"tf":1.0},"261":{"tf":1.0},"273":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"163":{"tf":1.0},"212":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"7":{"df":0,"docs":{},"e":{"c":{"1":{"3":{"8":{"3":{"3":{"6":{"1":{"df":1,"docs":{"123":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"82":{"tf":1.0}}},"df":4,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0},"83":{"tf":1.0}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"df":4,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"181":{"tf":2.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":1,"docs":{"272":{"tf":2.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":6,"docs":{"121":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0}}},"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":8,"docs":{"118":{"tf":1.0},"126":{"tf":2.449489742783178},"141":{"tf":1.4142135623730951},"157":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"264":{"tf":1.0},"284":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":3,"docs":{"162":{"tf":1.0},"257":{"tf":1.0},"282":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"h":{"a":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":5,"docs":{"200":{"tf":1.4142135623730951},"218":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"164":{"tf":1.0},"264":{"tf":1.0}}}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":4,"docs":{"131":{"tf":1.0},"138":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}}}}},"d":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"242":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":6,"docs":{"195":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"218":{"tf":1.0},"272":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"i":{"df":14,"docs":{"121":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"128":{"tf":1.4142135623730951},"133":{"tf":1.0},"136":{"tf":1.0},"163":{"tf":1.7320508075688772},"19":{"tf":1.0},"2":{"tf":1.0},"226":{"tf":1.4142135623730951},"230":{"tf":1.4142135623730951},"280":{"tf":1.0},"38":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"1":{"df":1,"docs":{"79":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"c":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":3,"docs":{"275":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"c":{"df":4,"docs":{"126":{"tf":1.4142135623730951},"136":{"tf":1.0},"204":{"tf":1.0},"264":{"tf":2.6457513110645907}}},"df":1,"docs":{"126":{"tf":1.0}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"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":3,"docs":{"116":{"tf":1.0},"126":{"tf":1.4142135623730951},"2":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"116":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"204":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"1":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"2":{"df":2,"docs":{"141":{"tf":1.0},"265":{"tf":1.7320508075688772}}},"3":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":14,"docs":{"133":{"tf":2.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"212":{"tf":1.7320508075688772},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.6457513110645907},"269":{"tf":1.0},"280":{"tf":2.0},"283":{"tf":1.0},"284":{"tf":1.0}},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{".":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"[":{"0":{"df":1,"docs":{"37":{"tf":1.0}}},"1":{"df":2,"docs":{"137":{"tf":1.0},"37":{"tf":1.0}}},"2":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"1":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}}},"df":43,"docs":{"128":{"tf":1.0},"130":{"tf":1.4142135623730951},"131":{"tf":2.23606797749979},"133":{"tf":2.0},"134":{"tf":1.7320508075688772},"136":{"tf":1.7320508075688772},"137":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.7320508075688772},"140":{"tf":2.0},"141":{"tf":1.0},"142":{"tf":1.0},"149":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.0},"210":{"tf":1.0},"212":{"tf":1.7320508075688772},"213":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":2.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"x":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}},"m":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"y":{"df":23,"docs":{"120":{"tf":2.6457513110645907},"121":{"tf":1.0},"149":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":2.0},"174":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"176":{"tf":2.0},"178":{"tf":1.7320508075688772},"182":{"tf":1.4142135623730951},"183":{"tf":1.0},"186":{"tf":1.0},"207":{"tf":1.4142135623730951},"233":{"tf":1.0},"234":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"272":{"tf":1.0},"39":{"tf":2.23606797749979},"40":{"tf":1.0},"41":{"tf":1.4142135623730951},"42":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.0}}}}},"o":{"c":{"df":0,"docs":{},"i":{"df":18,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"167":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"200":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"261":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"264":{"tf":1.0},"272":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"128":{"tf":1.0},"219":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"210":{"tf":2.0},"271":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"211":{"tf":2.0}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"\"":{":":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"217":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"216":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"212":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.4142135623730951},"220":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"213":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"214":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"218":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.7320508075688772},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":24,"docs":{"117":{"tf":3.1622776601683795},"126":{"tf":2.0},"133":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"196":{"tf":1.0},"200":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"250":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":4,"docs":{"153":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.0}}}}}},"r":{"df":1,"docs":{"141":{"tf":1.0}},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}},"o":{"df":4,"docs":{"212":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"t":{"df":6,"docs":{"133":{"tf":1.0},"144":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":15,"docs":{"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"b":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"210":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"b":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"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":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"250":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"212":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"214":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":1,"docs":{"214":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"1":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"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":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"221":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"_":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"222":{"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":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"231":{"tf":1.0},"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"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":{}}}},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"248":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":1,"docs":{"196":{"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":{}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"242":{"tf":1.0}},"l":{"(":{"3":{"0":{"df":1,"docs":{"228":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":4,"docs":{"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"{":{"1":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":1,"docs":{"224":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"0":{"0":{"5":{"df":0,"docs":{},"f":{"d":{"1":{"8":{"9":{"c":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"6":{"2":{"8":{"b":{"1":{"c":{"7":{"d":{"5":{"df":1,"docs":{"123":{"tf":2.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":{"3":{"d":{"8":{"8":{"0":{"7":{"2":{"1":{"7":{"2":{"df":1,"docs":{"123":{"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":{}},"2":{"1":{"9":{"7":{"7":{"5":{"5":{"b":{"2":{"6":{"3":{"df":1,"docs":{"117":{"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":{}},"3":{"2":{"c":{"c":{"5":{"b":{"9":{"a":{"3":{"4":{"6":{"df":1,"docs":{"123":{"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":{}},"4":{"2":{"6":{"c":{"df":0,"docs":{},"e":{"8":{"3":{"b":{"a":{"a":{"7":{"df":1,"docs":{"123":{"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":{}},"4":{"1":{"2":{"3":{"b":{"4":{"a":{"3":{"d":{"c":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"0":{"c":{"5":{"c":{"4":{"df":0,"docs":{},"e":{"0":{"2":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"b":{"3":{"1":{"4":{"1":{"4":{"9":{"7":{"0":{"df":1,"docs":{"123":{"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":{}},"5":{"c":{"d":{"a":{"df":0,"docs":{},"e":{"3":{"2":{"9":{"1":{"df":0,"docs":{},"f":{"7":{"df":1,"docs":{"122":{"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":{}},"7":{"4":{"1":{"df":0,"docs":{},"f":{"1":{"6":{"3":{"0":{"3":{"4":{"6":{"df":1,"docs":{"120":{"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":{}},"b":{"7":{"0":{"1":{"3":{"c":{"a":{"c":{"5":{"5":{"df":1,"docs":{"116":{"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":{}},"9":{"5":{"a":{"5":{"c":{"4":{"d":{"b":{"0":{"9":{"b":{"df":1,"docs":{"120":{"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":{}},"[":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"231":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"[":{"\"":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"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":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"\"":{"]":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"241":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"k":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}},"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":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"227":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"228":{"tf":1.0},"229":{"tf":1.0},"242":{"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":{}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"\"":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"2":{"b":{"2":{"3":{"2":{"1":{"0":{"8":{"d":{"3":{"df":1,"docs":{"122":{"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":{}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"124":{"tf":3.7416573867739413},"126":{"tf":2.6457513110645907},"186":{"tf":1.4142135623730951},"196":{"tf":1.0},"265":{"tf":1.0},"271":{"tf":1.0}}},"h":{"df":10,"docs":{"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"32":{"tf":2.0},"33":{"tf":1.0},"34":{"tf":3.4641016151377544},"35":{"tf":1.7320508075688772}},"r":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"263":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"168":{"tf":1.0}}}}},"c":{"3":{"4":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"6":{"5":{"a":{"6":{"5":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"6":{"b":{"1":{"b":{"7":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"256":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}},"e":{"=":{"2":{"6":{"4":{"4":{"5":{"8":{"df":1,"docs":{"257":{"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":167,"docs":{"11":{"tf":1.0},"119":{"tf":1.4142135623730951},"12":{"tf":1.0},"127":{"tf":2.0},"128":{"tf":1.4142135623730951},"129":{"tf":1.4142135623730951},"130":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"14":{"tf":2.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"143":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"156":{"tf":1.0},"157":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.7320508075688772},"204":{"tf":1.0},"205":{"tf":1.7320508075688772},"206":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"223":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.4142135623730951},"231":{"tf":1.0},"232":{"tf":1.4142135623730951},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.4142135623730951},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0},"255":{"tf":1.0},"256":{"tf":1.7320508075688772},"257":{"tf":1.4142135623730951},"259":{"tf":1.7320508075688772},"261":{"tf":2.449489742783178},"262":{"tf":1.0},"263":{"tf":2.0},"264":{"tf":2.0},"265":{"tf":1.4142135623730951},"266":{"tf":1.0},"267":{"tf":2.6457513110645907},"268":{"tf":1.0},"269":{"tf":2.0},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951},"276":{"tf":1.0},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.4142135623730951},"281":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"285":{"tf":1.7320508075688772},"286":{"tf":1.0},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"56":{"tf":1.0},"6":{"tf":1.0},"8":{"tf":1.4142135623730951}},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"13":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"上":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"、":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"a":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"全":{"df":0,"docs":{},"称":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"8":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"d":{"4":{"c":{"df":0,"docs":{},"f":{"0":{"df":0,"docs":{},"e":{"d":{"3":{"3":{"1":{"a":{"df":2,"docs":{"115":{"tf":1.0},"117":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"1":{"3":{"c":{"d":{"0":{"8":{"df":0,"docs":{},"f":{"1":{"0":{"df":1,"docs":{"121":{"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":20,"docs":{"138":{"tf":1.0},"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"8":{"7":{"0":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"7":{"d":{"2":{"df":1,"docs":{"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"141":{"tf":1.0},"277":{"tf":1.0}}}}},"df":6,"docs":{"200":{"tf":1.0},"207":{"tf":1.0},"217":{"tf":1.0},"265":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":7,"docs":{"136":{"tf":1.0},"139":{"tf":1.0},"150":{"tf":1.0},"229":{"tf":1.0},"244":{"tf":1.0},"263":{"tf":1.7320508075688772},"272":{"tf":1.4142135623730951}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"121":{"tf":1.0},"249":{"tf":1.0},"269":{"tf":1.0}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}},"w":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"203":{"tf":1.0},"265":{"tf":1.7320508075688772},"284":{"tf":1.0}}}}},"n":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":11,"docs":{"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"239":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}},"f":{"6":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"8":{"9":{"3":{"c":{"5":{"df":1,"docs":{"123":{"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":1,"docs":{"253":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.0}}},"m":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":1,"docs":{"260":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"213":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":6,"docs":{"126":{"tf":1.0},"208":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"215":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}}},"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"181":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":5,"docs":{"100":{"tf":2.0},"101":{"tf":1.0},"102":{"tf":1.4142135623730951},"98":{"tf":1.7320508075688772},"99":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"264":{"tf":2.0}}}}}}}},"t":{"df":5,"docs":{"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":2,"docs":{"277":{"tf":1.7320508075688772},"278":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{":":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":1,"docs":{"284":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"265":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":2.449489742783178},"53":{"tf":2.23606797749979},"58":{"tf":2.0}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"df":1,"docs":{"146":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"63":{"tf":1.0}}}},"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":20,"docs":{"10":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772},"64":{"tf":1.0},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0},"70":{"tf":2.6457513110645907},"71":{"tf":1.0},"72":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.0},"84":{"tf":2.6457513110645907},"85":{"tf":1.0},"86":{"tf":1.0}},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"基":{"df":0,"docs":{},"于":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"库":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"用":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"10":{"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":{},"将":{"*":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"10":{"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":{},"用":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"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":{},"代":{"df":0,"docs":{},"码":{"df":0,"docs":{},":":{"2":{"df":0,"docs":{},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":5,"docs":{"163":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"273":{"tf":1.0}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"285":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"117":{"tf":1.0},"217":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"'":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"269":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"138":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"253":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"df":7,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}}}}}},"{":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"=":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"219":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"131":{"tf":1.0},"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"210":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"132":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"211":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"217":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"216":{"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":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"=":{"\"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"134":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"213":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"135":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"214":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"=":{"\"":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"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":{}}}},"c":{"df":1,"docs":{"16":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"220":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"221":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"222":{"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"(":{"b":{"'":{"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"274":{"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":{}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"251":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"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":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"231":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"h":{"df":1,"docs":{"137":{"tf":1.0}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":2,"docs":{"195":{"tf":1.0},"253":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"247":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"248":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"t":{"df":1,"docs":{"228":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"m":{"(":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"225":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"=":{"\"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"224":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"196":{"tf":1.4142135623730951},"218":{"tf":1.0}}}},"df":0,"docs":{}}},"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"23":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":13,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"h":{"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":12,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"27":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":23,"docs":{"11":{"tf":1.0},"12":{"tf":1.0},"16":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"/":{"df":0,"docs":{},"e":{"c":{"c":{"df":1,"docs":{"16":{"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":{}}}}}},"2":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"136":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"231":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":6,"docs":{"200":{"tf":1.0},"37":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"82":{"tf":1.0}}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"171":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"1":{"df":1,"docs":{"183":{"tf":1.0}}},"2":{"df":1,"docs":{"183":{"tf":1.0}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"171":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"182":{"tf":1.4142135623730951}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"171":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"&":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}}},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":4,"docs":{"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"6":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"180":{"tf":1.4142135623730951},"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772}}}},"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":{}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"179":{"tf":1.0},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"179":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"179":{"tf":1.4142135623730951},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"200":{"tf":1.0}}}}}}},"f":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"177":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"169":{"tf":1.0}},"e":{"(":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"219":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"c":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"123":{"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":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"d":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"b":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.449489742783178}}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{},"m":{"a":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"6":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"t":{"a":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"3":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.8284271247461903}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"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":{},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"c":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"123":{"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":{}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}},"e":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"d":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"k":{"_":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"b":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.6457513110645907}},"e":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":0,"docs":{},"p":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"123":{"tf":1.0}}}}}}}}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"c":{"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"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":{}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}},"y":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"p":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":1,"docs":{"123":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"df":1,"docs":{"123":{"tf":1.0}}},"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":2.0}}}}}}}},"v":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":1,"docs":{"123":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"d":{"df":0,"docs":{},"p":{"_":{"a":{"d":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"123":{"tf":1.0},"124":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":1,"docs":{"123":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"(":{"&":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"149":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"37":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"128":{"tf":1.0},"149":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"147":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":21,"docs":{"128":{"tf":1.0},"147":{"tf":1.4142135623730951},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772},"27":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"150":{"tf":2.0},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"148":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"155":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"155":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":2,"docs":{"128":{"tf":1.0},"152":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"#":{"2":{"7":{"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"282":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"170":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"170":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"128":{"tf":1.0},"183":{"tf":1.4142135623730951}},"s":{"(":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"183":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.4142135623730951},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"(":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"172":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"142":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":13,"docs":{"128":{"tf":1.0},"146":{"tf":1.4142135623730951},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":2,"docs":{"203":{"tf":1.7320508075688772},"254":{"tf":1.0}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"151":{"tf":1.0}}}}}}}}},"df":4,"docs":{"128":{"tf":1.0},"151":{"tf":1.4142135623730951},"240":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"177":{"tf":1.0}}}}}},"df":2,"docs":{"128":{"tf":1.0},"177":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"121":{"tf":1.0}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"、":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"38":{"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":{}}}}}},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}},"e":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"120":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":9,"docs":{"120":{"tf":1.0},"192":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"120":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":3,"docs":{"120":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":3,"docs":{"120":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"120":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.0},"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"120":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"142":{"tf":1.0},"37":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"_":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"h":{"df":1,"docs":{"111":{"tf":1.0}},"s":{"(":{"df":0,"docs":{},"l":{"3":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"128":{"tf":1.0},"157":{"tf":1.7320508075688772}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"176":{"tf":1.0}}}}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"176":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"176":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"175":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"128":{"tf":1.0},"175":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"41":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"160":{"tf":1.0},"232":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"160":{"tf":1.0}}}},"df":0,"docs":{}}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"155":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"26":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"34":{"tf":1.0},"37":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"29":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":10,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"31":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"&":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"144":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"145":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"145":{"tf":1.4142135623730951}}}}}},"df":5,"docs":{"128":{"tf":1.0},"144":{"tf":2.0},"204":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"&":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"41":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"s":{"df":3,"docs":{"128":{"tf":1.0},"153":{"tf":1.7320508075688772},"204":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"(":{"&":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"153":{"tf":1.0}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"154":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"154":{"tf":1.4142135623730951},"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"204":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}},"y":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"178":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.4142135623730951},"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"_":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"118":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"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":1,"docs":{"118":{"tf":1.0}}}}}}},"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}}}},"s":{"df":0,"docs":{},"k":{"b":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":3,"docs":{"118":{"tf":1.0},"124":{"tf":1.0},"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"d":{"df":0,"docs":{},"p":{"df":2,"docs":{"118":{"tf":1.0},"124":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"217":{"tf":1.4142135623730951}},"r":{"a":{"df":0,"docs":{},"m":{"_":{"_":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"185":{"tf":1.0}}}},"df":0,"docs":{}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":1,"docs":{"185":{"tf":1.0}}}}}}},"df":2,"docs":{"128":{"tf":1.0},"185":{"tf":1.4142135623730951}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"b":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"163":{"tf":1.0},"242":{"tf":1.0}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}},"df":7,"docs":{"128":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"242":{"tf":1.4142135623730951}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"来":{"df":0,"docs":{},"轮":{"df":0,"docs":{},"询":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.0}}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":2,"docs":{"128":{"tf":1.0},"186":{"tf":2.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"186":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":2,"docs":{"128":{"tf":1.0},"173":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"173":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"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":2,"docs":{"128":{"tf":1.0},"184":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"169":{"tf":1.4142135623730951}},"e":{"(":{"\"":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"171":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"170":{"tf":1.0},"182":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"176":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"178":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"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":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"(":{"\"":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"169":{"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":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"283":{"tf":1.0}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"(":{"\"":{"%":{"d":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":4,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}},"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"t":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"s":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":14,"docs":{"128":{"tf":1.0},"159":{"tf":1.4142135623730951},"17":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"26":{"tf":2.0},"269":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"6":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"181":{"tf":1.4142135623730951},"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"219":{"tf":1.0},"220":{"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":119,"docs":{"108":{"tf":1.0},"11":{"tf":3.0},"111":{"tf":1.0},"112":{"tf":1.4142135623730951},"114":{"tf":1.7320508075688772},"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":5.656854249492381},"118":{"tf":1.0},"119":{"tf":1.0},"12":{"tf":1.7320508075688772},"120":{"tf":1.0},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"125":{"tf":1.7320508075688772},"126":{"tf":5.291502622129181},"128":{"tf":2.0},"129":{"tf":1.4142135623730951},"13":{"tf":1.0},"131":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":2.6457513110645907},"142":{"tf":2.449489742783178},"144":{"tf":1.7320508075688772},"145":{"tf":1.4142135623730951},"15":{"tf":3.4641016151377544},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.0},"16":{"tf":2.23606797749979},"160":{"tf":1.0},"163":{"tf":1.7320508075688772},"168":{"tf":1.0},"17":{"tf":1.0},"178":{"tf":1.7320508075688772},"18":{"tf":2.23606797749979},"186":{"tf":1.7320508075688772},"192":{"tf":1.0},"195":{"tf":1.4142135623730951},"2":{"tf":1.7320508075688772},"20":{"tf":2.23606797749979},"203":{"tf":1.7320508075688772},"204":{"tf":1.0},"207":{"tf":2.449489742783178},"210":{"tf":2.0},"211":{"tf":2.0},"212":{"tf":2.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"219":{"tf":1.4142135623730951},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"24":{"tf":1.4142135623730951},"240":{"tf":1.0},"242":{"tf":1.7320508075688772},"252":{"tf":1.4142135623730951},"253":{"tf":2.23606797749979},"254":{"tf":2.449489742783178},"259":{"tf":2.23606797749979},"26":{"tf":2.0},"260":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"271":{"tf":2.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"282":{"tf":1.4142135623730951},"283":{"tf":2.23606797749979},"284":{"tf":1.7320508075688772},"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.4142135623730951},"34":{"tf":2.0},"35":{"tf":1.4142135623730951},"37":{"tf":2.0},"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.7320508075688772},"42":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"45":{"tf":2.6457513110645907},"46":{"tf":2.449489742783178},"47":{"tf":2.0},"48":{"tf":2.23606797749979},"49":{"tf":1.7320508075688772},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"51":{"tf":1.0},"52":{"tf":2.23606797749979},"53":{"tf":2.6457513110645907},"54":{"tf":2.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":2.0},"6":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"64":{"tf":1.4142135623730951},"7":{"tf":1.0}},"f":{"df":2,"docs":{"169":{"tf":1.4142135623730951},"181":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"117":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":2,"docs":{"11":{"tf":1.0},"6":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":3,"docs":{"56":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"a":{"d":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}}}}},"s":{"=":{"8":{"df":0,"docs":{},"k":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"f":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":2.0}}},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}}}},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":7,"docs":{"135":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"176":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"f":{"[":{"6":{"4":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"134":{"tf":1.0},"149":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":22,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.0},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.7320508075688772},"275":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"43":{"tf":1.7320508075688772},"44":{"tf":2.23606797749979},"45":{"tf":1.0},"46":{"tf":2.0},"47":{"tf":1.0},"48":{"tf":1.4142135623730951},"83":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},")":{"df":0,"docs":{},"来":{"df":0,"docs":{},"实":{"df":0,"docs":{},"现":{"df":0,"docs":{},"。":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}},"g":{"df":1,"docs":{"272":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"79":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":2,"docs":{"126":{"tf":1.4142135623730951},"259":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"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":{},"多":{"3":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}},"y":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":8,"docs":{"144":{"tf":1.0},"145":{"tf":1.7320508075688772},"153":{"tf":1.0},"154":{"tf":1.7320508075688772},"162":{"tf":1.0},"186":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}},"c":{"/":{"c":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}},"0":{"4":{"1":{"6":{"7":{"c":{"df":0,"docs":{},"e":{"2":{"c":{"a":{"0":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"0":{"d":{"2":{"b":{"9":{"6":{"8":{"a":{"df":1,"docs":{"117":{"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":{}},"a":{"5":{"a":{"2":{"1":{"c":{"2":{"5":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"123":{"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":{}},"4":{"6":{"6":{"4":{"6":{"d":{"0":{"4":{"8":{"4":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"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":{}},"b":{"c":{"df":0,"docs":{},"f":{"b":{"3":{"8":{"a":{"9":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"d":{"0":{"b":{"df":0,"docs":{},"f":{"b":{"4":{"5":{"0":{"6":{"8":{"df":1,"docs":{"123":{"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":{},"f":{"6":{"6":{"9":{"9":{"d":{"df":0,"docs":{},"f":{"c":{"b":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"5":{"df":0,"docs":{},"f":{"b":{"1":{"9":{"9":{"3":{"7":{"4":{"5":{"5":{"df":1,"docs":{"123":{"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":{}}},"6":{"d":{"3":{"0":{"df":0,"docs":{},"e":{"8":{"3":{"9":{"1":{"b":{"8":{"df":1,"docs":{"122":{"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":{}},"7":{"a":{"df":0,"docs":{},"e":{"c":{"5":{"9":{"6":{"5":{"7":{"b":{"6":{"df":1,"docs":{"122":{"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":{}},"8":{"9":{"9":{"6":{"c":{"9":{"8":{"df":0,"docs":{},"f":{"7":{"0":{"3":{"df":1,"docs":{"123":{"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":{}},"[":{"8":{"0":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"f":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"16":{"tf":1.0},"249":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"d":{"_":{"df":0,"docs":{},"m":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":2,"docs":{"174":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":6,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.7320508075688772},"229":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":43,"docs":{"117":{"tf":2.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":2.0},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"171":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.23606797749979},"2":{"tf":1.4142135623730951},"210":{"tf":2.23606797749979},"211":{"tf":2.23606797749979},"213":{"tf":2.23606797749979},"214":{"tf":1.7320508075688772},"218":{"tf":1.0},"219":{"tf":1.0},"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":2.449489742783178},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":2.0},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951}},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"a":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"258":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"274":{"tf":1.0}}},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"34":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":14,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.0},"213":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.0},"258":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"280":{"tf":1.0}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"211":{"tf":1.0},"264":{"tf":1.0}}}},"df":11,"docs":{"112":{"tf":1.4142135623730951},"133":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"280":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":2.0}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.7320508075688772},"216":{"tf":1.0}}},"y":{">":{":":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}},"s":{"df":9,"docs":{"141":{"tf":1.7320508075688772},"157":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"204":{"tf":1.0},"243":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}}},"b":{"2":{"0":{"b":{"0":{"8":{"df":0,"docs":{},"e":{"a":{"d":{"4":{"0":{"df":1,"docs":{"123":{"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":{}},"4":{"d":{"0":{"3":{"a":{"b":{"4":{"9":{"9":{"d":{"df":1,"docs":{"121":{"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":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"c":{"8":{"b":{"0":{"b":{"9":{"2":{"a":{"1":{"6":{"9":{"df":1,"docs":{"117":{"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":{}},"d":{"3":{"3":{"9":{"4":{"3":{"1":{"7":{"6":{"5":{"3":{"df":1,"docs":{"123":{"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":{}},"8":{"6":{"d":{"1":{"df":0,"docs":{},"f":{"d":{"2":{"1":{"0":{"2":{"df":1,"docs":{"123":{"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":1,"docs":{"259":{"tf":1.4142135623730951}}},"df":36,"docs":{"128":{"tf":1.0},"129":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"26":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.7320508075688772},"277":{"tf":2.0},"279":{"tf":2.0},"282":{"tf":2.449489742783178},"283":{"tf":1.0},"284":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{}}}},"f":{"7":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"e":{"6":{"6":{"0":{"df":0,"docs":{},"f":{"2":{"d":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"174":{"tf":1.0},"207":{"tf":1.4142135623730951}},"s":{"=":{"[":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":6,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":2.449489742783178},"120":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"219":{"tf":1.0},"259":{"tf":3.3166247903554}},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"7":{"7":{"df":1,"docs":{"259":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"259":{"tf":1.0}}}}}},"df":1,"docs":{"259":{"tf":2.0}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":2.23606797749979}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":4,"docs":{"141":{"tf":1.0},"211":{"tf":1.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"r":{"df":28,"docs":{"111":{"tf":1.0},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"149":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"26":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0},"83":{"tf":1.0}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"k":{"df":11,"docs":{"123":{"tf":1.0},"126":{"tf":1.0},"127":{"tf":1.0},"181":{"tf":1.0},"203":{"tf":1.0},"215":{"tf":1.4142135623730951},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"264":{"tf":1.0},"272":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"16":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}},"s":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}},"i":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":2,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"s":{"df":5,"docs":{"17":{"tf":1.0},"203":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":5,"docs":{"37":{"tf":1.0},"52":{"tf":1.7320508075688772},"69":{"tf":1.7320508075688772},"78":{"tf":1.7320508075688772},"83":{"tf":1.0}}}}},"r":{"df":5,"docs":{"128":{"tf":1.0},"235":{"tf":1.7320508075688772},"236":{"tf":1.0},"238":{"tf":1.0},"279":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"c":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"70":{"tf":1.0},"84":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"251":{"tf":1.0},"271":{"tf":1.0},"70":{"tf":1.4142135623730951},"84":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":2.0}}}},"u":{"d":{"df":1,"docs":{"109":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":2,"docs":{"141":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{"df":25,"docs":{"123":{"tf":1.0},"126":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"203":{"tf":1.4142135623730951},"212":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"82":{"tf":1.0},"9":{"tf":1.0}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"12":{"tf":1.0},"246":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},",":{"df":0,"docs":{},"该":{"df":0,"docs":{},"项":{"df":0,"docs":{},"目":{"df":0,"docs":{},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"8":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"=":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"[":{"0":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":11,"docs":{"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":1,"docs":{"141":{"tf":1.0}},"n":{"d":{"df":7,"docs":{"259":{"tf":1.4142135623730951},"260":{"tf":1.0},"263":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":25,"docs":{"142":{"tf":1.0},"163":{"tf":1.4142135623730951},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":2.23606797749979},"265":{"tf":2.23606797749979},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"52":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":1.0},"71":{"tf":1.0},"78":{"tf":1.0},"79":{"tf":1.0},"85":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"203":{"tf":1.0},"280":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":8,"docs":{"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0}}}},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"280":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":5,"docs":{"159":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":1,"docs":{"265":{"tf":1.0}}},"t":{"df":3,"docs":{"123":{"tf":1.7320508075688772},"203":{"tf":1.4142135623730951},"254":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":20,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"116":{"tf":1.4142135623730951},"12":{"tf":1.0},"126":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"207":{"tf":1.4142135623730951},"23":{"tf":1.0},"256":{"tf":1.4142135623730951},"26":{"tf":1.0},"271":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":2.0},"53":{"tf":1.4142135623730951},"59":{"tf":1.0},"63":{"tf":1.0},"8":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"272":{"tf":1.0}}},"x":{"df":2,"docs":{"274":{"tf":1.0},"284":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"122":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"150":{"tf":1.0},"218":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"251":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":5,"docs":{"159":{"tf":1.0},"192":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"200":{"tf":1.0},"265":{"tf":2.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"126":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"c":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"2":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"m":{"=":{"df":0,"docs":{},"i":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"126":{"tf":1.0}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"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":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"6":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"6":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"=":{"\"":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{",":{"df":0,"docs":{},"y":{"a":{"df":0,"docs":{},"m":{"a":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"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":1,"docs":{"141":{"tf":1.0}}}},"w":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}}},"p":{"a":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":15,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.4142135623730951},"17":{"tf":1.0},"204":{"tf":1.4142135623730951},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"u":{"df":1,"docs":{"141":{"tf":1.0}},"r":{"df":5,"docs":{"125":{"tf":1.7320508075688772},"126":{"tf":2.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"127":{"tf":1.0},"265":{"tf":1.4142135623730951}}}}}},"n":{"df":1,"docs":{"118":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"108":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"108":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"264":{"tf":2.449489742783178},"66":{"tf":1.0},"69":{"tf":1.0},"75":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"123":{"tf":1.0},"254":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"116":{"tf":1.4142135623730951},"274":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":14,"docs":{"138":{"tf":2.23606797749979},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.7320508075688772},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"151":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"206":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":3,"docs":{"163":{"tf":1.0},"229":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"229":{"tf":1.0}}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":8,"docs":{"137":{"tf":1.0},"141":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"239":{"tf":1.0},"258":{"tf":1.0},"268":{"tf":1.0},"285":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.4142135623730951},"224":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}}},"x":{"df":0,"docs":{},"t":{"df":6,"docs":{"131":{"tf":1.0},"133":{"tf":1.0},"265":{"tf":1.7320508075688772},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":7,"docs":{"195":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"285":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"207":{"tf":1.0},"249":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"155":{"tf":1.0}}},"t":{"df":1,"docs":{"281":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":7,"docs":{"144":{"tf":1.0},"145":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"217":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"y":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}}},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"138":{"tf":1.0},"251":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"134":{"tf":1.0},"135":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"=":{"5":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":19,"docs":{"171":{"tf":1.4142135623730951},"173":{"tf":1.0},"174":{"tf":1.0},"176":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.7320508075688772},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"265":{"tf":1.7320508075688772},"273":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.6457513110645907},"53":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"126":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"[":{"1":{"]":{".":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":29,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"269":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"37":{"tf":1.4142135623730951},"53":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"122":{"tf":1.0}}}},"u":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"c":{"df":0,"docs":{},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{".":{"1":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":24,"docs":{"120":{"tf":2.0},"150":{"tf":1.0},"163":{"tf":2.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.7320508075688772},"194":{"tf":1.0},"196":{"tf":1.4142135623730951},"225":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0},"49":{"tf":1.7320508075688772},"50":{"tf":1.4142135623730951},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"83":{"tf":2.0}},"s":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":32,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"151":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"207":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"121":{"tf":1.7320508075688772},"283":{"tf":1.0}}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":2.23606797749979}}}}},"t":{".":{"c":{"_":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}}}}}}}},"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{")":{")":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951}}}}}},"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":{},"r":{"df":0,"docs":{},"l":{"df":8,"docs":{"127":{"tf":1.0},"264":{"tf":2.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.7320508075688772},"279":{"tf":1.0},"282":{"tf":1.7320508075688772},"79":{"tf":1.0}}}},"x":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":1,"docs":{"242":{"tf":1.0}}}}}}},"df":44,"docs":{"111":{"tf":1.4142135623730951},"131":{"tf":1.7320508075688772},"132":{"tf":1.4142135623730951},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.4142135623730951},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"193":{"tf":1.4142135623730951},"195":{"tf":1.7320508075688772},"196":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"282":{"tf":1.0},"283":{"tf":1.7320508075688772},"284":{"tf":1.0},"29":{"tf":1.0},"37":{"tf":2.0},"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":2.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":2.23606797749979},"83":{"tf":1.4142135623730951}},":":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":13,"docs":{"123":{"tf":1.0},"142":{"tf":1.0},"147":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"155":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"195":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"237":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"183":{"tf":1.0}}}}}},"df":9,"docs":{"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}}}}}},"t":{"df":1,"docs":{"269":{"tf":1.0}}}},"y":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{".":{".":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"3":{"1":{"df":2,"docs":{"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979}}},"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}},"0":{"0":{"0":{"3":{"df":0,"docs":{},"e":{"c":{"0":{"1":{"c":{"6":{"6":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"5":{"5":{"1":{"2":{"6":{"1":{"8":{"0":{"5":{"6":{"df":1,"docs":{"123":{"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":{}},"2":{"4":{"8":{"5":{"c":{"4":{"2":{"4":{"2":{"a":{"8":{"df":1,"docs":{"123":{"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":{}},"b":{"a":{"0":{"9":{"c":{"1":{"7":{"a":{"0":{"6":{"df":1,"docs":{"117":{"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":{}},"3":{"a":{"a":{"4":{"5":{"c":{"df":0,"docs":{},"e":{"6":{"b":{"9":{"4":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"4":{"4":{"5":{"5":{"1":{"6":{"9":{"6":{"6":{"d":{"c":{"df":1,"docs":{"122":{"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":{}},"5":{"8":{"df":0,"docs":{},"e":{"4":{"6":{"8":{"b":{"1":{"1":{"1":{"2":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}}},"a":{"3":{"b":{"1":{"df":0,"docs":{},"f":{"6":{"9":{"1":{"8":{"6":{"df":2,"docs":{"120":{"tf":1.0},"123":{"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":{}},"6":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"0":{"8":{"a":{"8":{"7":{"2":{"b":{"df":1,"docs":{"123":{"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":{}},"7":{"1":{"9":{"6":{"2":{"df":0,"docs":{},"f":{"3":{"df":0,"docs":{},"e":{"6":{"2":{"7":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"b":{"a":{"d":{"4":{"df":0,"docs":{},"e":{"7":{"4":{"df":0,"docs":{},"e":{"df":2,"docs":{"117":{"tf":1.0},"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"4":{"c":{"b":{"9":{"b":{"6":{"7":{"0":{"5":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{}},"8":{"3":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"4":{"b":{"df":0,"docs":{},"f":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"5":{"2":{"5":{"c":{"a":{"6":{"2":{"c":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}}},"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":{}},"9":{"8":{"4":{"7":{"d":{"3":{"1":{"0":{"a":{"b":{"4":{"df":1,"docs":{"123":{"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":{},"n":{"df":2,"docs":{"137":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":1,"docs":{"117":{"tf":1.0}},"n":{"df":1,"docs":{"260":{"tf":1.0}}},"t":{"a":{"(":{"c":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"111":{"tf":2.0}}},"df":0,"docs":{}}},"s":{"df":4,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0}},"z":{"df":1,"docs":{"83":{"tf":1.0}}}},"t":{"df":5,"docs":{"160":{"tf":1.4142135623730951},"163":{"tf":2.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.23606797749979}}}},"df":29,"docs":{"111":{"tf":1.7320508075688772},"117":{"tf":1.0},"122":{"tf":1.0},"128":{"tf":1.0},"143":{"tf":1.4142135623730951},"160":{"tf":2.23606797749979},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":3.0},"164":{"tf":2.0},"165":{"tf":1.4142135623730951},"166":{"tf":2.23606797749979},"167":{"tf":2.449489742783178},"168":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"232":{"tf":3.3166247903554},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":3.3166247903554},"264":{"tf":1.0},"275":{"tf":2.449489742783178},"277":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"246":{"tf":1.0}}}}}}},"y":{"df":2,"docs":{"109":{"tf":1.0},"272":{"tf":1.0}}}},"b":{"2":{"0":{"df":0,"docs":{},"f":{"d":{"2":{"b":{"0":{"1":{"0":{"8":{"df":1,"docs":{"121":{"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":{}},"a":{"df":0,"docs":{},"f":{"d":{"7":{"d":{"d":{"d":{"6":{"2":{"3":{"df":1,"docs":{"123":{"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":{}},"c":{"4":{"b":{"b":{"0":{"df":0,"docs":{},"e":{"2":{"3":{"5":{"6":{"1":{"df":1,"docs":{"117":{"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":{}},"d":{"6":{"df":0,"docs":{},"e":{"1":{"0":{"df":0,"docs":{},"f":{"b":{"d":{"9":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"8":{"7":{"2":{"b":{"c":{"3":{"0":{"9":{"8":{"df":1,"docs":{"118":{"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":2,"docs":{"264":{"tf":1.0},"280":{"tf":2.449489742783178}}},"df":12,"docs":{"111":{"tf":1.4142135623730951},"134":{"tf":1.0},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"265":{"tf":3.4641016151377544},"269":{"tf":1.4142135623730951},"280":{"tf":1.7320508075688772},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":2.0}},"e":{"2":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"0":{"5":{"df":0,"docs":{},"f":{"4":{"8":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"123":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"8":{"df":0,"docs":{},"f":{"3":{"a":{"8":{"3":{"b":{"0":{"a":{"0":{"df":1,"docs":{"123":{"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":{}}},"9":{"c":{"b":{"b":{"a":{"a":{"d":{"b":{"a":{"5":{"df":1,"docs":{"120":{"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":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"207":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":10,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.4142135623730951},"156":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"215":{"tf":1.0},"223":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"r":{"df":11,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"0":{"9":{"2":{"c":{"d":{"7":{"3":{"c":{"2":{"df":1,"docs":{"123":{"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":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":22,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.0},"172":{"tf":1.4142135623730951},"175":{"tf":1.4142135623730951},"176":{"tf":1.0},"177":{"tf":1.4142135623730951},"186":{"tf":1.0},"192":{"tf":1.0},"204":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"238":{"tf":1.0},"249":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":3,"docs":{"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"275":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":38,"docs":{"111":{"tf":1.4142135623730951},"133":{"tf":1.4142135623730951},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.7320508075688772},"17":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"232":{"tf":2.0},"242":{"tf":2.0},"254":{"tf":1.0},"265":{"tf":2.23606797749979},"269":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":2.0},"277":{"tf":1.0},"283":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"46":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"274":{"tf":1.0},"34":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":9,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"189":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"82":{"tf":1.7320508075688772},"83":{"tf":1.4142135623730951}}}},"df":6,"docs":{"272":{"tf":2.0},"274":{"tf":1.7320508075688772},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"i":{"df":2,"docs":{"141":{"tf":1.4142135623730951},"253":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"169":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"c":{"df":5,"docs":{"144":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"272":{"tf":1.0}}}}},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"b":{"df":5,"docs":{"129":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"274":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"29":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"178":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}},"t":{"df":1,"docs":{"79":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":3,"docs":{"128":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"221":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"222":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}}},"df":4,"docs":{"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"250":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}}},"df":4,"docs":{"155":{"tf":1.7320508075688772},"217":{"tf":1.7320508075688772},"218":{"tf":1.0},"263":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":33,"docs":{"12":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":1.0},"267":{"tf":2.0},"268":{"tf":1.0},"269":{"tf":1.0},"27":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0},"286":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"i":{"c":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"179":{"tf":1.0},"218":{"tf":2.0},"264":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"[":{"c":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"3":{"2":{"(":{"0":{"df":1,"docs":{"196":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}},"f":{"d":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"181":{"tf":1.0},"186":{"tf":1.0},"195":{"tf":1.0},"207":{"tf":1.0},"251":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}}}}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"g":{"df":1,"docs":{"265":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"117":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"150":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"147":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"128":{"tf":1.0},"137":{"tf":1.0},"256":{"tf":1.4142135623730951},"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":7,"docs":{"147":{"tf":1.0},"167":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"217":{"tf":1.0},"243":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":2,"docs":{"142":{"tf":1.0},"259":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.0}}}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.0}}}}}}},"k":{"df":4,"docs":{"264":{"tf":2.8284271247461903},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"278":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":4,"docs":{"170":{"tf":1.0},"274":{"tf":1.7320508075688772},"278":{"tf":1.0},"281":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":2,"docs":{"249":{"tf":1.4142135623730951},"259":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"277":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":2,"docs":{"240":{"tf":1.0},"277":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"241":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"235":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":3,"docs":{"135":{"tf":1.0},"172":{"tf":1.0},"277":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":6,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"264":{"tf":2.0},"277":{"tf":1.0},"279":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"m":{"a":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"=":{"%":{"d":{"df":1,"docs":{"174":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":2,"docs":{"211":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"139":{"tf":1.0},"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":3,"docs":{"210":{"tf":1.0},"216":{"tf":1.0},"283":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"136":{"tf":1.0},"149":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"150":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":1.0},"27":{"tf":1.0}}}}}}},"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":2.0},"27":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"259":{"tf":1.7320508075688772},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":2.449489742783178}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"252":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"211":{"tf":1.0}}}}}}}},"df":1,"docs":{"274":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"169":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{},"’":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":5,"docs":{"131":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"155":{"tf":1.0},"218":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"240":{"tf":1.0},"284":{"tf":1.0}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{")":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"p":{"a":{"a":{"2":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":4,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":3,"docs":{"122":{"tf":4.795831523312719},"124":{"tf":1.0},"218":{"tf":2.449489742783178}}}}}},"o":{"df":0,"docs":{},"p":{"df":4,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"181":{"tf":1.0},"264":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"df":4,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0}}}},"u":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"123":{"tf":1.7320508075688772},"17":{"tf":1.0},"18":{"tf":1.0},"203":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":4,"docs":{"150":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"253":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":3,"docs":{"46":{"tf":2.0},"47":{"tf":1.0},"63":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"146":{"tf":1.0},"264":{"tf":1.0}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"269":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"g":{"df":3,"docs":{"188":{"tf":1.0},"207":{"tf":1.0},"265":{"tf":1.4142135623730951}}}},"2":{"df":0,"docs":{},"e":{"9":{"b":{"6":{"5":{"4":{"1":{"d":{"d":{"4":{"df":1,"docs":{"117":{"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":{}}},"5":{"4":{"b":{"c":{"d":{"df":0,"docs":{},"e":{"3":{"d":{"6":{"9":{"d":{"df":1,"docs":{"116":{"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":{}},"6":{"df":0,"docs":{},"f":{"2":{"d":{"d":{"0":{"df":0,"docs":{},"f":{"8":{"0":{"6":{"7":{"df":1,"docs":{"123":{"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":{}}},"9":{"d":{"d":{"b":{"b":{"7":{"7":{"0":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{}},"a":{"3":{"1":{"7":{"b":{"2":{"6":{"7":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"120":{"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":{}},"a":{"6":{"b":{"c":{"b":{"7":{"1":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"6":{"df":1,"docs":{"123":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"h":{"df":21,"docs":{"126":{"tf":1.4142135623730951},"133":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"218":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":1.7320508075688772},"284":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"63":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"277":{"tf":1.0}}}}}}}},"b":{"4":{"1":{"1":{"3":{"7":{"7":{"a":{"df":0,"docs":{},"e":{"d":{"9":{"df":1,"docs":{"123":{"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":{}},"9":{"a":{"3":{"6":{"b":{"df":0,"docs":{},"e":{"7":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"6":{"1":{"4":{"df":0,"docs":{},"f":{"6":{"8":{"7":{"3":{"6":{"df":2,"docs":{"117":{"tf":1.0},"118":{"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":{},"p":{"df":0,"docs":{},"f":{"df":122,"docs":{"0":{"tf":2.449489742783178},"1":{"tf":2.449489742783178},"10":{"tf":1.4142135623730951},"100":{"tf":1.7320508075688772},"101":{"tf":2.0},"102":{"tf":1.4142135623730951},"104":{"tf":1.7320508075688772},"105":{"tf":1.0},"106":{"tf":1.0},"107":{"tf":1.7320508075688772},"108":{"tf":1.4142135623730951},"109":{"tf":1.4142135623730951},"11":{"tf":3.605551275463989},"110":{"tf":2.449489742783178},"111":{"tf":2.23606797749979},"112":{"tf":1.7320508075688772},"113":{"tf":1.4142135623730951},"115":{"tf":1.4142135623730951},"117":{"tf":1.0},"12":{"tf":1.7320508075688772},"126":{"tf":1.0},"13":{"tf":2.6457513110645907},"14":{"tf":3.605551275463989},"15":{"tf":4.123105625617661},"16":{"tf":2.0},"17":{"tf":2.449489742783178},"18":{"tf":2.0},"19":{"tf":1.0},"2":{"tf":3.872983346207417},"20":{"tf":4.795831523312719},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"21":{"tf":3.0},"22":{"tf":1.4142135623730951},"23":{"tf":2.449489742783178},"24":{"tf":2.23606797749979},"25":{"tf":3.0},"252":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"26":{"tf":2.6457513110645907},"27":{"tf":2.0},"28":{"tf":3.0},"29":{"tf":3.3166247903554},"3":{"tf":2.23606797749979},"30":{"tf":2.449489742783178},"31":{"tf":2.23606797749979},"32":{"tf":2.8284271247461903},"33":{"tf":1.4142135623730951},"34":{"tf":2.8284271247461903},"35":{"tf":1.7320508075688772},"36":{"tf":2.449489742783178},"37":{"tf":2.6457513110645907},"38":{"tf":1.4142135623730951},"39":{"tf":2.449489742783178},"4":{"tf":3.3166247903554},"40":{"tf":1.7320508075688772},"41":{"tf":2.0},"42":{"tf":1.0},"43":{"tf":3.0},"44":{"tf":1.4142135623730951},"45":{"tf":1.4142135623730951},"46":{"tf":2.0},"47":{"tf":2.23606797749979},"48":{"tf":1.4142135623730951},"49":{"tf":2.0},"5":{"tf":3.0},"50":{"tf":1.0},"51":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":2.23606797749979},"54":{"tf":1.0},"55":{"tf":3.0},"56":{"tf":1.4142135623730951},"57":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"59":{"tf":2.23606797749979},"6":{"tf":2.23606797749979},"60":{"tf":1.4142135623730951},"61":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"63":{"tf":2.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":2.0},"7":{"tf":2.6457513110645907},"70":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":2.449489742783178},"74":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951},"76":{"tf":1.4142135623730951},"77":{"tf":1.4142135623730951},"78":{"tf":2.23606797749979},"79":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951},"80":{"tf":2.0},"81":{"tf":1.4142135623730951},"82":{"tf":2.0},"83":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0},"86":{"tf":1.0},"87":{"tf":2.449489742783178},"88":{"tf":1.4142135623730951},"89":{"tf":2.0},"9":{"tf":2.6457513110645907},"90":{"tf":1.4142135623730951},"91":{"tf":1.4142135623730951},"92":{"tf":2.449489742783178},"93":{"tf":1.4142135623730951},"94":{"tf":1.4142135623730951},"95":{"tf":2.0},"96":{"tf":1.4142135623730951},"97":{"tf":1.4142135623730951},"98":{"tf":2.449489742783178},"99":{"tf":1.4142135623730951}},"(":{"2":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}}},"c":{"c":{"df":18,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"16":{"tf":1.7320508075688772},"17":{"tf":1.7320508075688772},"20":{"tf":1.0},"23":{"tf":1.7320508075688772},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"54":{"tf":1.0},"59":{"tf":1.7320508075688772},"63":{"tf":1.0},"64":{"tf":1.0}}},"d":{"6":{"3":{"a":{"0":{"2":{"1":{"7":{"d":{"5":{"df":1,"docs":{"122":{"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":{},"l":{"df":0,"docs":{},"i":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":2.449489742783178},"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":2.0},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.0}}}}},"d":{"b":{"df":0,"docs":{},"f":{"8":{"c":{"0":{"1":{"d":{"df":0,"docs":{},"e":{"5":{"a":{"df":1,"docs":{"123":{"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":4,"docs":{"117":{"tf":1.0},"46":{"tf":2.6457513110645907},"63":{"tf":3.7416573867739413},"83":{"tf":3.7416573867739413}},"f":{"c":{"2":{"2":{"1":{"4":{"b":{"6":{"0":{"4":{"7":{"df":1,"docs":{"122":{"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":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"g":{"df":5,"docs":{"231":{"tf":1.0},"241":{"tf":1.0},"264":{"tf":2.0},"269":{"tf":1.0},"280":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"155":{"tf":1.0},"22":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":1,"docs":{"265":{"tf":2.23606797749979}}}},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":1,"docs":{"174":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":11,"docs":{"142":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.4142135623730951},"199":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}}}}}}}},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"126":{"tf":1.0},"207":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"83":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"63":{"tf":1.0}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"195":{"tf":1.0},"275":{"tf":1.0}}},"y":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"218":{"tf":1.0}}}}},"n":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"126":{"tf":4.0},"215":{"tf":1.0},"283":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"122":{"tf":1.0}}},"c":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}}},"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"d":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}},"df":11,"docs":{"195":{"tf":1.0},"218":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":2.23606797749979},"267":{"tf":1.0},"270":{"tf":1.0},"272":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}},"i":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":2,"docs":{"169":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"261":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"155":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"157":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"63":{"tf":1.0}}}}}},"s":{"1":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"157":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":2,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"218":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"r":{"df":2,"docs":{"136":{"tf":1.0},"207":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":32,"docs":{"126":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"173":{"tf":1.4142135623730951},"174":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"195":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"200":{"tf":2.23606797749979},"210":{"tf":1.0},"213":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"279":{"tf":1.0}}},"y":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"6":{"4":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"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":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"118":{"tf":1.0},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"268":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"128":{"tf":1.0},"255":{"tf":1.4142135623730951}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"45":{"tf":1.0}}}}},"q":{"df":1,"docs":{"260":{"tf":1.0}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"174":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"136":{"tf":1.0},"231":{"tf":1.0}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"r":{"df":2,"docs":{"264":{"tf":1.0},"83":{"tf":2.449489742783178}},"o":{"df":0,"docs":{},"r":{"df":14,"docs":{"128":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.4142135623730951},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"252":{"tf":1.4142135623730951},"254":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}}}}},"s":{"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":3,"docs":{"126":{"tf":1.0},"264":{"tf":2.0},"85":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"c":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"111":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":30,"docs":{"11":{"tf":2.8284271247461903},"12":{"tf":1.0},"15":{"tf":3.3166247903554},"16":{"tf":2.0},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"41":{"tf":1.4142135623730951},"42":{"tf":1.0},"47":{"tf":1.4142135623730951},"48":{"tf":1.7320508075688772},"5":{"tf":1.0},"53":{"tf":1.7320508075688772},"54":{"tf":1.0},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"60":{"tf":1.0},"64":{"tf":1.0},"7":{"tf":1.0},"79":{"tf":2.0},"80":{"tf":1.0}}},"df":0,"docs":{}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"265":{"tf":1.0},"63":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"a":{"df":0,"docs":{},"f":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"275":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"275":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"82":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"v":{"4":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":1.0}}}},"k":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"t":{"df":1,"docs":{"275":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"_":{"df":0,"docs":{},"u":{"df":3,"docs":{"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"df":43,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":2.6457513110645907},"128":{"tf":1.4142135623730951},"130":{"tf":1.4142135623730951},"133":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"140":{"tf":1.0},"141":{"tf":1.0},"160":{"tf":1.7320508075688772},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.4142135623730951},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"20":{"tf":1.0},"209":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":2.23606797749979},"242":{"tf":2.449489742783178},"275":{"tf":3.0},"284":{"tf":1.0},"37":{"tf":2.449489742783178},"38":{"tf":1.0},"39":{"tf":2.23606797749979},"40":{"tf":1.0},"41":{"tf":2.8284271247461903},"42":{"tf":2.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.7320508075688772}},"p":{"df":1,"docs":{"37":{"tf":2.8284271247461903}}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}},"df":0,"docs":{}},"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"&":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"163":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"163":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"127":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"264":{"tf":1.0},"270":{"tf":1.0}}}}}}}},"x":{"1":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.0}}},"2":{"df":1,"docs":{"182":{"tf":1.0}}},"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"207":{"tf":1.0}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"134":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}},"p":{"df":0,"docs":{},"l":{"df":118,"docs":{"126":{"tf":1.0},"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951},"133":{"tf":1.7320508075688772},"134":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"136":{"tf":1.7320508075688772},"137":{"tf":1.4142135623730951},"138":{"tf":1.4142135623730951},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":2.0},"142":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.7320508075688772},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"157":{"tf":1.0},"159":{"tf":1.7320508075688772},"160":{"tf":1.7320508075688772},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"164":{"tf":1.4142135623730951},"165":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.7320508075688772},"170":{"tf":2.0},"171":{"tf":2.0},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.4142135623730951},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.7320508075688772},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":2.0},"208":{"tf":1.7320508075688772},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"213":{"tf":2.0},"214":{"tf":2.0},"215":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"219":{"tf":1.7320508075688772},"220":{"tf":1.7320508075688772},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.7320508075688772},"225":{"tf":1.7320508075688772},"227":{"tf":1.7320508075688772},"228":{"tf":1.7320508075688772},"229":{"tf":1.7320508075688772},"231":{"tf":1.0},"232":{"tf":2.0},"233":{"tf":2.0},"235":{"tf":1.7320508075688772},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.7320508075688772},"242":{"tf":2.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.7320508075688772},"248":{"tf":1.7320508075688772},"249":{"tf":1.7320508075688772},"250":{"tf":1.7320508075688772},"251":{"tf":1.7320508075688772},"253":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.4142135623730951},"264":{"tf":3.3166247903554},"265":{"tf":2.8284271247461903},"269":{"tf":1.0},"272":{"tf":1.0},"279":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":1,"docs":{"108":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"53":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"269":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"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":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"y":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":1,"docs":{"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"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":{}}}}}}},"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"t":{"df":16,"docs":{"182":{"tf":1.0},"183":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"253":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":5,"docs":{"264":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.7320508075688772},"64":{"tf":1.0}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":5,"docs":{"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"261":{"tf":1.0},"264":{"tf":2.0},"41":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"t":{"df":12,"docs":{"118":{"tf":1.0},"126":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"157":{"tf":1.0},"195":{"tf":1.4142135623730951},"213":{"tf":1.0},"218":{"tf":1.0},"260":{"tf":1.4142135623730951},"271":{"tf":1.7320508075688772},"282":{"tf":1.0},"63":{"tf":1.0}}}},"v":{"df":2,"docs":{"138":{"tf":1.0},"41":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":10,"docs":{"155":{"tf":1.0},"169":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":1.7320508075688772},"204":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0}}}},"t":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":3,"docs":{"46":{"tf":1.7320508075688772},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"63":{"tf":1.4142135623730951}}}}},"df":18,"docs":{"219":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"23":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"250":{"tf":1.4142135623730951},"283":{"tf":1.0},"30":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"61":{"tf":1.7320508075688772},"62":{"tf":1.0},"63":{"tf":1.7320508075688772},"64":{"tf":1.0},"79":{"tf":1.0},"83":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"46":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":6,"docs":{"43":{"tf":2.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":2.0},"47":{"tf":1.0},"48":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"219":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"229":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"133":{"tf":1.0},"204":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":6,"docs":{"16":{"tf":1.0},"257":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"274":{"tf":1.0}}}}}}},"t":{"4":{"_":{"d":{"a":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":2.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":12,"docs":{"126":{"tf":1.4142135623730951},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"61":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":2,"docs":{"118":{"tf":1.0},"264":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"259":{"tf":1.4142135623730951}}}}},"r":{"a":{"df":1,"docs":{"249":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"f":{"1":{"a":{"2":{"df":0,"docs":{},"e":{"4":{"4":{"a":{"3":{"a":{"df":0,"docs":{},"e":{"c":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"b":{"9":{"5":{"0":{"9":{"c":{"2":{"df":0,"docs":{},"f":{"b":{"0":{"df":1,"docs":{"118":{"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":{}},"3":{"0":{"7":{"df":0,"docs":{},"f":{"a":{"2":{"c":{"b":{"4":{"c":{"9":{"df":1,"docs":{"123":{"tf":1.4142135623730951}}},"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":{"8":{"9":{"0":{"3":{"c":{"0":{"b":{"df":0,"docs":{},"f":{"4":{"df":1,"docs":{"123":{"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":{}},"8":{"1":{"b":{"df":0,"docs":{},"f":{"6":{"d":{"8":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"116":{"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":{}},"4":{"3":{"6":{"4":{"d":{"c":{"df":0,"docs":{},"f":{"c":{"8":{"6":{"d":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"123":{"tf":1.4142135623730951}}},"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":{}},"6":{"0":{"0":{"b":{"6":{"9":{"0":{"5":{"0":{"1":{"5":{"df":1,"docs":{"122":{"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":{}},"7":{"c":{"9":{"1":{"7":{"b":{"a":{"1":{"1":{"a":{"6":{"df":1,"docs":{"123":{"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":{}},"9":{"2":{"c":{"1":{"df":0,"docs":{},"e":{"1":{"8":{"3":{"6":{"0":{"4":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"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":{}},"a":{"2":{"8":{"d":{"c":{"b":{"8":{"2":{"a":{"3":{"8":{"df":1,"docs":{"123":{"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":{}},"c":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"63":{"tf":1.0}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"159":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":8,"docs":{"136":{"tf":1.7320508075688772},"141":{"tf":1.0},"157":{"tf":1.0},"163":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"155":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"l":{"df":0,"docs":{},"s":{"df":6,"docs":{"225":{"tf":1.0},"249":{"tf":1.0},"29":{"tf":1.0},"52":{"tf":2.23606797749979},"58":{"tf":2.0},"63":{"tf":1.0}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":4,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":2.449489742783178}}}}}},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"232":{"tf":1.0},"242":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}}}}}}},"b":{"df":0,"docs":{},"f":{"c":{"5":{"0":{"4":{"a":{"2":{"4":{"df":0,"docs":{},"f":{"5":{"df":2,"docs":{"117":{"tf":1.0},"120":{"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":{}}},"c":{"6":{"1":{"1":{"df":0,"docs":{},"f":{"4":{"7":{"df":0,"docs":{},"f":{"2":{"1":{"8":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"9":{"7":{"0":{"2":{"2":{"7":{"3":{"df":0,"docs":{},"e":{"2":{"df":0,"docs":{},"e":{"df":1,"docs":{"121":{"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":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"df":3,"docs":{"178":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}},"df":1,"docs":{"127":{"tf":1.0}},"e":{"8":{"0":{":":{":":{"2":{"0":{"0":{"0":{":":{"b":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"8":{"2":{":":{"3":{"a":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"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":{}},"9":{"4":{"c":{"c":{"2":{"9":{"0":{"df":0,"docs":{},"f":{"5":{"3":{"df":1,"docs":{"123":{"tf":2.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":{}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":15,"docs":{"114":{"tf":1.7320508075688772},"115":{"tf":1.0},"116":{"tf":1.4142135623730951},"117":{"tf":2.23606797749979},"118":{"tf":1.0},"119":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.4142135623730951},"123":{"tf":1.0},"124":{"tf":1.0},"125":{"tf":1.7320508075688772},"126":{"tf":1.0},"217":{"tf":1.0},"259":{"tf":1.0}}}}}},"c":{"5":{"6":{"df":0,"docs":{},"f":{"5":{"8":{"9":{"0":{"d":{"9":{"df":1,"docs":{"117":{"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":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"127":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":5,"docs":{"24":{"tf":1.0},"25":{"tf":2.0},"26":{"tf":2.8284271247461903},"27":{"tf":1.4142135623730951},"29":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":6,"docs":{"174":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"275":{"tf":1.0},"282":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":2,"docs":{"218":{"tf":1.0},"271":{"tf":1.0}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"26":{"tf":2.449489742783178},"27":{"tf":1.0}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"d":{"a":{"df":0,"docs":{},"f":{"b":{"df":0,"docs":{},"f":{"0":{"2":{"3":{"df":1,"docs":{"123":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"f":{"7":{"b":{"6":{"4":{"3":{"5":{"5":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"123":{"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":{"34":{"tf":1.4142135623730951}},"f":{"9":{"b":{"df":0,"docs":{},"f":{"6":{"1":{"b":{"b":{"6":{"2":{"b":{"c":{"0":{"df":1,"docs":{"85":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"8":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"8":{"8":{"c":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"7":{"1":{"0":{"9":{"d":{"6":{"9":{"0":{"0":{"df":1,"docs":{"85":{"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":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"8":{"1":{"0":{"3":{"6":{"5":{"9":{"df":0,"docs":{},"e":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"1":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"d":{"df":0,"docs":{},"f":{"5":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"df":0,"docs":{},"e":{"b":{"6":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"b":{"a":{"5":{"a":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"0":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"0":{"b":{"df":0,"docs":{},"e":{"9":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"3":{"8":{"5":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"7":{"8":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"d":{"0":{"a":{"df":0,"docs":{},"f":{"8":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"5":{"2":{"7":{"7":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"4":{"df":0,"docs":{},"e":{"c":{"5":{"df":0,"docs":{},"f":{"2":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"7":{"c":{"c":{"0":{"7":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"2":{"a":{"d":{"c":{"0":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":0,"docs":{},"l":{"d":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":2.0}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}}}}}}}},"df":5,"docs":{"137":{"tf":1.0},"150":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"e":{"=":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"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":21,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"133":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"178":{"tf":1.0},"181":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"253":{"tf":2.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":3.4641016151377544},"265":{"tf":3.3166247903554},"267":{"tf":1.0},"279":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"23":{"tf":2.6457513110645907},"26":{"tf":2.8284271247461903},"264":{"tf":1.0},"34":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"b":{"df":0,"docs":{},"y":{"_":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"g":{"df":3,"docs":{"52":{"tf":2.0},"53":{"tf":1.7320508075688772},"58":{"tf":2.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"120":{"tf":1.0},"126":{"tf":2.0},"13":{"tf":1.0},"21":{"tf":1.0},"25":{"tf":1.0},"258":{"tf":2.0},"259":{"tf":2.0},"260":{"tf":2.0},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"61":{"tf":1.0}},")":{"df":0,"docs":{},"程":{"df":0,"docs":{},"序":{"df":0,"docs":{},"。":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"58":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"n":{"_":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"275":{"tf":1.0}}}},"d":{"df":5,"docs":{"142":{"tf":1.0},"256":{"tf":1.0},"259":{"tf":1.0},"265":{"tf":1.7320508075688772},"285":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.0}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":15,"docs":{"131":{"tf":1.4142135623730951},"134":{"tf":1.0},"138":{"tf":1.0},"149":{"tf":1.0},"162":{"tf":1.0},"212":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0}}}}},"x":{"df":7,"docs":{"127":{"tf":1.0},"254":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"281":{"tf":1.4142135623730951}}}},"l":{"a":{"df":0,"docs":{},"g":{"df":26,"docs":{"121":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.4142135623730951},"200":{"tf":1.4142135623730951},"201":{"tf":2.0},"202":{"tf":2.0},"207":{"tf":1.0},"218":{"tf":2.6457513110645907},"219":{"tf":1.0},"225":{"tf":1.0},"243":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.0}},"s":{"=":{"0":{"df":1,"docs":{"243":{"tf":1.0}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"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":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}},"o":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"w":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}}}}},"df":3,"docs":{"159":{"tf":1.0},"224":{"tf":1.0},"280":{"tf":1.0}}}},"n":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"217":{"tf":2.0}}}},"df":0,"docs":{}}}},"=":{"b":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"\"":{",":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"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":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"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":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"213":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"211":{"tf":1.0},"214":{"tf":1.0},"279":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"a":{"c":{"df":4,"docs":{"210":{"tf":1.0},"215":{"tf":1.0},"272":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":2,"docs":{"271":{"tf":1.4142135623730951},"275":{"tf":1.0}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":8,"docs":{"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.7320508075688772},"214":{"tf":1.0},"216":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"250":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"221":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"222":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"215":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"218":{"tf":1.0}}}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.7320508075688772}}}}}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":4,"docs":{"123":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"253":{"tf":1.0}}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":12,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":1.0},"155":{"tf":1.0},"163":{"tf":1.0},"218":{"tf":1.0},"236":{"tf":1.0},"265":{"tf":2.0},"272":{"tf":1.0},"277":{"tf":1.0},"52":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.0}}}}},"k":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"269":{"tf":1.0}}},"t":{"df":8,"docs":{"117":{"tf":1.0},"133":{"tf":1.4142135623730951},"224":{"tf":1.0},"257":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}}}},"df":1,"docs":{"217":{"tf":1.0}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"d":{"df":9,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"123":{"tf":1.0},"137":{"tf":1.0},"141":{"tf":1.0},"193":{"tf":1.0},"278":{"tf":1.4142135623730951},"284":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":1,"docs":{"186":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"195":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":3,"docs":{"126":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"'":{"d":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"263":{"tf":1.0},"275":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"186":{"tf":1.0}}}},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"121":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}},"df":0,"docs":{},"t":{"df":1,"docs":{"242":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":7,"docs":{"126":{"tf":1.0},"188":{"tf":1.0},"197":{"tf":1.0},"213":{"tf":1.4142135623730951},"217":{"tf":1.0},"243":{"tf":1.0},"34":{"tf":1.0}}}},"n":{"c":{"_":{"a":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"124":{"tf":1.0}}},"df":0,"docs":{}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"124":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"171":{"tf":1.0}}}}},"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"265":{"tf":2.23606797749979}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"135":{"tf":1.0}}}},"df":0,"docs":{}}},"df":57,"docs":{"117":{"tf":1.0},"124":{"tf":5.291502622129181},"126":{"tf":2.6457513110645907},"128":{"tf":1.0},"131":{"tf":2.6457513110645907},"132":{"tf":2.449489742783178},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"139":{"tf":2.449489742783178},"140":{"tf":2.449489742783178},"141":{"tf":1.0},"157":{"tf":2.23606797749979},"171":{"tf":1.0},"188":{"tf":1.0},"196":{"tf":1.0},"210":{"tf":3.1622776601683795},"211":{"tf":3.3166247903554},"212":{"tf":1.0},"213":{"tf":3.0},"214":{"tf":2.8284271247461903},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.7320508075688772},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.7320508075688772},"254":{"tf":1.7320508075688772},"265":{"tf":2.8284271247461903},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.8284271247461903},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772},"282":{"tf":2.23606797749979},"283":{"tf":1.0},"284":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0},"285":{"tf":1.7320508075688772}}}}}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":15,"docs":{"122":{"tf":1.0},"126":{"tf":2.0},"218":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":2.0},"275":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"251":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"128":{"tf":1.0},"231":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}},"e":{"df":1,"docs":{"11":{"tf":1.0}}},"h":{"df":0,"docs":{},"u":{"b":{"df":3,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"238":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.0},"284":{"tf":1.0}},"n":{"df":6,"docs":{"132":{"tf":1.0},"135":{"tf":1.0},"213":{"tf":1.7320508075688772},"215":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"b":{"a":{"df":0,"docs":{},"l":{"df":6,"docs":{"159":{"tf":1.0},"219":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"9":{"tf":1.4142135623730951}},"e":{"df":1,"docs":{"195":{"tf":1.0}}},"l":{"d":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"'":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"o":{"d":{"df":2,"docs":{"142":{"tf":1.0},"285":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":1,"docs":{"4":{"tf":1.0}}}}},"t":{"_":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"280":{"tf":2.449489742783178}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":4,"docs":{"52":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"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":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}},"p":{"df":0,"docs":{},"l":{"df":11,"docs":{"111":{"tf":1.0},"123":{"tf":6.0},"128":{"tf":1.0},"203":{"tf":2.8284271247461903},"254":{"tf":3.1622776601683795},"29":{"tf":1.0},"34":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951},"63":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"n":{"a":{"df":2,"docs":{"72":{"tf":1.0},"80":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0}}}},"df":0,"docs":{},"p":{"df":8,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"265":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":4,"docs":{"124":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"275":{"tf":1.0}}}}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":131,"docs":{"127":{"tf":2.0},"128":{"tf":1.0},"129":{"tf":1.0},"130":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"143":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"156":{"tf":1.0},"157":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"204":{"tf":1.0},"205":{"tf":1.0},"206":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"223":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0},"255":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.0}}},"df":0,"docs":{}}},"z":{"df":0,"docs":{},"p":{"4":{"1":{"3":{"df":0,"docs":{},"o":{"_":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"271":{"tf":1.0},"274":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"280":{"tf":1.0}}},"n":{"d":{"df":1,"docs":{"218":{"tf":1.7320508075688772}},"i":{"df":1,"docs":{"271":{"tf":1.0}}},"l":{"df":4,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}},"e":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"e":{"c":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"58":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}}}}},"df":1,"docs":{"51":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":3,"docs":{"126":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0}}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"144":{"tf":1.0},"254":{"tf":1.0}}}},"i":{"df":1,"docs":{"285":{"tf":1.0}}}}},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":6,"docs":{"55":{"tf":1.7320508075688772},"56":{"tf":2.23606797749979},"57":{"tf":1.4142135623730951},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"117":{"tf":1.0},"174":{"tf":1.7320508075688772},"194":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":20,"docs":{"120":{"tf":2.23606797749979},"121":{"tf":1.0},"168":{"tf":1.0},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"182":{"tf":1.0},"183":{"tf":1.4142135623730951},"186":{"tf":1.7320508075688772},"189":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0},"259":{"tf":2.449489742783178},"260":{"tf":1.7320508075688772},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.0},"38":{"tf":1.7320508075688772}},"m":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"120":{"tf":1.4142135623730951},"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"j":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"116":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"16":{"tf":1.7320508075688772},"30":{"tf":1.7320508075688772},"53":{"tf":1.4142135623730951}},"e":{"a":{"d":{"df":2,"docs":{"199":{"tf":1.0},"245":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":8,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"256":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"160":{"tf":1.0},"275":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"207":{"tf":1.0},"271":{"tf":1.0}}},"df":0,"docs":{}}}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":12,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.7320508075688772},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"269":{"tf":2.23606797749979},"271":{"tf":2.449489742783178},"275":{"tf":2.23606797749979},"284":{"tf":1.0}}}},"p":{"df":5,"docs":{"127":{"tf":1.0},"16":{"tf":1.0},"264":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":19,"docs":{"117":{"tf":1.4142135623730951},"123":{"tf":2.23606797749979},"124":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"150":{"tf":1.0},"159":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.7320508075688772},"20":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.4142135623730951},"246":{"tf":1.7320508075688772},"251":{"tf":1.0},"254":{"tf":2.0},"271":{"tf":1.0},"4":{"tf":1.0}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"n":{"c":{"df":2,"docs":{"265":{"tf":1.4142135623730951},"271":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"269":{"tf":1.0}}},"df":4,"docs":{"218":{"tf":1.0},"264":{"tf":1.0},"269":{"tf":1.0},"274":{"tf":1.0}}},"t":{"df":0,"docs":{},"z":{"df":1,"docs":{"264":{"tf":1.0}}}}},"x":{"a":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"259":{"tf":2.0},"260":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":2,"docs":{"155":{"tf":1.0},"264":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"168":{"tf":1.0},"169":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"264":{"tf":1.4142135623730951}}}}}},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"270":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":2.23606797749979}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":12,"docs":{"135":{"tf":1.0},"151":{"tf":1.4142135623730951},"168":{"tf":1.0},"172":{"tf":1.4142135623730951},"192":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"277":{"tf":2.449489742783178},"278":{"tf":1.4142135623730951},"279":{"tf":1.0}}}},"df":0,"docs":{}}}},"p":{"df":1,"docs":{"52":{"tf":2.0}}}}},"t":{"df":7,"docs":{"126":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"264":{"tf":2.23606797749979},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"52":{"tf":2.449489742783178}}}}},"o":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"218":{"tf":1.0}}}},"o":{"df":0,"docs":{},"k":{"df":4,"docs":{"117":{"tf":1.7320508075688772},"126":{"tf":1.4142135623730951},"141":{"tf":2.8284271247461903},"219":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"m":{"d":{"=":{"c":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{"c":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"259":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{":":{"/":{"/":{"c":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":1.0}}}},"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"/":{"2":{"0":{"2":{"0":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"81":{"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":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{":":{"/":{"/":{"a":{"df":0,"docs":{},"k":{"a":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"(":{"3":{"0":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"4":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"12":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"u":{"b":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":25,"docs":{"11":{"tf":1.0},"12":{"tf":1.4142135623730951},"16":{"tf":1.0},"20":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.4142135623730951},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.4142135623730951},"37":{"tf":1.0},"38":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.4142135623730951},"5":{"tf":1.0},"53":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"64":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"j":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"/":{"b":{"c":{"c":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"b":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"54":{"tf":1.0},"72":{"tf":1.0},"86":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"3":{"9":{"df":1,"docs":{"17":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"12":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"o":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"109":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"5":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"80":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"z":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"/":{"a":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"4":{"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":{}}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{".":{"5":{"1":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"/":{"6":{"4":{"0":{"6":{"3":{"1":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"81":{"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":{}}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}}}},"w":{"df":0,"docs":{},"w":{"df":0,"docs":{},"w":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"b":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"/":{"d":{"b":{"/":{"3":{"9":{"1":{"5":{"7":{"0":{"df":0,"docs":{},"(":{"1":{"df":0,"docs":{},"h":{"df":1,"docs":{"4":{"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":{}}}}},"v":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"i":{".":{"df":3,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"265":{"tf":1.0}}},"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"207":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"o":{"df":11,"docs":{"100":{"tf":1.0},"101":{"tf":1.0},"102":{"tf":1.0},"170":{"tf":1.0},"19":{"tf":1.0},"264":{"tf":3.0},"274":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"98":{"tf":1.7320508075688772},"99":{"tf":1.4142135623730951}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"4":{"0":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"122":{"tf":1.0}}},"d":{"df":25,"docs":{"117":{"tf":1.0},"147":{"tf":1.7320508075688772},"148":{"tf":1.4142135623730951},"169":{"tf":1.0},"17":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.7320508075688772},"193":{"tf":1.0},"208":{"tf":1.0},"259":{"tf":2.23606797749979},"26":{"tf":1.0},"260":{"tf":1.0},"265":{"tf":1.4142135623730951},"27":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"280":{"tf":1.0},"29":{"tf":2.6457513110645907},"30":{"tf":1.7320508075688772},"31":{"tf":1.0},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":8,"docs":{"150":{"tf":1.0},"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"264":{"tf":2.0},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"x":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"179":{"tf":1.0}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"217":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}},"df":0,"docs":{}}},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"157":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"186":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"230":{"tf":1.0}}}}}}},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":11,"docs":{"246":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.7320508075688772},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.7320508075688772},"284":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":1,"docs":{"270":{"tf":1.0}}}}}}},"n":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":34,"docs":{"111":{"tf":2.0},"133":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"154":{"tf":1.0},"168":{"tf":1.0},"17":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"208":{"tf":1.0},"212":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":2.0},"230":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.7320508075688772},"264":{"tf":2.23606797749979},"272":{"tf":1.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"37":{"tf":1.7320508075688772},"41":{"tf":2.0},"46":{"tf":2.23606797749979},"52":{"tf":2.8284271247461903},"58":{"tf":2.6457513110645907},"63":{"tf":2.23606797749979}},"e":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":4,"docs":{"117":{"tf":1.4142135623730951},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"126":{"tf":1.0},"196":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"127":{"tf":1.0}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"242":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"192":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":3,"docs":{"135":{"tf":1.0},"192":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"227":{"tf":1.0}}}}}}},"x":{"df":12,"docs":{"135":{"tf":1.0},"136":{"tf":1.0},"151":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"180":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":1.7320508075688772},"273":{"tf":1.0},"277":{"tf":1.4142135623730951}}}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"u":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"(":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"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":{"195":{"tf":1.0}}}}}},"o":{"df":3,"docs":{"126":{"tf":1.0},"58":{"tf":3.7416573867739413},"79":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"m":{"df":6,"docs":{"126":{"tf":1.4142135623730951},"150":{"tf":1.0},"169":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}},"r":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"111":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"136":{"tf":1.4142135623730951}},"i":{"df":5,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"188":{"tf":1.4142135623730951},"206":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"269":{"tf":1.0},"271":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":2,"docs":{"182":{"tf":1.0},"183":{"tf":1.0}}}}},"o":{"d":{"df":3,"docs":{"120":{"tf":1.0},"155":{"tf":1.0},"265":{"tf":2.23606797749979}}},"df":1,"docs":{"155":{"tf":1.0}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"225":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.0},"188":{"tf":1.0}}}}},"i":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}}},"t":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"211":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.0}},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"261":{"tf":1.0},"269":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":8,"docs":{"141":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"192":{"tf":1.0},"213":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.4142135623730951},"249":{"tf":1.0}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":27,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.4142135623730951},"138":{"tf":1.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"210":{"tf":1.7320508075688772},"211":{"tf":1.7320508075688772},"212":{"tf":1.4142135623730951},"213":{"tf":1.7320508075688772},"214":{"tf":1.7320508075688772},"216":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"269":{"tf":1.0},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}}}}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{}},"df":66,"docs":{"111":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.7320508075688772},"140":{"tf":2.23606797749979},"141":{"tf":1.4142135623730951},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"151":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"17":{"tf":1.7320508075688772},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"18":{"tf":1.0},"182":{"tf":2.0},"183":{"tf":1.4142135623730951},"193":{"tf":1.0},"195":{"tf":1.7320508075688772},"196":{"tf":2.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"23":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"26":{"tf":2.0},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":3.3166247903554},"41":{"tf":2.23606797749979},"46":{"tf":1.7320508075688772},"52":{"tf":2.8284271247461903},"58":{"tf":3.1622776601683795},"63":{"tf":1.4142135623730951},"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979},"82":{"tf":1.0},"83":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"g":{"df":4,"docs":{"134":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"241":{"tf":1.0}},"r":{"df":1,"docs":{"259":{"tf":1.0}}}},"l":{"df":1,"docs":{"122":{"tf":2.23606797749979}}},"n":{"d":{"df":4,"docs":{"127":{"tf":1.0},"131":{"tf":1.0},"138":{"tf":1.0},"241":{"tf":1.0}}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"207":{"tf":1.0},"218":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}}},"f":{"a":{"c":{"df":13,"docs":{"126":{"tf":1.0},"142":{"tf":1.0},"159":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"217":{"tf":1.0},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"n":{"df":1,"docs":{"117":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"111":{"tf":1.0},"66":{"tf":1.0},"75":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.7320508075688772}}}}}},"v":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"52":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"c":{"df":3,"docs":{"142":{"tf":1.0},"204":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"u":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"155":{"tf":1.0},"52":{"tf":1.7320508075688772}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"128":{"tf":1.0},"157":{"tf":1.0},"253":{"tf":1.7320508075688772},"254":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"253":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"195":{"tf":1.0},"284":{"tf":1.0}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"157":{"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":2,"docs":{"100":{"tf":1.0},"2":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"263":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}}},"v":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"1":{"\"":{")":{"[":{"0":{"df":1,"docs":{"196":{"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":6,"docs":{"111":{"tf":1.0},"112":{"tf":2.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"71":{"tf":1.0},"79":{"tf":1.0}},"h":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"82":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"4":{"df":1,"docs":{"111":{"tf":1.0}}},"6":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"r":{"df":1,"docs":{"207":{"tf":1.0}},"q":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"58":{"tf":1.7320508075688772}}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"df":0,"docs":{}},"df":1,"docs":{"58":{"tf":2.449489742783178}}}},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":5,"docs":{"150":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.0}}}}},"t":{"'":{"df":4,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"270":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.4142135623730951}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"238":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"236":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"237":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"128":{"tf":1.0},"239":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":6,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"142":{"tf":2.449489742783178},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"g":{"b":{"df":1,"docs":{"122":{"tf":1.0}},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"j":{"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"126":{"tf":1.0}}},"df":2,"docs":{"116":{"tf":1.7320508075688772},"126":{"tf":1.7320508075688772}}}},"o":{"b":{"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":2,"docs":{"178":{"tf":1.0},"195":{"tf":1.4142135623730951}}}}}},"k":{".":{"c":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"(":{"'":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"b":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"277":{"tf":1.4142135623730951}}}}}},"df":5,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"'":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}},".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"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":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"265":{"tf":1.0}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":67,"docs":{"114":{"tf":1.7320508075688772},"115":{"tf":1.4142135623730951},"116":{"tf":1.7320508075688772},"117":{"tf":2.23606797749979},"118":{"tf":1.4142135623730951},"119":{"tf":1.0},"120":{"tf":1.7320508075688772},"121":{"tf":1.7320508075688772},"122":{"tf":1.7320508075688772},"123":{"tf":2.23606797749979},"124":{"tf":1.4142135623730951},"125":{"tf":1.7320508075688772},"126":{"tf":3.4641016151377544},"127":{"tf":1.0},"128":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":2.0},"139":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"141":{"tf":1.0},"142":{"tf":1.7320508075688772},"144":{"tf":1.7320508075688772},"145":{"tf":1.0},"150":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"2":{"tf":1.0},"203":{"tf":2.0},"204":{"tf":1.7320508075688772},"210":{"tf":2.449489742783178},"211":{"tf":2.6457513110645907},"212":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.7320508075688772},"232":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"252":{"tf":1.0},"253":{"tf":1.4142135623730951},"256":{"tf":2.23606797749979},"257":{"tf":3.0},"264":{"tf":2.23606797749979},"265":{"tf":2.0},"269":{"tf":1.7320508075688772},"270":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":2.0}}}}}},"y":{"'":{"df":2,"docs":{"188":{"tf":1.0},"192":{"tf":1.0}}},".":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"/":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"272":{"tf":1.0}}}}},"df":0,"docs":{}}},"=":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":4,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"282":{"tf":2.0},"284":{"tf":1.7320508075688772}},"y":{"df":0,"docs":{},"p":{"df":6,"docs":{"170":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"183":{"tf":1.0},"186":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"172":{"tf":1.0}}}}},"u":{"3":{"2":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":3,"docs":{"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"v":{"6":{"df":1,"docs":{"177":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"b":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":7,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":31,"docs":{"170":{"tf":1.4142135623730951},"172":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.7320508075688772},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"200":{"tf":2.23606797749979},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"238":{"tf":2.0},"239":{"tf":1.7320508075688772},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"272":{"tf":2.8284271247461903},"273":{"tf":1.0},"274":{"tf":1.7320508075688772},"282":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":1.4142135623730951},"58":{"tf":2.449489742783178},"79":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"244":{"tf":1.0}}}}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"139":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"139":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"139":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"、":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"265":{"tf":1.0},"269":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"_":{"_":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"277":{"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":4,"docs":{"131":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"157":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"269":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"131":{"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":24,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":3.0},"128":{"tf":1.0},"131":{"tf":2.23606797749979},"138":{"tf":1.0},"157":{"tf":1.7320508075688772},"161":{"tf":1.0},"21":{"tf":2.0},"210":{"tf":1.0},"211":{"tf":1.0},"22":{"tf":2.0},"221":{"tf":1.0},"23":{"tf":3.4641016151377544},"24":{"tf":1.4142135623730951},"257":{"tf":1.0},"26":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"284":{"tf":1.4142135623730951},"7":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"140":{"tf":1.0}},"e":{"(":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"140":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"128":{"tf":1.0},"140":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"128":{"tf":1.0},"132":{"tf":2.23606797749979},"161":{"tf":1.0},"211":{"tf":1.4142135623730951},"222":{"tf":1.0},"23":{"tf":1.4142135623730951},"24":{"tf":1.0},"26":{"tf":1.4142135623730951},"279":{"tf":1.0}},"e":{"_":{"_":{"df":1,"docs":{"132":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"132":{"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":{}}}}}},"p":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":3,"docs":{"128":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"248":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"v":{"[":{"0":{"]":{")":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"df":0,"docs":{},"u":{"6":{"df":1,"docs":{"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"2":{"df":1,"docs":{"111":{"tf":2.0}}},"3":{"df":1,"docs":{"111":{"tf":2.0}}},"a":{"b":{"df":1,"docs":{"285":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"224":{"tf":1.0},"225":{"tf":1.0}}}},"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"240":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"85":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":6,"docs":{"140":{"tf":1.0},"145":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":2.0}}}},"t":{"(":{"df":0,"docs":{},"m":{"df":4,"docs":{"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"71":{"tf":1.0},"79":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"163":{"tf":1.0},"229":{"tf":1.0},"264":{"tf":3.1622776601683795},"278":{"tf":1.0}}},"df":0,"docs":{}},"r":{"df":28,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"196":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"181":{"tf":1.0},"34":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"c":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"282":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"d":{"\\":{"df":0,"docs":{},"n":{"df":2,"docs":{"23":{"tf":1.0},"26":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"122":{"tf":1.0},"265":{"tf":1.0}},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":7,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951}},"e":{"=":{"df":0,"docs":{},"u":{"6":{"4":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"244":{"tf":1.0},"245":{"tf":1.0}}},"r":{"df":0,"docs":{},"n":{"df":12,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":3,"docs":{"145":{"tf":1.7320508075688772},"154":{"tf":1.7320508075688772},"239":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"249":{"tf":1.0},"272":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"df":18,"docs":{"268":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.7320508075688772},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"276":{"tf":1.7320508075688772},"277":{"tf":1.7320508075688772},"278":{"tf":2.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"281":{"tf":1.7320508075688772},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"285":{"tf":1.4142135623730951}}}}}},"t":{"'":{"df":2,"docs":{"274":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"]":{".":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":11,"docs":{"136":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"230":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"52":{"tf":1.7320508075688772}}}}}},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":3,"docs":{"17":{"tf":1.0},"41":{"tf":1.0},"52":{"tf":1.0}}}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":26,"docs":{"10":{"tf":2.6457513110645907},"11":{"tf":2.23606797749979},"15":{"tf":1.0},"207":{"tf":1.0},"30":{"tf":1.0},"42":{"tf":1.0},"5":{"tf":1.4142135623730951},"53":{"tf":1.0},"54":{"tf":1.0},"6":{"tf":1.4142135623730951},"63":{"tf":1.0},"65":{"tf":1.7320508075688772},"66":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0},"70":{"tf":2.449489742783178},"71":{"tf":1.0},"72":{"tf":1.0},"8":{"tf":1.0},"82":{"tf":2.0},"83":{"tf":1.0},"84":{"tf":2.449489742783178},"85":{"tf":1.0},"86":{"tf":1.0},"9":{"tf":1.0}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"c":{"df":2,"docs":{"213":{"tf":1.4142135623730951},"214":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.4142135623730951}},"p":{"c":{"a":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"126":{"tf":1.0},"136":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.4142135623730951},"214":{"tf":1.0},"246":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"6":{"tf":1.0},"9":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":15,"docs":{"123":{"tf":2.0},"128":{"tf":1.0},"17":{"tf":1.4142135623730951},"203":{"tf":2.8284271247461903},"23":{"tf":1.0},"254":{"tf":1.4142135623730951},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"df":1,"docs":{"249":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"117":{"tf":1.0},"159":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"211":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"239":{"tf":1.0},"269":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":7,"docs":{"207":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":2.0},"264":{"tf":2.6457513110645907},"271":{"tf":1.0},"272":{"tf":1.0}}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"119":{"tf":1.4142135623730951}}}},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"x":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"277":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":1,"docs":{"274":{"tf":1.0}}}},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"17":{"tf":1.0},"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"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":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{".":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"m":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{".":{"c":{"df":2,"docs":{"175":{"tf":1.0},"176":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{".":{"df":0,"docs":{},"h":{"df":6,"docs":{"149":{"tf":1.4142135623730951},"150":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":57,"docs":{"1":{"tf":1.0},"111":{"tf":1.0},"114":{"tf":1.7320508075688772},"115":{"tf":1.0},"116":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"119":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.0},"124":{"tf":1.0},"126":{"tf":1.0},"13":{"tf":1.0},"137":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"19":{"tf":1.0},"2":{"tf":2.23606797749979},"20":{"tf":1.0},"21":{"tf":1.0},"242":{"tf":1.0},"25":{"tf":1.0},"251":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.4142135623730951},"28":{"tf":1.0},"280":{"tf":1.0},"285":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"43":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"48":{"tf":1.0},"49":{"tf":2.0},"50":{"tf":2.0},"51":{"tf":1.4142135623730951},"52":{"tf":1.7320508075688772},"53":{"tf":1.0},"54":{"tf":1.4142135623730951},"55":{"tf":1.0},"56":{"tf":1.4142135623730951},"57":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"80":{"tf":1.4142135623730951}}}}},"r":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":13,"docs":{"116":{"tf":1.0},"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"122":{"tf":1.0},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"133":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":1.0},"280":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"118":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}},"v":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"63":{"tf":1.0}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"83":{"tf":1.0}}},"v":{"df":0,"docs":{},"m":{"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"207":{"tf":1.0}}}},"x":{"df":1,"docs":{"265":{"tf":1.0}}}},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}}}}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"df":19,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0},"253":{"tf":1.4142135623730951},"254":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":1,"docs":{"120":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":4,"docs":{"169":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"256":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"g":{"2":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":1,"docs":{"240":{"tf":1.4142135623730951}},"l":{"(":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":5,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"g":{"df":7,"docs":{"151":{"tf":1.0},"157":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"264":{"tf":1.0},"46":{"tf":1.4142135623730951},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"231":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"k":{"df":2,"docs":{"112":{"tf":1.0},"264":{"tf":2.23606797749979}},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":10,"docs":{"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"126":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":1.4142135623730951}}}}},"n":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"df":8,"docs":{"117":{"tf":1.0},"195":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"_":{"c":{"b":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":1,"docs":{"232":{"tf":1.4142135623730951}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":4,"docs":{"155":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.0}}},"w":{"df":1,"docs":{"264":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"m":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.0}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}}},"s":{"df":2,"docs":{"269":{"tf":1.0},"282":{"tf":1.0}},"m":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":11,"docs":{"104":{"tf":1.7320508075688772},"105":{"tf":1.0},"106":{"tf":1.7320508075688772},"107":{"tf":1.0},"108":{"tf":1.4142135623730951},"109":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0},"128":{"tf":1.0},"141":{"tf":2.23606797749979}}}},"t":{"df":1,"docs":{"257":{"tf":1.0}}},"u":{"a":{"df":1,"docs":{"267":{"tf":1.0}}},"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"t":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"124":{"tf":2.23606797749979},"219":{"tf":1.0}}}}},"m":{"a":{"c":{"df":2,"docs":{"126":{"tf":1.0},"141":{"tf":1.0}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"116":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"o":{"df":18,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"203":{"tf":1.7320508075688772},"242":{"tf":1.0}}}}},"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"159":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":6,"docs":{"117":{"tf":1.7320508075688772},"207":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.4142135623730951},"282":{"tf":1.0},"285":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":8,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0},"277":{"tf":1.0},"70":{"tf":1.0},"84":{"tf":1.0}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":4,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"163":{"tf":1.0},"259":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":6,"docs":{"150":{"tf":1.0},"211":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0}}},"u":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"232":{"tf":1.0},"242":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{".":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":2.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":1.4142135623730951}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"189":{"tf":1.4142135623730951}},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"189":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"193":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":3,"docs":{"128":{"tf":1.0},"173":{"tf":1.0},"193":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"192":{"tf":2.23606797749979}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"192":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"191":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"191":{"tf":1.4142135623730951}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"187":{"tf":1.0}}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"188":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":6,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.0},"188":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":9,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"181":{"tf":1.0},"187":{"tf":1.4142135623730951}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"201":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"201":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"199":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"199":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":3,"docs":{"128":{"tf":1.0},"174":{"tf":1.4142135623730951},"194":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"198":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"198":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"&":{"df":0,"docs":{},"v":{"df":1,"docs":{"197":{"tf":1.0}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"197":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":5,"docs":{"128":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"196":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"163":{"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":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{")":{"/":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"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":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"202":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"202":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"200":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"128":{"tf":1.0},"186":{"tf":1.0},"200":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"190":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":8,"docs":{"128":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"190":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"f":{"d":{"df":2,"docs":{"219":{"tf":1.0},"220":{"tf":1.0}}},"df":0,"docs":{}}},"df":50,"docs":{"117":{"tf":2.23606797749979},"119":{"tf":1.4142135623730951},"120":{"tf":2.449489742783178},"121":{"tf":2.449489742783178},"128":{"tf":1.4142135623730951},"142":{"tf":1.0},"168":{"tf":1.7320508075688772},"169":{"tf":2.449489742783178},"170":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.7320508075688772},"174":{"tf":1.0},"175":{"tf":1.0},"177":{"tf":1.4142135623730951},"179":{"tf":1.7320508075688772},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":2.6457513110645907},"183":{"tf":2.6457513110645907},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.4142135623730951},"192":{"tf":1.0},"193":{"tf":1.0},"196":{"tf":1.7320508075688772},"200":{"tf":2.0},"201":{"tf":1.0},"202":{"tf":1.0},"226":{"tf":1.4142135623730951},"230":{"tf":1.7320508075688772},"233":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.4142135623730951},"238":{"tf":1.4142135623730951},"239":{"tf":1.0},"259":{"tf":2.6457513110645907},"260":{"tf":2.0},"265":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"277":{"tf":1.0},"284":{"tf":1.0},"36":{"tf":2.0},"37":{"tf":1.0},"38":{"tf":1.7320508075688772},"52":{"tf":1.0},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"58":{"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":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}}},",":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},",":{"df":0,"docs":{},"最":{"df":0,"docs":{},"大":{"df":0,"docs":{},"条":{"df":0,"docs":{},"目":{"df":0,"docs":{},"数":{"df":0,"docs":{},"为":{"2":{"5":{"6":{"df":1,"docs":{"63":{"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":{}}}}}}}},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"265":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":9,"docs":{"120":{"tf":1.0},"126":{"tf":1.0},"155":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"250":{"tf":1.7320508075688772},"264":{"tf":1.0},"284":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"141":{"tf":1.0}}}}}},"x":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":9,"docs":{"173":{"tf":1.0},"174":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"=":{"1":{"0":{"2":{"4":{"0":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"269":{"tf":1.0}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":4,"docs":{"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"195":{"tf":1.0},"239":{"tf":1.0}}}}}}}},"df":2,"docs":{"260":{"tf":1.0},"263":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"n":{"df":4,"docs":{"163":{"tf":1.0},"218":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":6,"docs":{"126":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"258":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0}}}}},"df":2,"docs":{"128":{"tf":1.0},"253":{"tf":1.7320508075688772}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":6,"docs":{"92":{"tf":1.7320508075688772},"93":{"tf":1.0},"94":{"tf":2.0},"95":{"tf":1.0},"96":{"tf":1.0},"97":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":8,"docs":{"121":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"204":{"tf":2.23606797749979},"247":{"tf":1.0},"249":{"tf":1.0},"253":{"tf":2.0}}}}}},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":9,"docs":{"201":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.0},"232":{"tf":1.0},"252":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":3,"docs":{"142":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"d":{"df":35,"docs":{"136":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"208":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"229":{"tf":1.0},"233":{"tf":1.0},"246":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"285":{"tf":1.0}}},"df":0,"docs":{}}}}},"i":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"263":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"n":{"_":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"63":{"tf":2.23606797749979}},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"常":{"df":0,"docs":{},"量":{"df":0,"docs":{},",":{"df":0,"docs":{},"其":{"df":0,"docs":{},"值":{"df":0,"docs":{},"为":{"0":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"17":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"63":{"tf":1.0}}}}}}},"p":{"df":1,"docs":{"116":{"tf":1.0}}},"s":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":2,"docs":{"127":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951}}}},"t":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}}},"k":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"x":{"4":{"df":1,"docs":{"122":{"tf":1.0}}},"5":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{},"u":{"df":1,"docs":{"126":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"o":{"d":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"240":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":6,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0}}},"i":{"df":0,"docs":{},"f":{"df":1,"docs":{"118":{"tf":1.0}},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":4,"docs":{"117":{"tf":1.0},"126":{"tf":2.0},"249":{"tf":1.0},"253":{"tf":1.0}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":4,"docs":{"117":{"tf":1.0},"232":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"df":18,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"181":{"tf":1.0},"192":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":3.7416573867739413},"265":{"tf":1.7320508075688772},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.23606797749979}}}}}},"p":{"df":0,"docs":{},"l":{"/":{"df":0,"docs":{},"g":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"123":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"q":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}},"s":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":2.23606797749979},"85":{"tf":1.0}},"g":{"df":5,"docs":{"118":{"tf":1.0},"201":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"240":{"tf":1.0},"264":{"tf":1.0},"275":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"126":{"tf":1.0},"203":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.7320508075688772}}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"174":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"v":{"b":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":50,"docs":{"121":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":2.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"149":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.7320508075688772},"171":{"tf":1.7320508075688772},"172":{"tf":1.7320508075688772},"173":{"tf":1.7320508075688772},"174":{"tf":1.7320508075688772},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.7320508075688772},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.4142135623730951},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"184":{"tf":1.7320508075688772},"185":{"tf":1.7320508075688772},"186":{"tf":1.7320508075688772},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.4142135623730951},"215":{"tf":1.0},"216":{"tf":1.0},"23":{"tf":1.4142135623730951},"247":{"tf":1.0},"248":{"tf":1.4142135623730951},"249":{"tf":1.0},"251":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":2.449489742783178},"260":{"tf":1.0},"269":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"280":{"tf":1.0},"58":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"155":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.23606797749979},"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":2,"docs":{"146":{"tf":1.0},"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":2,"docs":{"109":{"tf":1.0},"126":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"215":{"tf":1.0},"263":{"tf":1.4142135623730951}},"e":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":4,"docs":{"144":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0},"269":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"d":{"df":17,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":1.0},"138":{"tf":1.0},"150":{"tf":1.0},"203":{"tf":1.0},"212":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"270":{"tf":1.0},"271":{"tf":2.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951},"283":{"tf":1.0}}},"df":0,"docs":{}},"g":{"df":5,"docs":{"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"228":{"tf":1.0}}},"t":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"120":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":2,"docs":{"124":{"tf":1.0},"219":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"'":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":11,"docs":{"126":{"tf":1.0},"162":{"tf":1.0},"179":{"tf":1.0},"196":{"tf":1.0},"217":{"tf":1.7320508075688772},"218":{"tf":1.7320508075688772},"261":{"tf":1.0},"264":{"tf":1.0},"266":{"tf":1.4142135623730951},"267":{"tf":1.0},"286":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"195":{"tf":1.0}}}}},"w":{"df":20,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951},"169":{"tf":1.0},"186":{"tf":1.0},"2":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.4142135623730951},"242":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.0},"264":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":3,"docs":{"137":{"tf":2.0},"274":{"tf":1.0},"52":{"tf":2.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}},"f":{"df":0,"docs":{},"p":{"df":1,"docs":{"122":{"tf":1.0}}}},"i":{"c":{"'":{"df":1,"docs":{"181":{"tf":1.0}}},"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":6,"docs":{"112":{"tf":1.4142135623730951},"121":{"tf":1.0},"283":{"tf":1.7320508075688772},"37":{"tf":2.8284271247461903},"41":{"tf":1.7320508075688772},"85":{"tf":2.0}},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"225":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"280":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"141":{"tf":1.0},"204":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"254":{"tf":1.0},"256":{"tf":1.0}},"e":{"df":5,"docs":{"224":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}},"y":{"_":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":9,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.0},"195":{"tf":1.4142135623730951},"226":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"133":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":19,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"159":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"188":{"tf":1.0},"192":{"tf":1.0},"195":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"219":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"251":{"tf":1.0},"264":{"tf":1.0}}},"h":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"i":{"c":{"df":1,"docs":{"212":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":3,"docs":{"164":{"tf":1.4142135623730951},"166":{"tf":1.4142135623730951},"167":{"tf":1.4142135623730951}}}},"r":{"a":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":8,"docs":{"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"231":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0},"283":{"tf":1.0}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"=":{"\"":{"$":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":1,"docs":{"260":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"155":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":1,"docs":{"155":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":8,"docs":{"121":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"165":{"tf":1.0},"178":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"272":{"tf":2.0}}}},"m":{"_":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":3,"docs":{"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"128":{"tf":1.0},"250":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"a":{"df":1,"docs":{"121":{"tf":1.0}}},"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":8,"docs":{"146":{"tf":1.0},"155":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":2.0},"195":{"tf":1.0},"232":{"tf":1.0},"250":{"tf":1.0},"265":{"tf":1.0}},"s":{"[":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"v":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":25,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"150":{"tf":1.0},"16":{"tf":1.4142135623730951},"168":{"tf":1.0},"17":{"tf":1.4142135623730951},"207":{"tf":1.7320508075688772},"208":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"257":{"tf":1.0},"26":{"tf":1.4142135623730951},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"217":{"tf":1.0},"262":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"267":{"tf":1.0},"268":{"tf":1.7320508075688772}}}}}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":1,"docs":{"260":{"tf":1.0}}},"df":1,"docs":{"16":{"tf":1.0}},"f":{"=":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"k":{"b":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{"0":{"df":1,"docs":{"280":{"tf":1.0}}},"1":{"2":{"df":1,"docs":{"280":{"tf":1.0}}},"6":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"3":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":1.0}}},"8":{"df":1,"docs":{"280":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"213":{"tf":1.4142135623730951},"249":{"tf":1.0}}}}}}},"k":{"df":3,"docs":{"136":{"tf":1.0},"159":{"tf":1.0},"269":{"tf":1.0}}},"l":{"d":{"df":4,"docs":{"188":{"tf":1.0},"204":{"tf":1.0},"218":{"tf":1.0},"284":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"284":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"82":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"n":{"c":{"df":6,"docs":{"126":{"tf":1.0},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"271":{"tf":1.0}}},"df":17,"docs":{"133":{"tf":1.0},"155":{"tf":1.0},"165":{"tf":1.0},"174":{"tf":1.0},"181":{"tf":1.0},"200":{"tf":1.0},"204":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"225":{"tf":1.0},"238":{"tf":1.0},"251":{"tf":1.0},"259":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"277":{"tf":1.0}},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"197":{"tf":1.0},"243":{"tf":1.0}}}}},"p":{"df":2,"docs":{"118":{"tf":1.4142135623730951},"120":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":4,"docs":{"128":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"t":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":3,"docs":{"29":{"tf":2.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.0}}}},"df":8,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"250":{"tf":1.0},"264":{"tf":1.4142135623730951},"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"79":{"tf":2.449489742783178}}}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"30":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"259":{"tf":1.0},"264":{"tf":2.23606797749979},"30":{"tf":1.0}}}}}}}},"r":{"df":15,"docs":{"121":{"tf":1.0},"141":{"tf":1.7320508075688772},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"192":{"tf":1.4142135623730951},"232":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.4142135623730951},"284":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"171":{"tf":1.0},"176":{"tf":1.0}}},"o":{"df":0,"docs":{},"n":{"df":24,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"16":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"204":{"tf":1.4142135623730951},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"238":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.0},"277":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}}}}}}},"r":{"'":{"df":1,"docs":{"207":{"tf":1.0}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"123":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"159":{"tf":1.0},"272":{"tf":1.0}}}}}}},"s":{"df":1,"docs":{"2":{"tf":1.0}}},"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":6,"docs":{"169":{"tf":1.0},"196":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"213":{"tf":1.0}}}}}}}}},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}}}},"df":9,"docs":{"118":{"tf":1.0},"127":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"34":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"126":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":33,"docs":{"112":{"tf":1.4142135623730951},"128":{"tf":1.7320508075688772},"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"133":{"tf":1.0},"135":{"tf":1.4142135623730951},"138":{"tf":1.0},"158":{"tf":1.4142135623730951},"159":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"207":{"tf":1.4142135623730951},"223":{"tf":1.4142135623730951},"224":{"tf":1.0},"226":{"tf":1.7320508075688772},"232":{"tf":1.4142135623730951},"233":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"242":{"tf":1.4142135623730951},"264":{"tf":2.6457513110645907},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"163":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"192":{"tf":1.0},"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"f":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"126":{"tf":1.4142135623730951},"128":{"tf":1.0},"257":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"190":{"tf":1.0},"272":{"tf":1.0}}}}}}}}},"w":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}}}},"p":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{},"f":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":14,"docs":{"108":{"tf":1.0},"112":{"tf":1.4142135623730951},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.4142135623730951},"53":{"tf":1.0},"59":{"tf":1.4142135623730951},"63":{"tf":1.4142135623730951}}}}}},"z":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"s":{"/":{"b":{"c":{"c":{"/":{"_":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"_":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}},"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":13,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0},"63":{"tf":1.0}},"e":{"df":0,"docs":{},"t":{"'":{"df":1,"docs":{"181":{"tf":1.4142135623730951}}},"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"162":{"tf":1.4142135623730951}}}},"df":26,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0},"117":{"tf":1.0},"122":{"tf":1.0},"126":{"tf":2.449489742783178},"13":{"tf":1.0},"162":{"tf":1.0},"181":{"tf":1.4142135623730951},"196":{"tf":2.449489742783178},"21":{"tf":1.0},"217":{"tf":2.23606797749979},"218":{"tf":1.7320508075688772},"25":{"tf":1.0},"264":{"tf":1.4142135623730951},"28":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"39":{"tf":1.0},"43":{"tf":1.0},"49":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0}}}}}},"d":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"n":{"df":1,"docs":{"232":{"tf":1.0}}}},"df":2,"docs":{"163":{"tf":1.0},"232":{"tf":1.0}}}}},"df":0,"docs":{}},"df":3,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"232":{"tf":1.0}}}},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"272":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"211":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":18,"docs":{"137":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"186":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"238":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0},"284":{"tf":1.0}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"118":{"tf":1.0},"126":{"tf":1.0},"200":{"tf":1.0}}}}},"t":{"df":5,"docs":{"129":{"tf":1.0},"141":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"267":{"tf":1.0}},"i":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"219":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"117":{"tf":1.0},"121":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"153":{"tf":1.0},"187":{"tf":1.0},"197":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"243":{"tf":1.0},"253":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"260":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}}}}},"t":{"df":1,"docs":{"174":{"tf":1.0}}}},"t":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"h":{":":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"=":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"~":{"/":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"208":{"tf":1.0}}}}},"df":0,"docs":{}}},"[":{"1":{"2":{"8":{"]":{"=":{"df":0,"docs":{},"{":{"0":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":10,"docs":{"136":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"256":{"tf":1.0},"264":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"282":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"260":{"tf":1.0},"264":{"tf":1.0}}}}}},"df":5,"docs":{"217":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"52":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":2.0}}}},"r":{"df":10,"docs":{"118":{"tf":1.0},"120":{"tf":1.7320508075688772},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"174":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"236":{"tf":1.0},"242":{"tf":1.0},"265":{"tf":1.4142135623730951}},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"p":{"b":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":3,"docs":{"250":{"tf":1.0},"7":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"(":{"0":{"df":0,"docs":{},"x":{"7":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"d":{"9":{"6":{"8":{"2":{"1":{"2":{"df":0,"docs":{},"f":{"0":{"df":1,"docs":{"265":{"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":1,"docs":{"265":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"226":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"_":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"275":{"tf":2.23606797749979}}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"161":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"162":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":2,"docs":{"128":{"tf":1.0},"162":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":4,"docs":{"128":{"tf":1.0},"133":{"tf":1.0},"161":{"tf":1.4142135623730951},"164":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":2.0}}}}},"df":19,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"126":{"tf":1.4142135623730951},"160":{"tf":1.0},"174":{"tf":1.4142135623730951},"227":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.0},"39":{"tf":2.23606797749979},"40":{"tf":2.0},"41":{"tf":1.7320508075688772},"42":{"tf":1.7320508075688772},"44":{"tf":1.4142135623730951},"45":{"tf":1.0},"46":{"tf":1.0},"83":{"tf":1.4142135623730951}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":11,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"174":{"tf":1.0},"194":{"tf":1.0},"218":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":1.4142135623730951}}}}}},"i":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"l":{"df":1,"docs":{"264":{"tf":1.0}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"117":{"tf":1.0}}}}}}}},"i":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.7320508075688772}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{")":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.7320508075688772},"30":{"tf":2.23606797749979},"31":{"tf":1.0}}}}}}},"df":9,"docs":{"17":{"tf":1.7320508075688772},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.7320508075688772}},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.0}}},"df":0,"docs":{}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}},"g":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"69":{"tf":2.23606797749979},"78":{"tf":2.23606797749979}},"p":{"df":2,"docs":{"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":42,"docs":{"142":{"tf":1.0},"147":{"tf":1.7320508075688772},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"17":{"tf":2.449489742783178},"208":{"tf":1.0},"215":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":3.3166247903554},"232":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"242":{"tf":1.4142135623730951},"249":{"tf":2.0},"26":{"tf":3.4641016151377544},"260":{"tf":1.0},"264":{"tf":2.6457513110645907},"265":{"tf":2.6457513110645907},"271":{"tf":2.0},"272":{"tf":1.0},"275":{"tf":2.8284271247461903},"28":{"tf":2.0},"280":{"tf":2.0},"283":{"tf":2.23606797749979},"284":{"tf":1.4142135623730951},"29":{"tf":2.0},"30":{"tf":2.23606797749979},"31":{"tf":1.4142135623730951},"34":{"tf":2.23606797749979},"37":{"tf":3.605551275463989},"41":{"tf":2.0},"46":{"tf":2.6457513110645907},"47":{"tf":1.0},"52":{"tf":4.242640687119285},"63":{"tf":3.7416573867739413},"71":{"tf":1.0},"79":{"tf":1.0},"83":{"tf":1.4142135623730951},"85":{"tf":1.0},"94":{"tf":1.0}},"n":{"df":1,"docs":{"155":{"tf":1.0}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"150":{"tf":1.0}}},"df":1,"docs":{"213":{"tf":1.0}}},"n":{"df":4,"docs":{"169":{"tf":2.0},"181":{"tf":1.0},"259":{"tf":1.7320508075688772},"260":{"tf":1.0}},"g":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":5,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"213":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"s":{"df":3,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"285":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":5,"docs":{"174":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"264":{"tf":1.7320508075688772},"283":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":10,"docs":{"137":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"165":{"tf":1.0},"170":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.7320508075688772},"274":{"tf":2.0}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":4,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":5,"docs":{"227":{"tf":1.4142135623730951},"228":{"tf":1.4142135623730951},"229":{"tf":1.0},"242":{"tf":1.0},"83":{"tf":1.0}}}},"o":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":2,"docs":{"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"p":{"df":5,"docs":{"128":{"tf":1.0},"198":{"tf":1.4142135623730951},"199":{"tf":1.0},"244":{"tf":2.0},"245":{"tf":1.0}},"u":{"df":0,"docs":{},"l":{"df":5,"docs":{"149":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"122":{"tf":1.0},"79":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":3,"docs":{"256":{"tf":1.0},"280":{"tf":1.0},"34":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"263":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"151":{"tf":1.0},"232":{"tf":1.0},"277":{"tf":1.4142135623730951}},"p":{"c":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"i":{"d":{"df":5,"docs":{"260":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":1,"docs":{"4":{"tf":1.0}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"272":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"d":{"df":2,"docs":{"166":{"tf":1.0},"167":{"tf":1.0}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"u":{"df":1,"docs":{"120":{"tf":1.0}}}}},"df":4,"docs":{"121":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"207":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"137":{"tf":1.0},"265":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951}}}}}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":4,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0}}}},"i":{"df":0,"docs":{},"x":{"df":9,"docs":{"120":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"142":{"tf":1.0},"177":{"tf":1.0},"213":{"tf":1.0},"251":{"tf":1.0},"277":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"147":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"275":{"tf":1.4142135623730951}}}}},"s":{"df":1,"docs":{"79":{"tf":1.0}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"v":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"137":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":4,"docs":{"137":{"tf":2.0},"265":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"52":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"195":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":8,"docs":{"190":{"tf":1.0},"191":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"272":{"tf":1.0},"281":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"t":{"(":{"\"":{"%":{"1":{"0":{"d":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"9":{"df":2,"docs":{"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"df":1,"docs":{"250":{"tf":1.0}}},"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"249":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"247":{"tf":1.0},"248":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"[":{"%":{"5":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"251":{"tf":1.0}}},"r":{"a":{"c":{"df":3,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{".":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"283":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":6,"docs":{"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":2,"docs":{"232":{"tf":1.7320508075688772},"275":{"tf":1.0}}}},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"242":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"272":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"128":{"tf":1.0},"241":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"128":{"tf":1.0},"226":{"tf":1.0},"240":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":28,"docs":{"133":{"tf":1.0},"134":{"tf":1.0},"137":{"tf":1.0},"207":{"tf":1.0},"224":{"tf":1.7320508075688772},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.4142135623730951},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"259":{"tf":1.0},"264":{"tf":3.3166247903554},"265":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"278":{"tf":1.0},"280":{"tf":2.0},"282":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}},"f":{"(":{"\"":{"%":{"8":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"159":{"tf":1.0},"260":{"tf":1.0},"269":{"tf":1.0},"83":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"34":{"tf":1.7320508075688772},"35":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"273":{"tf":1.0},"276":{"tf":1.0},"278":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"111":{"tf":1.0}}},"y":{"\"":{":":{"1":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"37":{"tf":1.0}}},"y":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"37":{"tf":1.0}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":13,"docs":{"126":{"tf":2.0},"128":{"tf":1.4142135623730951},"133":{"tf":2.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":2.23606797749979},"140":{"tf":1.0},"141":{"tf":2.0},"208":{"tf":1.4142135623730951},"215":{"tf":2.0},"250":{"tf":1.0},"271":{"tf":1.4142135623730951},"283":{"tf":2.0}}},"l":{"df":1,"docs":{"126":{"tf":1.0}},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"c":{"/":{"1":{"5":{"6":{"5":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"/":{"<":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"i":{"d":{">":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"265":{"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":{},"k":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"6":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"v":{"4":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"6":{"/":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"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":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":22,"docs":{"126":{"tf":1.0},"147":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"163":{"tf":1.0},"196":{"tf":1.0},"208":{"tf":1.0},"217":{"tf":1.4142135623730951},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.449489742783178},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.7320508075688772},"282":{"tf":1.0},"29":{"tf":2.0},"30":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":2.0}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"207":{"tf":1.0}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"264":{"tf":2.23606797749979}}}}},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{".":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"195":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"[":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"2":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"120":{"tf":1.0},"207":{"tf":1.0},"271":{"tf":1.4142135623730951},"275":{"tf":1.0}},"r":{"a":{"df":0,"docs":{},"m":{"\\":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":59,"docs":{"112":{"tf":1.0},"117":{"tf":2.8284271247461903},"118":{"tf":1.7320508075688772},"122":{"tf":1.0},"124":{"tf":2.0},"126":{"tf":3.0},"128":{"tf":1.0},"129":{"tf":1.0},"141":{"tf":1.7320508075688772},"142":{"tf":2.23606797749979},"144":{"tf":1.0},"157":{"tf":1.4142135623730951},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"17":{"tf":1.7320508075688772},"178":{"tf":2.0},"186":{"tf":1.0},"195":{"tf":1.7320508075688772},"200":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"203":{"tf":1.7320508075688772},"207":{"tf":1.7320508075688772},"212":{"tf":1.7320508075688772},"218":{"tf":2.6457513110645907},"219":{"tf":1.4142135623730951},"225":{"tf":1.0},"226":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.4142135623730951},"253":{"tf":1.4142135623730951},"254":{"tf":2.8284271247461903},"256":{"tf":1.0},"257":{"tf":1.7320508075688772},"259":{"tf":1.0},"26":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.7320508075688772},"270":{"tf":1.7320508075688772},"271":{"tf":2.23606797749979},"272":{"tf":1.4142135623730951},"273":{"tf":1.4142135623730951},"274":{"tf":2.23606797749979},"275":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.4142135623730951},"282":{"tf":1.7320508075688772},"283":{"tf":1.4142135623730951},"284":{"tf":2.23606797749979},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"53":{"tf":1.0},"63":{"tf":1.0}},"m":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":3,"docs":{"72":{"tf":1.0},"79":{"tf":1.4142135623730951},"80":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"265":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"128":{"tf":1.0},"254":{"tf":2.449489742783178}}}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"82":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"284":{"tf":1.4142135623730951}}}}}}},"v":{"df":0,"docs":{},"i":{"d":{"df":19,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.4142135623730951},"138":{"tf":1.0},"151":{"tf":1.0},"161":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"213":{"tf":1.4142135623730951},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"239":{"tf":1.0},"246":{"tf":1.0},"256":{"tf":1.0},"265":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"s":{"df":1,"docs":{"47":{"tf":1.0}},"e":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"o":{"df":1,"docs":{"152":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":22,"docs":{"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.4142135623730951},"134":{"tf":1.0},"135":{"tf":1.4142135623730951},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"149":{"tf":1.0},"157":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"193":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.0},"275":{"tf":1.0},"277":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}},"s":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"1":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"134":{"tf":1.0},"282":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"134":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"c":{"(":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":2,"docs":{"132":{"tf":1.4142135623730951},"135":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":1,"docs":{"259":{"tf":1.0}}},"r":{"df":3,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":1.0}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"127":{"tf":1.0},"136":{"tf":1.0}}}},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"h":{"df":5,"docs":{"128":{"tf":1.0},"160":{"tf":1.7320508075688772},"163":{"tf":1.7320508075688772},"197":{"tf":1.0},"243":{"tf":1.7320508075688772}}}}},"w":{"d":{"`":{"/":{":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"c":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"16":{"tf":1.0}}},"df":0,"docs":{}},"y":{"df":1,"docs":{"264":{"tf":1.0}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"2":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{".":{"6":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":32,"docs":{"128":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.4142135623730951},"205":{"tf":1.4142135623730951},"232":{"tf":1.7320508075688772},"242":{"tf":1.7320508075688772},"246":{"tf":1.4142135623730951},"267":{"tf":2.0},"268":{"tf":1.0},"269":{"tf":1.0},"270":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":2.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.4142135623730951},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"286":{"tf":1.0}}}}}}}},"q":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":1,"docs":{"117":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"217":{"tf":1.7320508075688772}},"e":{"d":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"275":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"e":{"df":13,"docs":{"120":{"tf":1.0},"150":{"tf":1.0},"181":{"tf":2.0},"184":{"tf":1.0},"185":{"tf":2.0},"196":{"tf":1.4142135623730951},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"264":{"tf":1.7320508075688772}},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"243":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"i":{"c":{"df":2,"docs":{"66":{"tf":1.0},"75":{"tf":1.0}},"k":{"df":8,"docs":{"159":{"tf":1.0},"262":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"269":{"tf":1.0},"272":{"tf":1.4142135623730951},"66":{"tf":1.0},"75":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"272":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}}}},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}}}},"r":{"0":{"df":1,"docs":{"253":{"tf":1.0}}},"1":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"6":{"df":1,"docs":{"253":{"tf":1.4142135623730951}}},"7":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}},"8":{"df":1,"docs":{"253":{"tf":1.0}}},":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"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":1,"docs":{"265":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"d":{"d":{"df":0,"docs":{},"r":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":4,"docs":{"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.0}}}},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":2,"docs":{"150":{"tf":1.0},"152":{"tf":1.0}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"150":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"150":{"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":{},"g":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"(":{"0":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"4":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"[":{"5":{"df":0,"docs":{},"m":{"df":1,"docs":{"79":{"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":2,"docs":{"236":{"tf":1.0},"264":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"137":{"tf":1.0},"216":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"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":{"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"137":{"tf":2.0},"216":{"tf":1.4142135623730951},"217":{"tf":1.0}}}},"b":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}},"的":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"63":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":1,"docs":{"157":{"tf":1.4142135623730951}},"u":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"53":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":3,"docs":{"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"274":{"tf":1.4142135623730951}},"e":{"a":{"d":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":18,"docs":{"134":{"tf":1.0},"136":{"tf":1.4142135623730951},"144":{"tf":1.0},"153":{"tf":1.4142135623730951},"217":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"231":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":1.7320508075688772},"269":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.4142135623730951},"279":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"34":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":1,"docs":{"215":{"tf":1.0}}}},"r":{"df":1,"docs":{"250":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"32":{"tf":2.0},"33":{"tf":1.0},"34":{"tf":2.8284271247461903},"35":{"tf":2.23606797749979}}}}},"m":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"285":{"tf":1.0},"85":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"41":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":3,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"271":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"274":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"c":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":1,"docs":{"280":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"204":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":5,"docs":{"188":{"tf":1.0},"203":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"280":{"tf":1.0}}},"df":0,"docs":{}}}}},"r":{"d":{"df":5,"docs":{"272":{"tf":1.0},"273":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"v":{"df":1,"docs":{"217":{"tf":2.0}}}},"d":{"df":0,"docs":{},"i":{"df":2,"docs":{"264":{"tf":1.7320508075688772},"85":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"122":{"tf":1.0},"181":{"tf":1.0},"186":{"tf":1.4142135623730951},"196":{"tf":1.4142135623730951},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"c":{"df":1,"docs":{"229":{"tf":1.0}}},"df":0,"docs":{}}},"df":4,"docs":{"11":{"tf":1.4142135623730951},"15":{"tf":1.0},"246":{"tf":1.0},"82":{"tf":1.0}},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":135,"docs":{"120":{"tf":2.449489742783178},"126":{"tf":1.0},"127":{"tf":2.0},"128":{"tf":1.0},"129":{"tf":1.0},"130":{"tf":1.0},"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"143":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"156":{"tf":1.0},"157":{"tf":1.0},"158":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.4142135623730951},"204":{"tf":1.0},"205":{"tf":1.0},"206":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"209":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"223":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"226":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"230":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"246":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"253":{"tf":1.0},"254":{"tf":1.0},"255":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.0},"263":{"tf":1.0},"271":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"n":{"c":{"df":4,"docs":{"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"259":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"267":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":5,"docs":{"126":{"tf":1.0},"131":{"tf":1.0},"207":{"tf":1.4142135623730951},"274":{"tf":1.0},"277":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"213":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}}}}}},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"203":{"tf":1.0}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}}},"df":1,"docs":{"213":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"257":{"tf":1.0}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"133":{"tf":1.0},"283":{"tf":1.0}}}},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"254":{"tf":1.0}}}}}},"df":0,"docs":{}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":3,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0},"138":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":2,"docs":{"272":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"4":{"df":1,"docs":{"186":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"186":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"v":{"df":7,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"o":{"df":1,"docs":{"264":{"tf":1.0}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":3,"docs":{"180":{"tf":1.0},"181":{"tf":1.0},"265":{"tf":1.0}}}}}},"q":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.7320508075688772}}}}}}},"df":4,"docs":{"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":2.449489742783178},"277":{"tf":2.0}},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":7,"docs":{"127":{"tf":1.0},"170":{"tf":2.0},"175":{"tf":1.4142135623730951},"240":{"tf":1.0},"241":{"tf":1.0},"274":{"tf":3.0},"277":{"tf":1.4142135623730951}}}}},"i":{"df":0,"docs":{},"r":{"df":13,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"141":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"203":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"280":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":6,"docs":{"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"i":{"d":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"df":1,"docs":{"34":{"tf":1.0}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":2,"docs":{"269":{"tf":1.0},"277":{"tf":1.0}},"r":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":7,"docs":{"192":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"207":{"tf":1.0},"259":{"tf":1.4142135623730951},"79":{"tf":1.0}}}}}},"t":{"df":9,"docs":{"132":{"tf":1.4142135623730951},"140":{"tf":1.4142135623730951},"23":{"tf":2.23606797749979},"26":{"tf":2.23606797749979},"260":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"34":{"tf":2.23606797749979},"37":{"tf":3.4641016151377544}},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":1.0}}}},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"116":{"tf":1.0},"122":{"tf":1.0},"124":{"tf":1.0},"150":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"(":{"0":{"df":1,"docs":{"134":{"tf":1.0}}},"df":0,"docs":{}},"df":92,"docs":{"111":{"tf":2.0},"126":{"tf":1.0},"132":{"tf":2.0},"133":{"tf":1.0},"135":{"tf":1.7320508075688772},"136":{"tf":1.0},"140":{"tf":1.4142135623730951},"141":{"tf":2.6457513110645907},"142":{"tf":1.4142135623730951},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.0},"150":{"tf":1.4142135623730951},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.4142135623730951},"157":{"tf":1.7320508075688772},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.7320508075688772},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.7320508075688772},"174":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":2.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"207":{"tf":1.4142135623730951},"211":{"tf":2.449489742783178},"212":{"tf":1.0},"214":{"tf":2.23606797749979},"225":{"tf":1.0},"228":{"tf":1.0},"23":{"tf":1.4142135623730951},"231":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"244":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"259":{"tf":1.0},"26":{"tf":1.4142135623730951},"265":{"tf":2.23606797749979},"269":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"277":{"tf":1.4142135623730951},"279":{"tf":1.4142135623730951},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.0},"284":{"tf":1.0},"29":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":2.23606797749979},"41":{"tf":1.0},"46":{"tf":1.7320508075688772},"52":{"tf":3.4641016151377544},"58":{"tf":3.605551275463989},"63":{"tf":3.0},"69":{"tf":2.8284271247461903},"78":{"tf":2.8284271247461903},"82":{"tf":2.0},"83":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"41":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"s":{"df":2,"docs":{"195":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"117":{"tf":1.0},"120":{"tf":1.0}}}}}}}}},"v":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"217":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"248":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":6,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"204":{"tf":2.0},"253":{"tf":1.0},"274":{"tf":1.0},"276":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":3,"docs":{"123":{"tf":1.0},"133":{"tf":1.0},"251":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":2,"docs":{"128":{"tf":1.0},"229":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"128":{"tf":1.0},"228":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"167":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"167":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"164":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":3,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":5,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.4142135623730951},"166":{"tf":1.0},"167":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"u":{"6":{"4":{"df":1,"docs":{"165":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"166":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":4,"docs":{"128":{"tf":1.0},"163":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":8,"docs":{"120":{"tf":1.0},"163":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.4142135623730951},"45":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"解":{"df":0,"docs":{},"决":{"df":0,"docs":{},"了":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"df":18,"docs":{"120":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"165":{"tf":1.0},"180":{"tf":1.0},"196":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"275":{"tf":1.0},"43":{"tf":1.7320508075688772},"44":{"tf":2.0},"45":{"tf":1.0},"46":{"tf":1.7320508075688772},"47":{"tf":1.0},"48":{"tf":1.4142135623730951}}}},"s":{"c":{"df":1,"docs":{"116":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"m":{"df":3,"docs":{"23":{"tf":2.449489742783178},"259":{"tf":1.0},"26":{"tf":2.449489742783178}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"df":0,"docs":{},"y":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}}}}}},"df":2,"docs":{"117":{"tf":1.0},"282":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"269":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"85":{"tf":1.0}}}}}},"s":{"df":1,"docs":{"11":{"tf":1.0}}},"u":{"df":0,"docs":{},"n":{"df":30,"docs":{"108":{"tf":1.4142135623730951},"112":{"tf":1.4142135623730951},"126":{"tf":1.0},"150":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":2.0},"257":{"tf":1.4142135623730951},"258":{"tf":1.0},"259":{"tf":2.0},"261":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.4142135623730951},"271":{"tf":1.0},"272":{"tf":1.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.4142135623730951},"47":{"tf":2.23606797749979},"53":{"tf":1.4142135623730951},"79":{"tf":1.4142135623730951}},"e":{"df":7,"docs":{"17":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"63":{"tf":1.0}}},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":2,"docs":{"52":{"tf":1.0},"53":{"tf":1.0}}}},"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"53":{"tf":1.0}}}}},"df":0,"docs":{}},"df":5,"docs":{"264":{"tf":2.0},"50":{"tf":2.0},"51":{"tf":1.7320508075688772},"52":{"tf":1.4142135623730951},"54":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}},"v":{"3":{"2":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"6":{"4":{"df":0,"docs":{},"g":{"df":1,"docs":{"116":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"x":{"df":1,"docs":{"117":{"tf":1.0}}}}},"df":0,"docs":{}}},"s":{"/":{".":{"\\":{"df":0,"docs":{},"{":{"2":{"\\":{"df":0,"docs":{},"}":{"/":{"&":{"\\":{"df":0,"docs":{},"n":{"/":{"df":0,"docs":{},"g":{"df":1,"docs":{"260":{"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":{}},"1":{"df":1,"docs":{"112":{"tf":2.0}}},"3":{"2":{"df":1,"docs":{"137":{"tf":1.0}}},"9":{"0":{"df":2,"docs":{"116":{"tf":1.0},"204":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{")":{"(":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"52":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"23":{"tf":1.0},"26":{"tf":1.0},"83":{"tf":1.0}}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"[":{"2":{"6":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"264":{"tf":1.0},"71":{"tf":1.0},"83":{"tf":2.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":1,"docs":{"153":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"144":{"tf":1.0},"153":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"e":{"df":8,"docs":{"122":{"tf":1.0},"126":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"239":{"tf":1.0},"265":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0}}},"p":{"df":0,"docs":{},"l":{"df":10,"docs":{"142":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"283":{"tf":1.0},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0}}}}},"r":{"df":1,"docs":{"263":{"tf":1.4142135623730951}}},"s":{"df":0,"docs":{},"h":{"a":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}},"v":{"df":0,"docs":{},"e":{"df":4,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"193":{"tf":1.0},"284":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"250":{"tf":1.0}}}}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"137":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":1,"docs":{"161":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":2.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"285":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":15,"docs":{"159":{"tf":1.0},"233":{"tf":1.4142135623730951},"250":{"tf":1.0},"251":{"tf":1.4142135623730951},"253":{"tf":1.0},"26":{"tf":1.0},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":2.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"284":{"tf":1.0}}}}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":93,"docs":{"127":{"tf":1.0},"133":{"tf":1.4142135623730951},"136":{"tf":1.4142135623730951},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":1.4142135623730951},"146":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.4142135623730951},"149":{"tf":1.4142135623730951},"150":{"tf":1.4142135623730951},"151":{"tf":1.4142135623730951},"152":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"159":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"161":{"tf":1.4142135623730951},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"172":{"tf":1.4142135623730951},"173":{"tf":1.4142135623730951},"174":{"tf":1.0},"175":{"tf":1.4142135623730951},"176":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"178":{"tf":1.4142135623730951},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.4142135623730951},"188":{"tf":1.4142135623730951},"189":{"tf":1.4142135623730951},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.4142135623730951},"193":{"tf":1.4142135623730951},"194":{"tf":1.0},"195":{"tf":1.4142135623730951},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.4142135623730951},"208":{"tf":1.4142135623730951},"210":{"tf":1.4142135623730951},"211":{"tf":1.4142135623730951},"212":{"tf":1.4142135623730951},"213":{"tf":1.4142135623730951},"214":{"tf":1.4142135623730951},"215":{"tf":1.4142135623730951},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.4142135623730951},"225":{"tf":1.4142135623730951},"227":{"tf":1.4142135623730951},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.4142135623730951},"233":{"tf":1.4142135623730951},"235":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.4142135623730951},"248":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951},"250":{"tf":1.4142135623730951},"251":{"tf":1.4142135623730951},"265":{"tf":1.0}}}},"df":0,"docs":{}}},"c":{"(":{"\"":{".":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":10,"docs":{"37":{"tf":1.0},"38":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951},"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"d":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":12,"docs":{"111":{"tf":1.0},"17":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"52":{"tf":1.0}}}}}},"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"c":{"df":1,"docs":{"111":{"tf":1.0}}},"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"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":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"b":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"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":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"/":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"/":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"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":{}},".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"/":{"1":{"2":{"6":{"7":{"5":{"2":{"2":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"63":{"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":6,"docs":{"17":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.7320508075688772},"35":{"tf":1.0},"37":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"d":{"_":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}},"df":10,"docs":{"134":{"tf":1.0},"159":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"264":{"tf":1.0},"272":{"tf":1.4142135623730951},"277":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"=":{"\"":{"b":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"=":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":2,"docs":{"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":11,"docs":{"129":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"226":{"tf":1.0},"252":{"tf":1.0},"34":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"126":{"tf":1.4142135623730951},"141":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"141":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"141":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"d":{"df":2,"docs":{"260":{"tf":1.0},"47":{"tf":1.0}}},"df":0,"docs":{},"e":{"df":22,"docs":{"112":{"tf":1.0},"117":{"tf":1.0},"157":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"203":{"tf":1.4142135623730951},"210":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"251":{"tf":1.0},"252":{"tf":1.0},"260":{"tf":1.0},"261":{"tf":1.4142135623730951},"264":{"tf":1.0},"267":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"280":{"tf":1.0},"285":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"m":{"df":1,"docs":{"265":{"tf":1.0}}},"n":{"df":1,"docs":{"155":{"tf":1.0}}}},"g":{"6":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":3,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"126":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"121":{"tf":1.0},"126":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}},"f":{".":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"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":{}}},"n":{"d":{"df":6,"docs":{"127":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{},"t":{"df":5,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"196":{"tf":1.7320508075688772},"37":{"tf":2.449489742783178}}}},"p":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"141":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"279":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"q":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"142":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"274":{"tf":1.0}}},"v":{"df":1,"docs":{"85":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}}}}},"t":{"df":14,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.0},"154":{"tf":1.0},"203":{"tf":1.0},"204":{"tf":1.7320508075688772},"213":{"tf":1.0},"225":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"53":{"tf":2.449489742783178}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"117":{"tf":1.0},"163":{"tf":1.0}}}}}},"f":{"c":{"df":1,"docs":{"122":{"tf":1.0}}},"df":0,"docs":{}},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":5,"docs":{"159":{"tf":1.0},"163":{"tf":1.7320508075688772},"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}},"df":2,"docs":{"41":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"259":{"tf":2.0}}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"_":{"a":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":3,"docs":{"264":{"tf":1.0},"269":{"tf":1.0},"280":{"tf":1.0}}}},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"249":{"tf":1.0}},"e":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"=":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"249":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"249":{"tf":1.0}}}}}}}}},"df":5,"docs":{"240":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.0},"30":{"tf":1.0},"53":{"tf":1.0}},"n":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"121":{"tf":1.4142135623730951},"188":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"37":{"tf":2.449489742783178}},"n":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":2.449489742783178}}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"df":1,"docs":{"264":{"tf":1.0}},"e":{"d":{":":{"0":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}},"1":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"37":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"37":{"tf":1.0}}}},"df":1,"docs":{"37":{"tf":1.4142135623730951}}}}}}}},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":4,"docs":{"126":{"tf":1.0},"192":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"l":{"df":4,"docs":{"159":{"tf":1.0},"253":{"tf":1.0},"269":{"tf":1.0},"53":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"159":{"tf":1.0}}}},"i":{"df":1,"docs":{"141":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"165":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"u":{"df":95,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"x":{"df":1,"docs":{"269":{"tf":1.0}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"136":{"tf":1.0}}}}},"z":{"df":0,"docs":{},"e":{":":{"1":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"280":{"tf":1.0}}},"4":{"df":1,"docs":{"280":{"tf":2.0}}},"df":0,"docs":{}},"=":{"1":{"0":{"2":{"4":{"0":{"df":5,"docs":{"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"172":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"149":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":23,"docs":{"141":{"tf":1.0},"144":{"tf":1.4142135623730951},"145":{"tf":2.0},"149":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":2.0},"155":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"175":{"tf":1.7320508075688772},"176":{"tf":1.7320508075688772},"177":{"tf":1.0},"178":{"tf":1.4142135623730951},"179":{"tf":1.4142135623730951},"180":{"tf":1.7320508075688772},"181":{"tf":1.4142135623730951},"182":{"tf":1.4142135623730951},"183":{"tf":1.4142135623730951},"232":{"tf":2.0},"242":{"tf":2.23606797749979},"275":{"tf":1.0},"277":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"*":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"134":{"tf":1.0}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"149":{"tf":1.0},"34":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.0},"275":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":3,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"v":{"df":4,"docs":{"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0},"82":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":4,"docs":{"37":{"tf":1.0},"41":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"d":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{".":{"c":{"df":1,"docs":{"282":{"tf":1.0}}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"58":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"d":{"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"s":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"df":1,"docs":{"83":{"tf":1.0}}},"u":{"3":{"2":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"k":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"202":{"tf":1.4142135623730951}}}}}},"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"201":{"tf":1.0},"202":{"tf":1.0}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"201":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":2,"docs":{"83":{"tf":1.4142135623730951},"85":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"df":3,"docs":{"117":{"tf":1.0},"161":{"tf":1.0},"202":{"tf":1.7320508075688772}},"s":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":1,"docs":{"186":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":4,"docs":{"131":{"tf":1.4142135623730951},"69":{"tf":3.3166247903554},"78":{"tf":3.3166247903554},"82":{"tf":2.6457513110645907}},"h":{"df":1,"docs":{"186":{"tf":1.0}}},"i":{"df":0,"docs":{},"p":{"df":1,"docs":{"157":{"tf":1.0}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"200":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"0":{".":{"0":{"1":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"1":{"df":1,"docs":{"236":{"tf":1.0}}},"9":{"9":{"9":{"9":{"9":{"9":{"9":{"9":{"df":2,"docs":{"277":{"tf":1.0},"282":{"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":{}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{}},"df":3,"docs":{"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"(":{"1":{"df":1,"docs":{"4":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"257":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":2,"docs":{"257":{"tf":1.0},"284":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":2.0},"58":{"tf":2.0}},"s":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"w":{"df":3,"docs":{"264":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"280":{"tf":1.4142135623730951}}}}},"n":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"267":{"tf":1.0},"274":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"o":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}}}}}}}}},"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}}}},"k":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"186":{"tf":1.7320508075688772}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"117":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"120":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":5,"docs":{"118":{"tf":1.4142135623730951},"131":{"tf":1.4142135623730951},"186":{"tf":1.0},"69":{"tf":2.449489742783178},"78":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"161":{"tf":1.0}}}}}}},"df":13,"docs":{"117":{"tf":2.6457513110645907},"118":{"tf":2.449489742783178},"120":{"tf":2.0},"126":{"tf":1.0},"142":{"tf":1.0},"181":{"tf":1.7320508075688772},"186":{"tf":1.0},"196":{"tf":1.0},"200":{"tf":1.7320508075688772},"201":{"tf":1.4142135623730951},"202":{"tf":1.4142135623730951},"217":{"tf":1.0},"246":{"tf":1.0}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"186":{"tf":1.4142135623730951},"200":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":6,"docs":{"55":{"tf":1.7320508075688772},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"v":{"df":2,"docs":{"261":{"tf":1.0},"265":{"tf":1.0}}}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"112":{"tf":1.0},"127":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"m":{"df":5,"docs":{"251":{"tf":1.0},"257":{"tf":1.0},"264":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"233":{"tf":1.4142135623730951}},"e":{"d":{"(":{"b":{"[":{"'":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"'":{"]":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"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":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":2,"docs":{"233":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":13,"docs":{"117":{"tf":1.0},"123":{"tf":1.0},"127":{"tf":1.0},"128":{"tf":1.0},"157":{"tf":1.0},"203":{"tf":1.0},"207":{"tf":1.4142135623730951},"252":{"tf":1.0},"256":{"tf":2.0},"264":{"tf":1.7320508075688772},"265":{"tf":1.4142135623730951},"274":{"tf":1.0},"279":{"tf":1.0}},"e":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"16":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"p":{"a":{"c":{"df":0,"docs":{},"e":{"df":23,"docs":{"126":{"tf":2.0},"144":{"tf":1.0},"145":{"tf":1.0},"147":{"tf":1.4142135623730951},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":2.23606797749979},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.4142135623730951},"167":{"tf":1.0},"204":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":2.0},"277":{"tf":1.0},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"c":{"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"x":{"df":6,"docs":{"17":{"tf":1.0},"203":{"tf":1.4142135623730951},"41":{"tf":1.0},"52":{"tf":1.4142135623730951},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":8,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"138":{"tf":1.0},"203":{"tf":1.4142135623730951},"258":{"tf":2.0},"259":{"tf":1.0},"260":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":2,"docs":{"126":{"tf":1.0},"265":{"tf":1.0}},"i":{"df":22,"docs":{"121":{"tf":1.0},"131":{"tf":1.4142135623730951},"133":{"tf":1.0},"138":{"tf":1.4142135623730951},"141":{"tf":1.4142135623730951},"142":{"tf":1.0},"186":{"tf":1.0},"192":{"tf":1.0},"203":{"tf":2.0},"207":{"tf":1.0},"213":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"272":{"tf":1.0},"34":{"tf":1.7320508075688772},"63":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"126":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"d":{"df":1,"docs":{"126":{"tf":1.0}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":4,"docs":{"126":{"tf":1.0},"163":{"tf":1.0},"207":{"tf":1.0},"279":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":2,"docs":{"82":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}}}}},"r":{"c":{"/":{"df":0,"docs":{},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"16":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"207":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"207":{"tf":1.0}}}}}}},"df":5,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"37":{"tf":1.4142135623730951}}}},"s":{"df":1,"docs":{"217":{"tf":1.0}},"h":{"d":{"df":3,"docs":{"112":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951}}},"df":2,"docs":{"264":{"tf":1.0},"71":{"tf":1.4142135623730951}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"280":{"tf":1.0}}}},"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":21,"docs":{"120":{"tf":1.4142135623730951},"122":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"173":{"tf":2.0},"184":{"tf":2.0},"185":{"tf":1.0},"193":{"tf":1.7320508075688772},"195":{"tf":1.0},"197":{"tf":1.4142135623730951},"198":{"tf":1.0},"199":{"tf":1.0},"218":{"tf":1.4142135623730951},"243":{"tf":1.4142135623730951},"244":{"tf":1.0},"245":{"tf":1.0},"253":{"tf":1.4142135623730951},"264":{"tf":2.0}}}},"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"d":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"256":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"p":{"df":1,"docs":{"215":{"tf":1.0}}},"r":{"df":0,"docs":{},"t":{".":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"264":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":2.0}}}},"df":20,"docs":{"112":{"tf":1.0},"127":{"tf":1.0},"146":{"tf":1.0},"163":{"tf":1.0},"170":{"tf":1.0},"175":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"263":{"tf":1.0},"269":{"tf":1.4142135623730951},"270":{"tf":1.0},"272":{"tf":2.0},"274":{"tf":1.0},"275":{"tf":2.23606797749979},"284":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"69":{"tf":1.0},"78":{"tf":1.0}}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"274":{"tf":1.0}}}},"t":{"df":1,"docs":{"260":{"tf":1.0}},"e":{"df":3,"docs":{"207":{"tf":1.4142135623730951},"264":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951}}},"i":{"c":{"df":10,"docs":{"136":{"tf":1.0},"208":{"tf":1.0},"271":{"tf":1.0},"283":{"tf":1.0},"37":{"tf":1.4142135623730951},"52":{"tf":2.0},"58":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951},"83":{"tf":1.4142135623730951}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}},"s":{".":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"&":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"284":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"163":{"tf":1.0}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"274":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"146":{"tf":1.0},"275":{"tf":1.4142135623730951}}},"r":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"120":{"tf":2.23606797749979}}}},"df":0,"docs":{},"e":{"df":9,"docs":{"132":{"tf":1.0},"168":{"tf":1.0},"173":{"tf":1.0},"230":{"tf":1.0},"240":{"tf":1.0},"257":{"tf":1.0},"272":{"tf":1.7320508075688772},"273":{"tf":1.0},"274":{"tf":1.0}}}}},"r":{"[":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"251":{"tf":1.0},"34":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":3,"docs":{"118":{"tf":1.4142135623730951},"126":{"tf":1.0},"275":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"i":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":12,"docs":{"134":{"tf":1.0},"136":{"tf":1.0},"141":{"tf":1.0},"145":{"tf":2.0},"154":{"tf":2.0},"207":{"tf":1.0},"224":{"tf":1.0},"233":{"tf":1.0},"259":{"tf":1.0},"271":{"tf":1.0},"282":{"tf":2.23606797749979},"283":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":2.449489742783178}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":48,"docs":{"111":{"tf":1.7320508075688772},"118":{"tf":1.0},"120":{"tf":1.0},"131":{"tf":2.23606797749979},"132":{"tf":1.0},"133":{"tf":1.4142135623730951},"135":{"tf":1.0},"137":{"tf":2.8284271247461903},"138":{"tf":1.0},"142":{"tf":1.4142135623730951},"150":{"tf":2.0},"155":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"163":{"tf":1.7320508075688772},"165":{"tf":1.4142135623730951},"170":{"tf":1.7320508075688772},"175":{"tf":1.4142135623730951},"177":{"tf":1.4142135623730951},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":2.0},"193":{"tf":1.0},"212":{"tf":1.7320508075688772},"23":{"tf":1.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"246":{"tf":1.0},"26":{"tf":1.4142135623730951},"274":{"tf":3.4641016151377544},"275":{"tf":2.449489742783178},"277":{"tf":1.7320508075688772},"282":{"tf":1.7320508075688772},"284":{"tf":2.0},"37":{"tf":2.23606797749979},"38":{"tf":1.4142135623730951},"41":{"tf":2.23606797749979},"42":{"tf":1.0},"46":{"tf":2.23606797749979},"52":{"tf":3.872983346207417},"58":{"tf":4.0},"63":{"tf":3.0},"69":{"tf":3.1622776601683795},"78":{"tf":3.1622776601683795},"83":{"tf":1.4142135623730951}},"u":{"df":0,"docs":{},"r":{"df":4,"docs":{"232":{"tf":2.0},"242":{"tf":2.0},"275":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"u":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"285":{"tf":2.0}}}},"df":0,"docs":{}}},"u":{"b":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"121":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"257":{"tf":1.0}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"166":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.0},"63":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"246":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"238":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"271":{"tf":1.0}}}}}}}}},"c":{"c":{"df":0,"docs":{},"e":{"df":6,"docs":{"141":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0}},"s":{"df":0,"docs":{},"s":{"df":18,"docs":{"144":{"tf":1.0},"145":{"tf":1.0},"149":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":5,"docs":{"112":{"tf":1.0},"196":{"tf":1.0},"257":{"tf":1.0},"261":{"tf":1.0},"63":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{},"h":{"df":6,"docs":{"117":{"tf":1.0},"126":{"tf":1.0},"144":{"tf":1.0},"257":{"tf":1.0},"259":{"tf":1.0},"284":{"tf":1.0}}}},"d":{"df":0,"docs":{},"o":{"df":18,"docs":{"108":{"tf":1.0},"112":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"260":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.7320508075688772},"59":{"tf":1.0},"63":{"tf":1.0},"70":{"tf":1.0},"79":{"tf":1.4142135623730951},"84":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"m":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"163":{"tf":1.0},"240":{"tf":1.4142135623730951},"241":{"tf":1.4142135623730951}},"i":{"df":3,"docs":{"226":{"tf":1.0},"235":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"163":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"264":{"tf":2.8284271247461903}}}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":3,"docs":{"155":{"tf":1.0},"207":{"tf":1.0},"213":{"tf":1.0}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":19,"docs":{"115":{"tf":1.4142135623730951},"116":{"tf":1.0},"117":{"tf":2.0},"120":{"tf":1.0},"121":{"tf":1.7320508075688772},"122":{"tf":1.7320508075688772},"123":{"tf":1.0},"124":{"tf":1.0},"126":{"tf":2.6457513110645907},"136":{"tf":1.0},"142":{"tf":1.7320508075688772},"163":{"tf":1.4142135623730951},"201":{"tf":1.0},"202":{"tf":1.0},"203":{"tf":1.0},"218":{"tf":2.23606797749979},"224":{"tf":1.0},"225":{"tf":1.0},"34":{"tf":1.0}}}},"s":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"219":{"tf":1.0}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"146":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"w":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"/":{"0":{"df":1,"docs":{"85":{"tf":1.4142135623730951}}},"1":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"265":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"df":0,"docs":{}}}},"y":{"c":{"/":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"246":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951}},"m":{"=":{"\"":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"d":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"214":{"tf":1.0},"282":{"tf":1.4142135623730951}}}}}}},"y":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"213":{"tf":1.0}}}}}},"df":1,"docs":{"213":{"tf":1.0}}}}},"r":{"df":1,"docs":{"213":{"tf":1.0}},"e":{"=":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"213":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":5,"docs":{"126":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":1.0},"249":{"tf":1.7320508075688772},"265":{"tf":1.0}}}}},"df":3,"docs":{"128":{"tf":1.0},"213":{"tf":1.4142135623730951},"249":{"tf":1.4142135623730951}}},"n":{"+":{"a":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"264":{"tf":1.0},"85":{"tf":1.4142135623730951}}}}}}},"c":{"'":{"df":1,"docs":{"272":{"tf":1.7320508075688772}}},";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{";":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"272":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"273":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"276":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"272":{"tf":1.4142135623730951},"273":{"tf":1.0},"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":3,"docs":{"270":{"tf":1.0},"272":{"tf":2.449489742783178},"273":{"tf":1.0}},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"272":{"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":{},"过":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"68":{"tf":1.0},"77":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":6,"docs":{"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.4142135623730951},"76":{"tf":1.0},"77":{"tf":1.0},"78":{"tf":1.4142135623730951}},"t":{"a":{"df":0,"docs":{},"x":{"df":105,"docs":{"131":{"tf":1.0},"132":{"tf":1.0},"133":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"196":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.4142135623730951},"217":{"tf":1.0},"218":{"tf":1.0},"219":{"tf":1.0},"220":{"tf":1.0},"221":{"tf":1.0},"222":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"231":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{".":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"v":{"[":{"1":{"df":1,"docs":{"283":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"/":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"0":{"/":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"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":{},"f":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"169":{"tf":1.0}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"0":{"1":{"df":1,"docs":{"259":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":2,"docs":{"169":{"tf":1.0},"181":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"d":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"259":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},":":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"/":{"c":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"/":{"d":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"133":{"tf":1.0},"212":{"tf":1.0},"280":{"tf":1.4142135623730951}}}},"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":{}}}}}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":14,"docs":{"112":{"tf":1.7320508075688772},"159":{"tf":1.0},"17":{"tf":1.4142135623730951},"224":{"tf":1.0},"225":{"tf":1.0},"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"269":{"tf":1.0},"27":{"tf":1.0},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"37":{"tf":1.4142135623730951},"39":{"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":{},"f":{"df":0,"docs":{},"|":{"df":0,"docs":{},"l":{"]":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":4,"docs":{"210":{"tf":1.0},"251":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"29":{"tf":1.0},"31":{"tf":1.0}}}},"df":1,"docs":{"31":{"tf":1.0}}}}}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"l":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"264":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"270":{"tf":2.23606797749979}}},"df":0,"docs":{}}}}},"a":{"d":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"272":{"tf":1.0}}}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":11,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"121":{"tf":1.0},"126":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"251":{"tf":1.4142135623730951},"264":{"tf":1.0},"265":{"tf":2.0},"29":{"tf":1.0},"30":{"tf":1.0}},"l":{"_":{"_":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"138":{"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":{},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"d":{"df":3,"docs":{"259":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":13,"docs":{"117":{"tf":1.4142135623730951},"126":{"tf":1.0},"128":{"tf":1.0},"138":{"tf":2.0},"146":{"tf":1.0},"17":{"tf":1.4142135623730951},"174":{"tf":1.0},"238":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.8284271247461903},"265":{"tf":1.0},"271":{"tf":1.0},"273":{"tf":1.0}}}}}}}},"t":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{":":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"a":{"b":{"df":0,"docs":{},"l":{"df":31,"docs":{"117":{"tf":1.0},"119":{"tf":1.4142135623730951},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"168":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"186":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"230":{"tf":1.4142135623730951},"231":{"tf":1.4142135623730951},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.4142135623730951},"237":{"tf":1.0},"240":{"tf":1.7320508075688772},"241":{"tf":1.4142135623730951},"242":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.4142135623730951},"245":{"tf":1.4142135623730951}},"e":{".":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"235":{"tf":1.0},"236":{"tf":1.0},"238":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":3,"docs":{"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"238":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"239":{"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":{}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"232":{"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":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"242":{"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":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"245":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"244":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"241":{"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":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"240":{"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":{}}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"f":{"df":1,"docs":{"243":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"234":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"117":{"tf":1.0},"157":{"tf":1.0},"274":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"_":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.4142135623730951}},"l":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"195":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":1,"docs":{"195":{"tf":1.0}}}}},"df":4,"docs":{"117":{"tf":1.0},"178":{"tf":1.0},"195":{"tf":2.0},"263":{"tf":1.0}}}},"k":{"df":0,"docs":{},"e":{"df":4,"docs":{"141":{"tf":1.4142135623730951},"169":{"tf":1.0},"264":{"tf":1.4142135623730951},"271":{"tf":1.0}},"n":{"df":1,"docs":{"267":{"tf":1.0}}}}},"p":{"df":1,"docs":{"122":{"tf":1.0}}},"r":{"df":0,"docs":{},"g":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"m":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"u":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"n":{"df":1,"docs":{"58":{"tf":1.4142135623730951}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"n":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":2,"docs":{"52":{"tf":1.4142135623730951},"53":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"52":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772},"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"82":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":6,"docs":{"133":{"tf":1.4142135623730951},"142":{"tf":1.7320508075688772},"145":{"tf":1.0},"154":{"tf":1.0},"157":{"tf":1.0},"264":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"k":{"'":{"df":1,"docs":{"150":{"tf":1.0}}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":8,"docs":{"149":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"142":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"265":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"*":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"41":{"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":8,"docs":{"137":{"tf":2.449489742783178},"142":{"tf":1.0},"150":{"tf":2.0},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":2.6457513110645907},"63":{"tf":2.0}}}},"df":0,"docs":{}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":14,"docs":{"120":{"tf":1.0},"142":{"tf":3.0},"150":{"tf":1.0},"155":{"tf":1.4142135623730951},"225":{"tf":1.0},"271":{"tf":1.4142135623730951},"272":{"tf":1.0},"280":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.0},"63":{"tf":2.0},"83":{"tf":1.4142135623730951}}}}},"c":{"'":{"df":1,"docs":{"117":{"tf":1.7320508075688772}}},".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"112":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"a":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":2.23606797749979}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"df":7,"docs":{"110":{"tf":1.7320508075688772},"111":{"tf":2.23606797749979},"112":{"tf":1.4142135623730951},"113":{"tf":1.0},"117":{"tf":1.0},"118":{"tf":1.4142135623730951},"219":{"tf":1.0}},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"111":{"tf":1.4142135623730951}}}}},"p":{",":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"/":{"df":0,"docs":{},"u":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"142":{"tf":1.0}}}},"df":0,"docs":{}}},"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"82":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"[":{"df":1,"docs":{"83":{"tf":2.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"v":{"4":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"131":{"tf":1.4142135623730951},"132":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"253":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":2.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"259":{"tf":1.0},"264":{"tf":2.0}}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":14,"docs":{"67":{"tf":1.7320508075688772},"68":{"tf":1.0},"70":{"tf":1.7320508075688772},"71":{"tf":1.0},"72":{"tf":1.0},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"75":{"tf":1.0},"76":{"tf":2.0},"77":{"tf":1.4142135623730951},"78":{"tf":1.0},"79":{"tf":1.4142135623730951},"80":{"tf":1.4142135623730951},"81":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"df":29,"docs":{"126":{"tf":1.0},"264":{"tf":2.23606797749979},"65":{"tf":1.7320508075688772},"66":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951},"68":{"tf":2.0},"69":{"tf":2.0},"70":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.4142135623730951},"73":{"tf":1.7320508075688772},"74":{"tf":1.0},"75":{"tf":1.4142135623730951},"76":{"tf":1.4142135623730951},"77":{"tf":2.0},"78":{"tf":2.0},"79":{"tf":1.0},"80":{"tf":1.4142135623730951},"81":{"tf":1.0},"82":{"tf":1.7320508075688772},"83":{"tf":1.0},"84":{"tf":1.0},"85":{"tf":1.0},"86":{"tf":1.0},"87":{"tf":1.7320508075688772},"88":{"tf":1.4142135623730951},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.0}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"264":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"t":{"df":5,"docs":{"87":{"tf":1.7320508075688772},"88":{"tf":1.4142135623730951},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":3,"docs":{"82":{"tf":1.0},"84":{"tf":1.7320508075688772},"85":{"tf":1.0}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"259":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"111":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}},"df":5,"docs":{"150":{"tf":1.0},"259":{"tf":1.0},"264":{"tf":1.7320508075688772},"274":{"tf":1.0},"83":{"tf":1.0}},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"117":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}}}},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":5,"docs":{"145":{"tf":1.0},"154":{"tf":1.0},"219":{"tf":1.0},"260":{"tf":2.0},"265":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"26":{"tf":2.0}},"e":{"2":{"df":1,"docs":{"26":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":21,"docs":{"117":{"tf":1.0},"141":{"tf":1.0},"174":{"tf":1.0},"178":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"186":{"tf":1.0},"194":{"tf":1.0},"195":{"tf":1.0},"197":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"243":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"259":{"tf":1.0},"270":{"tf":1.0},"282":{"tf":1.4142135623730951}}}},"x":{"df":0,"docs":{},"t":{"df":3,"docs":{"174":{"tf":1.0},"207":{"tf":1.0},"269":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"d":{"df":11,"docs":{"137":{"tf":2.23606797749979},"142":{"tf":1.0},"147":{"tf":1.0},"155":{"tf":1.0},"275":{"tf":1.4142135623730951},"41":{"tf":2.0},"46":{"tf":1.0},"52":{"tf":2.449489742783178},"63":{"tf":1.4142135623730951},"69":{"tf":2.0},"78":{"tf":2.0}}},"df":0,"docs":{}},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":1,"docs":{"163":{"tf":1.0}}}},"t":{"'":{"df":2,"docs":{"257":{"tf":1.0},"275":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"'":{"df":1,"docs":{"274":{"tf":1.0}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"204":{"tf":1.0}}}}},"’":{"df":1,"docs":{"218":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":11,"docs":{"268":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"277":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0}}},"k":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"d":{"df":1,"docs":{"136":{"tf":1.0}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":6,"docs":{"126":{"tf":1.0},"200":{"tf":1.0},"218":{"tf":1.0},"238":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":1.0}}}},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"272":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}}}},"df":7,"docs":{"147":{"tf":1.4142135623730951},"150":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.7320508075688772},"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":2,"docs":{"265":{"tf":1.0},"272":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":3,"docs":{"144":{"tf":1.0},"153":{"tf":1.0},"284":{"tf":1.0}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"u":{"df":1,"docs":{"280":{"tf":1.0}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"i":{"d":{"df":4,"docs":{"265":{"tf":2.23606797749979},"37":{"tf":2.449489742783178},"46":{"tf":2.0},"63":{"tf":2.0}}},"df":1,"docs":{"122":{"tf":1.0}},"m":{"df":0,"docs":{},"e":{"(":{"&":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":6,"docs":{"264":{"tf":1.0},"271":{"tf":1.4142135623730951},"274":{"tf":1.0},"275":{"tf":1.4142135623730951},"280":{"tf":1.4142135623730951},"283":{"tf":1.0}}},".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"(":{"1":{"df":1,"docs":{"235":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"%":{"df":0,"docs":{},"h":{":":{"%":{"df":0,"docs":{},"m":{":":{"%":{"df":1,"docs":{"235":{"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":{"275":{"tf":1.4142135623730951}},"t":{"df":1,"docs":{"83":{"tf":1.0}}}},"df":22,"docs":{"111":{"tf":1.0},"126":{"tf":1.0},"146":{"tf":1.0},"150":{"tf":1.0},"169":{"tf":1.0},"174":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"217":{"tf":1.0},"218":{"tf":1.0},"246":{"tf":1.0},"264":{"tf":3.1622776601683795},"271":{"tf":1.0},"272":{"tf":2.8284271247461903},"274":{"tf":1.4142135623730951},"277":{"tf":1.0},"278":{"tf":1.4142135623730951},"282":{"tf":1.4142135623730951},"284":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"63":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"227":{"tf":1.0},"228":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":4,"docs":{"170":{"tf":1.4142135623730951},"272":{"tf":1.7320508075688772},"274":{"tf":1.7320508075688772},"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"m":{"df":1,"docs":{"83":{"tf":2.0}},"p":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":2.23606797749979}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"o":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"265":{"tf":2.8284271247461903}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"o":{"df":16,"docs":{"101":{"tf":1.0},"102":{"tf":1.0},"103":{"tf":1.0},"105":{"tf":1.0},"106":{"tf":1.0},"107":{"tf":1.0},"109":{"tf":1.0},"113":{"tf":1.0},"63":{"tf":1.0},"89":{"tf":1.0},"90":{"tf":1.0},"91":{"tf":1.0},"95":{"tf":1.0},"96":{"tf":1.0},"97":{"tf":1.0},"99":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":2,"docs":{"140":{"tf":1.0},"207":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"l":{"df":72,"docs":{"133":{"tf":1.0},"136":{"tf":1.0},"137":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"146":{"tf":1.0},"147":{"tf":1.0},"148":{"tf":1.0},"149":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"152":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"155":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"187":{"tf":1.0},"188":{"tf":1.0},"189":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"192":{"tf":1.0},"193":{"tf":1.0},"207":{"tf":1.0},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"212":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"215":{"tf":1.0},"216":{"tf":1.0},"218":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"235":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0},"250":{"tf":1.0},"251":{"tf":1.0},"258":{"tf":1.0},"259":{"tf":2.0},"260":{"tf":1.0},"261":{"tf":1.7320508075688772},"264":{"tf":3.0},"265":{"tf":2.449489742783178},"267":{"tf":1.4142135623730951},"271":{"tf":1.0},"277":{"tf":1.0},"285":{"tf":1.7320508075688772},"50":{"tf":1.4142135623730951},"54":{"tf":1.0},"56":{"tf":1.0}},"s":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"260":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"t":{"c":{"df":0,"docs":{},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{".":{"c":{"df":1,"docs":{"86":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"c":{"df":1,"docs":{"142":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"142":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"p":{"df":2,"docs":{"230":{"tf":1.0},"263":{"tf":1.0}}},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}}}},"df":0,"docs":{}},"u":{"c":{"df":0,"docs":{},"h":{"df":2,"docs":{"23":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"137":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"_":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"37":{"tf":2.23606797749979}}},"df":0,"docs":{}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":3.0}}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"69":{"tf":1.4142135623730951},"78":{"tf":1.4142135623730951}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"(":{"df":0,"docs":{},"p":{"df":1,"docs":{"52":{"tf":1.4142135623730951}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"52":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"52":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"82":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"63":{"tf":1.0}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"29":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0}}}},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"37":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"128":{"tf":1.0},"225":{"tf":1.4142135623730951},"275":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":5,"docs":{"159":{"tf":1.4142135623730951},"17":{"tf":1.0},"224":{"tf":1.0},"269":{"tf":1.7320508075688772},"271":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"128":{"tf":1.0},"224":{"tf":1.4142135623730951},"269":{"tf":1.4142135623730951},"271":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"274":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"c":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":2,"docs":{"69":{"tf":1.0},"78":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"253":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":34,"docs":{"11":{"tf":1.0},"118":{"tf":1.0},"120":{"tf":1.0},"124":{"tf":2.23606797749979},"126":{"tf":1.7320508075688772},"131":{"tf":1.0},"132":{"tf":1.0},"136":{"tf":1.0},"173":{"tf":2.0},"193":{"tf":1.4142135623730951},"208":{"tf":1.0},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"258":{"tf":1.0},"264":{"tf":3.1622776601683795},"265":{"tf":1.7320508075688772},"269":{"tf":1.0},"270":{"tf":1.7320508075688772},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.4142135623730951},"279":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"284":{"tf":1.0},"285":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"/":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"100":{"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":{}},"_":{"_":{"<":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{">":{"_":{"_":{"<":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"133":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"133":{"tf":1.4142135623730951}}},"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":{}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"31":{"tf":1.0}}}},"df":2,"docs":{"30":{"tf":1.0},"31":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":2,"docs":{"133":{"tf":1.0},"212":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":22,"docs":{"117":{"tf":2.0},"118":{"tf":1.7320508075688772},"126":{"tf":2.449489742783178},"128":{"tf":1.7320508075688772},"133":{"tf":3.3166247903554},"136":{"tf":1.0},"137":{"tf":2.23606797749979},"138":{"tf":1.4142135623730951},"17":{"tf":1.0},"19":{"tf":1.4142135623730951},"212":{"tf":2.449489742783178},"216":{"tf":2.0},"265":{"tf":1.4142135623730951},"280":{"tf":2.0},"281":{"tf":1.0},"283":{"tf":1.0},"29":{"tf":1.0},"31":{"tf":1.0},"37":{"tf":1.0},"46":{"tf":1.0},"7":{"tf":1.0},"94":{"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":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}},"r":{"df":1,"docs":{"126":{"tf":1.4142135623730951}}}},"k":{"df":1,"docs":{"265":{"tf":1.0}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"118":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"145":{"tf":1.0},"154":{"tf":1.0}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":4,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"139":{"tf":1.0},"140":{"tf":1.0}}}}}}}},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"277":{"tf":1.0}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":5,"docs":{"117":{"tf":1.0},"121":{"tf":1.0},"247":{"tf":1.0},"248":{"tf":1.0},"249":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"142":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"269":{"tf":1.0},"277":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":2,"docs":{"137":{"tf":1.0},"157":{"tf":1.0}}}},"i":{"df":13,"docs":{"217":{"tf":1.0},"225":{"tf":1.0},"227":{"tf":1.0},"228":{"tf":1.0},"229":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"251":{"tf":1.0},"253":{"tf":1.0},"271":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"282":{"tf":1.0}},"e":{"df":2,"docs":{"120":{"tf":1.0},"177":{"tf":1.7320508075688772}}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"251":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"261":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":6,"docs":{"225":{"tf":1.0},"235":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"265":{"tf":1.0},"63":{"tf":1.0}}}}},"s":{"[":{"3":{"2":{"df":1,"docs":{"83":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":18,"docs":{"160":{"tf":1.0},"163":{"tf":1.4142135623730951},"225":{"tf":1.0},"232":{"tf":1.4142135623730951},"242":{"tf":1.4142135623730951},"271":{"tf":1.4142135623730951},"272":{"tf":3.0},"274":{"tf":1.7320508075688772},"275":{"tf":1.0},"280":{"tf":1.4142135623730951},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"63":{"tf":2.0},"69":{"tf":2.0},"78":{"tf":2.0},"82":{"tf":2.0},"83":{"tf":1.0}},"p":{"df":5,"docs":{"272":{"tf":2.23606797749979},"274":{"tf":2.0},"52":{"tf":2.0},"58":{"tf":2.0},"82":{"tf":1.7320508075688772}}}},"t":{"df":0,"docs":{},"l":{"df":2,"docs":{"111":{"tf":1.4142135623730951},"112":{"tf":2.0}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.7320508075688772}}}}}},"r":{"df":0,"docs":{},"n":{"df":3,"docs":{"204":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{".":{"df":0,"docs":{},"m":{"d":{"df":2,"docs":{"127":{"tf":1.0},"267":{"tf":1.0}}},"df":0,"docs":{}}},"_":{"b":{"c":{"c":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"_":{"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":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"m":{"d":{"df":1,"docs":{"261":{"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":39,"docs":{"12":{"tf":1.0},"127":{"tf":1.0},"20":{"tf":1.0},"24":{"tf":1.0},"261":{"tf":2.449489742783178},"262":{"tf":1.0},"263":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.0},"266":{"tf":1.0},"267":{"tf":2.23606797749979},"268":{"tf":1.4142135623730951},"269":{"tf":1.0},"27":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.4142135623730951},"285":{"tf":1.0},"286":{"tf":1.0},"31":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.0},"42":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.0},"54":{"tf":1.0},"60":{"tf":1.0}}}}}}},"w":{"df":0,"docs":{},"o":{"df":6,"docs":{"150":{"tf":1.0},"163":{"tf":1.7320508075688772},"232":{"tf":1.0},"239":{"tf":1.0},"267":{"tf":1.0},"274":{"tf":1.4142135623730951}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":30,"docs":{"117":{"tf":1.7320508075688772},"118":{"tf":1.7320508075688772},"120":{"tf":2.0},"124":{"tf":2.0},"126":{"tf":1.4142135623730951},"141":{"tf":1.0},"162":{"tf":1.0},"168":{"tf":1.0},"169":{"tf":1.4142135623730951},"172":{"tf":1.0},"174":{"tf":1.0},"182":{"tf":1.0},"183":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"186":{"tf":1.4142135623730951},"192":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"217":{"tf":1.4142135623730951},"219":{"tf":1.0},"220":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0},"264":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"37":{"tf":1.0},"47":{"tf":1.0},"52":{"tf":1.0},"53":{"tf":1.0}},"o":{"df":0,"docs":{},"f":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"1":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"2":{"df":3,"docs":{"139":{"tf":1.0},"140":{"tf":1.0},"141":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}},"u":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"\"":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}}}}}}}}},"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":{"6":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}},"3":{"2":{")":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"41":{"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":{},"i":{"d":{"df":2,"docs":{"46":{"tf":1.0},"63":{"tf":1.0}}},"df":0,"docs":{}}},"df":20,"docs":{"147":{"tf":1.0},"152":{"tf":1.4142135623730951},"155":{"tf":1.4142135623730951},"160":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.4142135623730951},"163":{"tf":1.0},"17":{"tf":1.0},"186":{"tf":2.0},"212":{"tf":1.7320508075688772},"232":{"tf":1.0},"242":{"tf":1.0},"275":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"34":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.23606797749979},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":36,"docs":{"146":{"tf":1.4142135623730951},"147":{"tf":1.0},"148":{"tf":1.0},"155":{"tf":1.0},"160":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.4142135623730951},"166":{"tf":1.0},"167":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"193":{"tf":1.0},"194":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"212":{"tf":1.0},"232":{"tf":1.0},"242":{"tf":1.0},"253":{"tf":1.0},"272":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"275":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.4142135623730951},"29":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.7320508075688772},"58":{"tf":2.23606797749979},"63":{"tf":1.7320508075688772},"69":{"tf":1.0},"78":{"tf":1.0}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"]":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"/":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"[":{"+":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"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":{}}}}},"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{"/":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{".":{"df":0,"docs":{},"h":{"df":7,"docs":{"212":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"d":{"df":2,"docs":{"271":{"tf":1.0},"275":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"p":{"df":2,"docs":{"66":{"tf":1.4142135623730951},"75":{"tf":1.4142135623730951}}}},"df":4,"docs":{"207":{"tf":1.4142135623730951},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.7320508075688772}},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":2,"docs":{"265":{"tf":2.0},"41":{"tf":2.0}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"6":{"4":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"136":{"tf":1.0},"283":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"161":{"tf":1.0},"162":{"tf":1.0}}}}}},"n":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":3,"docs":{"164":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":5,"docs":{"133":{"tf":1.0},"252":{"tf":1.0},"254":{"tf":1.0},"264":{"tf":1.4142135623730951},"265":{"tf":1.0}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":4,"docs":{"203":{"tf":1.4142135623730951},"252":{"tf":1.0},"264":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"141":{"tf":1.0}}}},"q":{"df":0,"docs":{},"u":{"df":3,"docs":{"193":{"tf":1.0},"264":{"tf":1.0},"274":{"tf":1.0}}}},"t":{"df":2,"docs":{"259":{"tf":1.0},"53":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"df":2,"docs":{"248":{"tf":1.0},"264":{"tf":1.7320508075688772}}}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":8,"docs":{"141":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"229":{"tf":1.0},"242":{"tf":1.0},"244":{"tf":1.0},"245":{"tf":1.0},"257":{"tf":1.0}}},"n":{"df":0,"docs":{},"k":{"df":7,"docs":{"21":{"tf":2.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.7320508075688772},"25":{"tf":2.0},"26":{"tf":1.0},"27":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"126":{"tf":1.0}}}}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"260":{"tf":1.0}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":8,"docs":{"141":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"52":{"tf":1.7320508075688772},"63":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"229":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":3,"docs":{"228":{"tf":1.0},"277":{"tf":1.0},"282":{"tf":1.0}}}}}},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":10,"docs":{"121":{"tf":1.4142135623730951},"171":{"tf":1.0},"176":{"tf":1.0},"200":{"tf":1.0},"239":{"tf":1.4142135623730951},"257":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.4142135623730951},"272":{"tf":1.4142135623730951},"284":{"tf":1.0}},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"121":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"121":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":4,"docs":{"126":{"tf":1.0},"184":{"tf":1.0},"185":{"tf":1.0},"264":{"tf":1.4142135623730951}},"i":{"d":{"df":1,"docs":{"52":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"b":{"df":1,"docs":{"94":{"tf":1.0}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"147":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":9,"docs":{"126":{"tf":2.23606797749979},"128":{"tf":1.0},"134":{"tf":1.7320508075688772},"213":{"tf":1.4142135623730951},"265":{"tf":1.7320508075688772},"32":{"tf":2.0},"33":{"tf":1.7320508075688772},"34":{"tf":3.0},"35":{"tf":1.4142135623730951}},"e":{"_":{"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":1,"docs":{"265":{"tf":2.23606797749979}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"212":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":2,"docs":{"133":{"tf":1.0},"280":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":4,"docs":{"128":{"tf":1.0},"135":{"tf":1.7320508075688772},"214":{"tf":1.0},"265":{"tf":1.0}}},"df":0,"docs":{}}}}}},"l":{"df":1,"docs":{"16":{"tf":1.0}}}},"s":{"a":{"df":0,"docs":{},"g":{"df":3,"docs":{"16":{"tf":1.4142135623730951},"30":{"tf":1.0},"53":{"tf":1.0}}}},"d":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":4,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"215":{"tf":1.0},"283":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"{":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"208":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":3,"docs":{"128":{"tf":1.0},"136":{"tf":1.0},"215":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"=":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"215":{"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":{}}}},"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"=":{"[":{"df":0,"docs":{},"u":{"df":3,"docs":{"207":{"tf":1.0},"208":{"tf":1.0},"283":{"tf":1.4142135623730951}},"s":{"d":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"207":{"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":6,"docs":{"128":{"tf":1.4142135623730951},"136":{"tf":3.1622776601683795},"207":{"tf":1.0},"208":{"tf":2.23606797749979},"215":{"tf":1.7320508075688772},"283":{"tf":2.6457513110645907}}}},"df":68,"docs":{"117":{"tf":1.0},"126":{"tf":1.4142135623730951},"131":{"tf":2.0},"132":{"tf":1.7320508075688772},"133":{"tf":1.4142135623730951},"134":{"tf":1.0},"136":{"tf":1.0},"138":{"tf":1.7320508075688772},"141":{"tf":1.0},"150":{"tf":1.0},"151":{"tf":1.0},"157":{"tf":1.4142135623730951},"161":{"tf":1.0},"165":{"tf":1.0},"169":{"tf":1.4142135623730951},"170":{"tf":1.0},"171":{"tf":1.0},"173":{"tf":1.0},"174":{"tf":1.0},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.4142135623730951},"186":{"tf":1.0},"188":{"tf":1.0},"192":{"tf":1.7320508075688772},"200":{"tf":1.0},"201":{"tf":2.0},"202":{"tf":2.0},"203":{"tf":1.4142135623730951},"204":{"tf":2.23606797749979},"210":{"tf":1.0},"211":{"tf":1.0},"213":{"tf":1.0},"214":{"tf":1.0},"217":{"tf":1.4142135623730951},"218":{"tf":1.4142135623730951},"226":{"tf":1.4142135623730951},"229":{"tf":1.4142135623730951},"230":{"tf":1.0},"231":{"tf":1.0},"233":{"tf":1.4142135623730951},"236":{"tf":1.4142135623730951},"237":{"tf":1.4142135623730951},"240":{"tf":1.4142135623730951},"241":{"tf":1.0},"250":{"tf":1.4142135623730951},"251":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"258":{"tf":1.4142135623730951},"259":{"tf":2.0},"261":{"tf":1.4142135623730951},"263":{"tf":1.0},"264":{"tf":1.7320508075688772},"265":{"tf":2.6457513110645907},"267":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":2.23606797749979},"275":{"tf":1.7320508075688772},"276":{"tf":1.0},"277":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.7320508075688772},"29":{"tf":1.0}},"e":{"c":{"df":2,"docs":{"264":{"tf":1.4142135623730951},"279":{"tf":1.7320508075688772}}},"df":0,"docs":{},"r":{"df":30,"docs":{"120":{"tf":1.0},"126":{"tf":2.449489742783178},"136":{"tf":1.4142135623730951},"147":{"tf":1.4142135623730951},"148":{"tf":1.0},"153":{"tf":1.4142135623730951},"154":{"tf":1.0},"160":{"tf":1.4142135623730951},"161":{"tf":1.0},"162":{"tf":1.0},"163":{"tf":1.4142135623730951},"164":{"tf":1.0},"166":{"tf":1.0},"204":{"tf":2.23606797749979},"208":{"tf":1.0},"213":{"tf":2.0},"214":{"tf":2.0},"232":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0},"242":{"tf":1.0},"264":{"tf":1.0},"265":{"tf":1.7320508075688772},"267":{"tf":1.0},"275":{"tf":2.23606797749979},"277":{"tf":1.0},"282":{"tf":1.4142135623730951},"283":{"tf":1.4142135623730951},"46":{"tf":1.0},"63":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":4,"docs":{"121":{"tf":1.4142135623730951},"163":{"tf":1.4142135623730951},"167":{"tf":1.0},"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"z":{"df":0,"docs":{},"u":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"265":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"r":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"/":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"2":{".":{"7":{"/":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"253":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"213":{"tf":1.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"/":{"b":{"c":{"c":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"264":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"147":{"tf":1.0},"218":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"117":{"tf":1.0}}}}}},"v":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"236":{"tf":1.0},"237":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":3,"docs":{"233":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0}}}}},"df":0,"docs":{}}},"2":{"df":1,"docs":{"123":{"tf":1.0}}},"5":{".":{"3":{"df":1,"docs":{"181":{"tf":1.0}}},"6":{"df":4,"docs":{"236":{"tf":1.0},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"240":{"tf":1.0},"241":{"tf":1.0}}}}}},"df":8,"docs":{"187":{"tf":1.0},"188":{"tf":1.0},"190":{"tf":1.0},"191":{"tf":1.0},"198":{"tf":1.0},"199":{"tf":1.0},"282":{"tf":2.0},"284":{"tf":2.0}},"u":{"df":47,"docs":{"117":{"tf":1.0},"128":{"tf":1.0},"132":{"tf":1.4142135623730951},"135":{"tf":1.4142135623730951},"139":{"tf":1.0},"140":{"tf":1.7320508075688772},"141":{"tf":1.7320508075688772},"151":{"tf":1.0},"155":{"tf":1.0},"170":{"tf":1.4142135623730951},"171":{"tf":1.4142135623730951},"175":{"tf":1.0},"176":{"tf":1.4142135623730951},"177":{"tf":1.0},"184":{"tf":1.4142135623730951},"185":{"tf":1.4142135623730951},"187":{"tf":1.0},"188":{"tf":1.7320508075688772},"190":{"tf":1.4142135623730951},"191":{"tf":1.4142135623730951},"192":{"tf":1.0},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"211":{"tf":1.4142135623730951},"213":{"tf":1.0},"214":{"tf":1.0},"218":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"233":{"tf":1.0},"234":{"tf":1.7320508075688772},"237":{"tf":1.0},"238":{"tf":1.0},"239":{"tf":2.0},"240":{"tf":1.0},"241":{"tf":1.4142135623730951},"251":{"tf":1.0},"259":{"tf":1.4142135623730951},"260":{"tf":1.4142135623730951},"265":{"tf":1.4142135623730951},"272":{"tf":2.449489742783178},"277":{"tf":1.0},"284":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"53":{"tf":2.449489742783178}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":3,"docs":{"225":{"tf":1.0},"271":{"tf":1.0},"280":{"tf":1.0}}}}}}}}}},"r":{"df":2,"docs":{"30":{"tf":1.0},"53":{"tf":1.0}},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":8,"docs":{"128":{"tf":1.0},"144":{"tf":1.0},"207":{"tf":1.0},"255":{"tf":1.4142135623730951},"271":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"53":{"tf":2.449489742783178}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"169":{"tf":1.0}}}}},"df":1,"docs":{"251":{"tf":1.0}},"o":{"df":0,"docs":{},"u":{"df":2,"docs":{"267":{"tf":1.0},"282":{"tf":1.0}}}}}}},"df":17,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"116":{"tf":1.4142135623730951},"151":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"233":{"tf":1.0},"236":{"tf":1.0},"237":{"tf":1.0},"259":{"tf":1.0},"282":{"tf":1.0},"284":{"tf":1.0},"30":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"r":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":3,"docs":{"264":{"tf":1.0},"30":{"tf":1.4142135623730951},"53":{"tf":1.4142135623730951}}}}},"d":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"t":{"df":4,"docs":{"118":{"tf":1.4142135623730951},"200":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":1,"docs":{"265":{"tf":1.0}},"f":{"df":0,"docs":{},"i":{"df":5,"docs":{"117":{"tf":1.0},"252":{"tf":1.0},"257":{"tf":1.0},"265":{"tf":1.0},"272":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":19,"docs":{"114":{"tf":1.7320508075688772},"115":{"tf":1.4142135623730951},"116":{"tf":1.4142135623730951},"117":{"tf":1.4142135623730951},"118":{"tf":1.4142135623730951},"119":{"tf":1.0},"120":{"tf":1.4142135623730951},"121":{"tf":1.4142135623730951},"122":{"tf":1.4142135623730951},"123":{"tf":1.4142135623730951},"124":{"tf":1.0},"128":{"tf":1.0},"159":{"tf":1.0},"16":{"tf":1.0},"251":{"tf":1.0},"257":{"tf":2.449489742783178},"283":{"tf":1.0},"30":{"tf":1.7320508075688772},"53":{"tf":1.7320508075688772}}}}}}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"122":{"tf":1.0}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":3,"docs":{"211":{"tf":1.0},"264":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"c":{"df":2,"docs":{"207":{"tf":1.0},"279":{"tf":1.0}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"i":{"a":{"df":20,"docs":{"126":{"tf":1.0},"134":{"tf":1.0},"135":{"tf":1.0},"136":{"tf":1.7320508075688772},"139":{"tf":1.0},"140":{"tf":1.0},"159":{"tf":1.0},"160":{"tf":1.4142135623730951},"163":{"tf":1.7320508075688772},"169":{"tf":1.0},"193":{"tf":1.0},"224":{"tf":1.0},"225":{"tf":1.0},"232":{"tf":1.0},"253":{"tf":1.0},"264":{"tf":1.7320508075688772},"269":{"tf":1.4142135623730951},"271":{"tf":1.0},"275":{"tf":1.0},"34":{"tf":1.0}}},"c":{"7":{"df":0,"docs":{},"y":{"df":0,"docs":{},"g":{"df":0,"docs":{},"j":{"0":{"/":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"265":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"147":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"122":{"tf":1.0}}}}}},"df":0,"docs":{}}},"u":{"a":{"df":0,"docs":{},"l":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"x":{":":{"df":0,"docs":{},"~":{"/":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":2,"docs":{"71":{"tf":1.0},"85":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":3,"docs":{"117":{"tf":1.0},"213":{"tf":1.0},"218":{"tf":1.0}},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"126":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}},"df":0,"docs":{}},"u":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"241":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":1,"docs":{"126":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":11,"docs":{"111":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0},"52":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"263":{"tf":1.0}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"i":{"d":{"df":25,"docs":{"111":{"tf":2.449489742783178},"134":{"tf":1.0},"136":{"tf":1.0},"142":{"tf":1.0},"144":{"tf":1.0},"145":{"tf":1.0},"153":{"tf":1.0},"154":{"tf":1.0},"161":{"tf":1.0},"162":{"tf":1.0},"165":{"tf":1.0},"166":{"tf":1.0},"167":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"195":{"tf":1.0},"201":{"tf":1.0},"202":{"tf":1.0},"269":{"tf":1.4142135623730951},"274":{"tf":1.4142135623730951},"282":{"tf":1.0},"283":{"tf":1.4142135623730951},"34":{"tf":1.7320508075688772},"63":{"tf":1.0},"83":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"29":{"tf":1.0},"52":{"tf":2.449489742783178},"58":{"tf":2.0},"63":{"tf":1.0}}}}}},"df":0,"docs":{}}},"s":{"df":1,"docs":{"45":{"tf":1.4142135623730951}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"225":{"tf":1.0},"264":{"tf":1.4142135623730951},"275":{"tf":1.0}}}},"l":{"df":0,"docs":{},"k":{"df":1,"docs":{"193":{"tf":1.0}}}},"n":{"df":0,"docs":{},"t":{"df":6,"docs":{"192":{"tf":1.0},"261":{"tf":1.0},"265":{"tf":1.4142135623730951},"269":{"tf":1.0},"271":{"tf":1.0},"275":{"tf":1.0}}}},"r":{"df":0,"docs":{},"n":{"(":{"\"":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"i":{"df":1,"docs":{"2":{"tf":1.4142135623730951}}},"m":{"df":13,"docs":{"11":{"tf":1.7320508075688772},"15":{"tf":1.4142135623730951},"16":{"tf":1.0},"2":{"tf":2.23606797749979},"23":{"tf":1.0},"26":{"tf":1.0},"29":{"tf":1.0},"34":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0},"59":{"tf":1.0}}}},"y":{"df":8,"docs":{"133":{"tf":1.0},"163":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"212":{"tf":1.0},"216":{"tf":1.0},"240":{"tf":1.0},"241":{"tf":1.0}}}},"df":6,"docs":{"117":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"124":{"tf":1.0},"264":{"tf":2.449489742783178},"274":{"tf":1.4142135623730951}},"e":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":5,"docs":{"269":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"274":{"tf":1.4142135623730951},"275":{"tf":1.4142135623730951}}}},"r":{"df":5,"docs":{"127":{"tf":1.0},"246":{"tf":1.0},"271":{"tf":1.0},"274":{"tf":2.23606797749979},"277":{"tf":1.0}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"258":{"tf":1.0},"264":{"tf":1.0}}}},"n":{"b":{"df":0,"docs":{},"o":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}},"df":0,"docs":{}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"16":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951}}}}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":2,"docs":{"213":{"tf":1.0},"214":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":1,"docs":{"141":{"tf":1.0}}},"df":0,"docs":{},"v":{"df":1,"docs":{"280":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"181":{"tf":1.0},"249":{"tf":1.4142135623730951},"265":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"157":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"207":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"259":{"tf":1.0}}}}},"x":{"4":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"/":{".":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"83":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"df":1,"docs":{"262":{"tf":1.0}}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"285":{"tf":1.0}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"213":{"tf":1.0},"239":{"tf":1.0},"242":{"tf":1.0}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":4,"docs":{"213":{"tf":1.0},"218":{"tf":1.0},"259":{"tf":1.0},"274":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"n":{"'":{"df":0,"docs":{},"t":{"df":2,"docs":{"195":{"tf":1.0},"264":{"tf":1.0}}}},"df":0,"docs":{}},"r":{"d":{"df":3,"docs":{"175":{"tf":1.0},"176":{"tf":1.0},"203":{"tf":1.0}}},"df":0,"docs":{},"k":{"df":7,"docs":{"157":{"tf":1.0},"163":{"tf":1.0},"164":{"tf":1.0},"218":{"tf":1.0},"264":{"tf":2.0},"265":{"tf":1.4142135623730951},"274":{"tf":1.0}},"s":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"285":{"tf":1.0}}}}}}},"l":{"d":{"!":{"\\":{"\\":{"df":0,"docs":{},"n":{"df":3,"docs":{"207":{"tf":1.0},"269":{"tf":1.0},"271":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":11,"docs":{"13":{"tf":1.7320508075688772},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.7320508075688772},"18":{"tf":1.0},"19":{"tf":1.0},"20":{"tf":1.0},"269":{"tf":2.23606797749979},"271":{"tf":2.0},"284":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":9,"docs":{"169":{"tf":1.0},"170":{"tf":1.0},"171":{"tf":1.0},"172":{"tf":1.0},"173":{"tf":1.0},"175":{"tf":1.0},"176":{"tf":1.0},"177":{"tf":1.0},"178":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"117":{"tf":1.0},"118":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"264":{"tf":1.0}}}}}},"df":5,"docs":{"122":{"tf":1.0},"17":{"tf":2.0},"264":{"tf":1.0},"270":{"tf":1.0},"278":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":3,"docs":{"224":{"tf":1.0},"225":{"tf":1.0},"269":{"tf":1.0}}}}}}}}},"x":{"0":{"1":{"\\":{"df":0,"docs":{},"x":{"1":{"b":{"]":{"0":{";":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"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":{}},"7":{"\\":{"df":0,"docs":{},"x":{"0":{"2":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"@":{"b":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":1,"docs":{"282":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"6":{"_":{"3":{"2":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"6":{"4":{"df":1,"docs":{"116":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"204":{"tf":1.0}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"p":{"_":{"a":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"218":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"k":{"b":{"_":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"218":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"m":{"d":{"df":1,"docs":{"196":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"196":{"tf":1.0}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":1,"docs":{"122":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":9,"docs":{"117":{"tf":1.0},"118":{"tf":1.0},"122":{"tf":2.23606797749979},"179":{"tf":1.0},"180":{"tf":1.0},"181":{"tf":1.0},"218":{"tf":3.1622776601683795},"219":{"tf":1.0},"7":{"tf":1.0}}}},"df":3,"docs":{"16":{"tf":1.4142135623730951},"248":{"tf":1.0},"274":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"122":{"tf":1.0}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"118":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"k":{"df":2,"docs":{"120":{"tf":1.0},"181":{"tf":1.0}}}},"t":{"_":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":1,"docs":{"117":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"d":{"a":{"1":{"df":1,"docs":{"264":{"tf":2.449489742783178}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"z":{"df":1,"docs":{"263":{"tf":1.0}}}},"y":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"'":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"260":{"tf":1.0},"274":{"tf":1.0},"285":{"tf":1.0}}}},"r":{"df":1,"docs":{"136":{"tf":1.0}}},"v":{"df":1,"docs":{"284":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"3":{"7":{"/":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"m":{":":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":8,"docs":{"108":{"tf":1.0},"112":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"37":{"tf":1.0},"41":{"tf":1.0},"47":{"tf":1.0},"53":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"79":{"tf":1.0}}}}}}}},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":11,"docs":{"126":{"tf":1.0},"141":{"tf":1.0},"171":{"tf":1.0},"176":{"tf":1.0},"188":{"tf":1.4142135623730951},"249":{"tf":1.0},"272":{"tf":1.0},"282":{"tf":1.4142135623730951},"284":{"tf":1.4142135623730951},"52":{"tf":1.4142135623730951},"58":{"tf":1.7320508075688772}}}}},"f":{"df":1,"docs":{"264":{"tf":1.4142135623730951}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":2,"docs":{"52":{"tf":1.0},"58":{"tf":1.0}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"265":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"title":{"root":{"0":{"df":1,"docs":{"263":{"tf":1.0}}},"1":{"0":{"df":7,"docs":{"140":{"tf":1.0},"153":{"tf":1.0},"178":{"tf":1.0},"219":{"tf":1.0},"240":{"tf":1.0},"278":{"tf":1.0},"5":{"tf":1.0}}},"1":{"df":6,"docs":{"141":{"tf":1.0},"154":{"tf":1.0},"179":{"tf":1.0},"220":{"tf":1.0},"241":{"tf":1.0},"279":{"tf":1.0}}},"2":{"df":6,"docs":{"142":{"tf":1.0},"155":{"tf":1.0},"180":{"tf":1.0},"221":{"tf":1.0},"242":{"tf":1.0},"280":{"tf":1.0}}},"3":{"df":4,"docs":{"181":{"tf":1.0},"222":{"tf":1.0},"243":{"tf":1.0},"281":{"tf":1.0}}},"4":{"df":3,"docs":{"182":{"tf":1.0},"244":{"tf":1.0},"282":{"tf":1.0}}},"5":{"df":3,"docs":{"183":{"tf":1.0},"245":{"tf":1.0},"283":{"tf":1.0}},"h":{"df":1,"docs":{"5":{"tf":1.0}}}},"6":{"df":2,"docs":{"184":{"tf":1.0},"284":{"tf":1.0}}},"7":{"df":2,"docs":{"185":{"tf":1.0},"285":{"tf":1.0}}},"8":{"df":1,"docs":{"186":{"tf":1.0}}},"9":{"df":1,"docs":{"187":{"tf":1.0}}},"df":16,"docs":{"1":{"tf":1.0},"131":{"tf":1.0},"144":{"tf":1.0},"157":{"tf":1.0},"159":{"tf":1.0},"169":{"tf":1.0},"207":{"tf":1.0},"210":{"tf":1.0},"224":{"tf":1.0},"227":{"tf":1.0},"231":{"tf":1.0},"247":{"tf":1.0},"253":{"tf":1.0},"256":{"tf":1.0},"264":{"tf":1.0},"269":{"tf":1.0}}},"2":{"0":{"df":1,"docs":{"188":{"tf":1.0}}},"1":{"df":1,"docs":{"189":{"tf":1.0}}},"2":{"df":1,"docs":{"190":{"tf":1.0}}},"3":{"df":1,"docs":{"191":{"tf":1.0}}},"4":{"df":1,"docs":{"192":{"tf":1.0}}},"5":{"df":1,"docs":{"193":{"tf":1.0}}},"6":{"df":1,"docs":{"194":{"tf":1.0}}},"7":{"df":1,"docs":{"195":{"tf":1.0}}},"8":{"df":1,"docs":{"196":{"tf":1.0}}},"9":{"df":1,"docs":{"197":{"tf":1.0}}},"df":15,"docs":{"132":{"tf":1.0},"145":{"tf":1.0},"160":{"tf":1.0},"170":{"tf":1.0},"208":{"tf":1.0},"211":{"tf":1.0},"225":{"tf":1.0},"228":{"tf":1.0},"232":{"tf":1.0},"248":{"tf":1.0},"254":{"tf":1.0},"257":{"tf":1.0},"265":{"tf":1.0},"270":{"tf":1.0},"3":{"tf":1.0}}},"3":{"0":{"df":1,"docs":{"198":{"tf":1.0}}},"1":{"df":1,"docs":{"199":{"tf":1.0}}},"2":{"df":1,"docs":{"200":{"tf":1.0}}},"3":{"df":1,"docs":{"201":{"tf":1.0}}},"4":{"df":1,"docs":{"202":{"tf":1.0}}},"df":10,"docs":{"133":{"tf":1.0},"146":{"tf":1.0},"161":{"tf":1.0},"171":{"tf":1.0},"212":{"tf":1.0},"229":{"tf":1.0},"233":{"tf":1.0},"249":{"tf":1.0},"271":{"tf":1.0},"6":{"tf":1.0}}},"4":{"df":8,"docs":{"134":{"tf":1.0},"147":{"tf":1.0},"162":{"tf":1.0},"172":{"tf":1.0},"213":{"tf":1.0},"234":{"tf":1.0},"250":{"tf":1.0},"272":{"tf":1.0}}},"5":{"df":9,"docs":{"135":{"tf":1.0},"148":{"tf":1.0},"163":{"tf":1.0},"173":{"tf":1.0},"214":{"tf":1.0},"235":{"tf":1.0},"251":{"tf":1.0},"273":{"tf":1.0},"4":{"tf":1.0}}},"6":{"df":7,"docs":{"136":{"tf":1.0},"149":{"tf":1.0},"164":{"tf":1.0},"174":{"tf":1.0},"215":{"tf":1.0},"236":{"tf":1.0},"274":{"tf":1.0}}},"7":{"df":7,"docs":{"137":{"tf":1.0},"150":{"tf":1.0},"165":{"tf":1.0},"175":{"tf":1.0},"216":{"tf":1.0},"237":{"tf":1.0},"275":{"tf":1.0}},"h":{"df":1,"docs":{"4":{"tf":1.0}}}},"8":{"df":7,"docs":{"138":{"tf":1.0},"151":{"tf":1.0},"166":{"tf":1.0},"176":{"tf":1.0},"217":{"tf":1.0},"238":{"tf":1.0},"276":{"tf":1.0}}},"9":{"df":7,"docs":{"139":{"tf":1.0},"152":{"tf":1.0},"167":{"tf":1.0},"177":{"tf":1.0},"218":{"tf":1.0},"239":{"tf":1.0},"277":{"tf":1.0}}},"a":{".":{"df":0,"docs":{},"k":{".":{"a":{"df":1,"docs":{"119":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"253":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":3,"docs":{"121":{"tf":1.0},"226":{"tf":1.0},"230":{"tf":1.0}}}},"r":{"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":1,"docs":{"130":{"tf":1.0}}}}}}}},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"219":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"210":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"211":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"217":{"tf":1.0}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"216":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"212":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"213":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"214":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"218":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"32":{"tf":1.0},"34":{"tf":1.0}}}}},"c":{"c":{"df":7,"docs":{"119":{"tf":1.0},"127":{"tf":1.0},"205":{"tf":1.0},"261":{"tf":1.0},"263":{"tf":1.0},"267":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"263":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"98":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"277":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"df":5,"docs":{"61":{"tf":1.0},"62":{"tf":1.0},"63":{"tf":1.0},"65":{"tf":1.0},"82":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"182":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"171":{"tf":1.0}}}},"df":0,"docs":{}}}},"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"180":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"179":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"m":{"df":1,"docs":{"149":{"tf":1.0}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"147":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":1,"docs":{"150":{"tf":1.0}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"148":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"_":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"155":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"u":{"3":{"2":{"df":1,"docs":{"152":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"183":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"170":{"tf":1.0}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"172":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"k":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"n":{"df":1,"docs":{"146":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"2":{"df":0,"docs":{},"l":{"df":1,"docs":{"151":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":1,"docs":{"177":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"157":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"176":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"175":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"174":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"160":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"145":{"tf":1.0}}}}}},"df":1,"docs":{"144":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"153":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"154":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"_":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"178":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"185":{"tf":1.0}}}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"163":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"186":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"173":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"184":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"169":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"k":{"df":1,"docs":{"159":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"181":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":12,"docs":{"11":{"tf":1.0},"114":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":1.0},"129":{"tf":1.0},"142":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"207":{"tf":1.0},"252":{"tf":1.0},"45":{"tf":1.4142135623730951},"49":{"tf":1.0}}}},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"40":{"tf":1.0},"43":{"tf":1.0},"44":{"tf":1.0}}}}}}}},"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"138":{"tf":1.0},"254":{"tf":1.0}}}}},"df":1,"docs":{"129":{"tf":1.0}},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"259":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"235":{"tf":1.0}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":2,"docs":{"116":{"tf":1.0},"47":{"tf":1.0}}}}}},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"125":{"tf":1.0},"126":{"tf":1.0}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"128":{"tf":1.0}}}}}}}},"p":{"df":0,"docs":{},"u":{"df":1,"docs":{"49":{"tf":1.0}}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"143":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":2,"docs":{"156":{"tf":1.0},"223":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":1,"docs":{"79":{"tf":1.0}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"220":{"tf":1.0}}},"df":0,"docs":{}}}},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"221":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"222":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"267":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"256":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"y":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"278":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":2,"docs":{"274":{"tf":1.0},"281":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":41,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":1.0},"101":{"tf":1.0},"104":{"tf":1.0},"107":{"tf":1.0},"110":{"tf":1.4142135623730951},"115":{"tf":1.0},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"2":{"tf":1.0},"21":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.0},"3":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.4142135623730951},"36":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"43":{"tf":1.4142135623730951},"49":{"tf":1.0},"5":{"tf":1.0},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"65":{"tf":1.0},"69":{"tf":1.0},"7":{"tf":1.0},"73":{"tf":1.4142135623730951},"78":{"tf":1.0},"82":{"tf":1.0},"87":{"tf":1.4142135623730951},"89":{"tf":1.0},"9":{"tf":1.0},"92":{"tf":1.4142135623730951},"95":{"tf":1.0},"98":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"255":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"252":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":4,"docs":{"11":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"79":{"tf":1.0}}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"130":{"tf":1.0},"209":{"tf":1.0},"39":{"tf":1.0}}}}}},"x":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"61":{"tf":1.0}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":2,"docs":{"43":{"tf":1.0},"46":{"tf":1.0}}}}}}}}}}},"f":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"114":{"tf":1.0},"117":{"tf":1.0},"125":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.0},"26":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"258":{"tf":1.0},"259":{"tf":1.0},"260":{"tf":1.0}}}}}},"x":{"df":1,"docs":{"281":{"tf":1.0}}}},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"254":{"tf":1.0}}}}}}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"285":{"tf":1.0}}}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"264":{"tf":1.0},"265":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"251":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"231":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"o":{"df":1,"docs":{"9":{"tf":1.0}}},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"254":{"tf":1.0}}}},"u":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"127":{"tf":1.0}}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":2,"docs":{"55":{"tf":1.0},"56":{"tf":1.0}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.0}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"271":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"275":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":1.0}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"123":{"tf":1.0},"246":{"tf":1.0}}}}}}}},"i":{"/":{"df":0,"docs":{},"o":{"df":1,"docs":{"98":{"tf":1.0}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"206":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"253":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"233":{"tf":1.0}},"s":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"238":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"_":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"236":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"237":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"u":{"df":0,"docs":{},"p":{"d":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"239":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"df":1,"docs":{"142":{"tf":1.0}}}}}},"j":{"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"116":{"tf":1.0}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":5,"docs":{"114":{"tf":1.0},"125":{"tf":1.0},"126":{"tf":1.0},"256":{"tf":1.0},"257":{"tf":1.0}}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"139":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"e":{"df":4,"docs":{"131":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"140":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"132":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"247":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"248":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":17,"docs":{"269":{"tf":1.0},"270":{"tf":1.0},"271":{"tf":1.0},"272":{"tf":1.0},"273":{"tf":1.0},"274":{"tf":1.0},"275":{"tf":1.0},"276":{"tf":1.0},"277":{"tf":1.0},"278":{"tf":1.0},"279":{"tf":1.0},"280":{"tf":1.0},"281":{"tf":1.0},"282":{"tf":1.0},"283":{"tf":1.0},"284":{"tf":1.0},"285":{"tf":1.0}}}}}}},"i":{"b":{"b":{"df":0,"docs":{},"p":{"df":0,"docs":{},"f":{"df":3,"docs":{"10":{"tf":1.0},"65":{"tf":1.0},"82":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"9":{"tf":1.0}}}}},"df":0,"docs":{}}},"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"203":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":1,"docs":{"119":{"tf":1.0}}}},"u":{"df":0,"docs":{},"x":{"df":2,"docs":{"114":{"tf":1.0},"49":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"m":{"df":3,"docs":{"104":{"tf":1.0},"106":{"tf":1.0},"141":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"117":{"tf":1.0}}}},"p":{".":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"195":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"189":{"tf":1.0}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"193":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"r":{"df":1,"docs":{"192":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"191":{"tf":1.0}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"k":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"188":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"187":{"tf":1.0}}}}}}}},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"201":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"199":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"194":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"198":{"tf":1.0}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"197":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":1,"docs":{"196":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"202":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"200":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"d":{"df":1,"docs":{"190":{"tf":1.0}}},"df":0,"docs":{}}}},"df":6,"docs":{"119":{"tf":1.0},"120":{"tf":1.0},"121":{"tf":1.0},"168":{"tf":1.0},"230":{"tf":1.0},"36":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"253":{"tf":1.0}},"l":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"92":{"tf":1.0}}}},"df":0,"docs":{}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"260":{"tf":1.0}}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"260":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":2,"docs":{"266":{"tf":1.0},"286":{"tf":1.0}}}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"283":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"k":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"250":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"o":{"b":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":3,"docs":{"262":{"tf":1.0},"265":{"tf":1.0},"268":{"tf":1.0}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"232":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"242":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":3,"docs":{"158":{"tf":1.0},"223":{"tf":1.0},"226":{"tf":1.0}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"257":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"k":{"df":1,"docs":{"245":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"227":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"b":{"df":1,"docs":{"162":{"tf":1.0}}},"df":0,"docs":{}}}},"df":1,"docs":{"161":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":1,"docs":{"45":{"tf":1.0}}}}},"df":2,"docs":{"39":{"tf":1.0},"40":{"tf":1.0}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"264":{"tf":1.0}}}}}}}},"i":{"d":{"df":2,"docs":{"28":{"tf":1.0},"30":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"244":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"241":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"2":{"_":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"240":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"o":{"b":{"df":0,"docs":{},"e":{"df":2,"docs":{"136":{"tf":1.0},"141":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":4,"docs":{"118":{"tf":1.0},"124":{"tf":1.0},"17":{"tf":1.0},"254":{"tf":1.0}}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"254":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"243":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"205":{"tf":1.0},"267":{"tf":1.0}}}}}}}},"r":{"a":{"df":0,"docs":{},"w":{"df":1,"docs":{"137":{"tf":1.0}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"32":{"tf":1.0},"34":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"127":{"tf":1.0}}}}},"l":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"126":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"204":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"229":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"228":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"f":{"_":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"167":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"164":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"v":{"df":1,"docs":{"165":{"tf":1.0}}}}}}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"166":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"45":{"tf":1.0}}}}},"df":2,"docs":{"43":{"tf":1.0},"44":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.0}},"q":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"50":{"tf":1.0},"51":{"tf":1.0},"52":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"37":{"tf":1.0}}}}}}}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"q":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"u":{"df":0,"docs":{},"r":{"c":{"df":1,"docs":{"256":{"tf":1.0}}},"df":0,"docs":{}}}},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"258":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"282":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"285":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"115":{"tf":1.0}}}}}}}},"y":{"df":0,"docs":{},"m":{"df":1,"docs":{"249":{"tf":1.0}}},"n":{"c":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"273":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"276":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"272":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"270":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":1,"docs":{"138":{"tf":1.0}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"119":{"tf":1.0}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{".":{"c":{"df":1,"docs":{"284":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"c":{"df":2,"docs":{"110":{"tf":1.0},"111":{"tf":1.0}},"p":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":3,"docs":{"67":{"tf":1.0},"73":{"tf":1.0},"76":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":6,"docs":{"65":{"tf":1.0},"68":{"tf":1.0},"73":{"tf":1.0},"77":{"tf":1.0},"82":{"tf":1.0},"87":{"tf":1.0}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"87":{"tf":1.0}}}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"265":{"tf":1.0}}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"225":{"tf":1.0}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"224":{"tf":1.0}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":4,"docs":{"133":{"tf":1.0},"137":{"tf":1.0},"138":{"tf":1.0},"19":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"261":{"tf":1.0},"267":{"tf":1.0}}}}}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":3,"docs":{"118":{"tf":1.0},"120":{"tf":1.0},"124":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"k":{"df":2,"docs":{"21":{"tf":1.0},"25":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":4,"docs":{"134":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"280":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"135":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"d":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"b":{"df":1,"docs":{"215":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"136":{"tf":1.0},"208":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"121":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"234":{"tf":1.0}}}},"r":{"df":0,"docs":{},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"255":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"114":{"tf":1.0},"257":{"tf":1.0}}}}}}}},"f":{"df":0,"docs":{},"s":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"279":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"s":{"df":1,"docs":{"45":{"tf":1.0}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{"df":3,"docs":{"13":{"tf":1.0},"17":{"tf":1.0},"269":{"tf":1.0}}},"df":0,"docs":{}}}}},"x":{"d":{"df":0,"docs":{},"p":{"df":1,"docs":{"122":{"tf":1.0}}}},"df":0,"docs":{}}}}},"lang":"English","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/tomorrow-night.css b/tomorrow-night.css new file mode 100644 index 0000000..5b4aca7 --- /dev/null +++ b/tomorrow-night.css @@ -0,0 +1,102 @@ +/* Tomorrow Night Theme */ +/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ +/* Original theme - https://github.com/chriskempson/tomorrow-theme */ +/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */ + +/* Tomorrow Comment */ +.hljs-comment { + color: #969896; +} + +/* Tomorrow Red */ +.hljs-variable, +.hljs-attribute, +.hljs-tag, +.hljs-regexp, +.ruby .hljs-constant, +.xml .hljs-tag .hljs-title, +.xml .hljs-pi, +.xml .hljs-doctype, +.html .hljs-doctype, +.css .hljs-id, +.css .hljs-class, +.css .hljs-pseudo { + color: #cc6666; +} + +/* Tomorrow Orange */ +.hljs-number, +.hljs-preprocessor, +.hljs-pragma, +.hljs-built_in, +.hljs-literal, +.hljs-params, +.hljs-constant { + color: #de935f; +} + +/* Tomorrow Yellow */ +.ruby .hljs-class .hljs-title, +.css .hljs-rule .hljs-attribute { + color: #f0c674; +} + +/* Tomorrow Green */ +.hljs-string, +.hljs-value, +.hljs-inheritance, +.hljs-header, +.hljs-name, +.ruby .hljs-symbol, +.xml .hljs-cdata { + color: #b5bd68; +} + +/* Tomorrow Aqua */ +.hljs-title, +.css .hljs-hexcolor { + color: #8abeb7; +} + +/* Tomorrow Blue */ +.hljs-function, +.python .hljs-decorator, +.python .hljs-title, +.ruby .hljs-function .hljs-title, +.ruby .hljs-title .hljs-keyword, +.perl .hljs-sub, +.javascript .hljs-title, +.coffeescript .hljs-title { + color: #81a2be; +} + +/* Tomorrow Purple */ +.hljs-keyword, +.javascript .hljs-function { + color: #b294bb; +} + +.hljs { + display: block; + overflow-x: auto; + background: #1d1f21; + color: #c5c8c6; +} + +.coffeescript .javascript, +.javascript .xml, +.tex .hljs-formula, +.xml .javascript, +.xml .vbscript, +.xml .css, +.xml .hljs-cdata { + opacity: 0.5; +} + +.hljs-addition { + color: #718c00; +} + +.hljs-deletion { + color: #c82829; +}