EffectiveModernCppChinese/searchindex.js
2022-07-02 13:21:48 +08:00

1 line
1.3 MiB
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Object.assign(window.search, {"doc_urls":["Introduction.html#简介","Introduction.html#术语和惯例","Introduction.html#报告bug提出改进意见","1.DeducingTypes/item1.html#第1章-类型推导","1.DeducingTypes/item1.html#条款一理解模板类型推导","1.DeducingTypes/item1.html#情景一paramtype是一个指针或引用但不是通用引用","1.DeducingTypes/item1.html#情景二paramtype是一个通用引用","1.DeducingTypes/item1.html#情景三paramtype既不是指针也不是引用","1.DeducingTypes/item1.html#数组实参","1.DeducingTypes/item1.html#函数实参","1.DeducingTypes/item2.html#条款二理解auto类型推导","1.DeducingTypes/item3.html#条款三理解decltype","1.DeducingTypes/item4.html#条款四学会查看类型推导结果","1.DeducingTypes/item4.html#ide编辑器","1.DeducingTypes/item4.html#编译器诊断","1.DeducingTypes/item4.html#运行时输出","2.Auto/item5.html#第2章-auto","2.Auto/item5.html#条款五优先考虑auto而非显式类型声明","2.Auto/item6.html#条款六auto推导若非己愿使用显式类型初始化惯用法","3.MovingToModernCpp/item7.html#第3章-移步现代c","3.MovingToModernCpp/item7.html#条款七区别使用和创建对象","3.MovingToModernCpp/item8.html#条款八优先考虑nullptr而非0和null","3.MovingToModernCpp/item9.html#条款九优先考虑别名声明而非typedefs","3.MovingToModernCpp/item10.html#条款十优先考虑限域enum而非未限域enum","3.MovingToModernCpp/item11.html#条款十一优先考虑使用-deleted-函数而非使用未定义的私有声明","3.MovingToModernCpp/item12.html#条款十二使用override声明重写函数","3.MovingToModernCpp/item13.html#条款十三优先考虑const_iterator而非iterator","3.MovingToModernCpp/item14.html#条款十四如果函数不抛出异常请使用noexcept","3.MovingToModernCpp/item15.html#条款十五尽可能的使用constexpr","3.MovingToModernCpp/item16.html#条款十六让const成员函数线程安全","3.MovingToModernCpp/item17.html#条款十七理解特殊成员函数的生成","4.SmartPointers/item18.html#第4章-智能指针","4.SmartPointers/item18.html#条款十八对于独占资源使用stdunique_ptr","4.SmartPointers/item19.html#条款十九对于共享资源使用stdshared_ptr","4.SmartPointers/item20.html#条款二十当stdshard_ptr可能悬空时使用stdweak_ptr","4.SmartPointers/item21.html#条款二十一优先考虑使用stdmake_unique和stdmake_shared而非new","4.SmartPointers/item22.html#条款二十二当使用pimpl惯用法请在实现文件中定义特殊成员函数","5.RRefMovSemPerfForw/item23.html#第5章-右值引用移动语义完美转发","5.RRefMovSemPerfForw/item23.html#条款二十三理解stdmove和stdforward","5.RRefMovSemPerfForw/item24.html#条款二十四区分通用引用与右值引用","5.RRefMovSemPerfForw/item25.html#条款二十五对右值引用使用stdmove对通用引用使用stdforward","5.RRefMovSemPerfForw/item26.html#条款二十六避免在通用引用上重载","5.RRefMovSemPerfForw/item27.html#条款二十七熟悉通用引用重载的替代方法","5.RRefMovSemPerfForw/item27.html#放弃重载","5.RRefMovSemPerfForw/item27.html#传递const-t","5.RRefMovSemPerfForw/item27.html#传值","5.RRefMovSemPerfForw/item27.html#使用-tag-dispatch","5.RRefMovSemPerfForw/item27.html#约束使用通用引用的模板","5.RRefMovSemPerfForw/item27.html#折中","5.RRefMovSemPerfForw/item28.html#条款二十八理解引用折叠","5.RRefMovSemPerfForw/item29.html#条款二十九假定移动操作不存在成本高未被使用","5.RRefMovSemPerfForw/item30.html#条款三十熟悉完美转发失败的情况","5.RRefMovSemPerfForw/item30.html#花括号初始化器","5.RRefMovSemPerfForw/item30.html#0或者null作为空指针","5.RRefMovSemPerfForw/item30.html#仅有声明的整型static-const数据成员","5.RRefMovSemPerfForw/item30.html#重载函数的名称和模板名称","5.RRefMovSemPerfForw/item30.html#位域","5.RRefMovSemPerfForw/item30.html#总结","6.LambdaExpressions/item31.html#第6章--lambda-表达式","6.LambdaExpressions/item31.html#条款三十一避免使用默认捕获模式","6.LambdaExpressions/item32.html#条款三十二使用初始化捕获来移动对象到闭包中","6.LambdaExpressions/item33.html#条款三十三对auto形参使用decltype以stdforward它们","6.LambdaExpressions/item34.html#条款三十四考虑-lambda-而非stdbind","7.TheConcurrencyAPI/Item35.html#第7章-并发api","7.TheConcurrencyAPI/Item35.html#条款三十五优先考虑基于任务的编程而非基于线程的编程","7.TheConcurrencyAPI/item36.html#条款三十六如果有异步的必要请指定stdlaunchasync","7.TheConcurrencyAPI/item37.html#条款三十七使stdthread在所有路径最后都不可结合","7.TheConcurrencyAPI/item38.html#条款三十八关注不同线程句柄的析构行为","7.TheConcurrencyAPI/item39.html#条款三十九对于一次性事件通信考虑使用void的-futures","7.TheConcurrencyAPI/item40.html#条款四十对于并发使用stdatomic对于特殊内存使用volatile","8.Tweaks/item41.html#第8章-微调","8.Tweaks/item41.html#条款四十一对于移动成本低且总是被拷贝的可拷贝形参考虑按值传递","8.Tweaks/item42.html#条款四十二考虑使用置入代替插入"],"index":{"documentStore":{"docInfo":{"0":{"body":4,"breadcrumbs":0,"title":0},"1":{"body":125,"breadcrumbs":0,"title":0},"10":{"body":234,"breadcrumbs":3,"title":1},"11":{"body":201,"breadcrumbs":3,"title":1},"12":{"body":6,"breadcrumbs":2,"title":0},"13":{"body":12,"breadcrumbs":3,"title":1},"14":{"body":43,"breadcrumbs":2,"title":0},"15":{"body":131,"breadcrumbs":2,"title":0},"16":{"body":4,"breadcrumbs":5,"title":2},"17":{"body":161,"breadcrumbs":4,"title":1},"18":{"body":139,"breadcrumbs":4,"title":1},"19":{"body":12,"breadcrumbs":5,"title":2},"2":{"body":3,"breadcrumbs":1,"title":1},"20":{"body":282,"breadcrumbs":3,"title":0},"21":{"body":129,"breadcrumbs":4,"title":1},"22":{"body":182,"breadcrumbs":4,"title":1},"23":{"body":285,"breadcrumbs":4,"title":1},"24":{"body":164,"breadcrumbs":4,"title":1},"25":{"body":244,"breadcrumbs":4,"title":1},"26":{"body":104,"breadcrumbs":4,"title":1},"27":{"body":107,"breadcrumbs":4,"title":1},"28":{"body":257,"breadcrumbs":4,"title":1},"29":{"body":211,"breadcrumbs":4,"title":1},"3":{"body":4,"breadcrumbs":3,"title":1},"30":{"body":111,"breadcrumbs":3,"title":0},"31":{"body":9,"breadcrumbs":3,"title":1},"32":{"body":164,"breadcrumbs":3,"title":1},"33":{"body":141,"breadcrumbs":3,"title":1},"34":{"body":79,"breadcrumbs":3,"title":1},"35":{"body":183,"breadcrumbs":3,"title":1},"36":{"body":267,"breadcrumbs":2,"title":0},"37":{"body":20,"breadcrumbs":3,"title":1},"38":{"body":136,"breadcrumbs":3,"title":1},"39":{"body":171,"breadcrumbs":2,"title":0},"4":{"body":38,"breadcrumbs":2,"title":0},"40":{"body":215,"breadcrumbs":2,"title":0},"41":{"body":168,"breadcrumbs":2,"title":0},"42":{"body":10,"breadcrumbs":2,"title":0},"43":{"body":1,"breadcrumbs":2,"title":0},"44":{"body":3,"breadcrumbs":4,"title":2},"45":{"body":19,"breadcrumbs":2,"title":0},"46":{"body":72,"breadcrumbs":4,"title":2},"47":{"body":143,"breadcrumbs":2,"title":0},"48":{"body":44,"breadcrumbs":2,"title":0},"49":{"body":155,"breadcrumbs":2,"title":0},"5":{"body":88,"breadcrumbs":3,"title":1},"50":{"body":34,"breadcrumbs":2,"title":0},"51":{"body":37,"breadcrumbs":2,"title":0},"52":{"body":41,"breadcrumbs":2,"title":0},"53":{"body":2,"breadcrumbs":3,"title":1},"54":{"body":30,"breadcrumbs":4,"title":2},"55":{"body":40,"breadcrumbs":2,"title":0},"56":{"body":29,"breadcrumbs":2,"title":0},"57":{"body":1,"breadcrumbs":2,"title":0},"58":{"body":63,"breadcrumbs":5,"title":2},"59":{"body":299,"breadcrumbs":3,"title":0},"6":{"body":33,"breadcrumbs":3,"title":1},"60":{"body":179,"breadcrumbs":3,"title":0},"61":{"body":106,"breadcrumbs":4,"title":1},"62":{"body":339,"breadcrumbs":5,"title":2},"63":{"body":14,"breadcrumbs":5,"title":2},"64":{"body":55,"breadcrumbs":3,"title":0},"65":{"body":136,"breadcrumbs":4,"title":1},"66":{"body":187,"breadcrumbs":5,"title":1},"67":{"body":102,"breadcrumbs":3,"title":0},"68":{"body":168,"breadcrumbs":5,"title":2},"69":{"body":214,"breadcrumbs":4,"title":1},"7":{"body":43,"breadcrumbs":3,"title":1},"70":{"body":3,"breadcrumbs":3,"title":1},"71":{"body":202,"breadcrumbs":2,"title":0},"72":{"body":134,"breadcrumbs":2,"title":0},"8":{"body":75,"breadcrumbs":2,"title":0},"9":{"body":30,"breadcrumbs":2,"title":0}},"docs":{"0":{"body":"如果你是一个有经验的C++程序员像我一样你在初次接触C++11时候会想“是啊是啊我明白了。这也是C++就多了点东西罢了。”但是你接触越多你会惊讶于改变如此之多。auto声明范围for循环 lambda 表达式还有右值引用都改变了C++的面貌不过没有新的并发特性。还有一些地道的表达方式的改变。0和typedef被请出去了nullptr和别名声明加进来了。枚举现在应该是限域的了。应该更倾向于智能指针而不是原始指针了。移动对象通常比拷贝它们要好了。 有很多C++11的东西要学先不提C++14了。 更重要的是,要学习怎样 高效地 使用新机能。如果你需要关于”现代“C++的特性的基础信息学习资源有很多但是你想找一些指南教你怎样应用这些特性来写出正确、高效、可维护、可移植的程序那就相当有挑战性了。这就是这本书的切入点。它不致力于介绍C++11和C++14的特性而致力于它们的高效应用。 书中这些信息被打碎成不同指导方针,称为 条款 。想理解类型推导的不同形式或者想知道什么时候该用或者不该用auto声明你对为什么const成员函数应当线程安全怎样使用std::unique_ptr实现Pimpl惯用法为何要避免 lambda 表达式用默认捕获模式或者std::atomic与volatile的区别感兴趣吗答案都在这里。而且答案无关于平台顺应于标准。这本书是关于 可移植 C++的。 本书的条款是 指导方针 ,而不是 规则 因为指导方针也有例外。每个条款中最关键的部分不是提出的建议而是建议背后的基本原理。一旦你阅读了它你就明白你的程序的情况是否违反了条款的指导意见。本书的真正目的不是告诉你应该做什么不应该做什么而是帮你深入理解C++11和C++14中各种东西是如何工作的。","breadcrumbs":"简介 » 简介","id":"0","title":"简介"},"1":{"body":"为了保证我们互相理解对一些术语达成共识非常重要首先有点讽刺的是“C++”。有四个C++官方版本每个版本名字后面带有相应ISO标准被采纳时的年份C++98C++03C++11和C++14。C++98和C++03只有技术细节上的区别所以本书统称为C++98。当我提到C++11时我的意思是C++11和C++14因为C++14是C++11的超集当我写下C++14我只意味着C++14。如果我仅仅提到C++,说明适用于所有的语言版本。 我使用的词 我意思中的语言版本 C++ 所有版本 C++98 C++98和C++03 C++11 C++11和C++14 C++14 C++14 因此我可能会说C++重视效率对所有版本正确C++98缺少并发的支持只对C++98和C++03正确C++11支持 lambda 表达式对C++11和C++14正确C++14提供了普遍的函数返回类型推导只对C++14正确。 最遍布C++11各处的特性可能是移动语义了移动语义的基础是区分右值和左值表达式。那是因为右值表明这个对象适合移动操作而左值一般不适合。概念上尽管不经常在实际上用右值对应于从函数返回的临时对象而左值对应于你可以引用的can refer to对象或者通过名字或者通过指针或左值引用。 对于判断一个表达式是否是左值的一个有用的启发就是看看能否取得它的地址。如果能取地址那么通常就是左值。如果不能则通常是右值。这个启发的好处就是帮你记住一个表达式的类型与它是左值还是右值无关。也就是说有个类型T你可以有类型T的左值和右值。当你碰到右值引用类型的形参时记住这一点非常重要因为形参本身是个左值 class Widget {\npublic: Widget(Widget&& rhs); //rhs是个左值 … //尽管它有个右值引用的类型\n}; 在这里在Widget移动构造函数里取rhs的地址非常合理所以rhs是左值尽管它的类型是右值引用。由于相似的原因所有形参都是左值。 那一小段代码揭示了我通常遵循的惯用法: 类的名字是Widget。每当我想指代任意的用户定义的类型时我用Widget来代表。除非我需要展示类中的特定细节否则我都直接使用Widget而不声明它。 我使用形参名rhs“right-hand side”。这是我喜欢的 移动操作 (即移动构造函数和移动赋值运算符)和 拷贝操作 (拷贝构造函数和拷贝赋值运算符)的形参名。我也在双目运算符的右侧形参用它: Matrix operator+(const Matrix& lhs, const Matrix& rhs); 我希望你并不奇怪我用lhs表示“left-hand side”。 我在部分代码或者部分注释用特殊格式来吸引你的注意。译者注但是因为markdown没法在代码块中表明特殊格式即原书使用的颜色改变和斜体注释所以大部分情况下只能作罢少部分地方会有额外说明。在上面Widget移动构造函数中我高亮了rhs的声明和“rhs是个左值”这部分注释。高亮代码不代表写的好坏。只是来提醒你需要额外的注意。 我使用“…”来表示“这里有一些别的代码”。这种窄省略号不同于C++11可变参数模板源代码中的宽省略号“...”)。这听起来不太清楚,但实际并不。比如: template<typename... Ts> //这些是C++源代码的\nvoid processVals(const Ts&... params) //省略号\n{ … //这里意思是“这有一些别的代码”\n} processVals的声明表明在声明模板的类型形参时我使用typename但这只是我的个人偏好关键字class可以做同样的事情。在我展示从C++标准中摘录的代码的情况下我使用class声明类型形参因为那就是标准中的做法。 当使用另一个同类型的对象来初始化一个对象时新的对象被称为是用来初始化的对象译者注initializing object即源对象的一个 副本 copy 尽管这个副本是通过移动构造函数创建的。很抱歉地说C++中没有术语来区别一个对象是拷贝构造的副本还是移动构造的副本(译者注:此处为了区别拷贝这个“动作”与拷贝得到的“东西”,将 copy 按语境译为拷贝(动作)和副本(东西),此处及接下来几段按此方式翻译。在后面的条款中可能会不加区别地全部翻译为“拷贝”。): void someFunc(Widget w); //someFunc的形参w是传值过来 Widget wid; //wid是个Widget someFunc(wid); //在这个someFunc调用中w是通过拷贝构造函数 //创建的副本 someFunc(std::move(wid)); //在这个someFunc调用中w是通过移动构造函数 //创建的副本 右值副本通常由移动构造产生左值副本通常由拷贝构造产生。如果你仅仅知道一个对象是其他对象的副本构造这个副本需要花费多大代价是没法说的。比如在上面的代码中在不知道是用左值还是右值传给someFunc情况下没法说来创建形参w花费代价有多大。你必须还要知道移动和拷贝Widget的代价。 在函数调用中,调用地传入的表达式称为函数的 实参 argument )。实参被用来初始化函数的 形参 parameter 。在上面第一次调用someFunc中实参为wid。在第二次调用中实参是std::move(wid)。两个调用中形参都是w。实参和形参的区别非常重要因为形参是左值而用来初始化形参的实参可能是左值或者右值。这一点尤其与 完美转发 perfect forwarding )过程有关,被传给函数的实参以原实参的右值性( rvalueness )或左值性( lvalueness ),再被传给第二个函数。(完美转发讨论细节在 Item30 。) 设计优良的函数是 异常安全 exception safe )的,意味着他们至少提供基本的异常安全保证(即基本保证 basic guarantee )。这样的函数保证调用者在异常抛出时,程序不变量保持完整(即没有数据结构是毁坏的),且没有资源泄漏。有强异常安全保证的函数确保调用者在异常产生时,程序保持在调用前的状态。 当我提到“ 函数对象 ”时我通常指的是某个支持operator()成员函数的类型的对象。换句话说这个对象的行为像函数一样。偶尔我用稍微更普遍一些的术语表示可以用非成员函数语法调用的任何东西即“fuctionName(arguments)”。这个广泛定义包括的不仅有支持operator()的对象还有函数和类似C的函数指针。较窄的定义来自于C++98广泛点的定义来自于C++11。将成员函数指针加进来的更深的普遍化产生了我们所知的 可调用对象 callable objects 。你通常可以忽略其中的微小区别简单地认为函数对象和可调用对象为C++中可以用函数调用语法调用的东西。 通过 lambda 表达式创建的函数对象称为 闭包 closures )。没什么必要去区别 lambda 表达式和它们创建的闭包,所以我经常把它们统称 lambdas 。类似地,我几乎不区分 函数模板 function templates )(即产生函数的模板)和 模板函数 template functions )(即从函数模板产生的函数)。 类模板 class templates )和 模板类 template classes )同上。 C++中的许多东西都可被声明和定义。 声明 declarations )引入名字和类型,并不给出比如存放在哪或者怎样实现等的细节: extern int x; //对象声明 class Widget; //类声明 bool func(const Widget& w); //函数声明 enum class Color; //限域enum声明见条款10 定义 definitions )提供存储位置或者实现细节: int x; //对象定义 class Widget { //类定义 …\n}; bool func(const Widget& w)\n{ return w.size() < 10; } //函数定义 enum class Color\n{ Yellow, Red, Blue }; //限域enum定义 定义也有资格称为声明,所以我倾向于只有声明,除非这个东西有个定义非常重要。 我定义一个函数的 签名 signature 为它声明的一部分这个声明指定了形参类型和返回类型。函数名和形参名不是签名的一部分。在上面的例子中func的签名是bool(const Widget&)。函数声明中除了形参类型和返回类型之外的元素比如noexcept或者constexpr如果存在的话都被排除在外。noexcept和constexpr在 Item14 和 15 叙述。)“签名”的官方定义和我的有点不一样,但是对本书来说,我的定义更有用。(官方定义有时排除返回类型。) 新的C++标准保持了旧标准写的代码的有效性,但是偶尔标准化委员会 废弃 deprecate 一些特性。这些特性在标准化的“死囚区”中可能在未来的标准中被移除。编译器可能警告也可能不警告这些废弃特性的使用但是你应当尽量避免使用它们。它们不仅可能导致将来对移植的头痛也通常不如来替代它们的新特性。例如std::auto_ptr在C++11中被废弃因为std::unique_ptr可以做同样的工作而且只会做的更好。 有时标准说一个操作的结果有 未定义的行为 undefined behavior 。这意味着运行时表现是不可预测的不用说你也想避开这种不确定性。有未定义行为的行动的例子是在std::vector范围外使用方括号“[]”解引用未初始化的迭代器或者引入数据竞争即有两个或以上线程至少一个是writer同时访问相同的内存位置。 我将那些比如从new返回的内置指针 build-in pointers )称为 原始指针 raw pointers )。原始指针的“反义词”是 智能指针 smart pointers 。智能指针通常重载指针解引用运算符operator->和operator*),但在 Item20 中解释看std::weak_ptr是个例外。 在源代码注释中我有时将“constructor”构造函数缩写为ctor将“destructor”析构函数缩写为dtor。译者注但译文中基本都完整翻译了而没使用缩写。","breadcrumbs":"简介 » 术语和惯例","id":"1","title":"术语和惯例"},"10":{"body":"Item 2: Understand auto type deduction 如果你已经读过 Item1 的模板类型推导那么你几乎已经知道了auto类型推导的大部分内容至于为什么不是全部是因为这里有一个auto不同于模板类型推导的例外。但这怎么可能模板类型推导包括模板函数形参但auto不处理这些东西啊。 你是对的但没关系。auto类型推导和模板类型推导有一个直接的映射关系。它们之间可以通过一个非常规范非常系统化的转换流程来转换彼此。 在 Item1 中,模板类型推导使用下面这个函数模板 template<typename T>\nvoid f(ParmaType param); 和这个调用来解释: f(expr); //使用一些表达式调用f 在f的调用中编译器使用expr推导T和ParamType的类型。 当一个变量使用auto进行声明时auto扮演了模板中T的角色变量的类型说明符扮演了ParamType的角色。废话少说这里便是更直观的代码描述考虑这个例子 auto x = 27; 这里x的类型说明符是auto自己另一方面在这个声明中 const auto cx = x; 类型说明符是const auto。另一个 const auto & rx=cx; 类型说明符是const auto&。在这里例子中要推导xrx和cx的类型编译器的行为看起来就像是认为这里每个声明都有一个模板然后使用合适的初始化表达式进行调用 template<typename T> //概念化的模板用来推导x的类型\nvoid func_for_x(T param); func_for_x(27); //概念化调用: //param的推导类型是x的类型 template<typename T> //概念化的模板用来推导cx的类型\nvoid func_for_cx(const T param); func_for_cx(x); //概念化调用: //param的推导类型是cx的类型 template<typename T> //概念化的模板用来推导rx的类型\nvoid func_for_rx(const T & param); func_for_rx(x); //概念化调用: //param的推导类型是rx的类型 正如我说的auto类型推导除了一个例外我们很快就会讨论其他情况都和模板类型推导一样。 Item1 基于ParamType——在函数模板中param的类型说明符——的不同特征把模板类型推导分成三个部分来讨论。在使用auto作为类型说明符的变量声明中类型说明符代替了ParamType因此Item1描述的三个情景稍作修改就能适用于auto 情景一:类型说明符是一个指针或引用但不是通用引用 情景二:类型说明符一个通用引用 情景三:类型说明符既不是指针也不是引用 我们早已看过情景一和情景三的例子: auto x = 27; //情景三x既不是指针也不是引用\nconst auto cx = x; //情景三cx也一样\nconst auto & rx=cx; //情景一rx是非通用引用 情景二像你期待的一样运作: auto&& uref1 = x; //x是int左值 //所以uref1类型为int&\nauto&& uref2 = cx; //cx是const int左值 //所以uref2类型为const int&\nauto&& uref3 = 27; //27是int右值 //所以uref3类型为int&& Item1 讨论并总结了对于non-reference类型说明符数组和函数名如何退化为指针。那些内容也同样适用于auto类型推导 const char name[] = //name的类型是const char[13] \"R. N. Briggs\"; auto arr1 = name; //arr1的类型是const char*\nauto& arr2 = name; //arr2的类型是const char (&)[13] void someFunc(int, double); //someFunc是一个函数 //类型为void(int, double) auto func1 = someFunc; //func1的类型是void (*)(int, double)\nauto& func2 = someFunc; //func2的类型是void (&)(int, double) 就像你看到的那样auto类型推导和模板类型推导几乎一样的工作它们就像一个硬币的两面。 讨论完相同点接下来就是不同点前面我们已经说到auto类型推导和模板类型推导有一个例外使得它们的工作方式不同接下来我们要讨论的就是那个例外。 我们从一个简单的例子开始如果你想声明一个带有初始值27的intC++98提供两种语法选择 int x1 = 27;\nint x2(27); C++11由于也添加了用于支持统一初始化 uniform initialization )的语法: int x3 = { 27 };\nint x4{ 27 }; 总之这四种不同的语法只会产生一个相同的结果变量类型为int值为27 但是 Item5 解释了使用auto说明符代替指定类型说明符的好处所以我们应该很乐意把上面声明中的int替换为auto我们会得到这样的代码 auto x1 = 27;\nauto x2(27);\nauto x3 = { 27 };\nauto x4{ 27 }; 这些声明都能通过编译但是他们不像替换之前那样有相同的意义。前面两个语句确实声明了一个类型为int值为27的变量但是后面两个声明了一个存储一个元素27的 std::initializer_list<int>类型的变量。 auto x1 = 27; //类型是int值是27\nauto x2(27); //同上\nauto x3 = { 27 }; //类型是std::initializer_list<int> //值是{ 27 }\nauto x4{ 27 }; //同上 这就造成了auto类型推导不同于模板类型推导的特殊情况。当用auto声明的变量使用花括号进行初始化auto类型推导推出的类型则为std::initializer_list。如果这样的一个类型不能被成功推导比如花括号里面包含的是不同类型的变量编译器会拒绝这样的代码 auto x5 = { 1, 2, 3.0 }; //错误无法推导std::initializer_list<T>中的T 就像注释说的那样在这种情况下类型推导将会失败但是对我们来说认识到这里确实发生了两种类型推导是很重要的。一种是由于auto的使用x5的类型不得不被推导。因为x5使用花括号的方式进行初始化x5必须被推导为std::initializer_list。但是std::initializer_list是一个模板。std::initializer_list<T>会被某种类型T实例化所以这意味着T也会被推导。 推导落入了这里发生的第二种类型推导——模板类型推导的范围。在这个例子中推导之所以失败,是因为在花括号中的值并不是同一种类型。 对于花括号的处理是auto类型推导和模板类型推导唯一不同的地方。当使用auto声明的变量使用花括号的语法进行初始化的时候会推导出std::initializer_list<T>的实例化,但是对于模板类型推导这样就行不通: auto x = { 11, 23, 9 }; //x的类型是std::initializer_list<int> template<typename T> //带有与x的声明等价的\nvoid f(T param); //形参声明的模板 f({ 11, 23, 9 }); //错误不能推导出T 然而如果在模板中指定T是std::initializer_list<T>而留下未知T,模板类型推导就能正常工作: template<typename T>\nvoid f(std::initializer_list<T> initList); f({ 11, 23, 9 }); //T被推导为intinitList的类型为 //std::initializer_list<int> 因此auto类型推导和模板类型推导的真正区别在于auto类型推导假定花括号表示std::initializer_list而模板类型推导不会这样确切的说是不知道怎么办。 你可能想知道为什么auto类型推导和模板类型推导对于花括号有不同的处理方式。我也想知道。哎我至今没找到一个令人信服的解释。但是规则就是规则这意味着你必须记住如果你使用auto声明一个变量并用花括号进行初始化auto类型推导总会得出std::initializer_list的结果。如果你使用**uniform initialization花括号的方式进行初始化**用得很爽你就得记住这个例外以免犯错在C++11编程中一个典型的错误就是偶然使用了std::initializer_list<T>类型的变量这个陷阱也导致了很多C++程序员抛弃花括号初始化,只有不得不使用的时候再做考虑。(在 Item7 讨论了必须使用时该怎么做) 对于C++11故事已经说完了。但是对于C++14故事还在继续C++14允许auto用于函数返回值并会被推导参见 Item3 而且C++14的 lambda 函数也允许在形参声明中使用auto。但是在这些情况下auto实际上使用 模板类型推导 的那一套规则在工作而不是auto类型推导所以说下面这样的代码不会通过编译 auto createInitList()\n{ return { 1, 2, 3 }; //错误!不能推导{ 1, 2, 3 }的类型\n} 同样在C++14的lambda函数中这样使用auto也不能通过编译 std::vector<int> v;\n…\nauto resetV = [&v](const auto& newValue){ v = newValue; }; //C++14\n…\nresetV({ 1, 2, 3 }); //错误!不能推导{ 1, 2, 3 }的类型 请记住: auto类型推导通常和模板类型推导相同但是auto类型推导假定花括号初始化代表std::initializer_list而模板类型推导不这样做 在C++14中auto允许出现在函数返回值或者 lambda 函数形参中但是它的工作机制是模板类型推导那一套方案而不是auto类型推导","breadcrumbs":"第一章 类型推导 » Item 2:理解auto类型推导 » 条款二理解auto类型推导","id":"10","title":"条款二理解auto类型推导"},"11":{"body":"Item 3: Understand decltype decltype是一个奇怪的东西。给它一个名字或者表达式decltype就会告诉你这个名字或者表达式的类型。通常它会精确的告诉你你想要的结果。但有时候它得出的结果也会让你挠头半天最后只能求助网上问答或参考资料寻求启示。 我们将从一个简单的情况开始没有任何令人惊讶的情况。相比模板类型推导和auto类型推导参见 Item1 和 Item2 decltype只是简单的返回名字或者表达式的类型 const int i = 0; //decltype(i)是const int bool f(const Widget& w); //decltype(w)是const Widget& //decltype(f)是bool(const Widget&) struct Point{ int x,y; //decltype(Point::x)是int\n}; //decltype(Point::y)是int Widget w; //decltype(w)是Widget if (f(w))… //decltype(f(w))是bool template<typename T> //std::vector的简化版本\nclass vector{\npublic: … T& operator[](std::size_t index); …\n}; vector<int> v; //decltype(v)是vector<int>\n…\nif (v[0] == 0)… //decltype(v[0])是int& 看见了吧?没有任何奇怪的东西。 在C++11中decltype最主要的用途就是用于声明函数模板而这个函数返回类型依赖于形参类型。举个例子假定我们写一个函数一个形参为容器一个形参为索引值这个函数支持使用方括号的方式也就是使用“[]”)访问容器中指定索引值的数据,然后在返回索引操作的结果前执行认证用户操作。函数的返回类型应该和索引操作返回的类型相同。 对一个T类型的容器使用operator[] 通常会返回一个T&对象比如std::deque就是这样。但是std::vector有一个例外对于std::vector<bool>operator[]不会返回bool&它会返回一个全新的对象译注MSVC的STL实现中返回的是std::_Vb_reference<std::_Wrap_alloc<std::allocator<unsigned int>>>对象)。关于这个问题的详细讨论请参见 Item6 这里重要的是我们可以看到对一个容器进行operator[]操作返回的类型取决于容器本身。 使用decltype使得我们很容易去实现它这是我们写的第一个版本使用decltype计算返回类型这个模板需要改良我们把这个推迟到后面 template<typename Container, typename Index> //可以工作,\nauto authAndAccess(Container& c, Index i) //但是需要改良 ->decltype(c[i])\n{ authenticateUser(); return c[i];\n} 函数名称前面的auto不会做任何的类型推导工作。相反的他只是暗示使用了C++11的 尾置返回类型 语法,即在函数形参列表后面使用一个”->“符号指出函数的返回类型尾置返回类型的好处是我们可以在函数返回类型中使用函数形参相关的信息。在authAndAccess函数中我们使用c和i指定返回类型。如果我们按照传统语法把函数返回类型放在函数名称之前c和i就未被声明所以不能使用。 在这种声明中authAndAccess函数返回operator[]应用到容器中返回的对象的类型,这也正是我们期望的结果。 C++11允许自动推导单一语句的 lambda 表达式的返回类型, C++14扩展到允许自动推导所有的 lambda 表达式和函数甚至它们内含多条语句。对于authAndAccess来说这意味着在C++14标准下我们可以忽略尾置返回类型只留下一个auto。使用这种声明形式auto标示这里会发生类型推导。更准确的说编译器将会从函数实现中推导出函数的返回类型。 template<typename Container, typename Index> //C++14版本\nauto authAndAccess(Container& c, Index i) //不那么正确\n{ authenticateUser(); return c[i]; //从c[i]中推导返回类型\n} Item2 解释了函数返回类型中使用auto编译器实际上是使用的模板类型推导的那套规则。如果那样的话这里就会有一些问题。正如我们之前讨论的operator[]对于大多数T类型的容器会返回一个T&,但是 Item1 解释了在模板类型推导期间表达式的引用性reference-ness会被忽略。基于这样的规则考虑它会对下面用户的代码有哪些影响 std::deque<int> d;\n…\nauthAndAccess(d, 5) = 10; //认证用户返回d[5] //然后把10赋值给它 //无法通过编译器! 在这里d[5]本该返回一个int&但是模板类型推导会剥去引用的部分因此产生了int返回类型。函数返回的那个int是一个右值上面的代码尝试把10赋值给右值intC++11禁止这样做所以代码无法编译。 要想让authAndAccess像我们期待的那样工作我们需要使用decltype类型推导来推导它的返回值即指定authAndAccess应该返回一个和c[i]表达式类型一样的类型。C++期望在某些情况下当类型被暗示时需要使用decltype类型推导的规则C++14通过使用decltype(auto)说明符使得这成为可能。我们第一次看见decltype(auto)可能觉得非常的矛盾到底是decltype还是auto实际上我们可以这样解释它的意义auto说明符表示这个类型将会被推导decltype说明decltype的规则将会被用到这个推导过程中。因此我们可以这样写authAndAccess template<typename Container, typename Index> //C++14版本\ndecltype(auto) //可以工作,\nauthAndAccess(Container& c, Index i) //但是还需要\n{ //改良 authenticateUser(); return c[i];\n} 现在authAndAccess将会真正的返回c[i]的类型。现在事情解决了一般情况下c[i]返回T&authAndAccess也会返回T&特殊情况下c[i]返回一个对象authAndAccess也会返回一个对象。 decltype(auto)的使用不仅仅局限于函数返回类型当你想对初始化表达式使用decltype推导的规则你也可以使用 Widget w; const Widget& cw = w; auto myWidget1 = cw; //auto类型推导 //myWidget1的类型为Widget\ndecltype(auto) myWidget2 = cw; //decltype类型推导 //myWidget2的类型是const Widget& 但是这里有两个问题困惑着你。一个是我之前提到的authAndAccess的改良至今都没有描述。让我们现在加上它。 再看看C++14版本的authAndAccess声明 template<typename Container, typename Index>\ndecltype(auto) authAndAccess(Container& c, Index i); 容器通过传引用的方式传递非常量左值引用lvalue-reference-to-non- const 因为返回一个引用允许用户可以修改容器。但是这意味着在不能给这个函数传递右值容器右值不能被绑定到左值引用上除非这个左值引用是一个constlvalue-references-to- const ),但是这里明显不是)。 公认的向authAndAccess传递一个右值是一个 edge case 译注在极限操作情况下会发生的事情类似于会发生但是概率较小的事情。一个右值容器是一个临时对象通常会在authAndAccess调用结束被销毁这意味着authAndAccess返回的引用将会成为一个悬置的dangle引用。但是使用向authAndAccess传递一个临时变量也并不是没有意义有时候用户可能只是想简单的获得临时容器中的一个元素的拷贝比如这样 std::deque<std::string> makeStringDeque(); //工厂函数 //从makeStringDeque中获得第五个元素的拷贝并返回\nauto s = authAndAccess(makeStringDeque(), 5); 要想支持这样使用authAndAccess我们就得修改一下当前的声明使得它支持左值和右值。重载是一个不错的选择一个函数重载声明为左值引用另一个声明为右值引用但是我们就不得不维护两个重载函数。另一个方法是使authAndAccess的引用可以绑定左值和右值 Item24 解释了那正是通用引用能做的,所以我们这里可以使用通用引用进行声明: template<typename Containter, typename Index> //现在c是通用引用\ndecltype(auto) authAndAccess(Container&& c, Index i); 在这个模板中我们不知道我们操纵的容器的类型是什么那意味着我们同样不知道它使用的索引对象index objects的类型对一个未知类型的对象使用传值通常会造成不必要的拷贝对程序的性能有极大的影响还会造成对象切片行为参见 item41 以及给同事落下笑柄。但是就容器索引来说我们遵照标准模板库对于索引的处理是有理由的比如std::stringstd::vector和std::deque的operator[]),所以我们坚持传值调用。 然而,我们还需要更新一下模板的实现,让它能听从 Item25 的告诫应用std::forward实现通用引用 template<typename Container, typename Index> //最终的C++14版本\ndecltype(auto)\nauthAndAccess(Container&& c, Index i)\n{ authenticateUser(); return std::forward<Container>(c)[i];\n} 这样就能对我们的期望交上一份满意的答卷但是这要求编译器支持C++14。如果你没有这样的编译器你还需要使用C++11版本的模板它看起来和C++14版本的极为相似除了你不得不指定函数返回类型之外 template<typename Container, typename Index> //最终的C++11版本\nauto\nauthAndAccess(Container&& c, Index i)\n->decltype(std::forward<Container>(c)[i])\n{ authenticateUser(); return std::forward<Container>(c)[i];\n} 另一个问题是就像我在条款的开始唠叨的那样decltype通常会产生你期望的结果但并不总是这样。在 极少数情况下 它产生的结果可能让你很惊讶。老实说如果你不是一个大型库的实现者你不太可能会遇到这些异常情况。 为了 完全 理解decltype的行为你需要熟悉一些特殊情况。它们大多数都太过晦涩以至于几乎没有书进行有过权威的讨论这本书也不例外但是其中的一个会让我们更加理解decltype的使用。 将decltype应用于变量名会产生该变量名的声明类型。虽然变量名都是左值表达式但这不会影响decltype的行为。译者注这里是说对于单纯的变量名decltype只会返回变量的声明类型然而对于比单纯的变量名更复杂的左值表达式decltype可以确保报告的类型始终是左值引用。也就是说如果一个不是单纯变量名的左值表达式的类型是T那么decltype会把这个表达式的类型报告为T&。这几乎没有什么太大影响,因为大多数左值表达式的类型天生具备一个左值引用修饰符。例如,返回左值的函数总是返回左值引用。 这个行为暗含的意义值得我们注意,在: int x = 0; 中x是一个变量的名字所以decltype(x)是int。但是如果用一个小括号包覆这个名字比如这样(x) 就会产生一个比名字更复杂的表达式。对于名字来说x是一个左值C++11定义了表达式(x)也是一个左值。因此decltype((x))是int&。用小括号覆盖一个名字可以改变decltype对于名字产生的结果。 在C++11中这稍微有点奇怪但是由于C++14允许了decltype(auto)的使用,这意味着你在函数返回语句中细微的改变就可以影响类型的推导: decltype(auto) f1()\n{ int x = 0; … return x; //decltype(x是int所以f1返回int\n} decltype(auto) f2()\n{ int x = 0; return (x); //decltype((x))是int&所以f2返回int&\n} 注意不仅f2的返回类型不同于f1而且它还引用了一个局部变量这样的代码将会把你送上未定义行为的特快列车一辆你绝对不想上第二次的车。 当使用decltype(auto)的时候一定要加倍的小心在表达式中看起来无足轻重的细节将会影响到decltype(auto)的推导结果。为了确认类型推导是否产出了你想要的结果,请参见 Item4 描述的那些技术。 同时你也不应该忽略decltype这块大蛋糕。没错decltype单独使用或者与auto一起用可能会偶尔产生一些令人惊讶的结果但那毕竟是少数情况。通常decltype都会产生你想要的结果尤其是当你对一个名字使用decltype时因为在这种情况下decltype只是做一件本分之事它产出名字的声明类型。 请记住: decltype总是不加修改的产生变量或者表达式的类型。 对于T类型的不是单纯的变量名的左值表达式decltype总是产出T的引用即T&。 C++14支持decltype(auto)就像auto一样推导出类型但是它使用decltype的规则进行推导。","breadcrumbs":"第一章 类型推导 » Item 3:理解decltype » 条款三理解decltype","id":"11","title":"条款三理解decltype"},"12":{"body":"Item 4: Know how to view deduced types 选择使用工具查看类型推导,取决于软件开发过程中你想在哪个阶段显示类型推导信息。我们探究三种方案:在你编辑代码的时候获得类型推导的结果,在编译期间获得结果,在运行时获得结果。","breadcrumbs":"第一章 类型推导 » Item 4:学会查看类型推导结果 » 条款四:学会查看类型推导结果","id":"12","title":"条款四:学会查看类型推导结果"},"13":{"body":"在IDE中的代码编辑器通常可以显示程序代码中变量函数参数的类型你只需要简单的把鼠标移到它们的上面举个例子有这样的代码中 const int theAnswer = 42; auto x = theAnswer;\nauto y = &theAnswer; IDE编辑器可以直接显示x推导的结果为inty推导的结果为const int*。 为此你的代码必须或多或少的处于可编译状态因为IDE之所以能提供这些信息是因为一个C++编译器或者至少是前端中的一个部分运行于IDE中。如果这个编译器对你的代码不能做出有意义的分析或者推导它就不会显示推导的结果。 对于像int这样简单的推导IDE产生的信息通常令人很满意。正如我们将看到的如果更复杂的类型出现时IDE提供的信息就几乎没有什么用了。","breadcrumbs":"第一章 类型推导 » Item 4:学会查看类型推导结果 » IDE编辑器","id":"13","title":"IDE编辑器"},"14":{"body":"另一个获得推导结果的方法是使用编译器出错时提供的错误消息。这些错误消息无形的提到了造成我们编译错误的类型是什么。 举个例子假如我们想看到之前那段代码中x和y的类型我们可以首先声明一个类模板但 不定义 。就像这样: template<typename T> //只对TD进行声明\nclass TD; //TD == \"Type Displayer\" 如果尝试实例化这个类模板就会引出一个错误消息因为这里没有用来实例化的类模板定义。为了查看x和y的类型只需要使用它们的类型去实例化TD TD<decltype(x)> xType; //引出包含x和y\nTD<decltype(y)> yType; //的类型的错误消息 我使用 variableName Type 的结构来命名变量,因为这样它们产生的错误消息可以有助于我们查找。对于上面的代码,我的编译器产生了这样的错误信息,我取一部分贴到下面: error: aggregate 'TD<int> xType' has incomplete type and cannot be defined\nerror: aggregate 'TD<const int *> yType' has incomplete type and cannot be defined 另一个编译器也产生了一样的错误,只是格式稍微改变了一下: error: 'xType' uses undefined class 'TD<int>'\nerror: 'yType' uses undefined class 'TD<const int *>' 除了格式不同外,几乎所有我测试过的编译器都产生了这样有用的错误消息。","breadcrumbs":"第一章 类型推导 » Item 4:学会查看类型推导结果 » 编译器诊断","id":"14","title":"编译器诊断"},"15":{"body":"使用printf的方法使类型信息只有在运行时才会显示出来尽管我不是非常建议你使用printf但是它提供了一种格式化输出的方法。现在唯一的问题是只需对于你关心的变量使用一种优雅的文本表示。“这有什么难的“你这样想”这正是typeid和std::type_info::name的价值所在”。为了实现我们想要查看x和y的类型的需求你可能会这样写 std::cout << typeid(x).name() << '\\n'; //显示x和y的类型\nstd::cout << typeid(y).name() << '\\n'; 这种方法对一个对象如x或y调用typeid产生一个std::type_info的对象然后std::type_info里面的成员函数name()来产生一个C风格的字符串即一个const char*)表示变量的名字。 调用std::type_info::name不保证返回任何有意义的东西但是库的实现者尝试尽量使它们返回的结果有用。实现者们对于“有用”有不同的理解。举个例子GNU和Clang环境下x的类型会显示为”i“y会显示为”PKi“这样的输出你必须要问问编译器实现者们才能知道他们的意义”i“表示”int“”PK“表示”pointer to konst const“指向常量的指针这些编译器都提供一个工具c++filt解释这些“混乱的”类型Microsoft的编译器输出得更直白一些对于x输出”int“对于y输出”int const *“ 因为对于x和y来说这样的结果是正确的你可能认为问题已经接近了别急考虑一个更复杂的例子 template<typename T> //要调用的模板函数\nvoid f(const T& param); std::vector<Widget> createVec(); //工厂函数 const auto vw = createVec(); //使用工厂函数返回值初始化vw if (!vw.empty()){ f(&vw[0]); //调用f …\n} 在这段代码中包含了一个用户定义的类型Widget一个STL容器std::vector和一个auto变量vw这个更现实的情况是你可能在会遇到的并且想获得他们类型推导的结果比如模板类型形参T比如函数f形参param。 从这里中我们不难看出typeid的问题所在。我们在f中添加一些代码来显示类型 template<typename T>\nvoid f(const T& param)\n{ using std::cout; cout << \"T = \" << typeid(T).name() << '\\n'; //显示T cout << \"param = \" << typeid(param).name() << '\\n'; //显示 … //param\n} //的类型 GNU和Clang执行这段代码将会输出这样的结果 T = PK6Widget\nparam = PK6Widget 我们早就知道在这些编译器中PK表示“pointer to const”所以只有数字6对我们来说是神奇的。其实数字是类名称Widget的字符串长度所以这些编译器告诉我们T和param都是const Widget*。 Microsoft的编译器也同意上述言论 T = class Widget const *\nparam = class Widget const * 这三个独立的编译器产生了相同的信息并表示信息非常准确当然看起来不是那么准确。在模板f中param的声明类型是const T&。难道你们不觉得T和param类型相同很奇怪吗比如T是intparam的类型应该是const int&而不是相同类型才对吧。 遗憾的是事实就是这样std::type_info::name的结果并不总是可信的就像上面一样三个编译器对param的报告都是错误的。因为它们本质上可以不正确因为std::type_info::name规范批准像传值形参一样来对待这些类型。正如 Item1 提到的如果传递的是一个引用那么引用部分reference-ness将被忽略如果忽略后还具有const或者volatile那么常量性constness或者易变性volatileness也会被忽略。那就是为什么param的类型const Widget * const &会输出为const Widget *首先引用被忽略然后这个指针自身的常量性constness被忽略剩下的就是指针指向一个常量对象。 同样遗憾的是IDE编辑器显示的类型信息也不总是可靠的或者说不总是有用的。还是一样的例子一个IDE编辑器可能会把T的类型显示为我没有胡编乱造 const\nstd::_Simple_types<std::_Wrap_alloc<std::_Vec_base_types<Widget,\nstd::allocator<Widget>>::_Alloc>::value_type>::value_type * 同样把param的类型显示为 const std::_Simple_types<...>::value_type *const & 这个比起T来说要简单一些但是如果你不知道“...”表示编译器忽略T的部分类型那么可能你还是会产生困惑。如果你运气好点你的IDE可能表现得比这个要好一些。 比起运气如果你更倾向于依赖库那么你乐意被告知std::type_info::name和IDE不怎么好Boost TypeIndex库通常写作 Boost.TypeIndex 是更好的选择。这个库不是标准C++的一部分也不是IDE或者TD这样的模板。Boost库可在 boost.com 获得是跨平台开源有良好的开源协议的库这意味着使用Boost和STL一样具有高度可移植性。 这里是如何使用Boost.TypeIndex得到f的类型的代码 #include <boost/type_index.hpp> template<typename T>\nvoid f(const T& param)\n{ using std::cout; using boost::typeindex::type_id_with_cvr; //显示T cout << \"T = \" << type_id_with_cvr<T>().pretty_name() << '\\n'; //显示param类型 cout << \"param = \" << type_id_with_cvr<decltype(param)>().pretty_name() << '\\n';\n} boost::typeindex::type_id_with_cvr获取一个类型实参我们想获得相应信息的那个类型它不消除实参的constvolatile和引用修饰符因此模板名中有“with_cur”。结果是一个boost::typeindex::type_index对象它的pretty_name成员函数输出一个std::string包含我们能看懂的类型表示。 基于这个f的实现版本再次考虑那个使用typeid时获取param类型信息出错的调用 std::vetor<Widget> createVec(); //工厂函数\nconst auto vw = createVec(); //使用工厂函数返回值初始化vw\nif (!vw.empty()){ f(&vw[0]); //调用f …\n} 在GNU和Clang的编译器环境下使用Boost.TypeIndex版本的f最后会产生下面的准确的输出 T = Widget const *\nparam = Widget const * const& 在Microsoft的编译器环境下结果也是极其相似 T = class Widget const *\nparam = class Widget const * const & 这样近乎一致的结果是很不错的但是请记住IDE编译器错误诊断或者像Boost.TypeIndex这样的库只是用来帮助你理解编译器推导的类型是什么。它们是有用的但是作为本章结束语我想说它们根本不能替代你对 Item1 - 3 提到的类型推导的理解。 请记住: 类型推断可以从IDE看出从编译器报错看出从Boost TypeIndex库的使用看出 这些工具可能既不准确也无帮助所以理解C++类型推导规则才是最重要的","breadcrumbs":"第一章 类型推导 » Item 4:学会查看类型推导结果 » 运行时输出","id":"15","title":"运行时输出"},"16":{"body":"CHAPTER 2 auto 从概念上来说auto要多简单有多简单但是它比看起来要微妙一些。使用它可以存储类型当然它也会犯一些错误而且比之手动声明一些复杂类型也会存在一些性能问题。此外从程序员的角度来说如果按照符合规定的流程走那auto类型推导的一些结果是错误的。当这些情况发生时对我们来说引导auto产生正确的结果是很重要的因为严格按照说明书上面的类型写声明虽然可行但是最好避免。 本章简单的覆盖了auto的里里外外。","breadcrumbs":"第二章 auto » Item 5:优先考虑auto而非显式类型声明 » 第2章 auto","id":"16","title":"第2章 auto"},"17":{"body":"Item 5: Prefer auto to explicit type declarations 哈,开心一下: int x; 等等该死我忘记了初始化x所以x的值是不确定的。它可能会被初始化为0这得取决于工作环境。哎。 别介意,让我们转换一个话题, 对一个局部变量使用解引用迭代器的方式初始化: template<typename It> //对从b到e的所有元素使用\nvoid dwim(It b, It e) //dwim“do what I mean”算法\n{ while (b != e) { typename std::iterator_traits<It>::value_type currValue = *b; … }\n} 嘿typename std::iterator_traits<It>::value_type是想表达迭代器指向的元素的值的类型吗我无论如何都说不出它是多么有趣这样的话该死等等我早就说过了吗 好吧,声明一个局部变量,类型是一个闭包,闭包的类型只有编译器知道,因此我们写不出来,该死! 该死该死该死C++编程不应该是这样不愉快的体验。 别担心它只在过去是这样到了C++11所有的这些问题都消失了这都多亏了auto。auto变量从初始化表达式中推导出类型所以我们必须初始化。这意味着当你在现代化C++的高速公路上飞奔的同时你不得不对只声明不初始化变量的老旧方法说拜拜: int x1; //潜在的未初始化的变量 auto x2; //错误!必须要初始化 auto x3 = 0; //没问题x已经定义了 而且即使使用解引用迭代器初始化局部变量也不会对你的高速驾驶有任何影响 template<typename It> //如之前一样\nvoid dwim(It b,It e)\n{ while (b != e) { auto currValue = *b; … }\n} 因为使用 Item2 所述的auto类型推导技术它甚至能表示一些只有编译器才知道的类型 auto derefUPLess = [](const std::unique_ptr<Widget> &p1, //用于std::unique_ptr const std::unique_ptr<Widget> &p2) //指向的Widget类型的 { return *p1 < *p2; }; //比较函数 很酷对吧如果使用C++14将会变得更酷因为 lambda 表达式中的形参也可以使用auto auto derefLess = //C++14版本 [](const auto& p1, //被任何像指针一样的东西 const auto& p2) //指向的值的比较函数 { return *p1 < *p2; }; 尽管这很酷但是你可能会想我们完全不需要使用auto声明局部变量来保存一个闭包因为我们可以使用std::function对象。没错我们的确可以那么做但是事情可能不是完全如你想的那样。当然现在你可能会问std::function对象到底是什么。让我来给你解释一下。 std::function是一个C++11标准模板库中的一个模板它泛化了函数指针的概念。与函数指针只能指向函数不同std::function可以指向任何可调用对象也就是那些像函数一样能进行调用的东西。当你声明函数指针时你必须指定函数类型即函数签名同样当你创建std::function对象时你也需要提供函数签名由于它是一个模板所以你需要在它的模板参数里面提供。举个例子假设你想声明一个std::function对象func使它指向一个可调用对象比如一个具有这样函数签名的函数 bool(const std::unique_ptr<Widget> &, //C++11 const std::unique_ptr<Widget> &) //std::unique_ptr<Widget> //比较函数的签名 你就得这么写: std::function<bool(const std::unique_ptr<Widget> &, const std::unique_ptr<Widget> &)> func; 因为 lambda 表达式能产生一个可调用对象所以我们现在可以把闭包存放到std::function对象中。这意味着我们可以不使用auto写出C++11版的derefUPLess std::function<bool(const std::unique_ptr<Widget> &, const std::unique_ptr<Widget> &)>\nderefUPLess = [](const std::unique_ptr<Widget> &p1, const std::unique_ptr<Widget> &p2) { return *p1 < *p2; }; 语法冗长不说还需要重复写很多形参类型使用std::function还不如使用auto。用auto声明的变量保存一个和闭包一样类型的闭包因此使用了与闭包相同大小存储空间。实例化std::function并声明一个对象这个对象将会有固定的大小。这个大小可能不足以存储一个闭包这个时候std::function的构造函数将会在堆上面分配内存来存储这就造成了使用std::function比auto声明变量会消耗更多的内存。并且通过具体实现我们得知通过std::function调用一个闭包几乎无疑比auto声明的对象调用要慢。换句话说std::function方法比auto方法要更耗空间且更慢还可能有 out-of-memory 异常。并且正如上面的例子比起写std::function实例化的类型来使用auto要方便得多。在这场存储闭包的比赛中auto无疑取得了胜利也可以使用std::bind来生成一个闭包但在 Item34 我会尽我最大努力说服你使用 lambda 表达式代替std::bind) 使用auto除了可以避免未初始化的无效变量省略冗长的声明类型直接保存闭包外它还有一个好处是可以避免一个问题我称之为与类型快捷方式type shortcuts有关的问题。你将看到这样的代码——甚至你会这么写 std::vector<int> v;\n…\nunsigned sz = v.size(); v.size()的标准返回类型是std::vector<int>::size_type但是只有少数开发者意识到这点。std::vector<int>::size_type实际上被指定为无符号整型所以很多人都认为用unsigned就足够了写下了上述的代码。这会造成一些有趣的结果。举个例子在 Windows 32-bit 上std::vector<int>::size_type和unsigned是一样的大小但是在 Windows 64-bit 上std::vector<int>::size_type是64位unsigned是32位。这意味着这段代码在Windows 32-bit上正常工作但是当把应用程序移植到Windows 64-bit上时就可能会出现一些问题。谁愿意花时间处理这些细枝末节的问题呢 所以使用auto可以确保你不需要浪费时间 auto sz =v.size(); //sz的类型是std::vector<int>::size_type 你还是不相信使用auto是多么明智的选择考虑下面的代码 std::unordered_map<std::string, int> m;\n… for(const std::pair<std::string, int>& p : m)\n{ … //用p做一些事\n} 看起来好像很合情合理的表达,但是这里有一个问题,你看到了吗? 要想看到错误你就得知道std::unordered_map的 key 是const的所以 hash table std::unordered_map本质上的东西中的std::pair的类型不是std::pair<std::string, int>而是std::pair<const std::string, int>。但那不是在循环中的变量p声明的类型。编译器会努力的找到一种方法把std::pair<const std::string, int>(即 hash table 中的东西转换为std::pair<std::string, int>p的声明类型。它会成功的因为它会通过拷贝m中的对象创建一个临时对象这个临时对象的类型是p想绑定到的对象的类型即m中元素的类型然后把p的引用绑定到这个临时对象上。在每个循环迭代结束时临时对象将会销毁如果你写了这样的一个循环你可能会对它的一些行为感到非常惊讶因为你确信你只是让成为p指向m中各个元素的引用而已。 使用auto可以避免这些很难被意识到的类型不匹配的错误 for(const auto& p : m)\n{ … //如之前一样\n} 这样无疑更具效率且更容易书写。而且这个代码有一个非常吸引人的特性如果你获取p的地址你确实会得到一个指向m中元素的指针。在没有auto的版本中p会指向一个临时变量这个临时变量在每次迭代完成时会被销毁。 后面这两个例子——应当写std::vector<int>::size_type时写了unsigned应当写std::pair<const std::string, int>时写了std::pair<std::string, int>——说明了显式的指定类型可能会导致你不像看到的类型转换。如果你使用auto声明目标变量你就不必担心这个问题。 基于这些原因我建议你优先考虑auto而非显式类型声明。然而auto也不是完美的。每个auto变量都从初始化表达式中推导类型有一些表达式的类型和我们期望的大相径庭。关于在哪些情况下会发生这些问题以及你可以怎么解决这些问题我们在 Item2 和 6 讨论所以这里我不再赘述。我想把注意力放到你可能关心的另一点使用auto代替传统类型声明对源码可读性的影响。 首先深呼吸放松auto是 可选项 ,不是 命令 在某些情况下如果你的专业判断告诉你使用显式类型声明比auto要更清晰更易维护那你就不必再坚持使用auto。但是要牢记C++没有在其他众所周知的语言所拥有的类型推导( type inference 上开辟新土地。其他静态类型的过程式语言如C#、D、Sacla、Visual Basic或多或少都有等价的特性更不必提那些静态类型的函数式语言了如ML、Haskell、OCaml、F#等。在某种程度上这是因为动态类型语言如Perl、Python、Ruby等的成功在这些语言中几乎没有显式的类型声明。软件开发社区对于类型推导有丰富的经验他们展示了在维护大型工业强度的代码上使用这种技术没有任何争议。 一些开发者也担心使用auto就不能瞥一眼源代码便知道对象的类型然而IDE扛起了部分担子也考虑到了 Item4 中提到的IDE类型显示问题在很多情况下少量显示一个对象的类型对于知道对象的确切类型是有帮助的这通常已经足够了。举个例子要想知道一个对象是容器还是计数器还是智能指针不需要知道它的确切类型。一个适当的变量名称就能告诉我们大量的抽象类型信息。 真正的问题是显式指定类型可以避免一些微妙的错误以及更具效率和正确性而且如果初始化表达式的类型改变则auto推导出的类型也会改变这意味着使用auto可以帮助我们完成一些重构工作。举个例子如果一个函数返回类型被声明为int但是后来你认为将它声明为long会更好调用它作为初始化表达式的变量会自动改变类型但是如果你不使用auto你就不得不在源代码中挨个找到调用地点然后修改它们。 请记住: auto变量必须初始化通常它可以避免一些移植性和效率性的问题也使得重构更方便还能让你少打几个字。 正如 Item2 和 6 讨论的auto类型的变量可能会踩到一些陷阱。","breadcrumbs":"第二章 auto » Item 5:优先考虑auto而非显式类型声明 » 条款五优先考虑auto而非显式类型声明","id":"17","title":"条款五优先考虑auto而非显式类型声明"},"18":{"body":"Item 6: Use the explicitly typed initializer idiom when auto deduces undesired types 在 Item5 中解释了比起显式指定类型使用auto声明变量有若干技术优势但是有时当你想向左转auto却向右转。举个例子假如我有一个函数参数为Widget返回一个std::vector<bool>这里的bool表示Widget是否提供一个独有的特性。 std::vector<bool> features(const Widget& w); 更进一步假设第5个 bit 表示Widget是否具有高优先级我们可以写这样的代码 Widget w;\n…\nbool highPriority = features(w)[5]; //w高优先级吗\n…\nprocessWidget(w, highPriority); //根据它的优先级处理w 这个代码没有任何问题。它会正常工作但是如果我们使用auto代替highPriority的显式指定类型做一些看起来很无害的改变 auto highPriority = features(w)[5]; //w高优先级吗 情况变了。所有代码仍然可编译,但是行为不再可预测: processWidget(w,highPriority); //未定义行为! 就像注释说的这个processWidget是一个未定义行为。为什么呢答案有可能让你很惊讶使用auto后highPriority不再是bool类型。虽然从概念上来说std::vector<bool>意味着存放bool但是std::vector<bool>的operator[]不会返回容器中元素的引用这就是std::vector::operator[]可返回 除了bool以外 的任何类型取而代之它返回一个std::vector<bool>::reference的对象一个嵌套于std::vector<bool>中的类)。 std::vector<bool>::reference之所以存在是因为std::vector<bool>规定了使用一个打包形式packed form表示它的bool每个bool占一个 bit 。那给std::vector的operator[]带来了问题因为std::vector<T>的operator[]应当返回一个T&但是C++禁止对bits的引用。无法返回一个bool&std::vector<bool>的operator[]返回一个 行为类似于 bool&的对象。要想成功扮演这个角色bool&适用的上下文std::vector<bool>::reference也必须一样能适用。在std::vector<bool>::reference的特性中使这个原则可行的特性是一个可以向bool的隐式转化。不是bool&,是**bool**。要想完整的解释std::vector<bool>::reference能模拟bool&的行为所使用的一堆技术可能扯得太远了,所以这里简单地说隐式类型转换只是这个大型马赛克的一小块) 有了这些信息,我们再来看看原始代码的一部分: bool highPriority = features(w)[5]; //显式的声明highPriority的类型 这里features返回一个std::vector<bool>对象后再调用operator[]operator[]将会返回一个std::vector<bool>::reference对象然后再通过隐式转换赋值给bool变量highPriority。highPriority因此表示的是features返回的std::vector<bool>中的第五个 bit ,这也正如我们所期待的那样。 然后再对照一下当使用auto时发生了什么 auto highPriority = features(w)[5]; //推导highPriority的类型 同样的features返回一个std::vector<bool>对象再调用operator[]operator[]将会返回一个std::vector<bool>::reference对象但是现在这里有一点变化了auto推导highPriority的类型为std::vector<bool>::reference但是highPriority对象没有第五 bit 的值。 这个值取决于std::vector<bool>::reference的具体实现。其中的一种实现是这样的std::vector<bool>::reference对象包含一个指向机器字 word )的指针,然后加上方括号中的偏移实现被引用 bit 这样的行为。然后再来考虑highPriority初始化表达的意思注意这里假设std::vector<bool>::reference就是刚提到的实现方式。 调用features将返回一个std::vector<bool>临时对象这个对象没有名字为了方便我们的讨论我这里叫他temp。operator[]在temp上调用它返回的std::vector<bool>::reference包含一个指向存着这些 bit s的一个数据结构中的一个 word 的指针temp管理这些 bit s还有相应于第5个 bit 的偏移。highPriority是这个std::vector<bool>::reference的拷贝所以highPriority也包含一个指针指向temp中的这个 word 加上相应于第5个 bit 的偏移。在这个语句结束的时候temp将会被销毁因为它是一个临时变量。因此highPriority包含一个悬置的 dangling 指针如果用于processWidget调用中将会造成未定义行为 processWidget(w, highPriority); //未定义行为! //highPriority包含一个悬置指针 std::vector<bool>::reference是一个代理类 proxy class 的例子所谓代理类就是以模仿和增强一些类型的行为为目的而存在的类。很多情况下都会使用代理类std::vector<bool>::reference展示了对std::vector<bool>使用operator[]来实现引用 bit 这样的行为。另外C++标准模板库中的智能指针(见 第4章 也是用代理类实现了对原始指针的资源管理行为。代理类的功能已被大家广泛接受。事实上“Proxy”设计模式是软件设计这座万神庙中一直都存在的高级会员。 一些代理类被设计于用以对客户可见。比如std::shared_ptr和std::unique_ptr。其他的代理类则或多或少不可见比如std::vector<bool>::reference就是不可见代理类的一个例子还有它在std::bitset的胞弟std::bitset::reference。 在后者的阵营指不可见代理类里一些C++库也是用了表达式模板( expression templates 的黑科技。这些库通常被用于提高数值运算的效率。给出一个矩阵类Matrix和矩阵对象m1m2m3m4举个例子这个表达式 Matrix sum = m1 + m2 + m3 + m4; 可以使计算更加高效只需要使让operator+返回一个代理类代理结果而不是返回结果本身。也就是说对两个Matrix对象使用operator+将会返回如Sum<Matrix, Matrix>这样的代理类作为结果而不是直接返回一个Matrix对象。在std::vector<bool>::reference和bool中存在一个隐式转换同样对于Matrix来说也可以存在一个隐式转换允许Matrix的代理类转换为Matrix这让表达式等号“=”右边能产生代理对象来初始化sum。这个对象应当编码整个初始化表达式即类似于Sum<Sum<Sum<Matrix, Matrix>, Matrix>, Matrix>的东西。客户应该避免看到这个实际的类型。) 作为一个通则不可见的代理类通常不适用于auto。这样类型的对象的生命期通常不会设计为能活过一条语句所以创建那样的对象你基本上就走向了违反程序库设计基本假设的道路。std::vector<bool>::reference就是这种情况我们看到违反这个基本假设将导致未定义行为。 因此你想避开这种形式的代码: auto someVar = expression of \"invisible\" proxy class type; 但是你怎么能意识到你正在使用代理类?应用他们的软件不可能宣告它们的存在。它们被设计为 不可见 ,至少概念上说是这样!每当你发现它们,你真的应该舍弃 Item5 演示的auto所具有的诸多好处吗 让我们首先回到如何找到它们的问题上。虽然“不可见”代理类都在程序员日常使用的雷达下方飞行,但是很多库都证明它们可以上方飞行。当你越熟悉你使用的库的基本设计理念,你的思维就会越活跃,不至于思维僵化认为代理类只能在这些库中使用。 当缺少文档的时候可以去看看头文件。很少会出现源代码全都用代理对象它们通常用于一些函数的返回类型所以通常能从函数签名中看出它们的存在。这里有一份std::vector<bool>::operator[]的说明书: namespace std{ //来自于C++标准库 template<class Allocator> class vector<bool, Allocator>{ public: … class reference { … }; reference operator[](size_type n); … };\n} 假设你知道对std::vector<T>使用operator[]通常会返回一个T&在这里operator[]不寻常的返回类型提示你它使用了代理类。多关注你使用的接口可以暴露代理类的存在。 实际上, 很多开发者都是在跟踪一些令人困惑的复杂问题或在单元测试出错进行调试时才看到代理类的使用。不管你怎么发现它们的一旦看到auto推导了代理类的类型而不是被代理的类型解决方案并不需要抛弃auto。auto本身没什么问题问题是auto不会推导出你想要的类型。解决方案是强制使用一个不同的类型推导形式这种方法我通常称之为显式类型初始器惯用法 the explicitly typed initialized idiom )。 显式类型初始器惯用法使用auto声明一个变量然后对表达式强制类型转换 cast 得出你期望的推导结果。举个例子我们该怎么将这个惯用法施加到highPriority上 auto highPriority = static_cast<bool>(features(w)[5]); 这里features(w)[5]还是返回一个std::vector<bool>::reference对象就像之前那样但是这个转型使得表达式类型为bool然后auto才被用于推导highPriority。在运行时对std::vector<bool>::operator[]返回的std::vector<bool>::reference执行它支持的向bool的转型在这个过程中指向std::vector<bool>的指针已经被解引用。这就避开了我们之前的未定义行为。然后5将被用于指向 bit 的指针bool值被用于初始化highPriority。 对于Matrix来说显式类型初始器惯用法是这样的 auto sum = static_cast<Matrix>(m1 + m2 + m3 + m4); 应用这个惯用法不限制初始化表达式产生一个代理类。它也可以用于强调你声明了一个变量类型,它的类型不同于初始化表达式的类型。举个例子,假设你有这样一个表达式计算公差值: double calcEpsilon(); //返回公差值 calcEpsilon清楚的表明它返回一个double但是假设你知道对于这个程序来说使用float的精度已经足够了而且你很关心double和float的大小。你可以声明一个float变量储存calEpsilon的计算结果。 float ep = calcEpsilon(); //double到float隐式转换 但是这几乎没有表明“我确实要减少函数返回值的精度”。使用显式类型初始器惯用法我们可以这样: auto ep = static_cast<float>(calcEpsilon()); 出于同样的原因如果你故意想用整数类型存储一个表达式返回的浮点数类型的结果你也可以使用这个方法。假如你需要计算一个随机访问迭代器比如std::vectorstd::deque或者std::array中某元素的下标你被提供一个0.0到1.0的double值表明这个元素离容器的头部有多远0.5意味着位于容器中间。进一步假设你很自信结果下标是int。如果容器是cd是double类型变量你可以用这样的方法计算容器下标 int index = d * c.size(); 但是这种写法并没有明确表明你想将右侧的double类型转换成int类型显式类型初始器可以帮助你正确表意 auto index = static_cast<int>(d * size()); 请记住: 不可见的代理类可能会使auto从表达式中推导出“错误的”类型 显式类型初始器惯用法强制auto推导出你想要的结果","breadcrumbs":"第二章 auto » Item 6:auto推导若非己愿使用显式类型初始化惯用法 » 条款六auto推导若非己愿使用显式类型初始化惯用法","id":"18","title":"条款六auto推导若非己愿使用显式类型初始化惯用法"},"19":{"body":"CHAPTER 3 Moving to Modern C++ 说起知名的特性C++11/14有一大堆可以吹的东西auto智能指针 smart pointer ),移动语义( move semantics lambda ,并发( concurrency ——每个都是如此的重要这章将覆盖这些内容。精通这些特性是必要的但是成为高效率的现代C++程序员也要求一系列小步骤。从C++98移步现代C++遇到的每个细节问题都会在本章得到答复。你什么时候应该用{}而不是()创建对象?为什么别名( alias 声明比typedef好constexpr和const有什么不同常量const成员函数和线程安全有什么关系这个列表越列越多。这章将会逐个回答这些问题。","breadcrumbs":"第三章 移步现代C++ » Item 7:区别使用()和{}创建对象 » 第3章 移步现代C++","id":"19","title":"第3章 移步现代C++"},"2":{"body":"我尽力将本书写的清晰、准确、富含有用的信息但是当然还有些去做得更好的办法。如果你找到了任何类型的错误技术上的叙述上的语法上的印刷上的等或者有些建议如何改进本书请给我发电子邮件到emc++@aristeia.com。新的印刷给了我改进《Modern Effective C++》的机会,但我也不能解决我不知道的问题! 要查看我所知道的事情参见本书勘误表页http://www.aristeia.com/BookErrata/emc++-errata.html 。","breadcrumbs":"简介 » 报告bug提出改进意见","id":"2","title":"报告bug提出改进意见"},"20":{"body":"Item 7: Distinguish between () and {} when creating objects 从你的角度看C++11初始化对象的语法选择既丰富得让人尴尬又混乱得让人糊涂。一般来说初始化值要用()或者{}括起来或者放到等号\"=\"的右边: int x(0); //使用小括号初始化 int y = 0; //使用\"=\"初始化 int z{ 0 }; //使用花括号初始化 在很多情况下,你可以使用\"=\"和花括号的组合: int z = { 0 }; //使用\"=\"和花括号 在这个条款的剩下部分,我通常会忽略\"=\"和花括号组合初始化的语法因为C++通常把它视作和只有花括号一样。 “混乱得令人糊涂”指出在初始化中使用\"=\"可能会误导C++新手使他们以为这里发生了赋值运算。对于像int这样的内置类型研究两者区别是个学术问题但是对于用户定义的类型而言区别赋值运算符和初始化就非常重要了因为这可能包含不同的函数调用 Widget w1; //调用默认构造函数 Widget w2 = w1; //不是赋值运算,调用拷贝构造函数 w1 = w2; //是赋值运算调用拷贝赋值运算符copy operator= 甚至对于一些初始化语法在一些情况下C++98没有办法去表达初始化。举个例子要想直接表示一个存放一些特殊值的STL容器是不可能的比如1,3,5。 C++11使用统一初始化 uniform initialization )来整合这些混乱且不适于所有情景的初始化语法,所谓统一初始化是指使用单一初始化语法在任何地方(译注:结合上下文得知这里的“任何地方”指的是初始化表达式存在的地方而不是广义上源代码的各处)表达任何东西。 它基于花括号,出于这个原因我更喜欢称之为括号初始化。(译注:注意,这里的括号初始化指的是花括号初始化,在没有歧义的情况下下文的括号初始化指的都是用花括号进行初始化;当与小括号初始化同时存在并可能产生歧义时我会直接指出。)统一初始化是一个概念上的东西,而括号初始化是一个具体语法构型。 括号初始化让你可以表达以前表达不出的东西。使用花括号,指定一个容器的元素变得很容易: std::vector<int> v{ 1, 3, 5 }; //v初始内容为1,3,5 括号初始化也能被用于为非静态数据成员指定默认初始值。C++11允许\"=\"初始化不加花括号也拥有这种能力: class Widget{ … private: int x{ 0 }; //没问题x初始值为0 int y = 0; //也可以 int z(0); //错误!\n} 另一方面不可拷贝的对象例如std::atomic——见 Item40 )可以使用花括号初始化或者小括号初始化,但是不能使用\"=\"初始化: std::atomic<int> ai1{ 0 }; //没问题\nstd::atomic<int> ai2(0); //没问题\nstd::atomic<int> ai3 = 0; //错误! 因此我们很容易理解为什么括号初始化又叫统一初始化在C++中这三种方式都被指派为初始化表达式,但是只有括号任何地方都能被使用。 括号表达式有一个异常的特性,它不允许内置类型间隐式的变窄转换( narrowing conversion )。如果一个使用了括号初始化的表达式的值,不能保证由被初始化的对象的类型来表示,代码就不会通过编译: double x, y, z; int sum1{ x + y + z }; //错误double的和可能不能表示为int 使用小括号和\"=\"的初始化不检查是否转换为变窄转换,因为由于历史遗留问题它们必须要兼容老旧代码: int sum2(x + y +z); //可以表达式的值被截为int int sum3 = x + y + z; //同上 另一个值得注意的特性是括号表达式对于C++最令人头疼的解析问题有天生的免疫性。(译注:所谓最令人头疼的解析即 most vexing parse ,更多信息请参见 https://en.wikipedia.org/wiki/Most_vexing_parse 。C++规定任何能被决议为一个声明的东西必须被决议为声明。这个规则的副作用是让很多程序员备受折磨:当他们想创建一个使用默认构造函数构造的对象,却不小心变成了函数声明。问题的根源是如果你想使用一个实参调用一个构造函数,你可以这样做: Widget w1(10); //使用实参10调用Widget的一个构造函数 但是如果你尝试使用相似的语法调用没有参数的Widget构造函数它就会变成函数声明 Widget w2(); //最令人头疼的解析声明一个函数w2返回Widget 由于函数声明中形参列表不能使用花括号,所以使用花括号初始化表明你想调用默认构造函数构造对象就没有问题: Widget w3{}; //调用没有参数的构造函数构造对象 关于括号初始化还有很多要说的。它的语法能用于各种不同的上下文它防止了隐式的变窄转换而且对于C++最令人头疼的解析也天生免疫。既然好到这个程度那为什么这个条款不叫“Prefer braced initialization syntax”呢 括号初始化的缺点是有时它有一些令人惊讶的行为。这些行为使得括号初始化、std::initializer_list和构造函数重载决议本来就不清不楚的暧昧关系进一步混乱。把它们放到一起会让看起来应该左转的代码右转。举个例子 Item2 解释了当auto声明的变量使用花括号初始化变量类型就会被推导为std::initializer_list尽管使用相同内容的其他初始化方式会产生正常的结果。所以你越喜欢用auto你就越不能用括号初始化。 在构造函数调用中只要不包含std::initializer_list形参那么花括号初始化和小括号初始化都会产生一样的结果 class Widget { public: Widget(int i, bool b); //构造函数未声明 Widget(int i, double d); //std::initializer_list形参 …\n};\nWidget w1(10, true); //调用第一个构造函数\nWidget w2{10, true}; //也调用第一个构造函数\nWidget w3(10, 5.0); //调用第二个构造函数\nWidget w4{10, 5.0}; //也调用第二个构造函数 然而如果有一个或者多个构造函数的声明一个std::initializer_list形参使用括号初始化语法的调用更倾向于适用std::initializer_list重载函数。而且只要某个使用括号表达式的调用能适用接受std::initializer_list的构造函数编译器就会使用它。如果上面的Widget类有一个std::initializer_list<long double>构造函数并被传入实参,就像这样: class Widget { public: Widget(int i, bool b); //同上 Widget(int i, double d); //同上 Widget(std::initializer_list<long double> il); //新添加的 …\n}; w2和w4将会使用新添加的构造函数构造即使另一个非std::initializer_list构造函数对于实参是更好的选择 Widget w1(10, true); //使用小括号初始化,同之前一样 //调用第一个构造函数 Widget w2{10, true}; //使用花括号初始化,但是现在 //调用std::initializer_list版本构造函数 //(10 和 true 转化为long double) Widget w3(10, 5.0); //使用小括号初始化,同之前一样 //调用第二个构造函数 Widget w4{10, 5.0}; //使用花括号初始化,但是现在 //调用std::initializer_list版本构造函数 //(10 和 5.0 转化为long double) 甚至普通的构造函数和移动构造函数都会被std::initializer_list构造函数劫持 class Widget { public: Widget(int i, bool b); //同之前一样 Widget(int i, double d); //同之前一样 Widget(std::initializer_list<long double> il); //同之前一样 operator float() const; //转换为float …\n}; Widget w5(w4); //使用小括号,调用拷贝构造函数 Widget w6{w4}; //使用花括号调用std::initializer_list构造 //函数w4转换为floatfloat转换为double Widget w7(std::move(w4)); //使用小括号,调用移动构造函数 Widget w8{std::move(w4)}; //使用花括号调用std::initializer_list构造 //函数与w6相同原因 编译器热衷于把括号初始化与使std::initializer_list构造函数匹配了尽管最佳匹配std::initializer_list构造函数不能被调用也会凑上去。比如 class Widget { public: Widget(int i, bool b); //同之前一样 Widget(int i, double d); //同之前一样 Widget(std::initializer_list<bool> il); //现在元素类型为bool … //没有隐式转换函数\n}; Widget w{10, 5.0}; //错误!要求变窄转换 这里编译器会直接忽略前面两个构造函数其中第二个提供了所有实参类型的最佳匹配然后尝试调用std::initializer_list<bool>构造函数。调用这个函数将会把int(10)和double(5.0)转换为bool由于会产生变窄转换bool不能准确表示其中任何一个值括号初始化拒绝变窄转换所以这个调用无效代码无法通过编译。 只有当没办法把括号初始化中实参的类型转化为std::initializer_list时编译器才会回到正常的函数决议流程中。比如我们在构造函数中用std::initializer_list<std::string>代替std::initializer_list<bool>这时非std::initializer_list构造函数将再次成为函数决议的候选者因为没有办法把int和bool转换为std::string: class Widget { public: Widget(int i, bool b); //同之前一样 Widget(int i, double d); //同之前一样 //现在std::initializer_list元素类型为std::string Widget(std::initializer_list<std::string> il); … //没有隐式转换函数\n}; Widget w1(10, true); // 使用小括号初始化,调用第一个构造函数\nWidget w2{10, true}; // 使用花括号初始化,现在调用第一个构造函数\nWidget w3(10, 5.0); // 使用小括号初始化,调用第二个构造函数\nWidget w4{10, 5.0}; // 使用花括号初始化,现在调用第二个构造函数 代码的行为和我们刚刚的论述如出一辙。这里还有一个有趣的 edge case 。假如你使用的花括号初始化是空集并且你欲构建的对象有默认构造函数也有std::initializer_list构造函数。你的空的花括号意味着什么如果它们意味着没有实参就该使用默认构造函数但如果它意味着一个空的std::initializer_list就该调用std::initializer_list构造函数。 最终会调用默认构造函数。空的花括号意味着没有实参不是一个空的std::initializer_list class Widget { public: Widget(); //默认构造函数 Widget(std::initializer_list<int> il); //std::initializer_list构造函数 … //没有隐式转换函数\n}; Widget w1; //调用默认构造函数\nWidget w2{}; //也调用默认构造函数\nWidget w3(); //最令人头疼的解析!声明一个函数 如果你 想 用空std::initializer来调用std::initializer_list构造函数你就得创建一个空花括号作为函数实参——通过把空花括号放在小括号或者另一花括号内来界定你想传递的东西。 Widget w4({}); //使用空花括号列表调用std::initializer_list构造函数\nWidget w5{{}}; //同上 此时括号初始化std::initializer_list和构造函数重载的晦涩规则就会一下子涌进你的脑袋你可能会想研究了半天这些东西在你的日常编程中到底占多大比例。可能比你想象的要多。因为std::vector作为其中之一会直接受到影响。std::vector有一个非std::initializer_list构造函数允许你去指定容器的初始大小以及使用一个值填满你的容器。但它也有一个std::initializer_list构造函数允许你使用花括号里面的值初始化容器。如果你创建一个数值类型的std::vector比如std::vector<int>),然后你传递两个实参,把这两个实参放到小括号和放到花括号中大不相同: std::vector<int> v1(10, 20); //使用非std::initializer_list构造函数 //创建一个包含10个元素的std::vector //所有的元素的值都是20\nstd::vector<int> v2{10, 20}; //使用std::initializer_list构造函数 //创建包含两个元素的std::vector //元素的值为10和20 让我们退回之前的讨论。从这个讨论中我有两个重要结论。第一作为一个类库作者你需要意识到如果你的一堆重载的构造函数中有一个或者多个含有std::initializer_list形参用户代码如果使用了括号初始化可能只会看到你std::initializer_list版本的重载的构造函数。因此你最好把你的构造函数设计为不管用户是小括号还是使用花括号进行初始化都不会有什么影响。换句话说现在看到std::vector设计的缺点以后你设计的时候避免它。 这里的暗语是如果一个类没有std::initializer_list构造函数然后你添加一个用户代码中如果使用括号初始化可能会发现过去被决议为非std::initializer_list构造函数而现在被决议为新的函数。当然这种事情也可能发生在你添加一个函数到那堆重载函数的时候过去被决议为旧的重载函数而现在调用了新的函数。std::initializer_list重载不会和其他重载函数比较它直接盖过了其它重载函数其它重载函数几乎不会被考虑。所以如果你要加入std::initializer_list构造函数请三思而后行。 第二个作为一个类库使用者你必须认真的在花括号和小括号之间选择一个来创建对象。大多数开发者都使用其中一种作为默认情况只有当他们不能使用这种的时候才会考虑另一种。如果使用默认使用花括号初始化会得到大范围适用面的好处它禁止变窄转换免疫C++最令人头疼的解析。他们知道在一些情况下比如给一个容器大小和一个值创建std::vector要使用小括号。如果默认使用小括号初始化它们能和C++98语法保持一致它避开了auto自动推导std::initializer_list的问题也不会不经意间就调用了std::initializer_list构造函数。他们承认有时候只能使用花括号比如创建一个包含着特定值的容器。关于花括号和小括号的使用没有一个一致的观点所以我的建议是用一个并坚持使用。 如果你是一个模板的作者,花括号和小括号创建对象就更麻烦了。通常不能知晓哪个会被使用。举个例子,假如你想创建一个接受任意数量的参数,然后用它们创建一个对象。使用可变参数模板( variadic template )可以非常简单的解决: template<typename T, //要创建的对象类型 typename... Ts> //要使用的实参的类型\nvoid doSomeWork(Ts&&... params)\n{ create local T object from params... …\n} 在现实中我们有两种方式实现这个伪代码关于std::forward请参见 Item25 T localObject(std::forward<Ts>(params)...); //使用小括号\nT localObject{std::forward<Ts>(params)...}; //使用花括号 考虑这样的调用代码: std::vector<int> v; …\ndoSomeWork<std::vector<int>>(10, 20); 如果doSomeWork创建localObject时使用的是小括号std::vector就会包含10个元素。如果doSomeWork创建localObject时使用的是花括号std::vector就会包含2个元素。哪个是正确的doSomeWork的作者不知道只有调用者知道。 这正是标准库函数std::make_unique和std::make_shared参见 Item21 )面对的问题。它们的解决方案是使用小括号,并被记录在文档中作为接口的一部分。(注:更灵活的设计——允许调用者决定从模板来的函数应该使用小括号还是花括号——是有可能的。详情参见 Andrzejs C++ blog 在2013年6月5日的文章“ Intuitive interface — Part I. ”) 请记住: 括号初始化是最广泛使用的初始化语法它防止变窄转换并且对于C++最令人头疼的解析有天生的免疫性 在构造函数重载决议中括号初始化尽最大可能与std::initializer_list参数匹配即便其他构造函数看起来是更好的选择 对于数值类型的std::vector来说使用花括号初始化和小括号初始化会造成巨大的不同 在模板类选择使用小括号初始化或使用花括号初始化创建对象是一个挑战。","breadcrumbs":"第三章 移步现代C++ » Item 7:区别使用()和{}创建对象 » 条款七:区别使用()和{}创建对象","id":"20","title":"条款七:区别使用()和{}创建对象"},"21":{"body":"Item 8: Prefer nullptr to 0 and NULL 你看这样对不对字面值0是一个int不是指针。如果C++发现在当前上下文只能使用指针它会很不情愿的把0解释为指针但是那是最后的退路。一般来说C++的解析策略是把0看做int而不是指针。 实际上NULL也是这样的。但在NULL的实现细节有些不确定因素因为实现被允许给NULL一个除了int之外的整型类型比如long。这不常见但也算不上问题所在。这里的问题不是NULL没有一个确定的类型而是0和NULL都不是指针类型。 在C++98中对指针类型和整型进行重载意味着可能导致奇怪的事情。如果给下面的重载函数传递0或NULL它们绝不会调用指针版本的重载函数 void f(int); //三个f的重载函数\nvoid f(bool);\nvoid f(void*); f(0); //调用f(int)而不是f(void*) f(NULL); //可能不会被编译一般来说调用f(int) //绝对不会调用f(void*) 而f(NULL)的不确定行为是由NULL的实现不同造成的。如果NULL被定义为0L指的是0为long类型这个调用就具有二义性因为从long到int的转换或从long到bool的转换或0L到void*的转换都同样好。有趣的是源代码 表现出 的意思“我使用空指针NULL调用f”和 实际表达出 的意思“我是用整型数据而不是空指针调用f”是相矛盾的。这种违反直觉的行为导致C++98程序员都将避开同时重载指针和整型作为编程准则译注请务必注意结合上下文使用这条规则。在C++11中这个编程准则也有效因为尽管我这个条款建议使用nullptr可能很多程序员还是会继续使用0或NULL哪怕nullptr是更好的选择。 nullptr的优点是它不是整型。老实说它也不是一个指针类型但是你可以把它认为是 所有 类型的指针。nullptr的真正类型是std::nullptr_t在一个完美的循环定义以后std::nullptr_t又被定义为nullptr。std::nullptr_t可以隐式转换为指向任何内置类型的指针这也是为什么nullptr表现得像所有类型的指针。 使用nullptr调用f将会调用void*版本的重载函数因为nullptr不能被视作任何整型 f(nullptr); //调用重载函数f的f(void*)版本 使用nullptr代替0和NULL可以避开了那些令人奇怪的函数重载决议这不是它的唯一优势。它也可以使代码表意明确尤其是当涉及到与auto声明的变量一起使用时。举个例子假如你在一个代码库中遇到了这样的代码 auto result = findRecord( /* arguments */ );\nif (result == 0) { …\n} 如果你不知道findRecord返回了什么或者不能轻易的找出那么你就不太清楚到底result是一个指针类型还是一个整型。毕竟0用来测试result的值的那个也可以像我们之前讨论的那样被解析。但是换一种假设如果你看到这样的代码 auto result = findRecord( /* arguments */ ); if (result == nullptr) { …\n} 这就没有任何歧义result的结果一定是指针类型。 当模板出现时nullptr就更有用了。假如你有一些函数只能被合适的已锁互斥量调用。每个函数都有一个不同类型的指针 int f1(std::shared_ptr<Widget> spw); //只能被合适的\ndouble f2(std::unique_ptr<Widget> upw); //已锁互斥量\nbool f3(Widget* pw); //调用 如果这样传递空指针: std::mutex f1m, f2m, f3m; //用于f1f2f3函数的互斥量 using MuxGuard = //C++11的typedef参见Item9 std::lock_guard<std::mutex>;\n… { MuxGuard g(f1m); //为f1m上锁 auto result = f1(0); //向f1传递0作为空指针\n} //解锁 …\n{ MuxGuard g(f2m); //为f2m上锁 auto result = f2(NULL); //向f2传递NULL作为空指针\n} //解锁 …\n{ MuxGuard g(f3m); //为f3m上锁 auto result = f3(nullptr); //向f3传递nullptr作为空指针\n} //解锁 令人遗憾前两个调用没有使用nullptr但是代码可以正常运行这也许对一些东西有用。但是重复的调用代码——为互斥量上锁调用函数解锁互斥量——更令人遗憾。它让人很烦。模板就是被设计于减少重复代码所以让我们模板化这个调用流程 template<typename FuncType, typename MuxType, typename PtrType>\nauto lockAndCall(FuncType func, MuxType& mutex, PtrType ptr) -> decltype(func(ptr))\n{ MuxGuard g(mutex); return func(ptr); } 如果你对函数返回类型auto ... -> decltype(func(ptr)))感到困惑不解, Item3 可以帮助你。在C++14中代码的返回类型还可以被简化为decltype(auto) template<typename FuncType, typename MuxType, typename PtrType>\ndecltype(auto) lockAndCall(FuncType func, //C++14 MuxType& mutex, PtrType ptr)\n{ MuxGuard g(mutex); return func(ptr); } 可以写这样的代码调用lockAndCall模板两个版本都可 auto result1 = lockAndCall(f1, f1m, 0); //错误!\n...\nauto result2 = lockAndCall(f2, f2m, NULL); //错误!\n...\nauto result3 = lockAndCall(f3, f3m, nullptr); //没问题 代码虽然可以这样写但是就像注释中说的前两个情况不能通过编译。在第一个调用中存在的问题是当0被传递给lockAndCall模板模板类型推导会尝试去推导实参类型0的类型总是int所以这就是这次调用lockAndCall实例化出的ptr的类型。不幸的是这意味着lockAndCall中func会被int类型的实参调用这与f1期待的std::shared_ptr<Widget>形参不符。传递0给lockAndCall本来想表示空指针结果f1得到的是和它相差十万八千里的int。把int类型看做std::shared_ptr<Widget>类型给f1自然是一个类型错误。在模板lockAndCall中使用0之所以失败是因为在模板中传给的是int但实际上函数期待的是一个std::shared_ptr<Widget>。 第二个使用NULL调用的分析也是一样的。当NULL被传递给lockAndCall形参ptr被推导为整型译注由于依赖于具体实现所以不一定是整数类型所以用整型泛指intlong等类型然后当ptr——一个int或者类似int的类型——传递给f2的时候就会出现类型错误f2期待的是std::unique_ptr<Widget>。 然而使用nullptr是调用没什么问题。当nullptr传给lockAndCall时ptr被推导为std::nullptr_t。当ptr被传递给f3的时候隐式转换使std::nullptr_t转换为Widget因为std::nullptr_t可以隐式转换为任何指针类型。 模板类型推导将0和NULL推导为一个错误的类型即它们的实际类型而不是作为空指针的隐含意义这就导致在当你想要一个空指针时它们的替代品nullptr很吸引人。使用nullptr模板不会有什么特殊的转换。另外使用nullptr不会让你受到同重载决议特殊对待0和NULL一样的待遇。当你想用一个空指针使用nullptr不用0或者NULL。 记住 优先考虑nullptr而非0和NULL 避免重载指针和整型","breadcrumbs":"第三章 移步现代C++ » Item 8:优先考虑nullptr而非0和NULL » 条款八优先考虑nullptr而非0和NULL","id":"21","title":"条款八优先考虑nullptr而非0和NULL"},"22":{"body":"Item 9: Prefer alias declarations to typedefs 我相信每个人都同意使用STL容器是个好主意并且我希望 Item18 能说服你让你觉得使用std:unique_ptr也是个好主意但我猜没有人喜欢写上几次 std::unique_ptr<std::unordered_map<std::string, std::string>>这样的类型,它可能会让你患上腕管综合征的风险大大增加。 避免上述医疗悲剧也很简单引入typedef即可 typedef std::unique_ptr<std::unordered_map<std::string, std::string>> UPtrMapSS; 但typedef是C++98的东西。虽然它可以在C++11中工作但是C++11也提供了一个别名声明 alias declaration using UPtrMapSS = std::unique_ptr<std::unordered_map<std::string, std::string>>; 由于这里给出的typedef和别名声明做的都是完全一样的事情我们有理由想知道会不会出于一些技术上的原因两者有一个更好。 这里,在说它们之前我想提醒一下很多人都发现当声明一个函数指针时别名声明更容易理解: //FP是一个指向函数的指针的同义词它指向的函数带有\n//int和const std::string&形参,不返回任何东西\ntypedef void (*FP)(int, const std::string&); //typedef //含义同上\nusing FP = void (*)(int, const std::string&); //别名声明 当然两个结构都不是非常让人满意没有人喜欢花大量的时间处理函数指针类型的别名译注指FP所以至少在这里没有一个吸引人的理由让你觉得别名声明比typedef好。 不过有一个地方使用别名声明吸引人的理由是存在的:模板。特别地,别名声明可以被模板化(这种情况下称为别名模板 alias template s但是typedef不能。这使得C++11程序员可以很直接的表达一些C++98中只能把typedef嵌套进模板化的struct才能表达的东西。考虑一个链表的别名链表使用自定义的内存分配器MyAlloc。使用别名模板这真是太容易了 template<typename T> //MyAllocList<T>是\nusing MyAllocList = std::list<T, MyAlloc<T>>; //std::list<T, MyAlloc<T>> //的同义词 MyAllocList<Widget> lw; //用户代码 使用typedef你就只能从头开始 template<typename T> //MyAllocList<T>是\nstruct MyAllocList { //std::list<T, MyAlloc<T>> typedef std::list<T, MyAlloc<T>> type; //的同义词 }; MyAllocList<Widget>::type lw; //用户代码 更糟糕的是如果你想使用在一个模板内使用typedef声明一个链表对象而这个对象又使用了模板形参你就不得不在typedef前面加上typename template<typename T>\nclass Widget { //Widget<T>含有一个\nprivate: //MyAllocLIst<T>对象 typename MyAllocList<T>::type list; //作为数据成员 …\n}; 这里MyAllocList<T>::type使用了一个类型这个类型依赖于模板参数T。因此MyAllocList<T>::type是一个依赖类型 dependent type 在C++很多讨人喜欢的规则中的一个提到必须要在依赖类型名前加上typename。 如果使用别名声明定义一个MyAllocList就不需要使用typename同时省略麻烦的“::type”后缀 template<typename T> using MyAllocList = std::list<T, MyAlloc<T>>; //同之前一样 template<typename T> class Widget {\nprivate: MyAllocList<T> list; //没有“typename” … //没有“::type”\n}; 对你来说MyAllocList<T>使用了模板别名声明的版本可能看起来和MyAllocList<T>::type使用typedef的版本一样都应该依赖模板参数T但是你不是编译器。当编译器处理Widget模板时遇到MyAllocList<T>使用模板别名声明的版本它们知道MyAllocList<T>是一个类型名因为MyAllocList是一个别名模板它 一定 是一个类型名。因此MyAllocList<T>就是一个 非依赖类型 non-dependent type 就不需要也不允许使用typename修饰符。 当编译器在Widget的模板中看到MyAllocList<T>::type使用typedef的版本它不能确定那是一个类型的名称。因为可能存在一个MyAllocList的它们没见到的特化版本那个版本的MyAllocList<T>::type指代了一种不是类型的东西。那听起来很不可思议但不要责备编译器穷尽考虑所有可能。因为人确实能写出这样的代码。 举个例子,一个误入歧途的人可能写出这样的代码: class Wine { … }; template<> //当T是Wine\nclass MyAllocList<Wine> { //特化MyAllocList\nprivate: enum class WineType //参见Item10了解 { White, Red, Rose }; //\"enum class\" WineType type; //在这个类中type是 … //一个数据成员!\n}; 就像你看到的MyAllocList<Wine>::type不是一个类型。如果Widget使用Wine实例化在Widget模板中的MyAllocList<Wine>::type将会是一个数据成员不是一个类型。在Widget模板内MyAllocList<T>::type是否表示一个类型取决于T是什么这就是为什么编译器会坚持要求你在前面加上typename。 如果你尝试过模板元编程( template metaprogramming TMP 你一定会碰到取模板类型参数然后基于它创建另一种类型的情况。举个例子给一个类型T如果你想去掉T的常量修饰和引用修饰const- or reference qualifiers比如你想把const std::string&变成std::string。又或者你想给一个类型加上const或变为左值引用比如把Widget变成const Widget或Widget&。如果你没有用过模板元编程太遗憾了因为如果你真的想成为一个高效C++程序员你需要至少熟悉C++在这方面的基本知识。你可以看看在 Item23 27 里的TMP的应用实例包括我提到的类型转换。 C++11在 type traits (类型特性)中给了你一系列工具去实现类型转换,如果要使用这些模板请包含头文件<type_traits>。里面有许许多多 type traits 也不全是类型转换的工具也包含一些可预测接口的工具。给一个你想施加转换的类型T结果类型就是std::transformation<T>::type比如 std::remove_const<T>::type //从const T中产出T\nstd::remove_reference<T>::type //从T&和T&&中产出T\nstd::add_lvalue_reference<T>::type //从T中产出T& 注释仅仅简单的总结了类型转换做了什么,所以不要太随便的使用。在你的项目使用它们之前,你最好看看它们的详细说明书。 尽管写了一些,但我这里不是想给你一个关于 type traits 使用的教程。注意类型转换尾部的::type。如果你在一个模板内部将他们施加到类型形参上实际代码中你也总是这么用你也需要在它们前面加上typename。至于为什么要这么做是因为这些C++11的 type traits 是通过在struct内嵌套typedef来实现的。是的它们使用类型同义词译注根据上下文指的是使用typedef的做法技术实现而正如我之前所说这比别名声明要差。 关于为什么这么实现是有历史原因的但是我们跳过它我认为太无聊了因为标准委员会没有及时认识到别名声明是更好的选择所以直到C++14它们才提供了使用别名声明的版本。这些别名声明有一个通用形式对于C++11的类型转换std::transformation<T>::type在C++14中变成了std::transformation_t。举个例子或许更容易理解 std::remove_const<T>::type //C++11: const T → T std::remove_const_t<T> //C++14 等价形式 std::remove_reference<T>::type //C++11: T&/T&& → T std::remove_reference_t<T> //C++14 等价形式 std::add_lvalue_reference<T>::type //C++11: T → T& std::add_lvalue_reference_t<T> //C++14 等价形式 C++11的的形式在C++14中也有效但是我不能理解为什么你要去用它们。就算你没办法使用C++14使用别名模板也是小儿科。只需要C++11的语言特性甚至每个小孩都能仿写对吧如果你有一份C++14标准就更简单了只需要复制粘贴 template <class T> using remove_const_t = typename remove_const<T>::type; template <class T> using remove_reference_t = typename remove_reference<T>::type; template <class T> using add_lvalue_reference_t = typename add_lvalue_reference<T>::type; 看见了吧?不能再简单了。 请记住: typedef不支持模板化但是别名声明支持。 别名模板避免了使用“::type”后缀而且在模板中使用typedef还需要在前面加上typename C++14提供了C++11所有 type traits 转换的别名声明版本","breadcrumbs":"第三章 移步现代C++ » Item 9:优先考虑别名声明而非typedefs » 条款九优先考虑别名声明而非typedefs","id":"22","title":"条款九优先考虑别名声明而非typedefs"},"23":{"body":"Item 10: Prefer scoped enums to unscoped enums 通常来说在花括号中声明一个名字会限制它的作用域在花括号之内。但这对于C++98风格的enum中声明的枚举名译注 enumerator ,连同下文“枚举名”都指 enumerator )是不成立的。这些枚举名的名字(译注: enumerator names连同下文“名字”都指names属于包含这个enum的作用域这意味着作用域内不能含有相同名字的其他东西 enum Color { black, white, red }; //black, white, red在 //Color所在的作用域\nauto white = false; //错误! white早已在这个作用 //域中声明 这些枚举名的名字泄漏进它们所被定义的enum在的那个作用域这个事实有一个官方的术语未限域枚举( unscoped enum )。在C++11中它们有一个相似物限域枚举( scoped enum ),它不会导致枚举名泄漏: enum class Color { black, white, red }; //black, white, red //限制在Color域内\nauto white = false; //没问题域内没有其他“white” Color c = white; //错误域中没有枚举名叫white Color c = Color::white; //没问题\nauto c = Color::white; //也没问题也符合Item5的建议 因为限域enum是通过“enum class”声明所以它们有时候也被称为枚举类( enum classes )。 使用限域enum来减少命名空间污染这是一个足够合理使用它而不是它的同胞未限域enum的理由其实限域enum还有第二个吸引人的优点在它的作用域中枚举名是强类型。未限域enum中的枚举名会隐式转换为整型现在也可以转换为浮点类型。因此下面这种歪曲语义的做法也是完全有效的 enum Color { black, white, red }; //未限域enum std::vector<std::size_t> //func返回x的质因子 primeFactors(std::size_t x); Color c = red;\n… if (c < 14.5) { // Color与double比较 (!) auto factors = // 计算一个Color的质因子(!) primeFactors(c); …\n} 在enum后面写一个class就可以将非限域enum转换为限域enum接下来就是完全不同的故事展开了。现在不存在任何隐式转换可以将限域enum中的枚举名转化为任何其他类型 enum class Color { black, white, red }; //Color现在是限域enum Color c = Color::red; //和之前一样,只是\n... //多了一个域修饰符 if (c < 14.5) { //错误!不能比较 //Color和double auto factors = //错误不能向参数为std::size_t primeFactors(c); //的函数传递Color参数 …\n} 如果你真的很想执行Color到其他类型的转换和平常一样使用正确的类型转换运算符扭曲类型系统 if (static_cast<double>(c) < 14.5) { //奇怪的代码, //但是有效 auto factors = //有问题,但是 primeFactors(static_cast<std::size_t>(c)); //能通过编译 …\n} 似乎比起非限域enum而言限域enum有第三个好处因为限域enum可以被前置声明。也就是说它们可以不指定枚举名直接声明 enum Color; //错误!\nenum class Color; //没问题 其实这是一个误导。在C++11中非限域enum也可以被前置声明但是只有在做一些其他工作后才能实现。这些工作来源于一个事实在C++中所有的enum都有一个由编译器决定的整型的底层类型。对于非限域enum比如Color enum Color { black, white, red }; 编译器可能选择char作为底层类型因为这里只需要表示三个值。然而有些enum中的枚举值范围可能会大些比如 enum Status { good = 0, failed = 1, incomplete = 100, corrupt = 200, indeterminate = 0xFFFFFFFF }; 这里值的范围从0到0xFFFFFFFF。除了在不寻常的机器上比如一个char至少有32bits的那种编译器都会选择一个比char大的整型类型来表示Status。 为了高效使用内存编译器通常在确保能包含所有枚举值的前提下为enum选择一个最小的底层类型。在一些情况下编译器将会优化速度舍弃大小这种情况下它可能不会选择最小的底层类型而是选择对优化大小有帮助的类型。为此C++98只支持enum定义所有枚举名全部列出来enum声明是不被允许的。这使得编译器能在使用之前为每一个enum选择一个底层类型。 但是不能前置声明enum也是有缺点的。最大的缺点莫过于它可能增加编译依赖。再次考虑Status enum enum Status { good = 0, failed = 1, incomplete = 100, corrupt = 200, indeterminate = 0xFFFFFFFF }; 这种enum很有可能用于整个系统因此系统中每个包含这个头文件的组件都会依赖它。如果引入一个新状态值 enum Status { good = 0, failed = 1, incomplete = 100, corrupt = 200, audited = 500, indeterminate = 0xFFFFFFFF }; 那么可能整个系统都得重新编译,即使只有一个子系统——或者只有一个函数——使用了新添加的枚举名。这是大家都 不希望 看到的。C++11中的前置声明enums可以解决这个问题。比如这里有一个完全有效的限域enum声明和一个以该限域enum作为形参的函数声明 enum class Status; //前置声明\nvoid continueProcessing(Status s); //使用前置声明enum 即使Status的定义发生改变包含这些声明的头文件也不需要重新编译。而且如果Status有改动比如添加一个audited枚举名continueProcessing的行为不受影响比如因为continueProcessing没有使用这个新添加的auditedcontinueProcessing也不需要重新编译。 但是如果编译器在使用它之前需要知晓该enum的大小该怎么声明才能让C++11做到C++98不能做到的事情呢答案很简单限域enum的底层类型总是已知的而对于非限域enum你可以指定它。 默认情况下限域枚举的底层类型是int enum class Status; //底层类型是int 如果默认的int不适用你可以重写它 enum class Status: std::uint32_t; //Status的底层类型 //是std::uint32_t //(需要包含 <cstdint> 不管怎样编译器都知道限域enum中的枚举名占用多少字节。 要为非限域enum指定底层类型你可以同上结果就可以前向声明 enum Color: std::uint8_t; //非限域enum前向声明 //底层类型为 //std::uint8_t 底层类型说明也可以放到enum定义处 enum class Status: std::uint32_t { good = 0, failed = 1, incomplete = 100, corrupt = 200, audited = 500, indeterminate = 0xFFFFFFFF }; 限域enum避免命名空间污染而且不接受荒谬的隐式类型转换但它并非万事皆宜你可能会很惊讶听到至少有一种情况下非限域enum是很有用的。那就是牵扯到C++11的std::tuple的时候。比如在社交网站中假设我们有一个 tuple 保存了用户的名字email地址声望值 using UserInfo = //类型别名参见Item9 std::tuple<std::string, //名字 std::string, //email地址 std::size_t> ; //声望 虽然注释说明了tuple各个字段对应的意思但当你在另一文件遇到下面的代码那之前的注释就不是那么有用了 UserInfo uInfo; //tuple对象\n…\nauto val = std::get<1>(uInfo);\t//获取第一个字段 作为一个程序员你有很多工作要持续跟进。你应该记住第一个字段代表用户的email地址吗我认为不。可以使用非限域enum将名字和字段编号关联起来以避免上述需求 enum UserInfoFields { uiName, uiEmail, uiReputation }; UserInfo uInfo; //同之前一样\n…\nauto val = std::get<uiEmail>(uInfo); //啊获取用户email字段的值 之所以它能正常工作是因为UserInfoFields中的枚举名隐式转换成std::size_t了其中std::size_t是std::get模板实参所需的。 对应的限域enum版本就很啰嗦了 enum class UserInfoFields { uiName, uiEmail, uiReputation }; UserInfo uInfo; //同之前一样\n…\nauto val = std::get<static_cast<std::size_t>(UserInfoFields::uiEmail)> (uInfo); 为避免这种冗长的表示我们可以写一个函数传入枚举名并返回对应的std::size_t值但这有一点技巧性。std::get是一个模板函数需要你给出一个std::size_t值的模板实参注意使用<>而不是()因此将枚举名变换为std::size_t值的函数必须 在编译期 产生这个结果。如 Item15 提到的那必须是一个constexpr函数。 事实上它也的确该是一个constexpr函数模板因为它应该能用于任何enum。如果我们想让它更一般化我们还要泛化它的返回类型。较之于返回std::size_t我们更应该返回枚举的底层类型。这可以通过std::underlying_type这个 type trait 获得。(参见 Item9 关于 type trait 的内容。最终我们还要再加上noexcept修饰参见 Item14 因为我们知道它肯定不会产生异常。根据上述分析最终得到的toUType函数模板在编译期接受任意枚举名并返回它的值 template<typename E>\nconstexpr typename std::underlying_type<E>::type toUType(E enumerator) noexcept\n{ return static_cast<typename std::underlying_type<E>::type>(enumerator);\n} 在C++14中toUType还可以进一步用std::underlying_type_t参见 Item9 代替typename std::underlying_type<E>::type打磨 template<typename E> //C++14\nconstexpr std::underlying_type_t<E> toUType(E enumerator) noexcept\n{ return static_cast<std::underlying_type_t<E>>(enumerator);\n} 还可以再用C++14 auto参见 Item3 )打磨一下代码: template<typename E> //C++14\nconstexpr auto toUType(E enumerator) noexcept\n{ return static_cast<std::underlying_type_t<E>>(enumerator);\n} 不管它怎么写toUType现在允许这样访问tuple的字段了 auto val = std::get<toUType(UserInfoFields::uiEmail)>(uInfo); 这仍然比使用非限域enum要写更多的代码但同时它也避免命名空间污染防止不经意间使用隐式转换。大多数情况下你应该会觉得多敲几个几行字符作为避免使用未限域枚举这种老得和2400波特率猫同时代技术的代价是值得的。 记住 C++98的enum即非限域enum。 限域enum的枚举名仅在enum内可见。要转换为其它类型只能使用 cast 。 非限域/限域enum都支持底层类型说明语法限域enum底层类型默认是int。非限域enum没有默认底层类型。 限域enum总是可以前置声明。非限域enum仅当指定它们的底层类型时才能前置。","breadcrumbs":"第三章 移步现代C++ » Item 10:优先考虑限域枚举而非未限域枚举 » 条款十优先考虑限域enum而非未限域enum","id":"23","title":"条款十优先考虑限域enum而非未限域enum"},"24":{"body":"Item 11: Prefer deleted functions to private undefined ones. 如果你写的代码要被其他人使用你不想让他们调用某个特殊的函数你通常不会声明这个函数。无声明不函数。简简单单但有时C++会给你自动声明一些函数,如果你想防止客户调用这些函数,事情就不那么简单了。 上述场景见于特殊的成员函数即当有必要时C++自动生成的那些函数。 Item17 详细讨论了这些函数但是现在我们只关心拷贝构造函数和拷贝赋值运算符重载。本节主要致力于讨论C++98中那些被C++11所取代的最佳实践而且在C++98中你想要禁止使用的成员函数几乎总是拷贝构造函数或者赋值运算符或者两者都是。 在C++98中防止调用这些函数的方法是将它们声明为私有private成员函数并且不定义。举个例子在C++ 标准库 iostream 继承链的顶部是模板类basic_ios。所有 istream 和 ostream 类都继承此类(直接或者间接)。拷贝 istream 和 ostream 是不合适的因为这些操作应该怎么做是模棱两可的。比如一个istream对象代表一个输入值的流流中有一些已经被读取有一些可能马上要被读取。如果一个 istream 被拷贝,需要拷贝将要被读取的值和已经被读取的值吗?解决这个问题最好的方法是不定义这个操作。直接禁止拷贝流。 要使这些 istream 和 ostream 类不可拷贝basic_ios在C++98中是这样声明的包括注释 template <class charT, class traits = char_traits<charT> >\nclass basic_ios : public ios_base {\npublic: … private: basic_ios(const basic_ios& ); // not defined basic_ios& operator=(const basic_ios&); // not defined\n}; 将它们声明为私有成员可以防止客户端调用这些函数。故意不定义它们意味着假如还是有代码用它们比如成员函数或者类的友元friend就会在链接时引发缺少函数定义 missing function definitions )错误。 在C++11中有一种更好的方式达到相同目的用“= delete”将拷贝构造函数和拷贝赋值运算符标记为 deleted 函数 译注一些文献翻译为“删除的函数”。上面相同的代码在C++11中是这样声明的 template <class charT, class traits = char_traits<charT> >\nclass basic_ios : public ios_base {\npublic: … basic_ios(const basic_ios& ) = delete; basic_ios& operator=(const basic_ios&) = delete; …\n}; 删除这些函数(译注:添加\"= delete\")和声明为私有成员可能看起来只是方式不同,别无其他区别。其实还有一些实质性意义。 deleted 函数不能以任何方式被调用,即使你在成员函数或者友元函数里面调用 deleted 函数也不能通过编译。这是较之C++98行为的一个改进C++98中不正确的使用这些函数在链接时才被诊断出来。 通常, deleted 函数被声明为public而不是private。这也是有原因的。当客户端代码试图调用成员函数C++会在检查 deleted 状态前检查它的访问性。当客户端代码调用一个私有的 deleted 函数一些编译器只会给出该函数是private的错误译注而没有诸如该函数被 deleted 修饰的错误),即使函数的访问性不影响它是否能被使用。所以值得牢记,如果要将老代码的“私有且未定义”函数替换为 deleted 函数时请一并修改它的访问性为public这样可以让编译器产生更好的错误信息。 deleted 函数还有一个重要的优势是 任何 函数都可以标记为 deleted 而只有成员函数可被标记为private。译注从下文可知“任何”是包含普通函数和成员函数等所有可声明函数的地方而private方法只适用于成员函数假如我们有一个非成员函数它接受一个整型参数检查它是否为幸运数 bool isLucky(int number); C++有沉重的C包袱使得含糊的、能被视作数值的任何类型都能隐式转换为int但是有一些调用可能是没有意义的 if (isLucky('a')) … //字符'a'是幸运数?\nif (isLucky(true)) … //\"true\"是?\nif (isLucky(3.5)) … //难道判断它的幸运之前还要先截尾成3 如果幸运数必须真的是整型,我们该禁止这些调用通过编译。 其中一种方法就是创建 deleted 重载函数,其参数就是我们想要过滤的类型: bool isLucky(int number); //原始版本\nbool isLucky(char) = delete; //拒绝char\nbool isLucky(bool) = delete; //拒绝bool\nbool isLucky(double) = delete; //拒绝float和double (上面double重载版本的注释说拒绝float和double可能会让你惊讶但是请回想一下将float转换为int和doubleC++更喜欢转换为double。使用float调用isLucky因此会调用double重载版本而不是int版本。好吧它也会那么去尝试。事实是调用被删除的double重载版本不能通过编译。不再惊讶了吧。) 虽然 deleted 函数不能被使用,但它们还是存在于你的程序中。也即是说,重载决议会考虑它们。这也是为什么上面的函数声明导致编译器拒绝一些不合适的函数调用。 if (isLucky('a')) … //错误调用deleted函数\nif (isLucky(true)) … //错误!\nif (isLucky(3.5f)) … //错误! 另一个 deleted 函数用武之地private成员函数做不到的地方是禁止一些模板的实例化。假如你要求一个模板仅支持原生指针尽管 第四章 建议使用智能指针代替原生指针): template<typename T>\nvoid processPointer(T* ptr); 在指针的世界里有两种特殊情况。一是void*指针因为没办法对它们进行解引用或者加加减减等。另一种指针是char*因为它们通常代表C风格的字符串而不是正常意义下指向单个字符的指针。这两种情况要特殊处理在processPointer模板里面我们假设正确的函数应该拒绝这些类型。也即是说processPointer不能被void*和char*调用。 要想确保这个很容易使用delete标注模板实例 template<>\nvoid processPointer<void>(void*) = delete; template<>\nvoid processPointer<char>(char*) = delete; 现在如果使用void*和char*调用processPointer就是无效的按常理说const void*和const char*也应该无效所以这些实例也应该标注delete: template<>\nvoid processPointer<const void>(const void*) = delete; template<>\nvoid processPointer<const char>(const char*) = delete; 如果你想做得更彻底一些你还要删除const volatile void*和const volatile char*重载版本另外还需要一并删除其他标准字符类型的重载版本std::wchar_tstd::char16_t和std::char32_t。 有趣的是如果的类里面有一个函数模板你可能想用private经典的C++98惯例来禁止这些函数模板实例化但是不能这样做因为不能给特化的成员模板函数指定一个不同于主函数模板的访问级别。如果processPointer是类Widget里面的模板函数 你想禁止它接受void*参数那么通过下面这样C++98的方法就不能通过编译 class Widget {\npublic: … template<typename T> void processPointer(T* ptr) { … } private: template<> //错误! void processPointer<void>(void*); }; 问题是模板特例化必须位于一个命名空间作用域,而不是类作用域。 deleted 函数不会出现这个问题,因为它不需要一个不同的访问级别,且他们可以在类外被删除(因此位于命名空间作用域): class Widget {\npublic: … template<typename T> void processPointer(T* ptr) { … } … }; template<> //还是public\nvoid Widget::processPointer<void>(void*) = delete; //但是已经被删除了 事实上C++98的最佳实践即声明函数为private但不定义是在做C++11 deleted 函数要做的事情。作为模仿者C++98的方法不是十全十美。它不能在类外正常工作不能总是在类中正常工作它的罢工可能直到链接时才会表现出来。所以请坚定不移的使用 deleted 函数。 请记住: 比起声明函数为private但不定义使用 deleted 函数更好 任何函数都能被删除be deleted包括非成员函数和模板实例译注实例化的函数","breadcrumbs":"第三章 移步现代C++ » Item 11:优先考虑使用deleted函数而非使用未定义的私有声明 » 条款十一:优先考虑使用 deleted 函数而非使用未定义的私有声明","id":"24","title":"条款十一:优先考虑使用 deleted 函数而非使用未定义的私有声明"},"25":{"body":"Item 12: Declare overriding functions override 在C++面向对象的世界里,涉及的概念有类,继承,虚函数。这个世界最基本的概念是派生类的虚函数 重写 基类同名函数。令人遗憾的是虚函数重写可能一不小心就错了。似乎这部分语言的设计理念是不仅仅要遵守墨菲定律,还应该尊重它。 虽然“重写( overriding )”听起来像“重载( overloading )”,然而两者完全不相关,所以让我澄清一下,正是虚函数重写机制的存在,才使我们可以通过基类的接口调用派生类的成员函数: class Base {\npublic: virtual void doWork(); //基类虚函数 …\n}; class Derived: public Base {\npublic: virtual void doWork(); //重写Base::doWork … //这里“virtual”是可以省略的\n}; std::unique_ptr<Base> upb = //创建基类指针指向派生类对象 std::make_unique<Derived>(); //关于stdmake_unique\n… //请参见Item21 upb->doWork(); //通过基类指针调用doWork //实际上是派生类的doWork //函数被调用 要想重写一个函数,必须满足下列要求: 基类函数必须是virtual 基类和派生类函数名必须完全一样(除非是析构函数) 基类和派生类函数形参类型必须完全一样 基类和派生类函数常量性constness必须完全一样 基类和派生类函数的返回值和异常说明( exception specifications )必须兼容 除了这些C++98就存在的约束外C++11又添加了一个 函数的引用限定符( reference qualifiers 必须完全一样。成员函数的引用限定符是C++11很少抛头露脸的特性所以如果你从没听过它无需惊讶。它可以限定成员函数只能用于左值或者右值。成员函数不需要virtual也能使用它们 class Widget {\npublic: … void doWork() &; //只有*this为左值的时候才能被调用 void doWork() &&; //只有*this为右值的时候才能被调用\n}; …\nWidget makeWidget(); //工厂函数(返回右值)\nWidget w; //普通对象(左值)\n…\nw.doWork(); //调用被左值引用限定修饰的Widget::doWork版本 //即Widget::doWork &\nmakeWidget().doWork(); //调用被右值引用限定修饰的Widget::doWork版本 //即Widget::doWork && 后面我还会提到引用限定符修饰成员函数,但是现在,只需要记住如果基类的虚函数有引用限定符,派生类的重写就必须具有相同的引用限定符。如果没有,那么新声明的函数还是属于派生类,但是不会重写父类的任何函数。 这么多的重写需求意味着哪怕一个小小的错误也会造成巨大的不同。代码中包含重写错误通常是有效的,但它的意图不是你想要的。因此你不能指望当你犯错时编译器能通知你。比如,下面的代码是完全合法的,咋一看,还很有道理,但是它没有任何虚函数重写——没有一个派生类函数联系到基类函数。你能识别每种情况的错误吗,换句话说,为什么派生类函数没有重写同名基类函数? class Base {\npublic: virtual void mf1() const; virtual void mf2(int x); virtual void mf3() &; void mf4() const;\n}; class Derived: public Base {\npublic: virtual void mf1(); virtual void mf2(unsigned int x); virtual void mf3() &&; void mf4() const;\n}; 需要一点帮助吗? mf1在Base基类声明为const但是Derived派生类没有这个常量限定符 mf2在Base基类声明为接受一个int参数但是在Derived派生类声明为接受unsigned int参数 mf3在Base基类声明为左值引用限定但是在Derived派生类声明为右值引用限定 mf4在Base基类没有声明为virtual虚函数 你可能会想“哎呀实际操作的时候这些warnings都能被编译器探测到所以我不需要担心。”你说的可能对也可能不对。就我目前检查的两款编译器来说这些代码编译时没有任何warnings即使我开启了输出所有warnings。其他编译器可能会为这些问题的部分输出warnings但不是全部。 由于正确声明派生类的重写函数很重要但很容易出错C++11提供一个方法让你可以显式地指定一个派生类函数是基类版本的重写将它声明为override。还是上面那个例子我们可以这样做 class Derived: public Base {\npublic: virtual void mf1() override; virtual void mf2(unsigned int x) override; virtual void mf3() && override; virtual void mf4() const override;\n}; 代码不能编译当然了因为这样写的时候编译器会抱怨所有与重写有关的问题。这也是你想要的以及为什么要在所有重写函数后面加上override。 使用override的代码编译时看起来就像这样假设我们的目的是Derived派生类中的所有函数重写Base基类的相应虚函数: class Base {\npublic: virtual void mf1() const; virtual void mf2(int x); virtual void mf3() &; virtual void mf4() const;\n}; class Derived: public Base {\npublic: virtual void mf1() const override; virtual void mf2(int x) override; virtual void mf3() & override; void mf4() const override; //可以添加virtual但不是必要\n}; 注意在这个例子中mf4有别于之前它在Base中的声明有virtual修饰所以能正常工作。大多数和重写有关的错误都是在派生类引发的但也可能是基类的不正确导致。 比起让编译器译注通过warnings告诉你想重写的而实际没有重写不如给你的派生类重写函数全都加上override。如果你考虑修改修改基类虚函数的函数签名override还可以帮你评估后果。如果派生类全都用上override你可以只改变基类函数签名重编译系统再看看你造成了多大的问题多少派生类不能通过编译然后决定是否值得如此麻烦更改函数签名。没有override你只能寄希望于完善的单元测试因为正如我们所见派生类虚函数本想重写基类但是没有编译器也没有探测并发出诊断信息。 C++既有很多关键字C++11引入了两个上下文关键字 contextual keywords override和final向虚函数添加final可以防止派生类重写。final也能用于类这时这个类不能用作基类。这两个关键字的特点是它们是保留的它们只是位于特定上下文才被视为关键字。对于override它只在成员函数声明结尾处才被视为关键字。这意味着如果你以前写的代码里面已经用过 override 这个名字那么换到C++11标准你也无需修改代码 class Warning { //C++98潜在的传统类代码\npublic: … void override(); //C++98和C++11都合法且含义相同 …\n}; 关于override想说的就这么多但对于成员函数引用限定 reference qualifiers )还有一些内容。我之前承诺我会在后面提供更多的关于它们的资料,现在就是\"后面\"了。 如果我们想写一个函数只接受左值实参我们声明一个non-const左值引用形参 void doSomething(Widget& w); //只接受左值Widget对象 如果我们想写一个函数只接受右值实参,我们声明一个右值引用形参: void doSomething(Widget&& w); //只接受右值Widget对象 成员函数的引用限定可以很容易的区分一个成员函数被哪个对象(即*this调用。它和在成员函数声明尾部添加一个const很相似暗示了调用这个成员函数的对象即*this是const的。 对成员函数添加引用限定不常见但是可以见。举个例子假设我们的Widget类有一个std::vector数据成员我们提供一个访问函数让客户端可以直接访问它 class Widget {\npublic: using DataType = std::vector<double>; //“using”的信息参见Item9 … DataType& data() { return values; } …\nprivate: DataType values;\n}; 这是最具封装性的设计,只给外界保留一线光。但先把这个放一边,思考一下下面的客户端代码: Widget w;\n…\nauto vals1 = w.data(); //拷贝w.values到vals1 Widget::data函数的返回值是一个左值引用准确的说是std::vector<double>&, 因为左值引用是左值所以vals1是从左值初始化的。因此vals1由w.values拷贝构造而得就像注释说的那样。 现在假设我们有一个创建Widgets的工厂函数 Widget makeWidget(); 我们想用makeWidget返回的Widget里的std::vector初始化一个变量 auto vals2 = makeWidget().data(); //拷贝Widget里面的值到vals2 再说一次Widgets::data返回的是左值引用还有左值引用是左值。所以我们的对象vals2得从Widget里的values拷贝构造。这一次Widget是makeWidget返回的临时对象即右值所以将其中的std::vector进行拷贝纯属浪费。最好是移动但是因为data返回左值引用C++的规则要求编译器不得不生成一个拷贝。这其中有一些优化空间被称作“as if rule”但是你依赖编译器使用这个优化规则就有点傻。译注“as if rule”简单来说就是在不影响程序的“外在表现”情况下做一些改变 我们需要的是指明当data被右值Widget对象调用的时候结果也应该是一个右值。现在就可以使用引用限定为左值Widget和右值Widget写一个data的重载函数来达成这一目的 class Widget {\npublic: using DataType = std::vector<double>; … DataType& data() & //对于左值Widgets, { return values; } //返回左值 DataType data() && //对于右值Widgets, { return std::move(values); } //返回右值 … private: DataType values;\n}; 注意data重载的返回类型是不同的左值引用重载版本返回一个左值引用即一个左值右值引用重载返回一个临时对象即一个右值。这意味着现在客户端的行为和我们的期望相符了 auto vals1 = w.data(); //调用左值重载版本的Widget::data //拷贝构造vals1\nauto vals2 = makeWidget().data(); //调用右值重载版本的Widget::data, //移动构造vals2 这真的很棒但别被这结尾的暖光照耀分心以致忘记了该条款的中心。这个条款的中心是只要你在派生类声明想要重写基类虚函数的函数就加上override。 请记住: 为重写函数加上override 成员函数引用限定让我们可以区别对待左值对象和右值对象(即*this)","breadcrumbs":"第三章 移步现代C++ » Item 12:使用override声明重载函数 » 条款十二使用override声明重写函数","id":"25","title":"条款十二使用override声明重写函数"},"26":{"body":"Item 13: Prefer const_iterators to iterators STL const_iterator等价于指向常量的指针pointer-to-const。它们都指向不能被修改的值。标准实践是能加上const就加上这也指示我们需要一个迭代器时只要没必要修改迭代器指向的值就应当使用const_iterator。 上面的说法对C++11和C++98都是正确的但是在C++98中标准库对const_iterator的支持不是很完整。首先不容易创建它们其次就算你有了它它的使用也是受限的。假如你想在std::vector<int>中查找第一次出现1983C++代替C with classes的那一年的位置然后插入1998第一个ISO C++标准被接纳的那一年)。如果 vector 中没有1983那么就在 vector 尾部插入。在C++98中使用iterator可以很容易做到 std::vector<int> values;\n…\nstd::vector<int>::iterator it = std::find(values.begin(), values.end(), 1983);\nvalues.insert(it, 1998); 但是这里iterator真的不是一个好的选择因为这段代码不修改iterator指向的内容。用const_iterator重写这段代码是很平常的但是在C++98中就不是了。下面是一种概念上可行但是不正确的方法 typedef std::vector<int>::iterator IterT; //typedef\ntypedef std::vector<int>::const_iterator ConstIterT; std::vector<int> values;\n…\nConstIterT ci = std::find(static_cast<ConstIterT>(values.begin()), //cast static_cast<ConstIterT>(values.end()), //cast 1983); values.insert(static_cast<IterT>(ci), 1998); //可能无法通过编译, //原因见下 typedef不是强制的但是可以让代码中的 cast 更好写。你可能想知道为什么我使用typedef而不是 Item9 提到的别名声明因为这段代码在演示C++98做法别名声明是C++11加入的特性 之所以std::find的调用会出现类型转换是因为在C++98中values是non-const容器没办法简简单单的从non-const容器中获取const_iterator。严格来说类型转换不是必须的因为用其他方法获取const_iterator也是可以的比如你可以把values绑定到reference-to-const变量上然后再用这个变量代替values但不管怎么说从non-const容器中获取const_iterator的做法都有点别扭。 当你费劲地获得了const_iterator事情可能会变得更糟因为C++98中插入操作以及删除操作的位置只能由iterator指定const_iterator是不被接受的。这也是我在上面的代码中将const_iterator我那么小心地从std::find搞出来的东西转换为iterator的原因因为向insert传入const_iterator不能通过编译。 老实说上面的代码也可能无法编译因为没有一个可移植的从const_iterator到iterator的方法即使使用static_cast也不行。甚至传说中的牛刀reinterpret_cast也杀不了这条鸡。它不是C++98的限制也不是C++11的限制只是const_iterator就是不能转换为iterator不管看起来对它们施以转换是有多么合理。不过有办法生成一个iterator使其指向和const_iterator指向相同但是看起来不明显也没有广泛应用在这本书也不值得讨论。除此之外我希望目前我陈述的观点是清晰的const_iterator在C++98中会有很多问题不如它的兄弟译注指iterator有用。最终开发者们不再相信能加const就加它的教条而是只在实用的地方加它C++98的const_iterator不是那么实用。 所有的这些都在C++11中改变了现在const_iterator既容易获取又容易使用。容器的成员函数cbegin和cend产出const_iterator甚至对于non-const容器也可用那些之前使用 iterator 指示位置如insert和erase的STL成员函数也可以使用const_iterator了。使用C++11 const_iterator重写C++98使用iterator的代码也稀松平常 std::vector<int> values; //和之前一样\n…\nauto it = //使用cbegin std::find(values.cbegin(), values.cend(), 1983);//和cend\nvalues.insert(it, 1998); 现在使用const_iterator的代码就很实用了 唯一一个C++11对于const_iterator支持不足译注C++14支持但是C++11的时候还没的情况是当你想写最大程度通用的库并且这些库代码为一些容器和类似容器的数据结构提供begin、end以及cbegincendrbeginrend等作为 非成员函数 而不是成员函数时。其中一种情况就是原生数组,还有一种情况是一些只由自由函数组成接口的第三方库。(译注:自由函数 free function ,指的是非成员函数,即一个函数,只要不是成员函数就可被称作 free function )最大程度通用的库会考虑使用非成员函数而不是假设成员函数版本存在。 举个例子我们可以泛化下面的findAndInsert template<typename C, typename V>\nvoid findAndInsert(C& container, //在容器中查找第一次 const V& targetVal, //出现targetVal的位置 const V& insertVal) //然后在那插入insertVal\n{ using std::cbegin; using std::cend; auto it = std::find(cbegin(container), //非成员函数cbegin cend(container), //非成员函数cend targetVal); container.insert(it, insertVal);\n} 它可以在C++14工作良好但是很遗憾C++11不在良好之列。由于标准化的疏漏C++11只添加了非成员函数begin和end但是没有添加cbegincendrbeginrendcrbegincrend。C++14修订了这个疏漏。 如果你使用C++11并且想写一个最大程度通用的代码而你使用的STL没有提供缺失的非成员函数cbegin和它的朋友们你可以简单的写下你自己的实现。比如下面就是非成员函数cbegin的实现 template <class C>\nauto cbegin(const C& container)->decltype(std::begin(container))\n{ return std::begin(container); //解释见下\n} 你可能很惊讶非成员函数cbegin没有调用成员函数cbegin吧我也是。但是请跟逻辑走。这个cbegin模板接受任何代表类似容器的数据结构的实参类型C并且通过reference-to-const形参container访问这个实参。如果C是一个普通的容器类型如std::vector<int>container将会引用一个const版本的容器如const std::vector<int>&。对const容器调用非成员函数begin由C++11提供将产出const_iterator这个迭代器也是模板要返回的。用这种方法实现的好处是就算容器只提供begin成员函数对于容器来说C++11的非成员函数begin调用这些成员函数不提供cbegin成员函数也没问题。那么现在你可以将这个非成员函数cbegin施于只直接支持begin的容器。 如果C是原生数组这个模板也能工作。这时container成为一个const数组的引用。C++11为数组提供特化版本的非成员函数begin它返回指向数组第一个元素的指针。一个const数组的元素也是const所以对于const数组非成员函数begin返回指向const的指针pointer-to-const。在数组的上下文中所谓指向const的指针pointer-to-const也就是const_iterator了。 回到最开始本条款的中心是鼓励你只要能就使用const_iterator。最原始的动机——只要它有意义就加上const——是C++98就有的思想。但是在C++98译注const_iterator只是一般有用到了C++11它就是极其有用了C++14在其基础上做了些修补工作。 请记住: 优先考虑const_iterator而非iterator 在最大程度通用的代码中优先考虑非成员函数版本的beginendrbegin等而非同名成员函数","breadcrumbs":"第三章 移步现代C++ » Item 13:优先考虑const_iterator而非iterator » 条款十三优先考虑const_iterator而非iterator","id":"26","title":"条款十三优先考虑const_iterator而非iterator"},"27":{"body":"Item 14: Declare functions noexcept if they wont emit exceptions 在C++98中异常说明 exception specifications 是喜怒无常的野兽。你不得不写出函数可能抛出的异常类型如果函数实现有所改变异常说明也可能需要修改。改变异常说明会影响客户端代码因为调用者可能依赖原版本的异常说明。编译器不会在函数实现异常说明和客户端代码之间提供一致性保障。大多数程序员最终都认为不值得为C++98的异常说明做得如此麻烦。 在C++11标准化过程中大家一致认为异常说明真正有用的信息是一个函数是否会抛出异常。非黑即白一个函数可能抛异常或者不会。这种\"可能-绝不\"的二元论构成了C++11异常说的基础从根本上改变了C++98的异常说明。C++98风格的异常说明也有效但是已经标记为deprecated废弃。在C++11中无条件的noexcept保证函数不会抛出任何异常。 关于一个函数是否已经声明为noexcept是接口设计的事。函数的异常抛出行为是客户端代码最关心的。调用者可以查看函数是否声明为noexcept这个可以影响到调用代码的异常安全性 exception safety 和效率。就其本身而言函数是否为noexcept和成员函数是否const一样重要。当你知道这个函数不会抛异常而没加上noexcept那这个接口说明就有点差劲了。 不过这里还有给不抛异常的函数加上noexcept的动机它允许编译器生成更好的目标代码。要想知道为什么了解C++98和C++11指明一个函数不抛异常的方式是很有用了。考虑一个函数f它保证调用者永远不会收到一个异常。两种表达方式如下 int f(int x) throw(); //C++98风格没有来自f的异常\nint f(int x) noexcept; //C++11风格没有来自f的异常 如果在运行时f出现一个异常那么就和f的异常说明冲突了。在C++98的异常说明中调用栈the call stack 会展开至f的调用者在一些与这地方不相关的动作后程序被终止。C++11异常说明的运行时行为有些不同调用栈只是 可能 在程序终止前展开。 展开调用栈和 可能 展开调用栈两者对于代码生成code generation有非常大的影响。在一个noexcept函数中当异常可能传播到函数外时优化器不需要保证运行时栈the runtime stack处于可展开状态也不需要保证当异常离开noexcept函数时noexcept函数中的对象按照构造的反序析构。而标注“throw()”异常声明的函数缺少这样的优化灵活性,没加异常声明的函数也一样。可以总结一下: RetType function(params) noexcept; //极尽所能优化\nRetType function(params) throw(); //较少优化\nRetType function(params); //较少优化 这是一个充分的理由使得你当知道它不抛异常时加上noexcept。 还有一些函数更符合这个情况。移动操作是绝佳的例子。假如你有一份C++98代码里面用到了std::vector<Widget>。Widget通过push_back一次又一次的添加进std::vector std::vector<Widget> vw;\n…\nWidget w;\n… //用w做点事\nvw.push_back(w); //把w添加进vw\n… 假设这个代码能正常工作你也无意修改为C++11风格。但是你确实想要C++11移动语义带来的性能优势毕竟这里的类型是可以移动的move-enabled types。因此你需要确保Widget有移动操作可以手写代码也可以让编译器自动生成当然前提是能满足自动生成的条件参见 Item17 )。 当新元素添加到std::vectorstd::vector可能没地方放它换句话说std::vector的大小size等于它的容量capacity。这时候std::vector会分配一个新的更大块的内存用于存放其中元素然后将元素从老内存区移动到新内存区然后析构老内存区里的对象。在C++98中移动是通过复制老内存区的每一个元素到新内存区完成的然后老内存区的每个元素发生析构。这种方法使得push_back可以提供很强的异常安全保证如果在复制元素期间抛出异常std::vector状态保持不变因为老内存元素析构必须建立在它们已经成功复制到新内存的前提下。 在C++11中一个很自然的优化就是将上述复制操作替换为移动操作。但是很不幸运这会破坏push_back的异常安全保证。如果 n 个元素已经从老内存移动到了新内存区,但异常在移动第 n+1 个元素时抛出那么push_back操作就不能完成。但是原始的std::vector已经被修改有 n 个元素已经移动走了。恢复std::vector至原始状态也不太可能因为从新内存移动到老内存本身又可能引发异常。 这是个很严重的问题因为老代码可能依赖于push_back提供的强烈的异常安全保证。因此C++11版本的实现不能简单的将push_back里面的复制操作替换为移动操作除非知晓移动操作绝不抛异常这时复制替换为移动就是安全的唯一的副作用就是性能得到提升。 std::vector::push_back受益于“如果可以就移动如果必要则复制”策略并且它不是标准库中唯一采取该策略的函数。C++98中还有一些函数如std::vector::reversestd::deque::insert等也受益于这种强异常保证。对于这个函数只有在知晓移动不抛异常的情况下用C++11的移动操作替换C++98的复制操作才是安全的。但是如何知道一个函数中的移动操作是否产生异常答案很明显它检查这个操作是否被声明为noexcept。这个检查非常弯弯绕。像是std::vector::push_back之类的函数调用std::move_if_noexcept这是个std::move的变体根据其中类型的移动构造函数是否为noexcept的视情况转换为右值或保持左值参见 Item23 。反过来std::move_if_noexcept查阅std::is_nothrow_move_constructible这个 type trait 基于移动构造函数是否有noexcept或者throw())的设计,编译器设置这个 type trait 的值。) swap函数是noexcept的另一个绝佳用地。swap是STL算法实现的一个关键组件它也常用于拷贝运算符重载中。它的广泛使用意味着对其施加不抛异常的优化是非常有价值的。有趣的是标准库的swap是否noexcept有时依赖于用户定义的swap是否noexcept。比如数组和std::pair的swap声明如下 template <class T, size_t N>\nvoid swap(T (&a)[N], T (&b)[N]) noexcept(noexcept(swap(*a, *b))); //见下文 template <class T1, class T2>\nstruct pair { … void swap(pair& p) noexcept(noexcept(swap(first, p.first)) && noexcept(swap(second, p.second))); …\n}; 这些函数 视情况 noexcept它们是否noexcept依赖于noexcept声明中的表达式是否noexcept。假设有两个Widget数组交换数组操作为noexcept的前提是数组中的元素交换是noexcept的即Widget的swap是noexcept。因此Widget的swap的作者决定了交换widget的数组是否noexcept。对于Widget的交换是否noexcept决定了对于Widget数组的交换是否noexcept以及其他交换比如Widget的数组的数组的交换是否noexcept。类似地交换两个含有Widget的std::pair是否noexcept依赖于Widget的swap是否noexcept。事实上交换高层次数据结构是否noexcept取决于它的构成部分的那些低层次数据结构是否noexcept这激励你只要可以就提供noexcept swap函数译注因为如果你的函数不提供noexcept保证其它依赖你的高层次swap就不能保证noexcept。 现在我希望你能为noexcept提供的优化机会感到高兴同时我还得让你缓一缓别太高兴了。优化很重要但是正确性更重要。我在这个条款的开头提到noexcept是函数接口的一部分所以仅当你保证一个函数实现在长时间内不会抛出异常时才声明noexcept。如果你声明一个函数为noexcept但随即又后悔了你没有选择。你可以从函数声明中移除noexcept即改变它的接口这理所当然会影响客户端代码。你可以改变实现使得这个异常可以避免再保留原版本现在来看不正确的异常说明。如果你这么做在异常试图离开这个函数时程序将会终止。或者你就顺从了既有实现舍弃了激起你兴趣的东西从一开始就改变实现。这些选择都不尽人意。 这个问题的本质是实际上大多数函数都是异常中立( exception-neutral 的。这些函数自己不抛异常但是它们内部的调用可能抛出。此时异常中立函数允许那些抛出异常的函数在调用链上更进一步直到遇到异常处理程序而不是就地终止。异常中立函数决不应该声明为noexcept因为它们可能抛出那种“让它们过吧”的异常译注也就是说在当前这个函数内不处理异常但是又不立即终止程序而是让调用这个函数的函数处理异常。因此大多数函数缺少noexcept设计。 然而一些函数很自然的不应该抛异常更进一步——尤其是移动操作和swap——使其noexcept有重大意义只要可能就应该将它们实现为noexcept。STL对容器的移动操作的接口规范里缺少noexcept。然而实现者可以增强STL函数的异常说明实际上至少有些容器的移动操作已被声明为noexcept这些做法就是本条例所给建议的好示例。发现了容器移动操作可以写成不抛异常的之后实现者经常将这些操作声明为noexcept的尽管标准并没有要求他们这么做。老实说当你确保函数决不抛异常的时候一定要将它们声明为noexcept。 请注意我说有些函数有 自然的 noexcept实现法。为了noexcept而扭曲函数实现来达成目的是本末倒置。是把马车放到马前是一叶障目不见泰山。是...选择你喜欢的比喻吧。译注几个英语熟语都是想说明“本末倒置”。如果一个简单的函数实现可能引发异常比如调用一个可能抛异常的函数而你为了讨好调用者隐藏了这个比如捕获所有异常然后替换为状态码或者特殊返回值这不仅会使你的函数实现变得复杂还会让调用点的代码变得复杂。调用者可能不得不检查状态码或特殊返回值。而这些复杂的运行时开销比如额外的分支大的函数给指令缓存带来的压力等可能超出noexcept带来的性能提升再加上你会悲哀的发现这些代码又难读又难维护。那是糟糕的软件工程化。 对于一些函数使其成为noexcept是很重要的它们应当默认如是。在C++98允许内存释放memory deallocation函数即operator delete和operator delete[]和析构函数抛出异常是糟糕的代码设计C++11将这种作风升级为语言规则。默认情况下内存释放函数和析构函数——不管是用户定义的还是编译器生成的——都是隐式noexcept。因此它们不需要声明noexcept。这么做也不会有问题只是不合常规。析构函数非隐式noexcept的情况仅当类的数据成员包括继承的成员还有继承成员内的数据成员明确声明它的析构函数可能抛出异常如声明“noexcept(false)”)。这种析构函数不常见,标准库里面没有。如果一个对象的析构函数可能被标准库使用(比如在容器内或者被传给一个算法),析构函数又可能抛异常,那么程序的行为是未定义的。 值得注意的是一些库接口设计者会区分有宽泛契约( wild contracts )和严格契约( narrow contracts 的函数。有宽泛契约的函数没有前置条件。这种函数不管程序状态如何都能调用它对调用者传来的实参不设约束。“不管程序状态如何”和“不设约束”对已经行为未定义的程序无效。比如std::vector::size有宽泛契约但是并不保证如果你把一块随机内存转换为一个std::vector在这块内存上调用它会有合理的表现。转换的结果是未定义的所以包含这个转换的程序也无法保证表现合理宽泛契约的函数决不表现出未定义行为。 反之,没有宽泛契约的函数就有严格契约。对于这些函数,如果违反前置条件,结果将会是未定义的。 如果你写了一个有宽泛契约的函数并且你知道它不会抛异常那么遵循这个条款给它声明一个noexcept是很容易的。对于严格契约的函数情况就有点微妙了。举个例子假如你在写一个形参为std::string的函数f并且假定这个函数f很自然的决不引发异常。这就表明f应该被声明为noexcept。 现在假如f有一个前置条件类型为std::string的参数的长度不能超过32个字符。如果现在调用f并传给它一个大于32字符的std::string函数行为将是未定义的因为 根据定义 违反了前置条件导致了未定义行为。f没有义务去检查前置条件它假设这些前置条件都是满足的。调用者有责任确保参数字符不超过32字符等这些假设有效。即使有前置条件将f声明为noexcept似乎也是合适的 void f(const std::string& s) noexcept; //前置条件: //s.length() <= 32 假定f的实现者在函数里面检查前置条件冲突。虽然检查是没有必要的但是也没禁止这么做检查前置条件可能也是有用的比如在系统测试时。debug一个抛出的异常一般都比跟踪未定义行为起因更容易。那么怎么报告前置条件冲突使得测试工具或客户端错误处理程序能检测到它呢简单直接的做法是抛出“precondition was violated”异常但是如果f声明了noexcept这就行不通了抛出一个异常会导致程序终止。因为这个原因区分严格/宽泛契约库设计者一般会将noexcept留给宽泛契约函数。 作为结束语,让我详细说明一下之前的观察,即编译器不会为函数实现和异常规范提供一致性保障。考虑下面的代码,它是完全正确的: void setup(); //函数定义另在一处\nvoid cleanup(); void doWork() noexcept\n{ setup(); //设置要做的工作 … //真实工作 cleanup(); //执行清理动作\n} 这里doWork声明为noexcept即使它调用了non-noexcept函数setup和cleanup。看起来有点矛盾其实可以猜想setup和cleanup在文档上写明了它们决不抛出异常即使它们没有写上noexcept。至于为什么明明不抛异常却不写noexcept也是有合理原因的。比如它们可能是用C写的库函数的一部分。即使一些函数从C标准库移动到了std命名空间也可能缺少异常规范std::strlen就是一个例子它没有声明noexcept。或者它们可能是C++98库的一部分它们不使用C++98异常规范到了C++11还没有修订。 因为有很多合理原因解释为什么noexcept依赖于缺少noexcept保证的函数所以C++允许这些代码编译器一般也不会给出warnings。 请记住: noexcept是函数接口的一部分这意味着调用者可能会依赖它 noexcept函数较之于non-noexcept函数更容易优化 noexcept对于移动语义swap内存释放函数和析构函数非常有用 大多数函数是异常中立的译注可能抛也可能不抛异常而不是noexcept","breadcrumbs":"第三章 移步现代C++ » Item 14:如果函数不抛出异常请使用noexcept » 条款十四如果函数不抛出异常请使用noexcept","id":"27","title":"条款十四如果函数不抛出异常请使用noexcept"},"28":{"body":"Item 15: Use constexpr whenever possible 如果要给C++11颁一个“最令人困惑新词”奖constexpr十有八九会折桂。当用于对象上面它本质上就是const的加强形式但是当它用于函数上意思就大不相同了。有必要消除困惑因为你绝对会用它的特别是当你发现constexpr “正合吾意”的时候。 从概念上来说constexpr表明一个值不仅仅是常量还是编译期可知的。这个表述并不全面因为当constexpr被用于函数的时候事情就有一些细微差别了。为了避免我毁了结局带来的surprise我现在只想说你不能假设constexpr函数的结果是const也不能保证它们的译注返回值是在编译期可知的。最有意思的是这些是 特性 。关于constexpr函数返回的结果不需要是const也不需要编译期可知这一点是 良好的 行为! 不过我们还是先从constexpr对象开始说起。这些对象实际上和const一样它们是编译期可知的。技术上来讲它们的值在翻译期translation决议所谓翻译不仅仅包含是编译compilation也包含链接linking除非你准备写C++的编译器和链接器否则这些对你不会造成影响所以你编程时无需担心把这些constexpr对象值看做编译期决议也无妨的。 编译期可知的值“享有特权”,它们可能被存放到只读存储空间中。对于那些嵌入式系统的开发者,这个特性是相当重要的。更广泛的应用是“其值编译期可知”的常量整数会出现在需要“整型常量表达式( integral constant expression 的上下文中这类上下文包括数组大小整数模板参数包括std::array对象的长度枚举名的值对齐修饰符译注 alignas(val) 等等。如果你想在这些上下文中使用变量你一定会希望将它们声明为constexpr因为编译器会确保它们是编译期可知的 int sz; //non-constexpr变量\n…\nconstexpr auto arraySize1 = sz; //错误sz的值在 //编译期不可知\nstd::array<int, sz> data1; //错误!一样的问题\nconstexpr auto arraySize2 = 10; //没问题10是 //编译期可知常量\nstd::array<int, arraySize2> data2; //没问题, arraySize2是constexpr 注意const不提供constexpr所能保证之事因为const对象不需要在编译期初始化它的值。 int sz; //和之前一样\n…\nconst auto arraySize = sz; //没问题arraySize是sz的const复制\nstd::array<int, arraySize> data; //错误arraySize值在编译期不可知 简而言之所有constexpr对象都是const但不是所有const对象都是constexpr。如果你想编译器保证一个变量有一个值这个值可以放到那些需要编译期常量compile-time constants的上下文的地方你需要的工具是constexpr而不是const。 涉及到constexpr函数时constexpr对象的使用情况就更有趣了。如果实参是编译期常量这些函数将产出编译期常量如果实参是运行时才能知道的值它们就将产出运行时值。这听起来就像你不知道它们要做什么一样那么想是错误的请这么看 constexpr函数可以用于需求编译期常量的上下文。如果你传给constexpr函数的实参在编译期可知那么结果将在编译期计算。如果实参的值在编译期不知道你的代码就会被拒绝。 当一个constexpr函数被一个或者多个编译期不可知值调用时它就像普通函数一样运行时计算它的结果。这意味着你不需要两个函数一个用于编译期计算一个用于运行时计算。constexpr全做了。 假设我们需要一个数据结构来存储一个实验的结果,而这个实验可能以各种方式进行。实验期间风扇转速,温度等等都可能导致亮度值改变,亮度值可以是高,低,或者无。如果有 n 个实验相关的环境条件它们每一个都有三个状态最终可以得到的组合有3n个。储存所有实验结果的所有组合需要足够存放3n个值的数据结构。假设每个结果都是int并且 n 是编译期已知的或者可以被计算出的一个std::array是一个合理的选择。我们需要一个方法在编译期计算3n。C++标准库提供了std::pow它的数学功能正是我们所需要的但是对我们来说这里还有两个问题。第一std::pow是为浮点类型设计的我们需要整型结果。第二std::pow不是constexpr不保证使用编译期可知值调用而得到编译期可知的结果所以我们不能用它作为std::array的大小。 幸运的是我们可以应需写个pow。我将展示怎么快速完成它不过现在让我们先看看它应该怎么被声明和使用 constexpr //pow是绝不抛异常的\nint pow(int base, int exp) noexcept //constexpr函数\n{ … //实现在下面\n}\nconstexpr auto numConds = 5; //(上面例子中)条件的个数\nstd::array<int, pow(3, numConds)> results; //结果有3^numConds个元素 回忆下pow前面的constexpr不表明pow返回一个const值它只说了如果base和exp是编译期常量pow的值可以被当成编译期常量使用。如果base和/或exp不是编译期常量pow结果将会在运行时计算。这意味着pow不止可以用于像std::array的大小这种需要编译期常量的地方它也可以用于运行时环境 auto base = readFromDB(\"base\"); //运行时获取这些值\nauto exp = readFromDB(\"exponent\"); auto baseToExp = pow(base, exp); //运行时调用pow函数 因为constexpr函数必须能在编译期值调用的时候返回编译期结果就必须对它的实现施加一些限制。这些限制在C++11和C++14标准间有所出入。 C++11中constexpr函数的代码不超过一行语句一个return。听起来很受限但实际上有两个技巧可以扩展constexpr函数的表达能力。第一使用三元运算符“?:”来代替if-else语句第二使用递归代替循环。因此pow可以像这样实现 constexpr int pow(int base, int exp) noexcept\n{ return (exp == 0 ? 1 : base * pow(base, exp - 1));\n} 这样没问题但是很难想象除了使用函数式语言的程序员外会觉得这样硬核的编程方式更好。在C++14中constexpr函数的限制变得非常宽松了所以下面的函数实现成为了可能 constexpr int pow(int base, int exp) noexcept //C++14\n{ auto result = 1; for (int i = 0; i < exp; ++i) result *= base; return result;\n} constexpr函数限制为只能获取和返回 字面值类型 这基本上意味着那些有了值的类型能在编译期决定。在C++11中除了void外的所有内置类型以及一些用户定义类型都可以是字面值类型因为构造函数和其他成员函数可能是constexpr class Point {\npublic: constexpr Point(double xVal = 0, double yVal = 0) noexcept : x(xVal), y(yVal) {} constexpr double xValue() const noexcept { return x; } constexpr double yValue() const noexcept { return y; } void setX(double newX) noexcept { x = newX; } void setY(double newY) noexcept { y = newY; } private: double x, y;\n}; Point的构造函数可被声明为constexpr因为如果传入的参数在编译期可知Point的数据成员也能在编译器可知。因此这样初始化的Point就能为constexpr constexpr Point p1(9.4, 27.7); //没问题constexpr构造函数 //会在编译期“运行”\nconstexpr Point p2(28.8, 5.3); //也没问题 类似的xValue和yValue的 getter 取值器函数也能是constexpr因为如果对一个编译期已知的Point对象如一个constexpr Point对象调用 getter 数据成员x和y的值也能在编译期知道。这使得我们可以写一个constexpr函数里面调用Point的 getter 并初始化constexpr的对象 constexpr\nPoint midpoint(const Point& p1, const Point& p2) noexcept\n{ return { (p1.xValue() + p2.xValue()) / 2, //调用constexpr (p1.yValue() + p2.yValue()) / 2 }; //成员函数\n}\nconstexpr auto mid = midpoint(p1, p2); //使用constexpr函数的结果 //初始化constexpr对象 这太令人激动了。它意味着mid对象通过调用构造函数 getter 和非成员函数来进行初始化过程就能在只读内存中被创建出来它也意味着你可以在模板实参或者需要枚举名的值的表达式里面使用像mid.xValue() * 10的表达式因为Point::xValue返回doublemid.xValue() * 10也是个double。浮点数类型不可被用于实例化模板或者说明枚举名的值但是它们可以被用来作为产生整数值的大表达式的一部分。比如static_cast<int>(mid.xValue() * 10)可以被用来实例化模板或者说明枚举名的值。)它也意味着以前相对严格的编译期完成的工作和运行时完成的工作的界限变得模糊,一些传统上在运行时的计算过程能并入编译时。越多这样的代码并入,你的程序就越快。(然而,编译会花费更长时间) 在C++11中有两个限制使得Point的成员函数setX和setY不能声明为constexpr。第一它们修改它们操作的对象的状态 并且在C++11中constexpr成员函数是隐式的const。第二它们有void返回类型void类型不是C++11中的字面值类型。这两个限制在C++14中放开了所以C++14中Point的 setter 赋值器也能声明为constexpr class Point {\npublic: … constexpr void setX(double newX) noexcept { x = newX; } //C++14 constexpr void setY(double newY) noexcept { y = newY; } //C++14 …\n}; 现在也能写这样的函数: //返回p相对于原点的镜像\nconstexpr Point reflection(const Point& p) noexcept\n{ Point result; //创建non-const Point result.setX(-p.xValue()); //设定它的x和y值 result.setY(-p.yValue()); return result; //返回它的副本\n} 客户端代码可以这样写: constexpr Point p1(9.4, 27.7); //和之前一样\nconstexpr Point p2(28.8, 5.3);\nconstexpr auto mid = midpoint(p1, p2); constexpr auto reflectedMid = //reflectedMid的值 reflection(mid); //(-19.1, -16.5)在编译期可知 本条款的建议是尽可能的使用constexpr现在我希望大家已经明白缘由constexpr对象和constexpr函数可以使用的范围比non-constexpr对象和函数大得多。使用constexpr关键字可以最大化你的对象和函数可以使用的场景。 还有个重要的需要注意的是constexpr是对象和函数接口的一部分。加上constexpr相当于宣称“我能被用在C++要求常量表达式的地方”。如果你声明一个对象或者函数是constexpr客户端程序员就可能会在那些场景中使用它。如果你后面认为使用constexpr是一个错误并想移除它你可能造成大量客户端代码不能编译。为了debug或者性能优化而添加I/O到一个函数中这样简单的动作可能就导致这样的问题因为I/O语句一般不被允许出现在constexpr函数里“尽可能”的使用constexpr表示你需要长期坚持对某个对象或者函数施加这种限制。 请记住: constexpr对象是const它被在编译期可知的值初始化 当传递编译期可知的值时constexpr函数可以产出编译期可知的结果 constexpr对象和函数可以使用的范围比non-constexpr对象和函数要大 constexpr是对象和函数接口的一部分","breadcrumbs":"第三章 移步现代C++ » Item 15:尽可能的使用constexpr » 条款十五尽可能的使用constexpr","id":"28","title":"条款十五尽可能的使用constexpr"},"29":{"body":"Item 16: Make const member functions thread safe 如果我们在数学领域中工作我们就会发现用一个类表示多项式是很方便的。在这个类中使用一个函数来计算多项式的根是很有用的也就是多项式的值为零的时候。这样的一个函数它不会更改多项式。所以它自然被声明为const函数。 class Polynomial {\npublic: using RootsType = //数据结构保存多项式为零的值 std::vector<double>; //“using” 的信息查看条款9 … RootsType roots() const; …\n}; 计算多项式的根是很复杂的因此如果不需要的话我们就不做。如果必须做我们肯定不想再做第二次。所以如果必须计算它们就缓存多项式的根然后实现roots来返回缓存的值。下面是最基本的实现 class Polynomial {\npublic: using RootsType = std::vector<double>; RootsType roots() const { if (!rootsAreValid) { //如果缓存不可用 … //计算根 //用rootVals存储它们 rootsAreValid = true; } return rootVals; } private: mutable bool rootsAreValid{ false }; //初始化器initializer的 mutable RootsType rootVals{}; //更多信息请查看条款7\n}; 从概念上讲roots并不改变它所操作的Polynomial对象。但是作为缓存的一部分它也许会改变rootVals和rootsAreValid的值。这就是mutable的经典使用样例这也是为什么它是数据成员声明的一部分。 假设现在有两个线程同时调用Polynomial对象的roots方法: Polynomial p;\n… /*------ Thread 1 ------*/ /*-------- Thread 2 --------*/\nauto rootsOfp = p.roots(); auto valsGivingZero = p.roots(); 这些用户代码是非常合理的。roots是const成员函数那就表示着它是一个读操作。在没有同步的情况下让多个线程执行读操作是安全的。它最起码应该做到这点。在本例中却没有做到线程安全。因为在roots中这些线程中的一个或两个可能尝试修改成员变量rootsAreValid和rootVals。这就意味着在没有同步的情况下这些代码会有不同的线程读写相同的内存这就是数据竞争 data race )的定义。这段代码的行为是未定义的。 问题就是roots被声明为const但不是线程安全的。const声明在C++11中与在C++98中一样正确检索多项式的根并不会更改多项式的值因此需要纠正的是线程安全的缺乏。 解决这个问题最普遍简单的方法就是——使用mutex互斥量 class Polynomial {\npublic: using RootsType = std::vector<double>; RootsType roots() const { std::lock_guard<std::mutex> g(m); //锁定互斥量 if (!rootsAreValid) { //如果缓存无效 … //计算/存储根值 rootsAreValid = true; } return rootsVals; } //解锁互斥量 private: mutable std::mutex m; mutable bool rootsAreValid { false }; mutable RootsType rootsVals {};\n}; std::mutex m被声明为mutable因为锁定和解锁它的都是non-const成员函数。在rootsconst成员函数m却被视为const对象。 值得注意的是因为std::mutex是一种只可移动类型 move-only type 一种可以移动但不能复制的类型所以将m添加进Polynomial中的副作用是使Polynomial失去了被复制的能力。不过它仍然可以移动。 在某些情况下互斥量的副作用显会得过大。例如如果你所做的只是计算成员函数被调用了多少次使用std::atomic 修饰的计数器(保证其他线程视它的操作为不可分割的整体,参见 item40 通常会是一个开销更小的方法。然而它是否轻量取决于你使用的硬件和标准库中互斥量的实现。以下是如何使用std::atomic来统计调用次数。 class Point { //2D点\npublic: … double distanceFromOrigin() const noexcept //noexcept的使用 { //参考条款14 ++callCount; //atomic的递增 return std::sqrt((x * x) + (y * y)); } private: mutable std::atomic<unsigned> callCount{ 0 }; double x, y;\n}; 与std::mutex一样std::atomic是只可移动类型所以在Point中存在callCount就意味着Point也是只可移动的。 因为对std::atomic变量的操作通常比互斥量的获取和释放的消耗更小所以你可能会过度倾向与依赖std::atomic。例如在一个类中缓存一个开销昂贵的int你就会尝试使用一对std::atomic变量而不是互斥量。 class Widget {\npublic: … int magicValue() const { if (cacheValid) return cachedValue; else { auto val1 = expensiveComputation1(); auto val2 = expensiveComputation2(); cachedValue = val1 + val2; //第一步 cacheValid = true; //第二步 return cachedValid; } } private: mutable std::atomic<bool> cacheValid{ false }; mutable std::atomic<int> cachedValue;\n}; 这是可行的,但难以避免有时出现重复计算的情况。考虑: 一个线程调用Widget::magicValue将cacheValid视为false执行这两个昂贵的计算并将它们的和分配给cachedValue。 此时第二个线程调用Widget::magicValue也将cacheValid视为false因此执行刚才完成的第一个线程相同的计算。这里的“第二个线程”实际上可能是其他 几个 线程。) 这种行为与使用缓存的目的背道而驰。将cachedValue和CacheValid的赋值顺序交换可以解决这个问题但结果会更糟 class Widget {\npublic: … int magicValue() const { if (cacheValid) return cachedValue; else { auto val1 = expensiveComputation1(); auto val2 = expensiveComputation2(); cacheValid = true; //第一步 return cachedValue = val1 + val2; //第二步 } } …\n} 假设cacheValid是false那么 一个线程调用Widget::magicValue刚执行完将cacheValid设置true的语句。 在这时第二个线程调用Widget::magicValue检查cacheValid。看到它是true就返回cacheValue即使第一个线程还没有给它赋值。因此返回的值是不正确的。 这里有一个坑。对于需要同步的是单个的变量或者内存位置使用std::atomic就足够了。不过一旦你需要对两个以上的变量或内存位置作为一个单元来操作的话就应该使用互斥量。对于Widget::magicValue是这样的。 class Widget {\npublic: … int magicValue() const { std::lock_guard<std::mutex> guard(m); //锁定m if (cacheValid) return cachedValue; else { auto val1 = expensiveComputation1(); auto val2 = expensiveComputation2(); cachedValue = val1 + val2; cacheValid = true; return cachedValue; } } //解锁m … private: mutable std::mutex m; mutable int cachedValue; //不再用atomic mutable bool cacheValid{ false }; //不再用atomic\n}; 现在这个条款是基于多个线程可以同时在一个对象上执行一个const成员函数这个假设的。如果你不是在这种情况下编写一个const成员函数——你可以 保证 在一个对象上永远不会有多个线程执行该成员函数——该函数的线程安全是无关紧要的。比如为独占单线程使用而设计的类的成员函数是否线程安全并不重要。在这种情况下你可以避免因使用互斥量和std::atomics所消耗的资源以及包含它们的类只能使用移动语义带来的副作用。然而这种线程无关的情况越来越少见而且很可能会越来越少。可以肯定的是const成员函数应支持并发执行这就是为什么你应该确保const成员函数是线程安全的。 请记住: 确保const成员函数线程安全除非你 确定 它们永远不会在并发上下文( concurrent context )中使用。 使用std::atomic变量可能比互斥量提供更好的性能但是它只适合操作单个变量或内存位置。","breadcrumbs":"第三章 移步现代C++ » Item 16:让const成员函数线程安全 » 条款十六让const成员函数线程安全","id":"29","title":"条款十六让const成员函数线程安全"},"3":{"body":"CHAPTER 1 Deducing Types C++98有一套类型推导的规则用于函数模板的规则。C++11修改了其中的一些规则并增加了两套规则一套用于auto一套用于decltype。C++14扩展了auto和decltype可能使用的范围。类型推导的广泛应用让你从拼写那些或明显或冗杂的类型名的暴行中脱离出来。它让C++程序更具适应性,因为在源代码某处修改类型会通过类型推导自动传播到其它地方。但是类型推导也会让代码更复杂,因为由编译器进行的类型推导并不总是如我们期望的那样进行。 如果对于类型推导操作没有一个扎实的理解要想写出有现代感的C++程序是不可能的。类型推导随处可见在函数模板调用中在大多数auto出现的地方在decltype表达式出现的地方以及C++14中令人费解的应用decltype(auto)的地方。 这一章是每个C++程序员都应该掌握的知识。它解释了模板类型推导是如何工作的auto是如何依赖类型推导的以及decltype是如何按照它自己那套独特的规则工作的。它甚至解释了你该如何强制编译器使类型推导的结果可视这能让你确认编译器的类型推导是否按照你期望的那样进行。","breadcrumbs":"第一章 类型推导 » Item 1:理解模板类型推导 » 第1章 类型推导","id":"3","title":"第1章 类型推导"},"30":{"body":"Item 17: Understand special member function generation 在C++术语中, 特殊成员函数 是指C++自己生成的函数。C++98有四个默认构造函数析构函数拷贝构造函数拷贝赋值运算符。当然在这里有些细则要注意。这些函数仅在需要的时候才生成比如某个代码使用它们但是它们没有在类中明确声明。默认构造函数仅在类完全没有构造函数的时候才生成。防止编译器为某个类生成构造函数但是你希望那个构造函数有参数生成的特殊成员函数是隐式public且inline它们是非虚的除非相关函数是在派生类中的析构函数派生类继承了有虚析构函数的基类。在这种情况下编译器为派生类生成的析构函数是虚的。 但是你早就知道这些了。好吧好吧都说古老的历史美索不达米亚商朝FORTRANC++98。但是时代改变了C++生成特殊成员的规则也改变了。要留意这些新规则知道什么时候编译器会悄悄地向你的类中添加成员函数因为没有什么比这件事对C++高效编程更重要。 C++11特殊成员函数俱乐部迎来了两位新会员移动构造函数和移动赋值运算符。它们的签名是 class Widget {\npublic: … Widget(Widget&& rhs); //移动构造函数 Widget& operator=(Widget&& rhs); //移动赋值运算符 …\n}; 掌控它们生成和行为的规则类似于拷贝系列。移动操作仅在需要的时候生成如果生成了就会对类的non-static数据成员执行逐成员的移动。那意味着移动构造函数根据rhs参数里面对应的成员移动构造出新non-static部分移动赋值运算符根据参数里面对应的non-static成员移动赋值。移动构造函数也移动构造基类部分如果有的话移动赋值运算符也是移动赋值基类部分。 现在,当我对一个数据成员或者基类使用移动构造或者移动赋值时,没有任何保证移动一定会真的发生。逐成员移动,实际上,更像是逐成员移动 请求 ,因为对 不可移动类型 即对移动操作没有特殊支持的类型比如大部分C++98传统类使用“移动”操作实际上执行的是拷贝操作。逐成员移动的核心是对对象使用std::move然后函数决议时会选择执行移动还是拷贝操作。 Item23 包括了这个操作的细节。本条款中,简单记住如果支持移动就会逐成员移动类成员和基类成员,如果不支持移动就执行拷贝操作就好了。 像拷贝操作情况一样,如果你自己声明了移动操作,编译器就不会生成。然而它们生成的精确条件与拷贝操作的条件有点不同。 两个拷贝操作是独立的声明一个不会限制编译器生成另一个。所以如果你声明一个拷贝构造函数但是没有声明拷贝赋值运算符如果写的代码用到了拷贝赋值编译器会帮助你生成拷贝赋值运算符。同样的如果你声明拷贝赋值运算符但是没有拷贝构造函数代码用到拷贝构造函数时编译器就会生成它。上述规则在C++98和C++11中都成立。 两个移动操作不是相互独立的。如果你声明了其中一个,编译器就不再生成另一个。如果你给类声明了,比如,一个移动构造函数,就表明对于移动操作应怎样实现,与编译器应生成的默认逐成员移动有些区别。如果逐成员移动构造有些问题,那么逐成员移动赋值同样也可能有问题。所以声明移动构造函数阻止移动赋值运算符的生成,声明移动赋值运算符同样阻止编译器生成移动构造函数。 再进一步,如果一个类显式声明了拷贝操作,编译器就不会生成移动操作。这种限制的解释是如果声明拷贝操作(构造或者赋值)就暗示着平常拷贝对象的方法(逐成员拷贝)不适用于该类,编译器会明白如果逐成员拷贝对拷贝操作来说不合适,逐成员移动也可能对移动操作来说不合适。 这是另一个方向。声明移动操作(构造或赋值)使得编译器禁用拷贝操作。(编译器通过给拷贝操作加上 delete 来保证,参见 Item11 。译注禁用的是自动生成的拷贝操作对于用户声明的拷贝操作不受影响毕竟如果逐成员移动对该类来说不合适也没有理由指望逐成员拷贝操作是合适的。听起来会破坏C++98的某些代码因为C++11中拷贝操作可用的条件比C++98更受限但事实并非如此。C++98的代码没有移动操作因为C++98中没有移动对象这种概念。只有一种方法能让老代码使用用户声明的移动操作那就是使用C++11标准然后添加这些操作使用了移动语义的类必须接受C++11特殊成员函数生成规则的限制。 也许你早已听过_Rule of Three_规则。这个规则告诉我们如果你声明了拷贝构造函数拷贝赋值运算符或者析构函数三者之一你应该也声明其余两个。它来源于长期的观察即用户接管拷贝操作的需求几乎都是因为该类会做其他资源的管理这也几乎意味着1无论哪种资源管理如果在一个拷贝操作内完成也应该在另一个拷贝操作内完成2类的析构函数也需要参与资源的管理通常是释放。通常要管理的资源是内存这也是为什么标准库里面那些管理内存的类如会动态内存管理的STL容器都声明了“ the big three ”:拷贝构造,拷贝赋值和析构。 Rule of Three 带来的后果就是只要出现用户定义的析构函数就意味着简单的逐成员拷贝操作不适用于该类。那意味着如果一个类声明了析构拷贝操作可能不应该自动生成因为它们做的事情可能是错误的。在C++98提出的时候上述推理没有得倒足够的重视所以C++98用户声明析构函数不会左右编译器生成拷贝操作的意愿。C++11中情况仍然如此但仅仅是因为限制拷贝操作生成的条件会破坏老代码。 Rule of Three 规则背后的解释依然有效再加上对声明拷贝操作阻止移动操作隐式生成的观察使得C++11不会为那些有用户定义的析构函数的类生成移动操作。 所以仅当下面条件成立时才会生成移动操作(当需要时): 类中没有拷贝操作 类中没有移动操作 类中没有用户定义的析构 有时类似的规则也会扩展至拷贝操作上面C++11抛弃了已声明拷贝操作或析构函数的类的拷贝操作的自动生成。这意味着如果你的某个声明了析构或者拷贝的类依赖自动生成的拷贝操作你应该考虑升级这些类消除依赖。假设编译器生成的函数行为是正确的即逐成员拷贝类non-static数据是你期望的行为你的工作很简单C++11的= default就可以表达你想做的 class Widget { public: … ~Widget(); //用户声明的析构函数 … //默认拷贝构造函数 Widget(const Widget&) = default; //的行为还可以 Widget& //默认拷贝赋值运算符 operator=(const Widget&) = default; //的行为还可以 … }; 这种方法通常在多态基类中很有用即通过操作的是哪个派生类对象来定义接口。多态基类通常有一个虚析构函数因为如果它们非虚一些操作比如通过一个基类指针或者引用对派生类对象使用delete或者typeid会产生未定义或错误结果。除非类继承了一个已经是 virtual 的析构函数否则要想析构函数为虚函数的唯一方法就是加上virtual关键字。通常默认实现是对的= default是一个不错的方式表达默认实现。然而用户声明的析构函数会抑制编译器生成移动操作所以如果该类需要具有移动性就为移动操作加上= default。声明移动会抑制拷贝生成所以如果拷贝性也需要支持再为拷贝操作加上= default class Base {\npublic: virtual ~Base() = default; //使析构函数virtual Base(Base&&) = default; //支持移动 Base& operator=(Base&&) = default; Base(const Base&) = default; //支持拷贝 Base& operator=(const Base&) = default; … }; 实际上,就算编译器乐于为你的类生成拷贝和移动操作,生成的函数也如你所愿,你也应该手动声明它们然后加上= default。这看起来比较多余但是它让你的意图更明确也能帮助你避免一些微妙的bug。比如你有一个类来表示字符串表即一种支持使用整数ID快速查找字符串值的数据结构 class StringTable {\npublic: StringTable() {} … //插入、删除、查找等函数,但是没有拷贝/移动/析构功能\nprivate: std::map<int, std::string> values;\n}; 假设这个类没有声明拷贝操作,没有移动操作,也没有析构,如果它们被用到编译器会自动生成。没错,很方便。 后来需要在对象构造和析构中打日志,增加这种功能很简单: class StringTable {\npublic: StringTable() { makeLogEntry(\"Creating StringTable object\"); } //增加的 ~StringTable() //也是增加的 { makeLogEntry(\"Destroying StringTable object\"); } … //其他函数同之前一样\nprivate: std::map<int, std::string> values; //同之前一样\n}; 看起来合情合理但是声明析构有潜在的副作用它阻止了移动操作的生成。然而拷贝操作的生成是不受影响的。因此代码能通过编译运行也能通过功能译注即打日志的功能测试。功能测试也包括移动功能因为即使该类不支持移动操作对该类的移动请求也能通过编译和运行。这个请求正如之前提到的会转而由拷贝操作完成。它意味着对StringTable对象的移动实际上是对对象的拷贝即拷贝里面的std::map<int, std::string>对象。拷贝std::map<int, std::string>对象很可能比移动慢 几个数量级 。简单的加个析构就引入了极大的性能问题!对拷贝和移动操作显式加个= default问题将不再出现。 受够了我喋喋不休的讲述C++11拷贝移动规则了吧你可能想知道什么时候我才会把注意力转入到剩下两个特殊成员函数默认构造函数和析构函数。现在就是时候了但是只有一句话因为它们几乎没有改变它们在C++98中是什么样在C++11中就是什么样。 C++11对于特殊成员函数处理的规则如下 默认构造函数 和C++98规则相同。仅当类不存在用户声明的构造函数时才自动生成。 析构函数 基本上和C++98相同稍微不同的是现在析构默认noexcept参见 Item14 。和C++98一样仅当基类析构为虚函数时该类析构才为虚函数。 拷贝构造函数 和C++98运行时行为一样逐成员拷贝non-static数据。仅当类没有用户定义的拷贝构造时才生成。如果类声明了移动操作它就是 delete 的。当用户声明了拷贝赋值或者析构,该函数自动生成已被废弃。 拷贝赋值运算符 和C++98运行时行为一样逐成员拷贝赋值non-static数据。仅当类没有用户定义的拷贝赋值时才生成。如果类声明了移动操作它就是 delete 的。当用户声明了拷贝构造或者析构,该函数自动生成已被废弃。 移动构造函数 和 移动赋值运算符 都对非static数据执行逐成员移动。仅当类没有用户定义的拷贝操作移动操作或析构时才自动生成。 注意没有“成员函数 模版 阻止编译器生成特殊成员函数”的规则。这意味着如果Widget是这样 class Widget { … template<typename T> //从任何东西构造Widget Widget(const T& rhs); template<typename T> //从任何东西赋值给Widget Widget& operator=(const T& rhs); …\n}; 编译器仍会生成移动和拷贝操作假设正常生成它们的条件满足即使可以模板实例化产出拷贝构造和拷贝赋值运算符的函数签名。当T为Widget时。很可能你会觉得这是一个不值得承认的边缘情况但是我提到它是有道理的 Item26 将会详细讨论它可能带来的后果。 请记住: 特殊成员函数是编译器可能自动生成的函数:默认构造函数,析构函数,拷贝操作,移动操作。 移动操作仅当类没有显式声明移动操作,拷贝操作,析构函数时才自动生成。 拷贝构造函数仅当类没有显式声明拷贝构造函数时才自动生成,并且如果用户声明了移动操作,拷贝构造就是 delete 。拷贝赋值运算符仅当类没有显式声明拷贝赋值运算符时才自动生成,并且如果用户声明了移动操作,拷贝赋值运算符就是 delete 。当用户声明了析构函数,拷贝操作的自动生成已被废弃。 成员函数模板不抑制特殊成员函数的生成。","breadcrumbs":"第三章 移步现代C++ » Item 17:理解特殊成员函数函数的生成 » 条款十七:理解特殊成员函数的生成","id":"30","title":"条款十七:理解特殊成员函数的生成"},"31":{"body":"CHAPTER 4 Smart Pointers 诗人和歌曲作家喜欢爱。有时候喜欢计数。很少情况下两者兼有。受伊丽莎白·巴雷特·勃朗宁Elizabeth Barrett Browning对爱和数的不同看法的启发“我怎么爱你让我数一数。”和保罗·西蒙Paul Simon“离开你的爱人必须有50种方法。”我们可以试着枚举一些为什么原始指针很难被爱的原因 它的声明不能指示所指到底是单个对象还是数组。 它的声明没有告诉你用完后是否应该销毁它,即指针是否拥有所指之物。 如果你决定你应该销毁指针所指对象没人告诉你该用delete还是其他析构机制比如将指针传给专门的销毁函数。 如果你发现该用delete。 原因1说了可能不知道该用单个对象形式“delete”还是数组形式“delete[]”)。如果用错了结果是未定义的。 假设你确定了指针所指,知道销毁机制,也很难确定你在所有执行路径上都执行了 恰为一次 销毁操作(包括异常产生后的路径)。少一条路径就会产生资源泄漏,销毁多次还会导致未定义行为。 一般来说没有办法告诉你指针是否变成了悬空指针dangling pointers即内存中不再存在指针所指之物。在对象销毁后指针仍指向它们就会产生悬空指针。 原始指针是强大的工具,当然,另一方面几十年的经验证明,只要注意力稍有疏忽,这个强大的工具就会攻击它的主人。 智能指针 smart pointers )是解决这些问题的一种办法。智能指针包裹原始指针,它们的行为看起来像被包裹的原始指针,但避免了原始指针的很多陷阱。你应该更倾向于智能指针而不是原始指针。几乎原始指针能做的所有事情智能指针都能做,而且出错的机会更少。 在C++11中存在四种智能指针std::auto_ptrstd::unique_ptrstd::shared_ptr std::weak_ptr。都是被设计用来帮助管理动态对象的生命周期在适当的时间通过适当的方式来销毁对象以避免出现资源泄露或者异常行为。 std::auto_ptr是来自C++98的已废弃遗留物它是一次标准化的尝试后来变成了C++11的std::unique_ptr。要正确的模拟原生指针需要移动语义但是C++98没有这个东西。取而代之std::auto_ptr拉拢拷贝操作来达到自己的移动意图。这导致了令人奇怪的代码拷贝一个std::auto_ptr会将它本身设置为null和令人沮丧的使用限制比如不能将std::auto_ptr放入容器。 std::unique_ptr能做std::auto_ptr可以做的所有事情以及更多。它能高效完成任务而且不会扭曲自己的原本含义而变成拷贝对象。在所有方面它都比std::auto_ptr好。现在std::auto_ptr唯一合法的使用场景就是代码使用C++98编译器编译。除非你有上述限制否则你就该把std::auto_ptr替换为std::unique_ptr而且绝不回头。 各种智能指针的API有极大的不同。唯一功能性相似的可能就是默认构造函数。因为有很多关于这些API的详细手册所以我将只关注那些API概览没有提及的内容比如值得注意的使用场景运行时性能分析等掌握这些信息可以更高效的使用智能指针。","breadcrumbs":"第四章 智能指针 » Item 18:对于独占资源使用std::unique_ptr » 第4章 智能指针","id":"31","title":"第4章 智能指针"},"32":{"body":"Item 18: Use std::unique_ptr for exclusive-ownership resource management 当你需要一个智能指针时std::unique_ptr通常是最合适的。可以合理假设默认情况下std::unique_ptr大小等同于原始指针而且对于大多数操作包括取消引用他们执行的指令完全相同。这意味着你甚至可以在内存和时间都比较紧张的情况下使用它。如果原始指针够小够快那么std::unique_ptr一样可以。 std::unique_ptr体现了专有所有权 exclusive ownership 语义。一个non-null std::unique_ptr始终拥有其指向的内容。移动一个std::unique_ptr将所有权从源指针转移到目的指针。源指针被设为null。拷贝一个std::unique_ptr是不允许的因为如果你能拷贝一个std::unique_ptr你会得到指向相同内容的两个std::unique_ptr每个都认为自己拥有并且应当最后销毁资源销毁时就会出现重复销毁。因此std::unique_ptr是一种只可移动类型 move-only type 。当析构时一个non-null std::unique_ptr销毁它指向的资源。默认情况下资源析构通过对std::unique_ptr里原始指针调用delete来实现。 std::unique_ptr的常见用法是作为继承层次结构中对象的工厂函数返回类型。假设我们有一个投资类型比如股票、债券、房地产等的继承结构使用基类Investment。 class Investment { … };\nclass Stock: public Investment { … };\nclass Bond: public Investment { … };\nclass RealEstate: public Investment { … }; item18_fig1 这种继承关系的工厂函数在堆上分配一个对象然后返回指针调用方在不需要的时候有责任销毁对象。这使用场景完美匹配std::unique_ptr因为调用者对工厂返回的资源负责即对该资源的专有所有权并且std::unique_ptr在自己被销毁时会自动销毁指向的内容。Investment继承关系的工厂函数可以这样声明 template<typename... Ts> //返回指向对象的std::unique_ptr\nstd::unique_ptr<Investment> //对象使用给定实参创建\nmakeInvestment(Ts&&... params); 调用者应该在单独的作用域中使用返回的std::unique_ptr智能指针 { … auto pInvestment = //pInvestment是 makeInvestment( arguments ); //std::unique_ptr<Investment>类型 …\n} //销毁 *pInvestment 但是也可以在所有权转移的场景中使用它比如将工厂返回的std::unique_ptr移入容器中然后将容器元素移入一个对象的数据成员中然后对象过后被销毁。发生这种情况时这个对象的std::unique_ptr数据成员也被销毁并且智能指针数据成员的析构将导致从工厂返回的资源被销毁。如果所有权链由于异常或者其他非典型控制流出现中断比如提前从函数return或者循环中的break则拥有托管资源的std::unique_ptr将保证指向内容的析构函数被调用销毁对应资源。这个规则也有些例外。大多数情况发生于不正常的程序终止。如果一个异常传播到线程的基本函数比如程序初始线程的main函数或者违反noexcept说明见 Item14 局部变量可能不会被销毁如果std::abort或者退出函数如std::_Exitstd::exit或std::quick_exit被调用局部变量一定没被销毁。 默认情况下销毁将通过delete进行但是在构造过程中std::unique_ptr对象可以被设置为使用对资源的 自定义删除器 :当资源需要销毁时可调用的任意函数(或者函数对象,包括 lambda 表达式。如果通过makeInvestment创建的对象不应仅仅被delete而应该先写一条日志makeInvestment可以以如下方式实现。代码后有说明别担心有些东西的动机不那么明显。 auto delInvmt = [](Investment* pInvestment) //自定义删除器 { //lambda表达式 makeLogEntry(pInvestment); delete pInvestment; }; template<typename... Ts>\nstd::unique_ptr<Investment, decltype(delInvmt)> //更改后的返回类型\nmakeInvestment(Ts&&... params)\n{ std::unique_ptr<Investment, decltype(delInvmt)> //应返回的指针 pInv(nullptr, delInvmt); if (/*一个Stock对象应被创建*/) { pInv.reset(new Stock(std::forward<Ts>(params)...)); } else if ( /*一个Bond对象应被创建*/ ) { pInv.reset(new Bond(std::forward<Ts>(params)...)); } else if ( /*一个RealEstate对象应被创建*/ ) { pInv.reset(new RealEstate(std::forward<Ts>(params)...)); } return pInv;\n} 稍后我将解释其工作原理但首先请考虑如果你是调用者情况如何。假设你存储makeInvestment调用结果到auto变量中那么你将在愉快中忽略在删除过程中需要特殊处理的事实。当然你确实幸福因为使用了unique_ptr意味着你不需要关心什么时候资源应被释放不需要考虑在资源释放时的路径以及确保只释放一次std::unique_ptr自动解决了这些问题。从使用者角度makeInvestment接口很棒。 这个实现确实相当棒,如果你理解了: delInvmt是从makeInvestment返回的对象的自定义的删除器。所有的自定义的删除行为接受要销毁对象的原始指针然后执行所有必要行为实现销毁操作。在上面情况中操作包括调用makeLogEntry然后应用delete。使用 lambda 创建delInvmt是方便的而且正如稍后看到的比编写常规的函数更有效。 当使用自定义删除器时删除器类型必须作为第二个类型实参传给std::unique_ptr。在上面情况中就是delInvmt的类型这就是为什么makeInvestment返回类型是std::unique_ptr<Investment, decltype(delInvmt)>。对于decltype更多信息查看 Item3 makeInvestment的基本策略是创建一个空的std::unique_ptr然后指向一个合适类型的对象然后返回。为了将自定义删除器delInvmt与pInv关联我们把delInvmt作为pInv构造函数的第二个实参。 尝试将原始指针比如new创建赋值给std::unique_ptr通不过编译因为是一种从原始指针到智能指针的隐式转换。这种隐式转换会出问题所以C++11的智能指针禁止这个行为。这就是通过reset来让pInv接管通过new创建的对象的所有权的原因。 使用new时我们使用std::forward把传给makeInvestment的实参完美转发出去查看 Item25 )。这使调用者提供的所有信息可用于正在创建的对象的构造函数。 自定义删除器的一个形参类型是Investment*不管在makeInvestment内部创建的对象的真实类型如StockBond或RealEstate是什么它最终在 lambda 表达式中作为Investment*对象被删除。这意味着我们通过基类指针删除派生类实例为此基类Investment必须有虚析构函数 class Investment {\npublic: … virtual ~Investment(); //关键设计部分! …\n}; 在C++14中函数的返回类型推导存在参阅 Item3 意味着makeInvestment可以以更简单更封装的方式实现 template<typename... Ts>\nauto makeInvestment(Ts&&... params) //C++14\n{ auto delInvmt = [](Investment* pInvestment) //现在在 { //makeInvestment里 makeLogEntry(pInvestment); delete pInvestment; }; std::unique_ptr<Investment, decltype(delInvmt)> //同之前一样 pInv(nullptr, delInvmt); if ( … ) //同之前一样 { pInv.reset(new Stock(std::forward<Ts>(params)...)); } else if ( … ) //同之前一样 { pInv.reset(new Bond(std::forward<Ts>(params)...)); } else if ( … ) //同之前一样 { pInv.reset(new RealEstate(std::forward<Ts>(params)...)); } return pInv; //同之前一样\n} 我之前说过当使用默认删除器时如delete你可以合理假设std::unique_ptr对象和原始指针大小相同。当自定义删除器时情况可能不再如此。函数指针形式的删除器通常会使std::unique_ptr的从一个字 word 大小增加到两个。对于函数对象形式的删除器来说变化的大小取决于函数对象中存储的状态多少无状态函数stateless function对象比如不捕获变量的 lambda 表达式)对大小没有影响,这意味当自定义删除器可以实现为函数或者 lambda 时,尽量使用 lambda auto delInvmt1 = [](Investment* pInvestment) //无状态lambda的 { //自定义删除器 makeLogEntry(pInvestment); delete pInvestment; }; template<typename... Ts> //返回类型大小是\nstd::unique_ptr<Investment, decltype(delInvmt1)> //Investment*的大小\nmakeInvestment(Ts&&... args); void delInvmt2(Investment* pInvestment) //函数形式的\n{ //自定义删除器 makeLogEntry(pInvestment); delete pInvestment;\n}\ntemplate<typename... Ts> //返回类型大小是\nstd::unique_ptr<Investment, void (*)(Investment*)> //Investment*的指针\nmakeInvestment(Ts&&... params); //加至少一个函数指针的大小 具有很多状态的自定义删除器会产生大尺寸std::unique_ptr对象。如果你发现自定义删除器使得你的std::unique_ptr变得过大你需要审视修改你的设计。 工厂函数不是std::unique_ptr的唯一常见用法。作为实现 Pimpl Idiom (译注: pointer to implementation 一种隐藏实际实现而减弱编译依赖性的设计思想《Effective C++》条款31对此有过叙述的一种机制它更为流行。代码并不复杂但是在某些情况下并不直观所以这安排在 Item22 的专门主题中。 std::unique_ptr有两种形式一种用于单个对象std::unique_ptr<T>一种用于数组std::unique_ptr<T[]>。结果就是指向哪种形式没有歧义。std::unique_ptr的API设计会自动匹配你的用法比如operator[]就是数组对象解引用操作符operator*和operator->)就是单个对象专有。 你应该对数组的std::unique_ptr的存在兴趣泛泛因为std::arraystd::vectorstd::string这些更好用的数据容器应该取代原始数组。std::unique_ptr<T[]>有用的唯一情况是你使用类似C的API返回一个指向堆数组的原始指针而你想接管这个数组的所有权。 std::unique_ptr是C++11中表示专有所有权的方法但是其最吸引人的功能之一是它可以轻松高效的转换为std::shared_ptr std::shared_ptr<Investment> sp = //将std::unique_ptr makeInvestment(arguments); //转为std::shared_ptr 这就是std::unique_ptr非常适合用作工厂函数返回类型的原因的关键部分。 工厂函数无法知道调用者是否要对它们返回的对象使用专有所有权语义或者共享所有权即std::shared_ptr是否更合适。 通过返回std::unique_ptr工厂为调用者提供了最有效的智能指针但它们并不妨碍调用者用其更灵活的兄弟替换它。有关std::shared_ptr的信息请转到 Item19 。) 请记住: std::unique_ptr是轻量级、快速的、只可移动 move-only )的管理专有所有权语义资源的智能指针 默认情况资源销毁通过delete实现但是支持自定义删除器。有状态的删除器和函数指针会增加std::unique_ptr对象的大小 将std::unique_ptr转化为std::shared_ptr非常简单","breadcrumbs":"第四章 智能指针 » Item 18:对于独占资源使用std::unique_ptr » 条款十八对于独占资源使用std::unique_ptr","id":"32","title":"条款十八对于独占资源使用std::unique_ptr"},"33":{"body":"Item 19: Use std::shared_ptr for shared-ownership resource management 使用带垃圾回收的语言的程序员指着C++程序员笑看他们如何防止资源泄露。“真是原始啊”他们嘲笑着说“你们没有从1960年的Lisp那里得到启发吗机器应该自己管理资源的生命周期而不应该依赖人类。”C++程序员翻白眼“你们得到的所谓启示就是只有内存算资源而且资源回收的时间点是不确定的我们更喜欢通用可预料的销毁谢谢你。”但我们的虚张声势可能底气不足。因为垃圾回收真的很方便而且手动管理生命周期真的就像是使用石头小刀和兽皮制作RAM电路。为什么我们不能同时有两个完美的世界一个自动工作的世界像是垃圾回收一个销毁可预测的世界像是析构 C++11中的std::shared_ptr将两者组合了起来。一个通过std::shared_ptr访问的对象其生命周期由指向它的有共享所有权 shared ownership 的指针们来管理。没有特定的std::shared_ptr拥有该对象。相反所有指向它的std::shared_ptr都能相互合作确保在它不再使用的那个点进行析构。当最后一个指向某对象的std::shared_ptr不再指向那比如因为std::shared_ptr被销毁或者指向另一个不同的对象std::shared_ptr会销毁它所指向的对象。就垃圾回收来说客户端不需要关心指向对象的生命周期而对象的析构是确定性的。 std::shared_ptr通过引用计数 reference count 来确保它是否是最后一个指向某种资源的指针引用计数关联资源并跟踪有多少std::shared_ptr指向该资源。std::shared_ptr构造函数递增引用计数值注意是 通常 ——原因参见下面析构函数递减值拷贝赋值运算符做前面这两个工作。如果sp1和sp2是std::shared_ptr并且指向不同对象赋值“sp1 = sp2;”会使sp1指向sp2指向的对象。直接效果就是sp1引用计数减一sp2引用计数加一。如果std::shared_ptr在计数值递减后发现引用计数值为零没有其他std::shared_ptr指向该资源它就会销毁资源。 引用计数暗示着性能问题: std::shared_ptr大小是原始指针的两倍 因为它内部包含一个指向资源的原始指针还包含一个指向资源的引用计数值的原始指针。这种实现法并不是标准要求的但是我指原书作者Scott Meyers熟悉的所有标准库都这样实现。 引用计数的内存必须动态分配 。 概念上引用计数与所指对象关联起来但是实际上被指向的对象不知道这件事情译注不知道有一个关联到自己的计数值。因此它们没有办法存放一个引用计数值。一个好消息是任何对象——甚至是内置类型的——都可以由std::shared_ptr管理。 Item21 会解释使用std::make_shared创建std::shared_ptr可以避免引用计数的动态分配但是还存在一些std::make_shared不能使用的场景这时候引用计数就会动态分配。 递增递减引用计数必须是原子性的 因为多个reader、writer可能在不同的线程。比如指向某种资源的std::shared_ptr可能在一个线程执行析构于是递减指向的对象的引用计数在另一个不同的线程std::shared_ptr指向相同的对象但是执行的却是拷贝操作因此递增了同一个引用计数。原子操作通常比非原子操作要慢所以即使引用计数通常只有一个 word 大小,你也应该假定读写它们是存在开销的。 我写道std::shared_ptr构造函数只是“通常”递增指向对象的引用计数会不会让你有点好奇创建一个指向对象的std::shared_ptr就产生了又一个指向那个对象的std::shared_ptr为什么我没说 总是 增加引用计数值? 原因是移动构造函数的存在。从另一个std::shared_ptr移动构造新std::shared_ptr会将原来的std::shared_ptr设置为null那意味着老的std::shared_ptr不再指向资源同时新的std::shared_ptr指向资源。这样的结果就是不需要修改引用计数值。因此移动std::shared_ptr会比拷贝它要快拷贝要求递增引用计数值移动不需要。移动赋值运算符同理所以移动构造比拷贝构造快移动赋值运算符也比拷贝赋值运算符快。 类似std::unique_ptr参见 Item18 std::shared_ptr使用delete作为资源的默认销毁机制但是它也支持自定义的删除器。这种支持有别于std::unique_ptr。对于std::unique_ptr来说删除器类型是智能指针类型的一部分。对于std::shared_ptr则不是 auto loggingDel = [](Widget *pw) //自定义删除器 { //和条款18一样 makeLogEntry(pw); delete pw; }; std::unique_ptr< //删除器类型是 Widget, decltype(loggingDel) //指针类型的一部分 > upw(new Widget, loggingDel);\nstd::shared_ptr<Widget> //删除器类型不是 spw(new Widget, loggingDel); //指针类型的一部分 std::shared_ptr的设计更为灵活。考虑有两个std::shared_ptr<Widget>,每个自带不同的删除器(比如通过 lambda 表达式自定义删除器): auto customDeleter1 = [](Widget *pw) { … }; //自定义删除器,\nauto customDeleter2 = [](Widget *pw) { … }; //每种类型不同\nstd::shared_ptr<Widget> pw1(new Widget, customDeleter1);\nstd::shared_ptr<Widget> pw2(new Widget, customDeleter2); 因为pw1和pw2有相同的类型所以它们都可以放到存放那个类型的对象的容器中 std::vector<std::shared_ptr<Widget>> vpw{ pw1, pw2 }; 它们也能相互赋值也可以传入一个形参为std::shared_ptr<Widget>的函数。但是自定义删除器类型不同的std::unique_ptr就不行因为std::unique_ptr把删除器视作类型的一部分。 另一个不同于std::unique_ptr的地方是指定自定义删除器不会改变std::shared_ptr对象的大小。不管删除器是什么一个std::shared_ptr对象都是两个指针大小。这是个好消息但是它应该让你隐隐约约不安。自定义删除器可以是函数对象函数对象可以包含任意多的数据。它意味着函数对象是任意大的。std::shared_ptr怎么能引用一个任意大的删除器而不使用更多的内存 它不能。它必须使用更多的内存。然而那部分内存不是std::shared_ptr对象的一部分。那部分在堆上面或者std::shared_ptr创建者利用std::shared_ptr对自定义分配器的支持能力那部分内存随便在哪都行。我前面提到了std::shared_ptr对象包含了所指对象的引用计数的指针。没错但是有点误导人。因为引用计数是另一个更大的数据结构的一部分那个数据结构通常叫做 控制块 control block 。每个std::shared_ptr管理的对象都有个相应的控制块。控制块除了包含引用计数值外还有一个自定义删除器的拷贝当然前提是存在自定义删除器。如果用户还指定了自定义分配器控制块也会包含一个分配器的拷贝。控制块可能还包含一些额外的数据正如 Item21 提到的,一个次级引用计数 weak count 但是目前我们先忽略它。我们可以想象std::shared_ptr对象在内存中是这样 item19_fig1 当指向对象的std::shared_ptr一创建对象的控制块就建立了。至少我们期望是如此。通常对于一个创建指向对象的std::shared_ptr的函数来说不可能知道是否有其他std::shared_ptr早已指向那个对象所以控制块的创建会遵循下面几条规则 std::make_shared参见 Item21 )总是创建一个控制块 。它创建一个要指向的新对象所以可以肯定std::make_shared调用时对象不存在其他控制块。 当从独占指针即std::unique_ptr或者std::auto_ptr上构造出std::shared_ptr时会创建控制块 。独占指针没有使用控制块所以指针指向的对象没有关联控制块。作为构造的一部分std::shared_ptr侵占独占指针所指向的对象的独占权所以独占指针被设置为null 当从原始指针上构造出std::shared_ptr时会创建控制块 。如果你想从一个早已存在控制块的对象上创建std::shared_ptr你将假定传递一个std::shared_ptr或者std::weak_ptr参见 Item20 作为构造函数实参而不是原始指针。用std::shared_ptr或者std::weak_ptr作为构造函数实参创建std::shared_ptr不会创建新控制块因为它可以依赖传递来的智能指针指向控制块。 这些规则造成的后果就是从原始指针上构造超过一个std::shared_ptr就会让你走上未定义行为的快车道因为指向的对象有多个控制块关联。多个控制块意味着多个引用计数值多个引用计数值意味着对象将会被销毁多次每个引用计数一次。那意味着像下面的代码是有问题的很有问题问题很大 auto pw = new Widget; //pw是原始指针\n…\nstd::shared_ptr<Widget> spw1(pw, loggingDel); //为*pw创建控制块\n…\nstd::shared_ptr<Widget> spw2(pw, loggingDel); //为*pw创建第二个控制块 创建原始指针pw指向动态分配的对象很糟糕因为它完全背离了这章的建议倾向于使用智能指针而不是原始指针。如果你忘记了该建议的动机请翻到 本章开头 。撇开那个不说创建pw那一行代码虽然让人厌恶但是至少不会造成未定义程序行为。 现在传给spw1的构造函数一个原始指针它会为指向的对象创建一个控制块因此有个引用计数值。这种情况下指向的对象是*pw即pw指向的对象。就其本身而言没什么问题但是将同样的原始指针传递给spw2的构造函数会再次为*pw创建一个控制块所以也有个引用计数值。因此*pw有两个引用计数值每一个最后都会变成零然后最终导致*pw销毁两次。第二个销毁会产生未定义行为。 std::shared_ptr给我们上了两堂课。第一避免传给std::shared_ptr构造函数原始指针。通常替代方案是使用std::make_shared参见 Item21 不过上面例子中我们使用了自定义删除器用std::make_shared就没办法做到。第二如果你必须传给std::shared_ptr构造函数原始指针直接传new出来的结果不要传指针变量。如果上面代码第一部分这样重写 std::shared_ptr<Widget> spw1(new Widget, //直接使用new的结果 loggingDel); 会少了很多从原始指针上构造第二个std::shared_ptr的诱惑。相应的创建spw2也会很自然的用spw1作为初始化参数即用std::shared_ptr拷贝构造函数那就没什么问题了 std::shared_ptr<Widget> spw2(spw1); //spw2使用spw1一样的控制块 一个尤其令人意外的地方是使用this指针作为std::shared_ptr构造函数实参的时候可能导致创建多个控制块。假设我们的程序使用std::shared_ptr管理Widget对象我们有一个数据结构用于跟踪已经处理过的Widget对象 std::vector<std::shared_ptr<Widget>> processedWidgets; 继续假设Widget有一个用于处理的成员函数 class Widget {\npublic: … void process(); …\n}; 对于Widget::process看起来合理的代码如下 void Widget::process()\n{ … //处理Widget processedWidgets.emplace_back(this); //然后将它加到已处理过的Widget\n} //的列表中,这是错的! 注释已经说了这是错的——或者至少大部分是错的。错误的部分是传递this而不是使用了emplace_back。如果你不熟悉emplace_back参见 Item42 。上面的代码可以通过编译但是向std::shared_ptr的容器传递一个原始指针thisstd::shared_ptr会由此为指向的Widget*this创建一个控制块。那看起来没什么问题直到你意识到如果成员函数外面早已存在指向那个Widget对象的指针它是未定义行为的Game, Set, and Match译注一部关于网球的电影但是译者没看过。句子本意“压倒性胜利比赛结束”。 std::shared_ptrAPI已有处理这种情况的设施。它的名字可能是C++标准库中最奇怪的一个std::enable_shared_from_this。如果你想创建一个用std::shared_ptr管理的类这个类能够用this指针安全地创建一个std::shared_ptrstd::enable_shared_from_this就可作为基类的模板类。在我们的例子中Widget将会继承自std::enable_shared_from_this class Widget: public std::enable_shared_from_this<Widget> {\npublic: … void process(); …\n}; 正如我所说std::enable_shared_from_this是一个基类模板。它的模板参数总是某个继承自它的类所以Widget继承自std::enable_shared_from_this<Widget>。如果某类型继承自一个由该类型译注作为模板类型参数进行模板化得到的基类这个东西让你心脏有点遭不住别去想它就好了。代码完全合法而且它背后的设计模式也是没问题的并且这种设计模式还有个标准名字尽管该名字和std::enable_shared_from_this一样怪异。这个标准名字就是奇异递归模板模式 The Curiously Recurring Template Pattern CRTP 。如果你想学更多关于它的内容请搜索引擎一展身手现在我们要回到std::enable_shared_from_this上。 std::enable_shared_from_this定义了一个成员函数成员函数会创建指向当前对象的std::shared_ptr却不创建多余控制块。这个成员函数就是shared_from_this无论在哪当你想在成员函数中使用std::shared_ptr指向this所指对象时都请使用它。这里有个Widget::process的安全实现 void Widget::process()\n{ //和之前一样处理Widget … //把指向当前对象的std::shared_ptr加入processedWidgets processedWidgets.emplace_back(shared_from_this());\n} 从内部来说shared_from_this查找当前对象控制块然后创建一个新的std::shared_ptr关联这个控制块。设计的依据是当前对象已经存在一个关联的控制块。要想符合设计依据的情况必须已经存在一个指向当前对象的std::shared_ptr比如调用shared_from_this的成员函数外面已经存在一个std::shared_ptr。如果没有std::shared_ptr指向当前对象即当前对象没有关联控制块行为是未定义的shared_from_this通常抛出一个异常。 要想防止客户端在存在一个指向对象的std::shared_ptr前先调用含有shared_from_this的成员函数继承自std::enable_shared_from_this的类通常将它们的构造函数声明为private并且让客户端通过返回std::shared_ptr的工厂函数创建对象。以Widget为例代码可以是这样 class Widget: public std::enable_shared_from_this<Widget> {\npublic: //完美转发参数给private构造函数的工厂函数 template<typename... Ts> static std::shared_ptr<Widget> create(Ts&&... params); … void process(); //和前面一样 …\nprivate: … //构造函数\n}; 现在你可能隐约记得我们讨论控制块的动机是想了解有关std::shared_ptr的成本。既然我们已经知道了怎么避免创建过多控制块就让我们回到原来的主题。 控制块通常只占几个 word 大小自定义删除器和分配器可能会让它变大一点。通常控制块的实现比你想的更复杂一些。它使用继承甚至里面还有一个虚函数用来确保指向的对象被正确销毁。这意味着使用std::shared_ptr还会招致控制块使用虚函数带来的成本。 了解了动态分配控制块任意大小的删除器和分配器虚函数机制原子性的引用计数修改你对于std::shared_ptr的热情可能有点消退。可以理解对每个资源管理问题来说都没有最佳的解决方案。但就它提供的功能来说std::shared_ptr的开销是非常合理的。在通常情况下使用默认删除器和默认分配器使用std::make_shared创建std::shared_ptr产生的控制块只需三个word大小。它的分配基本上是无开销的。开销被并入了指向的对象的分配成本里。细节参见 Item21 。对std::shared_ptr解引用的开销不会比原始指针高。执行需要原子引用计数修改的操作需要承担一两个原子操作开销这些操作通常都会一一映射到机器指令上所以即使对比非原子指令来说原子指令开销较大但是它们仍然只是单个指令上的。对于每个被std::shared_ptr指向的对象来说控制块中的虚函数机制产生的开销通常只需要承受一次即对象销毁的时候。 作为这些轻微开销的交换你得到了动态分配的资源的生命周期自动管理的好处。大多数时候比起手动管理使用std::shared_ptr管理共享性资源都是非常合适的。如果你还在犹豫是否能承受std::shared_ptr带来的开销那就再想想你是否需要共享所有权。如果独占资源可行或者 可能 可行用std::unique_ptr是一个更好的选择。它的性能表现更接近于原始指针并且从std::unique_ptr升级到std::shared_ptr也很容易因为std::shared_ptr可以从std::unique_ptr上创建。 反之不行。当你的资源由std::shared_ptr管理现在又想修改资源生命周期管理方式是没有办法的。即使引用计数为一你也不能重新修改资源所有权改用std::unique_ptr管理它。资源和指向它的std::shared_ptr的签订的所有权协议是“除非死亡否则永不分开”。不能分离不能废除没有特许。 std::shared_ptr不能处理的另一个东西是数组。和std::unique_ptr不同的是std::shared_ptr的API设计之初就是针对单个对象的没有办法std::shared_ptr<T[]>。一次又一次“聪明”的程序员踌躇于是否该使用std::shared_ptr<T>指向数组然后传入自定义删除器来删除数组即delete []。这可以通过编译但是是一个糟糕的主意。一方面std::shared_ptr没有提供operator[]所以数组索引操作需要借助怪异的指针算术。另一方面std::shared_ptr支持转换为指向基类的指针这对于单个对象来说有效但是当用于数组类型时相当于在类型系统上开洞。出于这个原因std::unique_ptr<T[]> API禁止这种转换。更重要的是C++11已经提供了很多内置数组的候选方案比如std::arraystd::vectorstd::string。声明一个指向傻瓜数组的智能指针译注也是”聪明的指针“之意几乎总是表示着糟糕的设计。 请记住: std::shared_ptr为有共享所有权的任意资源提供一种自动垃圾回收的便捷方式。 较之于std::unique_ptrstd::shared_ptr对象通常大两倍控制块会产生开销需要原子性的引用计数修改操作。 默认资源销毁是通过delete但是也支持自定义删除器。删除器的类型是什么对于std::shared_ptr的类型没有影响。 避免从原始指针变量上创建std::shared_ptr。","breadcrumbs":"第四章 智能指针 » Item 19:对于共享资源使用std::shared_ptr » 条款十九对于共享资源使用std::shared_ptr","id":"33","title":"条款十九对于共享资源使用std::shared_ptr"},"34":{"body":"Item 20: Use std::weak_ptr for std::shared_ptr-like pointers that can dangle 自相矛盾的是如果有一个像std::shared_ptr见 Item19 的但是不参与资源所有权共享的指针是很方便的。换句话说是一个类似std::shared_ptr但不影响对象引用计数的指针。这种类型的智能指针必须要解决一个std::shared_ptr不存在的问题可能指向已经销毁的对象。一个真正的智能指针应该跟踪所指对象在悬空时知晓悬空 dangle 就是指针指向的对象不再存在。这就是对std::weak_ptr最精确的描述。 你可能想知道什么时候该用std::weak_ptr。你可能想知道关于std::weak_ptr API的更多。它什么都好除了不太智能。std::weak_ptr不能解引用也不能测试是否为空值。因为std::weak_ptr不是一个独立的智能指针。它是std::shared_ptr的增强。 这种关系在它创建之时就建立了。std::weak_ptr通常从std::shared_ptr上创建。当从std::shared_ptr上创建std::weak_ptr时两者指向相同的对象但是std::weak_ptr不会影响所指对象的引用计数 auto spw = //spw创建之后指向的Widget的 std::make_shared<Widget>(); //引用计数ref countRC为1。 //std::make_shared的信息参见条款21\n…\nstd::weak_ptr<Widget> wpw(spw); //wpw指向与spw所指相同的Widget。RC仍为1\n…\nspw = nullptr; //RC变为0Widget被销毁。 //wpw现在悬空 悬空的std::weak_ptr被称作已经 expired (过期)。你可以用它直接做测试: if (wpw.expired()) … //如果wpw没有指向对象… 但是通常你期望的是检查std::weak_ptr是否已经过期如果没有过期则访问其指向的对象。这做起来可不是想着那么简单。因为缺少解引用操作没有办法写这样的代码。即使有将检查和解引用分开会引入竞态条件在调用expired和解引用操作之间另一个线程可能对指向这对象的std::shared_ptr重新赋值或者析构并由此造成对象已析构。这种情况下你的解引用将会产生未定义行为。 你需要的是一个原子操作检查std::weak_ptr是否已经过期如果没有过期就访问所指对象。这可以通过从std::weak_ptr创建std::shared_ptr来实现具体有两种形式可以从std::weak_ptr上创建std::shared_ptr具体用哪种取决于std::weak_ptr过期时你希望std::shared_ptr表现出什么行为。一种形式是std::weak_ptr::lock它返回一个std::shared_ptr如果std::weak_ptr过期这个std::shared_ptr为空 std::shared_ptr<Widget> spw1 = wpw.lock(); //如果wpw过期spw1就为空 auto spw2 = wpw.lock(); //同上但是使用auto 另一种形式是以std::weak_ptr为实参构造std::shared_ptr。这种情况中如果std::weak_ptr过期会抛出一个异常 std::shared_ptr<Widget> spw3(wpw); //如果wpw过期抛出std::bad_weak_ptr异常 但是你可能还想知道为什么std::weak_ptr就有用了。考虑一个工厂函数它基于一个唯一ID从只读对象上产出智能指针。根据 Item18 的描述工厂函数会返回一个该对象类型的std::unique_ptr std::unique_ptr<const Widget> loadWidget(WidgetID id); 如果调用loadWidget是一个昂贵的操作比如它操作文件或者数据库I/O并且重复使用ID很常见一个合理的优化是再写一个函数除了完成loadWidget做的事情之外再缓存它的结果。当每个请求获取的Widget阻塞了缓存也会导致本身性能问题所以另一个合理的优化可以是当Widget不再使用的时候销毁它的缓存。 对于可缓存的工厂函数返回std::unique_ptr不是好的选择。调用者应该接收缓存对象的智能指针调用者也应该确定这些对象的生命周期但是缓存本身也需要一个指针指向它所缓存的对象。缓存对象的指针需要知道它是否已经悬空因为当工厂客户端使用完工厂产生的对象后对象将被销毁关联的缓存条目会悬空。所以缓存应该使用std::weak_ptr这可以知道是否已经悬空。这意味着工厂函数返回值类型应该是std::shared_ptr因为只有当对象的生命周期由std::shared_ptr管理时std::weak_ptr才能检测到悬空。 下面是一个临时凑合的loadWidget的缓存版本的实现 std::shared_ptr<const Widget> fastLoadWidget(WidgetID id)\n{ static std::unordered_map<WidgetID, std::weak_ptr<const Widget>> cache; //译者注这里std::weak_ptr<const Widget>是高亮 auto objPtr = cache[id].lock(); //objPtr是去缓存对象的 //std::shared_ptr或 //当对象不在缓存中时为null if (!objPtr) { //如果不在缓存中 objPtr = loadWidget(id); //加载它 cache[id] = objPtr; //缓存它 } return objPtr;\n} 这个实现使用了C++11的hash表容器std::unordered_map但是需要的WidgetID哈希和相等性比较函数在这里没有展示。 fastLoadWidget的实现忽略了以下事实缓存可能会累积过期的std::weak_ptr这些指针对应了不再使用的Widget也已经被销毁了。其实可以改进实现方式但是花时间在这个问题上不会让我们对std::weak_ptr有更深入的理解让我们考虑第二个用例观察者设计模式Observer design pattern。此模式的主要组件是subjects状态可能会更改的对象和observers状态发生更改时要通知的对象。在大多数实现中每个subject都包含一个数据成员该成员持有指向其observers的指针。这使subjects很容易发布状态更改通知。subjects对控制observers的生命周期即它们什么时候被销毁没有兴趣但是subjects对确保另一件事具有极大的兴趣那事就是一个observer被销毁时不再尝试访问它。一个合理的设计是每个subject持有一个std::weak_ptrs容器指向observers因此可以在使用前检查是否已经悬空。 作为最后一个使用std::weak_ptr的例子考虑一个持有三个对象A、B、C的数据结构A和C共享B的所有权因此持有std::shared_ptr item20_fig1 假定从B指向A的指针也很有用。应该使用哪种指针 item20_fig2 有三种选择: 原始指针 。使用这种方法如果A被销毁但是C继续指向BB就会有一个指向A的悬空指针。而且B不知道指针已经悬空所以B可能会继续访问就会导致未定义行为。 std::shared_ptr 。这种设计A和B都互相持有对方的std::shared_ptr导致的std::shared_ptr环状结构A指向BB指向A阻止A和B的销毁。甚至A和B无法从其他数据结构访问了比如C不再指向B每个的引用计数都还是1。如果发生了这种情况A和B都被泄漏程序无法访问它们但是资源并没有被回收。 std::weak_ptr 。这避免了上述两个问题。如果A被销毁B指向它的指针悬空但是B可以检测到这件事。尤其是尽管A和B互相指向对方B的指针不会影响A的引用计数因此在没有std::shared_ptr指向A时不会导致A无法被销毁。 使用std::weak_ptr显然是这些选择中最好的。但是需要注意使用std::weak_ptr打破std::shared_ptr循环并不常见。在严格分层的数据结构比如树中子节点只被父节点持有。当父节点被销毁时子节点就被销毁。从父到子的链接关系可以使用std::unique_ptr很好的表征。从子到父的反向连接可以使用原始指针安全实现因为子节点的生命周期肯定短于父节点。因此没有子节点解引用一个悬垂的父节点指针这样的风险。 当然不是所有的使用指针的数据结构都是严格分层的所以当发生这种情况时比如上面所述缓存和观察者列表的实现之类的知道std::weak_ptr随时待命也是不错的。 从效率角度来看std::weak_ptr与std::shared_ptr基本相同。两者的大小是相同的使用相同的控制块参见 Item19 构造、析构、赋值操作涉及引用计数的原子操作。这可能让你感到惊讶因为本条款开篇就提到std::weak_ptr不影响引用计数。我写的是std::weak_ptr不参与对象的 共享所有权 ,因此不影响 指向对象的引用计数 。实际上在控制块中还是有第二个引用计数std::weak_ptr操作的是第二个引用计数。想了解细节的话继续看 Item21 吧。 请记住: 用std::weak_ptr替代可能会悬空的std::shared_ptr。 std::weak_ptr的潜在使用场景包括缓存、观察者列表、打破std::shared_ptr环状结构。","breadcrumbs":"第四章 智能指针 » Item 20:当std::shard_ptr可能悬空时使用std::weak_ptr » 条款二十当std::shard_ptr可能悬空时使用std::weak_ptr","id":"34","title":"条款二十当std::shard_ptr可能悬空时使用std::weak_ptr"},"35":{"body":"Item 21: Prefer std::make_unique and std::make_shared to direct use of new 让我们先对std::make_unique和std::make_shared做个铺垫。std::make_shared是C++11标准的一部分但很可惜的是std::make_unique不是。它从C++14开始加入标准库。如果你在使用C++11不用担心一个基础版本的std::make_unique是很容易自己写出的如下 template<typename T, typename... Ts>\nstd::unique_ptr<T> make_unique(Ts&&... params)\n{ return std::unique_ptr<T>(new T(std::forward<Ts>(params)...));\n} 正如你看到的make_unique只是将它的参数完美转发到所要创建的对象的构造函数从new产生的原始指针里面构造出std::unique_ptr并返回这个std::unique_ptr。这种形式的函数不支持数组和自定义析构见 Item18 但它给出了一个示范只需一点努力就能写出你想要的make_unique函数。要想实现一个特性完备的make_unique就去找提供这个的标准化文件吧然后拷贝那个实现。你想要的这个文件是N3656是Stephan T. Lavavej写于2013-04-18的文档。需要记住的是不要把它放到std命名空间中因为你可能并不希望看到升级C++14标准库的时候你放进std命名空间的内容和编译器供应商提供的std命名空间的内容发生冲突。 std::make_unique和std::make_shared是三个 make函数 中的两个接收任意的多参数集合完美转发到构造函数去动态分配一个对象然后返回这个指向这个对象的指针。第三个make函数是std::allocate_shared。它行为和std::make_shared一样只不过第一个参数是用来动态分配内存的 allocator 对象。 即使通过用和不用make函数来创建智能指针的一个小小比较也揭示了为何使用make函数更好的第一个原因。例如 auto upw1(std::make_unique<Widget>()); //使用make函数\nstd::unique_ptr<Widget> upw2(new Widget); //不使用make函数\nauto spw1(std::make_shared<Widget>()); //使用make函数\nstd::shared_ptr<Widget> spw2(new Widget); //不使用make函数 我高亮了关键区别使用new的版本重复了类型但是make函数的版本没有。译者注这里高亮的是Widget用new的声明语句需要写2遍Widgetmake函数只需要写一次。重复写类型和软件工程里面一个关键原则相冲突应该避免重复代码。源代码中的重复增加了编译的时间会导致目标代码冗余并且通常会让代码库使用更加困难。它经常演变成不一致的代码而代码库中的不一致常常导致bug。此外打两次字比一次更费力而且没人不喜欢少打字吧 第二个使用make函数的原因和异常安全有关。假设我们有个函数按照某种优先级处理Widget void processWidget(std::shared_ptr<Widget> spw, int priority); 值传递std::shared_ptr可能看起来很可疑但是 Item41 解释了如果processWidget总是复制std::shared_ptr例如通过将其存储在已处理的Widget的一个数据结构中那么这可能是一个合理的设计选择。 现在假设我们有一个函数来计算相关的优先级, int computePriority(); 并且我们在调用processWidget时使用了new而不是std::make_shared processWidget(std::shared_ptr<Widget>(new Widget), //潜在的资源泄漏! computePriority()); 如注释所说这段代码可能在new一个Widget时发生泄漏。为何调用的代码和被调用的函数都用std::shared_ptrs且std::shared_ptrs就是设计出来防止泄漏的。它们会在最后一个std::shared_ptr销毁时自动释放所指向的内存。如果每个人在每个地方都用std::shared_ptrs这段代码怎么会泄漏呢 答案和编译器将源码转换为目标代码有关。在运行时一个函数的实参必须先被计算这个函数再被调用所以在调用processWidget之前必须执行以下操作processWidget才开始执行 表达式“new Widget”必须计算例如一个Widget对象必须在堆上被创建 负责管理new出来指针的std::shared_ptr<Widget>构造函数必须被执行 computePriority必须运行 编译器不需要按照执行顺序生成代码。“new Widget”必须在std::shared_ptr的构造函数被调用前执行因为new出来的结果作为构造函数的实参但computePriority可能在这之前之后或者 之间 执行。也就是说,编译器可能按照这个执行顺序生成代码: 执行“new Widget” 执行computePriority 运行std::shared_ptr构造函数 如果按照这样生成代码并且在运行时computePriority产生了异常那么第一步动态分配的Widget就会泄漏。因为它永远都不会被第三步的std::shared_ptr所管理了。 使用std::make_shared可以防止这种问题。调用代码看起来像是这样 processWidget(std::make_shared<Widget>(), //没有潜在的资源泄漏 computePriority()); 在运行时std::make_shared和computePriority其中一个会先被调用。如果是std::make_shared先被调用在computePriority调用前动态分配Widget的原始指针会安全的保存在作为返回值的std::shared_ptr中。如果computePriority产生一个异常那么std::shared_ptr析构函数将确保管理的Widget被销毁。如果首先调用computePriority并产生一个异常那么std::make_shared将不会被调用因此也就不需要担心动态分配Widget会泄漏。 如果我们将std::shared_ptrstd::make_shared替换成std::unique_ptrstd::make_unique同样的道理也适用。因此在编写异常安全代码时使用std::make_unique而不是new与使用std::make_shared而不是new同样重要。 std::make_shared的一个特性与直接使用new相比是效率提升。使用std::make_shared允许编译器生成更小更快的代码并使用更简洁的数据结构。考虑以下对new的直接使用 std::shared_ptr<Widget> spw(new Widget); 显然,这段代码需要进行内存分配,但它实际上执行了两次。 Item19 解释了每个std::shared_ptr指向一个控制块其中包含被指向对象的引用计数还有其他东西。这个控制块的内存在std::shared_ptr构造函数中分配。因此直接使用new需要为Widget进行一次内存分配为控制块再进行一次内存分配。 如果使用std::make_shared代替 auto spw = std::make_shared<Widget>(); 一次分配足矣。这是因为std::make_shared分配一块内存同时容纳了Widget对象和控制块。这种优化减少了程序的静态大小因为代码只包含一个内存分配调用并且它提高了可执行代码的速度因为内存只分配一次。此外使用std::make_shared避免了对控制块中的某些簿记信息的需要潜在地减少了程序的总内存占用。 对于std::make_shared的效率分析同样适用于std::allocate_shared因此std::make_shared的性能优势也扩展到了该函数。 更倾向于使用make函数而不是直接使用new的争论非常激烈。尽管它们在软件工程、异常安全和效率方面具有优势但本条款的建议是更 倾向于 使用make函数而不是完全依赖于它们。这是因为有些情况下它们不能或不应该被使用。 例如make函数都不允许指定自定义删除器见 Item18 和 19 但是std::unique_ptr和std::shared_ptr有构造函数这么做。有个Widget的自定义删除器 auto widgetDeleter = [](Widget* pw) { … }; 创建一个使用它的智能指针只能直接使用new std::unique_ptr<Widget, decltype(widgetDeleter)> upw(new Widget, widgetDeleter); std::shared_ptr<Widget> spw(new Widget, widgetDeleter); 对于make函数没有办法做同样的事情。 make函数第二个限制来自于其实现中的语法细节。 Item7 解释了当构造函数重载有使用std::initializer_list作为参数的重载形式和不用其作为参数的的重载形式用花括号创建的对象更倾向于使用std::initializer_list作为形参的重载形式而用小括号创建对象将调用不用std::initializer_list作为参数的的重载形式。make函数会将它们的参数完美转发给对象构造函数但是它们是使用小括号还是花括号对某些类型问题的答案会很不相同。例如在这些调用中 auto upv = std::make_unique<std::vector<int>>(10, 20);\nauto spv = std::make_shared<std::vector<int>>(10, 20); 生成的智能指针指向带有10个元素的std::vector每个元素值为20还是指向带有两个元素的std::vector其中一个元素值10另一个为20或者结果是不确定的 好消息是这并非不确定两种调用都创建了10个元素每个值为20的std::vector。这意味着在make函数中完美转发使用小括号而不是花括号。坏消息是如果你想用花括号初始化指向的对象你必须直接使用new。使用make函数会需要能够完美转发花括号初始化的能力但是正如 Item30 所说,花括号初始化无法完美转发。但是, Item30 介绍了一个变通的方法使用auto类型推导从花括号初始化创建std::initializer_list对象见 Item2 然后将auto创建的对象传递给make函数。 //创建std::initializer_list\nauto initList = { 10, 20 };\n//使用std::initializer_list为形参的构造函数创建std::vector\nauto spv = std::make_shared<std::vector<int>>(initList); 对于std::unique_ptr只有这两种情景自定义删除器和花括号初始化使用make函数有点问题。对于std::shared_ptr和它的make函数还有2个问题。都属于边缘情况但是一些开发者常碰到你也可能是其中之一。 一些类重载了operator new和operator delete。这些函数的存在意味着对这些类型的对象的全局内存分配和释放是不合常规的。设计这种定制操作往往只会精确的分配、释放对象大小的内存。例如Widget类的operator new和operator delete只会处理sizeof(Widget)大小的内存块的分配和释放。这种系列行为不太适用于std::shared_ptr对自定义分配通过std::allocate_shared和释放通过自定义删除器的支持因为std::allocate_shared需要的内存总大小不等于动态分配的对象大小还需要 再加上 控制块大小。因此使用make函数去创建重载了operator new和operator delete类的对象是个典型的糟糕想法。 与直接使用new相比std::make_shared在大小和速度上的优势源于std::shared_ptr的控制块与指向的对象放在同一块内存中。当对象的引用计数降为0对象被销毁即析构函数被调用。但是因为控制块和对象被放在同一块分配的内存块中直到控制块的内存也被销毁对象占用的内存才被释放。 正如我说控制块除了引用计数还包含簿记信息。引用计数追踪有多少std::shared_ptrs指向控制块但控制块还有第二个计数记录多少个std::weak_ptrs指向控制块。第二个引用计数就是 weak count 。(实际上, weak count 的值不总是等于指向控制块的std::weak_ptr的数目因为库的实现者找到一些方法在 weak count 中添加附加信息,促进更好的代码产生。为了本条款的目的,我们会忽略这一点,假定 weak count 的值等于指向控制块的std::weak_ptr的数目。当一个std::weak_ptr检测它是否过期时见 Item19 ),它会检测指向的控制块中的引用计数(而不是 weak count 。如果引用计数是0即对象没有std::shared_ptr再指向它已经被销毁了std::weak_ptr就已经过期。否则就没过期。 只要std::weak_ptrs引用一个控制块即 weak count 大于零该控制块必须继续存在。只要控制块存在包含它的内存就必须保持分配。通过std::shared_ptr的make函数分配的内存直到最后一个std::shared_ptr和最后一个指向它的std::weak_ptr已被销毁才会释放。 如果对象类型非常大而且销毁最后一个std::shared_ptr和销毁最后一个std::weak_ptr之间的时间很长那么在销毁对象和释放它所占用的内存之间可能会出现延迟。 class ReallyBigType { … }; auto pBigObj = //通过std::make_shared std::make_shared<ReallyBigType>(); //创建一个大对象 … //创建std::shared_ptrs和std::weak_ptrs //指向这个对象,使用它们 … //最后一个std::shared_ptr在这销毁 //但std::weak_ptrs还在 … //在这个阶段,原来分配给大对象的内存还分配着 … //最后一个std::weak_ptr在这里销毁 //控制块和对象的内存被释放 直接只用new一旦最后一个std::shared_ptr被销毁ReallyBigType对象的内存就会被释放 class ReallyBigType { … }; //和之前一样 std::shared_ptr<ReallyBigType> pBigObj(new ReallyBigType); //通过new创建大对象 … //像之前一样创建std::shared_ptrs和std::weak_ptrs //指向这个对象,使用它们 … //最后一个std::shared_ptr在这销毁, //但std::weak_ptrs还在 //对象的内存被释放 … //在这阶段,只有控制块的内存仍然保持分配 … //最后一个std::weak_ptr在这里销毁 //控制块内存被释放 如果你发现自己处于不可能或不合适使用std::make_shared的情况下你将想要保证自己不受我们之前看到的异常安全问题的影响。最好的方法是确保在直接使用new时在 一个不做其他事情的语句中 立即将结果传递到智能指针构造函数。这可以防止编译器生成的代码在使用new和调用管理new出来对象的智能指针的构造函数之间发生异常。 例如考虑我们前面讨论过的processWidget函数对其非异常安全调用的一个小修改。这一次我们将指定一个自定义删除器: void processWidget(std::shared_ptr<Widget> spw, //和之前一样 int priority);\nvoid cusDel(Widget *ptr); //自定义删除器 这是非异常安全调用: processWidget( //和之前一样, std::shared_ptr<Widget>(new Widget, cusDel), //潜在的内存泄漏! computePriority() ); 回想一下如果computePriority在“new Widget”之后而在std::shared_ptr构造函数之前调用并且如果computePriority产生一个异常那么动态分配的Widget将会泄漏。 这里使用自定义删除排除了对std::make_shared的使用因此避免出现问题的方法是将Widget的分配和std::shared_ptr的构造放入它们自己的语句中然后使用得到的std::shared_ptr调用processWidget。这是该技术的本质不过正如我们稍后将看到的我们可以对其进行调整以提高其性能 std::shared_ptr<Widget> spw(new Widget, cusDel);\nprocessWidget(spw, computePriority()); // 正确,但是没优化,见下 这是可行的因为std::shared_ptr获取了传递给它的构造函数的原始指针的所有权即使构造函数产生了一个异常。此例中如果spw的构造函数抛出异常比如无法为控制块动态分配内存仍然能够保证cusDel会在“new Widget”产生的指针上调用。 一个小小的性能问题是在非异常安全调用中我们将一个右值传递给processWidget processWidget( std::shared_ptr<Widget>(new Widget, cusDel), //实参是一个右值 computePriority()\n); 但是在异常安全调用中,我们传递了左值: processWidget(spw, computePriority()); //实参是左值 因为processWidget的std::shared_ptr形参是传值从右值构造只需要移动而传递左值构造需要拷贝。对std::shared_ptr而言这种区别是有意义的因为拷贝std::shared_ptr需要对引用计数原子递增移动则不需要对引用计数有操作。为了使异常安全代码达到非异常安全代码的性能水平我们需要用std::move将spw转换为右值见 Item23 processWidget(std::move(spw), computePriority()); //高效且异常安全 这很有趣也值得了解但通常是无关紧要的因为您很少有理由不使用make函数。除非你有令人信服的理由这样做否则你应该使用make函数。 请记住: 和直接使用new相比make函数消除了代码重复提高了异常安全性。对于std::make_shared和std::allocate_shared生成的代码更小更快。 不适合使用make函数的情况包括需要指定自定义删除器和希望用花括号初始化。 对于std::shared_ptrs其他不建议使用make函数的情况包括(1)有自定义内存管理的类;(2)特别关注内存的系统非常大的对象以及std::weak_ptrs比对应的std::shared_ptrs活得更久。","breadcrumbs":"第四章 智能指针 » Item 21:优先考虑使用std::make_unique和std::make_shared而非new » 条款二十一优先考虑使用std::make_unique和std::make_shared而非new","id":"35","title":"条款二十一优先考虑使用std::make_unique和std::make_shared而非new"},"36":{"body":"Item 22: When using the Pimpl Idiom, define special member functions in the implementation file 如果你曾经与过多的编译次数斗争过,你会对 Pimpl pointer to implementation 惯用法 很熟悉。 凭借这样一种技巧你可以将类数据成员替换成一个指向包含具体实现的类或结构体的指针并将放在主类primary class的数据成员们移动到实现类implementation class而这些数据成员的访问将通过指针间接访问。 举个例子假如有一个类Widget看起来如下 class Widget() { //定义在头文件“widget.h”\npublic: Widget(); …\nprivate: std::string name; std::vector<double> data; Gadget g1, g2, g3; //Gadget是用户自定义的类型\n}; 因为类Widget的数据成员包含有类型std::stringstd::vector和Gadget 定义有这些类型的头文件在类Widget编译的时候必须被包含进来这意味着类Widget的使用者必须要#include <string><vector>以及gadget.h。 这些头文件将会增加类Widget使用者的编译时间并且让这些使用者依赖于这些头文件。 如果一个头文件的内容变了类Widget使用者也必须要重新编译。 标准库文件<string>和<vector>不是很常变但是gadget.h可能会经常修订。 在C++98中使用Pimpl惯用法可以把Widget的数据成员替换成一个原始指针指向一个已经被声明过却还未被定义的结构体如下: class Widget //仍然在“widget.h”中\n{\npublic: Widget(); ~Widget(); //析构函数在后面会分析 … private: struct Impl; //声明一个 实现结构体 Impl *pImpl; //以及指向它的指针\n}; 因为类Widget不再提到类型std::stringstd::vector以及GadgetWidget的使用者不再需要为了这些类型而引入头文件。 这可以加速编译并且意味着如果这些头文件中有所变动Widget的使用者不会受到影响。 一个已经被声明,却还未被实现的类型,被称为 未完成类型 incomplete type )。 Widget::Impl就是这种类型。 你能对一个未完成类型做的事很少但是声明一个指向它的指针是可以的。Pimpl惯用法利用了这一点。 Pimpl惯用法的第一步是声明一个数据成员它是个指针指向一个未完成类型。 第二步是动态分配和回收一个对象,该对象包含那些以前在原来的类中的数据成员。 内存分配和回收的代码都写在实现文件里比如对于类Widget而言写在Widget.cpp里: #include \"widget.h\" //以下代码均在实现文件“widget.cpp”里\n#include \"gadget.h\"\n#include <string>\n#include <vector> struct Widget::Impl { //含有之前在Widget中的数据成员的 std::string name; //Widget::Impl类型的定义 std::vector<double> data; Gadget g1,g2,g3;\n}; Widget::Widget() //为此Widget对象分配数据成员\n: pImpl(new Impl)\n{} Widget::~Widget() //销毁数据成员\n{ delete pImpl; } 在这里我把#include命令写出来是为了明确一点对于std::stringstd::vector和Gadget的头文件的整体依赖依然存在。 然而这些依赖从头文件widget.h它被所有Widget类的使用者包含并且对他们可见移动到了widget.cpp该文件只被Widget类的实现者包含并只对他可见。 我高亮了其中动态分配和回收Impl对象的部分译者注markdown高亮不了实际高亮的是new Impl和delete pImpl;两个语句。这就是为什么我们需要Widget的析构函数——我们需要Widget被销毁时回收该对象。 但是我展示给你们看的是一段C++98的代码散发着一股已经过去了几千年的腐朽气息。 它使用了原始指针原始的new和原始的delete一切都让它如此的...原始。这一章建立在“智能指针比原始指针更好”的主题上并且如果我们想要的只是在类Widget的构造函数动态分配Widget::impl对象在Widget对象销毁时一并销毁它 std::unique_ptr见 Item18 是最合适的工具。在头文件中用std::unique_ptr替代原始指针就有了头文件中如下代码: class Widget { //在“widget.h”中\npublic: Widget(); … private: struct Impl; std::unique_ptr<Impl> pImpl; //使用智能指针而不是原始指针\n}; 实现文件也可以改成如下: #include \"widget.h\" //在“widget.cpp”中\n#include \"gadget.h\"\n#include <string>\n#include <vector> struct Widget::Impl { //跟之前一样 std::string name; std::vector<double> data; Gadget g1,g2,g3;\n}; Widget::Widget() //根据条款21通过std::make_unique\n: pImpl(std::make_unique<Impl>()) //来创建std::unique_ptr\n{} 你会注意到Widget的析构函数不存在了。这是因为我们没有代码加在里面了。 std::unique_ptr在自身析构时会自动销毁它所指向的对象所以我们自己无需手动销毁任何东西。这就是智能指针的众多优点之一它使我们从手动资源释放中解放出来。 以上的代码能编译但是最普通的Widget用法却会导致编译出错 #include \"widget.h\" Widget w; //错误! 你所看到的错误信息根据编译器不同会有所不同但是其文本一般会提到一些有关于“把sizeof或delete应用到未完成类型上”的信息。对于未完成类型使用以上操作是禁止的。 在Pimpl惯用法中使用std::unique_ptr会抛出错误有点惊悚因为第一std::unique_ptr宣称它支持未完成类型第二Pimpl惯用法是std::unique_ptr的最常见的使用情况之一。 幸运的是,让这段代码能正常运行很简单。 只需要对上面出现的问题的原因有一个基础的认识就可以了。 在对象w被析构时例如离开了作用域问题出现了。在这个时候它的析构函数被调用。我们在类的定义里使用了std::unique_ptr所以我们没有声明一个析构函数因为我们并没有任何代码需要写在里面。根据编译器自动生成的特殊成员函数的规则见 Item17 ),编译器会自动为我们生成一个析构函数。 在这个析构函数里编译器会插入一些代码来调用类Widget的数据成员pImpl的析构函数。 pImpl是一个std::unique_ptr<Widget::Impl>也就是说一个使用默认删除器的std::unique_ptr。 默认删除器是一个函数它使用delete来销毁内置于std::unique_ptr的原始指针。然而在使用delete之前通常会使默认删除器使用C++11的特性static_assert来确保原始指针指向的类型不是一个未完成类型。 当编译器为Widget w的析构生成代码时它会遇到static_assert检查并且失败这通常是错误信息的来源。 这些错误信息只在对象w销毁的地方出现因为类Widget的析构函数正如其他的编译器生成的特殊成员函数一样是暗含inline属性的。 错误信息自身往往指向对象w被创建的那行因为这行代码明确地构造了这个对象导致了后面潜在的析构。 为了解决这个问题你只需要确保在编译器生成销毁std::unique_ptr<Widget::Impl>的代码之前, Widget::Impl已经是一个完成类型 complete type )。 当编译器“看到”它的定义的时候,该类型就成为完成类型了。 但是 Widget::Impl的定义在widget.cpp里。成功编译的关键就是在widget.cpp文件内让编译器在“看到” Widget的析构函数实现之前也即编译器插入的用来销毁std::unique_ptr这个数据成员的代码的那个位置先定义Widget::Impl。 做出这样的调整很容易。只需要在先在widget.h里只声明类Widget的析构函数却不要在这里定义它 class Widget { //跟之前一样在“widget.h”中\npublic: Widget(); ~Widget(); //只有声明语句 … private: //跟之前一样 struct Impl; std::unique_ptr<Impl> pImpl;\n}; 在widget.cpp文件中在结构体Widget::Impl被定义之后再定义析构函数 #include \"widget.h\" //跟之前一样在“widget.cpp”中\n#include \"gadget.h\"\n#include <string>\n#include <vector> struct Widget::Impl { //跟之前一样定义Widget::Impl std::string name; std::vector<double> data; Gadget g1,g2,g3;\n} Widget::Widget() //跟之前一样\n: pImpl(std::make_unique<Impl>())\n{} Widget::~Widget() //析构函数的定义(译者注:这里高亮)\n{} 这样就可以了并且这样增加的代码也最少但是如果你想要强调编译器自动生成的析构函数做的没错——你声明Widget的析构函数的唯一原因是确保它会在Widget的实现文件内译者注指widget.cpp被自动生成你可以把析构函数体直接定义为“= default” Widget::~Widget() = default; //同上述代码效果一致 使用了Pimpl惯用法的类自然适合支持移动操作因为编译器自动生成的移动操作正合我们所意对其中的std::unique_ptr进行移动。 正如 Item17 所解释的那样声明一个类Widget的析构函数会阻止编译器生成移动操作所以如果你想要支持移动操作你必须自己声明相关的函数。考虑到编译器自动生成的版本能够正常功能你可能会被诱使着来这样实现: class Widget { //仍然在“widget.h”中\npublic: Widget(); ~Widget(); Widget(Widget&& rhs) = default; //思路正确, Widget& operator=(Widget&& rhs) = default; //但代码错误 … private: //跟之前一样 struct Impl; std::unique_ptr<Impl> pImpl;\n}; 这样的做法会导致同样的错误,和之前的声明一个不带析构函数的类的错误一样,并且是因为同样的原因。 编译器生成的移动赋值操作符在重新赋值之前需要先销毁指针pImpl指向的对象。然而在Widget的头文件里pImpl指针指向的是一个未完成类型。移动构造函数的情况有所不同。 移动构造函数的问题是编译器自动生成的代码里包含有抛出异常的事件在这个事件里会生成销毁pImpl的代码。然而销毁pImpl需要Impl是一个完成类型。 因为这个问题同上面一致,所以解决方案也一样——把移动操作的定义移动到实现文件里: class Widget { //仍然在“widget.h”中\npublic: Widget(); ~Widget(); Widget(Widget&& rhs); //只有声明 Widget& operator=(Widget&& rhs); … private: //跟之前一样 struct Impl; std::unique_ptr<Impl> pImpl;\n}; #include <string> //跟之前一样仍然在“widget.cpp”中\n… struct Widget::Impl { … }; //跟之前一样 Widget::Widget() //跟之前一样\n: pImpl(std::make_unique<Impl>())\n{} Widget::~Widget() = default; //跟之前一样 Widget::Widget(Widget&& rhs) = default; //这里定义\nWidget& Widget::operator=(Widget&& rhs) = default; Pimpl惯用法是用来减少类的实现和类使用者之间的编译依赖的一种方法但是从概念而言使用这种惯用法并不改变这个类的表现。 原来的类Widget包含有std::stringstd::vector和Gadget数据成员并且假设类型Gadget如同std::string和std::vector一样允许复制操作所以类Widget支持复制操作也很合理。 我们必须要自己来写这些函数,因为第一,对包含有只可移动( move-only 类型如std::unique_ptr的类编译器不会生成复制操作第二即使编译器帮我们生成了生成的复制操作也只会复制std::unique_ptr也即浅复制 shallow copy ,而实际上我们需要复制指针所指向的对象(也即深复制( deep copy ))。 使用我们已经熟悉的方法,我们在头文件里声明函数,而在实现文件里去实现他们: class Widget { //仍然在“widget.h”中\npublic: … Widget(const Widget& rhs); //只有声明 Widget& operator=(const Widget& rhs); private: //跟之前一样 struct Impl; std::unique_ptr<Impl> pImpl;\n}; #include <string> //跟之前一样仍然在“widget.cpp”中\n… struct Widget::Impl { … }; //跟之前一样 Widget::~Widget() = default; //其他函数,跟之前一样 Widget::Widget(const Widget& rhs) //拷贝构造函数\n: pImpl(std::make_unique<Impl>(*rhs.pImpl))\n{} Widget& Widget::operator=(const Widget& rhs) //拷贝operator=\n{ *pImpl = *rhs.pImpl; return *this;\n} 两个函数的实现都比较中规中矩。 在每个情况中我们都只从源对象rhs复制了结构体Impl的内容到目标对象中*this。我们利用了编译器会为我们自动生成结构体Impl的复制操作函数的机制而不是逐一复制结构体Impl的成员自动生成的复制操作能自动复制每一个成员。 因此我们通过调用编译器生成的Widget::Impl的复制操作函数来实现了类Widget的复制操作。 在复制构造函数中,注意,我们仍然遵从了 Item21 的建议使用std::make_unique而非直接使用new。 为了实现Pimpl惯用法std::unique_ptr是我们使用的智能指针因为位于对象内部的pImpl指针例如在类Widget内部对所指向的对应实现的对象的享有独占所有权。然而有趣的是如果我们使用std::shared_ptr而不是std::unique_ptr来做pImpl指针 我们会发现本条款的建议不再适用。 我们不需要在类Widget里声明析构函数没有了用户定义析构函数编译器将会愉快地生成移动操作并且将会如我们所期望般工作。widget.h里的代码如下 class Widget { //在“widget.h”中\npublic: Widget(); … //没有析构函数和移动操作的声明 private: struct Impl; std::shared_ptr<Impl> pImpl; //用std::shared_ptr\n}; //而不是std::unique_ptr 这是#include了widget.h的客户代码 Widget w1;\nauto w2(std::move(w1)); //移动构造w2\nw1 = std::move(w2); //移动赋值w1 这些都能编译并且工作地如我们所望w1将会被默认构造它的值会被移动进w2随后值将会被移动回w1然后两者都会被销毁因此导致指向的Widget::Impl对象一并也被销毁。 std::unique_ptr和std::shared_ptr在pImpl指针上的表现上的区别的深层原因在于他们支持自定义删除器的方式不同。 对std::unique_ptr而言删除器的类型是这个智能指针的一部分这让编译器有可能生成更小的运行时数据结构和更快的运行代码。 这种更高效率的后果之一就是std::unique_ptr指向的类型在编译器的生成特殊成员函数如析构函数移动操作被调用时必须已经是一个完成类型。 而对std::shared_ptr而言删除器的类型不是该智能指针的一部分这让它会生成更大的运行时数据结构和稍微慢点的代码但是当编译器生成的特殊成员函数被使用的时候指向的对象不必是一个完成类型。译者注知道std::unique_ptr和std::shared_ptr的实现这一段才比较容易理解。 对于Pimpl惯用法而言在std::unique_ptr和std::shared_ptr的特性之间没有一个比较好的折中。 因为对于像Widget的类以及像Widget::Impl的类之间的关系而言他们是独享占有权关系这让std::unique_ptr使用起来很合适。 然而有必要知道在其他情况中当共享所有权存在时std::shared_ptr是很适用的选择的时候就没有std::unique_ptr所必需的声明——定义function-definition这样的麻烦事了。 请记住: Pimpl惯用法通过减少在类实现和类使用者之间的编译依赖来减少编译时间。 对于std::unique_ptr类型的pImpl指针需要在头文件的类里声明特殊的成员函数但是在实现文件里面来实现他们。即使是编译器自动生成的代码可以工作也要这么做。 以上的建议只适用于std::unique_ptr不适用于std::shared_ptr。","breadcrumbs":"第四章 智能指针 » Item 22:当使用Pimpl惯用法请在实现文件中定义特殊成员函数 » 条款二十二当使用Pimpl惯用法请在实现文件中定义特殊成员函数","id":"36","title":"条款二十二当使用Pimpl惯用法请在实现文件中定义特殊成员函数"},"37":{"body":"CHAPTER 5 RValue References, Move Semantics and Perfect Forwarding 当你第一次了解到移动语义( move semantics )和完美转发( perfect forwarding )的时候,它们看起来非常直观: 移动语义 使编译器有可能用廉价的移动操作来代替昂贵的拷贝操作。正如拷贝构造函数和拷贝赋值操作符给了你控制拷贝语义的权力,移动构造函数和移动赋值操作符也给了你控制移动语义的权力。移动语义也允许创建只可移动( move-only 的类型例如std::unique_ptrstd::future和std::thread。 完美转发 使接收任意数量实参的函数模板成为可能,它可以将实参转发到其他的函数,使目标函数接收到的实参与被传递给转发函数的实参保持一致。 右值引用 是连接这两个截然不同的概念的胶合剂。它是使移动语义和完美转发变得可能的基础语言机制。 你对这些特点越熟悉你就越会发现你的初印象只不过是冰山一角。移动语义、完美转发和右值引用的世界比它所呈现的更加微妙。举个例子std::move并不移动任何东西完美转发也并不完美。移动操作并不永远比复制操作更廉价即便如此它也并不总是像你期望的那么廉价。而且它也并不总是被调用即使在当移动操作可用的时候。构造“type&&”也并非总是代表一个右值引用。 无论你挖掘这些特性有多深它们看起来总是还有更多隐藏起来的部分。幸运的是它们的深度总是有限的。本章将会带你到最基础的部分。一旦到达C++11的这部分特性将会具有非常大的意义。比如你会掌握std::move和std::forward的惯用法。你能够适应“type&&”的歧义性质。你会理解移动操作的令人惊奇的不同表现的背后真相。这些片段都会豁然开朗。在这一点上,你会重新回到一开始的状态,因为移动语义、完美转发和右值引用都会又一次显得直截了当。但是这一次,它们不再使人困惑。 在本章的这些小节中,非常重要的一点是要牢记形参永远是 左值 ,即使它的类型是一个右值引用。比如,假设 void f(Widget&& w); 形参w是一个左值即使它的类型是一个rvalue-reference-to-Widget。如果这里震惊到你了请重新回顾从本书 简介 开始的关于左值和右值的总览。)","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 23:理解std::move和std::forward » 第5章 右值引用,移动语义,完美转发","id":"37","title":"第5章 右值引用,移动语义,完美转发"},"38":{"body":"Item 23: Understand std::move and std::forward 为了了解std::move和std::forward一种有用的方式是从 它们不做什么 这个角度来了解它们。std::move不移动move任何东西std::forward也不转发forward任何东西。在运行时它们不做任何事情。它们不产生任何可执行代码一字节也没有。 std::move和std::forward仅仅是执行转换cast的函数事实上是函数模板。std::move无条件的将它的实参转换为右值而std::forward只在特定情况满足时下进行转换。它们就是如此。这样的解释带来了一些新的问题但是从根本上而言这就是全部内容。 为了使这个故事更加的具体这里是一个C++11的std::move的示例实现。它并不完全满足标准细则但是它已经非常接近了。 template<typename T> //在std命名空间\ntypename remove_reference<T>::type&&\nmove(T&& param)\n{ using ReturnType = //别名声明见条款9 typename remove_reference<T>::type&&; return static_cast<ReturnType>(param);\n} 我为你们高亮了这段代码的两部分译者注高亮的部分为函数名move和static_cast<ReturnType>(param)。一个是函数名字因为函数的返回值非常具有干扰性而且我不想你们被它搞得晕头转向。另外一个高亮的部分是包含这段函数的本质的转换。正如你所见std::move接受一个对象的引用准确的说一个通用引用universal reference见 Item24 ),返回一个指向同对象的引用。 该函数返回类型的&&部分表明std::move函数返回的是一个右值引用但是正如 Item28 所解释的那样如果类型T恰好是一个左值引用那么T&&将会成为一个左值引用。为了避免如此, type trait (见 Item9 std::remove_reference应用到了类型T上因此确保了&&被正确的应用到了一个不是引用的类型上。这保证了std::move返回的真的是右值引用这很重要因为函数返回的右值引用是右值。因此std::move将它的实参转换为一个右值这就是它的全部作用。 此外std::move在C++14中可以被更简单地实现。多亏了函数返回值类型推导见 Item3 和标准库的模板别名std::remove_reference_t见 Item9 std::move可以这样写 template<typename T>\ndecltype(auto) move(T&& param) //C++14仍然在std命名空间\n{ using ReturnType = remove_referece_t<T>&&; return static_cast<ReturnType>(param);\n} 看起来更简单,不是吗? 因为std::move除了转换它的实参到右值以外什么也不做有一些提议说它的名字叫rvalue_cast之类可能会更好。虽然可能确实是这样但是它的名字已经是std::move所以记住std::move做什么和不做什么很重要。它只进行转换不移动任何东西。 当然右值本来就是移动操作的候选者所以对一个对象使用std::move就是告诉编译器这个对象很适合被移动。所以这就是为什么std::move叫现在的名字更容易指定可以被移动的对象。 事实上,右值只不过 经常 是移动操作的候选者。假设你有一个类它用来表示一段注解。这个类的构造函数接受一个包含有注解的std::string作为形参然后它复制该形参到数据成员。假设你了解 Item41 ,你声明一个值传递的形参: class Annotation {\npublic: explicit Annotation(std::string text); //将会被复制的形参, … //如同条款41所说\n}; //值传递 但是Annotation类的构造函数仅仅是需要读取text的值它并不需要修改它。为了和历史悠久的传统能使用const就使用const保持一致你修订了你的声明以使text变成const class Annotation {\npublic: explicit Annotation(const std::string text); …\n}; 当复制text到一个数据成员的时候为了避免一次复制操作的代价你仍然记得来自 Item41 的建议把std::move应用到text上因此产生一个右值 class Annotation {\npublic: explicit Annotation(const std::string text) value(std::move(text)) //“移动”text到value里这段代码执行起来 { … } //并不是看起来那样 … private: std::string value;\n}; 这段代码可以编译可以链接可以运行。这段代码将数据成员value设置为text的值。这段代码与你期望中的完美实现的唯一区别是text并不是被移动到value而是被 拷贝 。诚然text通过std::move被转换到右值但是text被声明为const std::string所以在转换之前text是一个左值的const std::string而转换的结果是一个右值的const std::string但是纵观全程const属性一直保留。 当编译器决定哪一个std::string的构造函数被调用时考虑它的作用将会有两种可能性 class string { //std::string事实上是\npublic: //std::basic_string<char>的类型别名 … string(const string& rhs); //拷贝构造函数 string(string&& rhs); //移动构造函数 …\n}; 在类Annotation的构造函数的成员初始化列表中std::move(text)的结果是一个const std::string的右值。这个右值不能被传递给std::string的移动构造函数因为移动构造函数只接受一个指向 non-const 的std::string的右值引用。然而该右值却可以被传递给std::string的拷贝构造函数因为lvalue-reference-to-const允许被绑定到一个const右值上。因此std::string在成员初始化的过程中调用了 拷贝 构造函数即使text已经被转换成了右值。这样是为了确保维持const属性的正确性。从一个对象中移动出某个值通常代表着修改该对象所以语言不允许const对象被传递给可以修改他们的函数例如移动构造函数。 从这个例子中可以总结出两点。第一不要在你希望能移动对象的时候声明他们为const。对const对象的移动请求会悄无声息的被转化为拷贝操作。第二点std::move不仅不移动任何东西而且它也不保证它执行转换的对象可以被移动。关于std::move你能确保的唯一一件事就是将它应用到一个对象上你能够得到一个右值。 关于std::forward的故事与std::move是相似的但是与std::move总是 无条件 的将它的实参为右值不同std::forward只有在满足一定条件的情况下才执行转换。std::forward是 有条件 的转换。要明白什么时候它执行转换什么时候不想想std::forward的典型用法。最常见的情景是一个模板函数接收一个通用引用形参并将它传递给另外的函数 void process(const Widget& lvalArg); //处理左值\nvoid process(Widget&& rvalArg); //处理右值 template<typename T> //用以转发param到process的模板\nvoid logAndProcess(T&& param)\n{ auto now = //获取现在时间 std::chrono::system_clock::now(); makeLogEntry(\"Calling 'process'\", now); process(std::forward<T>(param));\n} 考虑两次对logAndProcess的调用一次左值为实参一次右值为实参 Widget w; logAndProcess(w); //用左值调用\nlogAndProcess(std::move(w)); //用右值调用 在logAndProcess函数的内部形参param被传递给函数process。函数process分别对左值和右值做了重载。当我们使用左值来调用logAndProcess时自然我们期望该左值被当作左值转发给process函数而当我们使用右值来调用logAndProcess函数时我们期望process函数的右值重载版本被调用。 但是param正如所有的其他函数形参一样是一个左值。每次在函数logAndProcess内部对函数process的调用都会因此调用函数process的左值重载版本。为防如此我们需要一种机制当且仅当传递给函数logAndProcess的用以初始化param的实参是一个右值时param会被转换为一个右值。这就是std::forward做的事情。这就是为什么std::forward是一个 有条件 的转换:它的实参用右值初始化时,转换为一个右值。 你也许会想知道std::forward是怎么知道它的实参是否是被一个右值初始化的。举个例子在上述代码中std::forward是怎么分辨param是被一个左值还是右值初始化的 简短的说该信息藏在函数logAndProcess的模板参数T中。该参数被传递给了函数std::forward它解开了含在其中的信息。该机制工作的细节可以查询 Item28 。 考虑到std::move和std::forward都可以归结于转换它们唯一的区别就是std::move总是执行转换而std::forward偶尔为之。你可能会问是否我们可以免于使用std::move而在任何地方只使用std::forward。 从纯技术的角度答案是yesstd::forward是可以完全胜任std::move并非必须。当然其实两者中没有哪一个函数是 真的必须 的,因为我们可以到处直接写转换代码,但是我希望我们能同意:这将相当的,嗯,让人恶心。 std::move的吸引力在于它的便利性减少了出错的可能性增加了代码的清晰程度。考虑一个类我们希望统计有多少次移动构造函数被调用了。我们只需要一个static的计数器它会在移动构造的时候自增。假设在这个类中唯一一个非静态的数据成员是std::string一种经典的移动构造函数使用std::move可以被实现如下 class Widget {\npublic: Widget(Widget&& rhs) : s(std::move(rhs.s)) { ++moveCtorCalls; } … private: static std::size_t moveCtorCalls; std::string s;\n}; 如果要用std::forward来达成同样的效果代码可能会看起来像 class Widget{\npublic: Widget(Widget&& rhs) //不自然,不合理的实现 : s(std::forward<std::string>(rhs.s)) { ++moveCtorCalls; } … } 注意第一std::move只需要一个函数实参rhs.s而std::forward不但需要一个函数实参rhs.s还需要一个模板类型实参std::string。其次我们传递给std::forward的类型应当是一个non-reference因为惯例是传递的实参应该是一个右值见 Item28 。同样这意味着std::move比起std::forward来说需要打更少的字并且免去了传递一个表示我们正在传递一个右值的类型实参。同样它根绝了我们传递错误类型的可能性例如std::string&可能导致数据成员s被复制而不是被移动构造。 更重要的是std::move的使用代表着无条件向右值的转换而使用std::forward只对绑定了右值的引用进行到右值转换。这是两种完全不同的动作。前者是典型地为了移动操作而后者只是传递亦为转发一个对象到另外一个函数保留它原有的左值属性或右值属性。因为这些动作实在是差异太大所以我们拥有两个不同的函数以及函数名来区分这些动作。 请记住: std::move执行到右值的无条件的转换但就自身而言它不移动任何东西。 std::forward只有当它的参数被绑定到一个右值时才将参数转换为右值。 std::move和std::forward在运行期什么也不做。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 23:理解std::move和std::forward » 条款二十三理解std::move和std::forward","id":"38","title":"条款二十三理解std::move和std::forward"},"39":{"body":"Item 24: Distinguish universal references from rvalue references 据说真相使人自由然而在特定的环境下一个精心挑选的谎言也同样使人解放。这一条款就是这样一个谎言。因为我们在和软件打交道然而让我们避开“谎言lie”这个词不妨说本条款包含了一种“抽象abstraction”。 为了声明一个指向某个类型T的右值引用你写下了T&&。由此一个合理的假设是当你看到一个“T&&”出现在源码中,你看到的是一个右值引用。唉,事情并不如此简单: void f(Widget&& param); //右值引用\nWidget&& var1 = Widget(); //右值引用\nauto&& var2 = var1; //不是右值引用 template<typename T>\nvoid f(std::vector<T>&& param); //右值引用 template<typename T>\nvoid f(T&& param); //不是右值引用 事实上“T&&”有两种不同的意思。第一种,当然是右值引用。这种引用表现得正如你所期待的那样:它们只绑定到右值上,并且它们主要的存在原因就是为了识别可以移动操作的对象。 “T&&”的另一种意思是它既可以是右值引用也可以是左值引用。这种引用在源码里看起来像右值引用即“T&&”但是它们可以表现得像是左值引用即“T&”)。它们的二重性使它们既可以绑定到右值上(就像右值引用),也可以绑定到左值上(就像左值引用)。 此外它们还可以绑定到const或者non-const的对象上也可以绑定到volatile或者non-volatile的对象上甚至可以绑定到既const又volatile的对象上。它们可以绑定到几乎任何东西。这种空前灵活的引用值得拥有自己的名字。我把它叫做 通用引用 universal references )。( Item25 解释了std::forward几乎总是可以应用到通用引用上并且在这本书即将出版之际一些C++社区的成员已经开始将这种通用引用称之为 转发引用 forwarding references ))。 在两种情况下会出现通用引用。最常见的一种是函数模板形参,正如在之前的示例代码中所出现的例子: template<typename T>\nvoid f(T&& param); //param是一个通用引用 第二种情况是auto声明符它是从以上示例中拿出的 auto&& var2 = var1; //var2是一个通用引用 这两种情况的共同之处就是都存在 类型推导 type deduction 。在模板f的内部param的类型需要被推导而在变量var2的声明中var2的类型也需要被推导。同以下的例子相比较同样来自于上面的示例代码下面的例子不带有类型推导。如果你看见“T&&”不带有类型推导,那么你看到的就是一个右值引用: void f(Widget&& param); //没有类型推导, //param是一个右值引用\nWidget&& var1 = Widget(); //没有类型推导, //var1是一个右值引用 因为通用引用是引用,所以它们必须被初始化。一个通用引用的初始值决定了它是代表了右值引用还是左值引用。如果初始值是一个右值,那么通用引用就会是对应的右值引用,如果初始值是一个左值,那么通用引用就会是一个左值引用。对那些是函数形参的通用引用来说,初始值在调用函数的时候被提供: template<typename T>\nvoid f(T&& param); //param是一个通用引用 Widget w;\nf(w); //传递给函数f一个左值param的类型 //将会是Widget&,也即左值引用 f(std::move(w)); //传递给f一个右值param的类型会是 //Widget&&,即右值引用 对一个通用引用而言,类型推导是必要的,但是它还不够。引用声明的 形式 必须正确并且该形式是被限制的。它必须恰好为“T&&”。再看看之前我们已经看过的代码示例: template <typename T>\nvoid f(std::vector<T>&& param); //param是一个右值引用 当函数f被调用的时候类型T会被推导除非调用者显式地指定它这种边缘情况我们不考虑。但是param的类型声明并不是T&&而是一个std::vector<T>&&。这排除了param是一个通用引用的可能性。param因此是一个右值引用——当你向函数f传递一个左值时你的编译器将会乐于帮你确认这一点: std::vector<int> v;\nf(v); //错误!不能将左值绑定到右值引用 即使一个简单的const修饰符的出现也足以使一个引用失去成为通用引用的资格: template <typename T>\nvoid f(const T&& param); //param是一个右值引用 如果你在一个模板里面看见了一个函数形参类型为“T&&”你也许觉得你可以假定它是一个通用引用。错这是由于在模板内部并不保证一定会发生类型推导。考虑如下push_back成员函数来自std::vector template<class T, class Allocator = allocator<T>> //来自C++标准\nclass vector\n{\npublic: void push_back(T&& x); …\n} push_back函数的形参当然有一个通用引用的正确形式然而在这里并没有发生类型推导。因为push_back在有一个特定的vector实例之前不可能存在而实例化vector时的类型已经决定了push_back的声明。也就是说 std::vector<Widget> v; 将会导致std::vector模板被实例化为以下代码 class vector<Widget, allocator<Widget>> {\npublic: void push_back(Widget&& x); //右值引用 …\n}; 现在你可以清楚地看到函数push_back不包含任何类型推导。push_back对于vector<T>而言有两个函数——它被重载了总是声明了一个类型为rvalue-reference-to-T的形参。 作为对比std::vector内的概念上相似的成员函数emplace_back却确实包含类型推导: template<class T, class Allocator = allocator<T>> //依旧来自C++标准\nclass vector {\npublic: template <class... Args> void emplace_back(Args&&... args); …\n}; 这儿,类型参数( type parameter Args是独立于vector的类型参数T的所以Args会在每次emplace_back被调用的时候被推导。好吧Args实际上是一个 parameter pack ,而不是一个类型参数,但是为了方便讨论,我们可以把它当作是一个类型参数。) 虽然函数emplace_back的类型参数被命名为Args但是它仍然是一个通用引用这补充了我之前所说的通用引用的格式必须是“T&&”。你使用的名字T并不是必要的。举个例子如下模板接受一个通用引用因为形式“type&&”是正确的并且param的类型将会被推导重复一次不考虑边缘情况即当调用者明确给定类型的时候。 template<typename MyTemplateType> //param是通用引用\nvoid someFunc(MyTemplateType&& param); 我之前提到类型为auto的变量可以是通用引用。更准确地说类型声明为auto&&的变量是通用引用,因为会发生类型推导,并且它们具有正确形式(T&&)。auto类型的通用引用不如函数模板形参中的通用引用常见但是它们在C++11中常常突然出现。而它们在C++14中出现得更多因为C++14的 lambda 表达式可以声明auto&&类型的形参。举个例子如果你想写一个C++14标准的 lambda 表达式,来记录任意函数调用的时间开销,你可以这样写: auto timeFuncInvocation = [](auto&& func, auto&&... params) //C++14 { start timer; std::forward<decltype(func)>(func)( //对params调用func std::forward<delctype(params)>(params)... ); stop timer and record elapsed time; }; 如果你对 lambda 里的代码“std::forward<decltype(blah blah blah)>”反应是“这是什么鬼...?!”,只能说你可能还没有读 Item33 。别担心。在本条款,重要的事是 lambda 表达式中声明的auto&&类型的形参。func是一个通用引用可以被绑定到任何可调用对象无论左值还是右值。args是0个或者多个通用引用即它是个通用引用 parameter pack 它可以绑定到任意数目、任意类型的对象上。多亏了auto类型的通用引用函数timeFuncInvocation可以对 近乎任意 pretty much any函数进行计时。(如果你想知道任意any和近乎任意pretty much any的区别往后翻到 Item30 )。 牢记整个本条款——通用引用的基础——是一个谎言,噢不,是一个“抽象”。其底层真相被称为 引用折叠 reference collapsing Item28 的专题将致力于讨论它。但是这个真相并不降低该抽象的有用程度。区分右值引用和通用引用将会帮助你更准确地阅读代码“究竟我眼前的这个T&&是只绑定到右值还是可以绑定任意对象呢?”),并且,当你在和你的合作者交流时,它会帮助你避免歧义(“在这里我在用一个通用引用,而非右值引用”)。它也可以帮助你弄懂 Item25 和 26 ,它们依赖于右值引用和通用引用的区别。所以,拥抱这份抽象,陶醉于它吧。就像牛顿的力学定律(本质上不正确),比起爱因斯坦的广义相对论(这是真相)而言,往往更简单,更易用。所以通用引用的概念,相较于穷究引用折叠的细节而言,是更合意之选。 请记住: 如果一个函数模板形参的类型为T&&并且T需要被推导得知或者如果一个对象被声明为auto&&,这个形参或者对象就是一个通用引用。 如果类型声明的形式不是标准的type&&或者如果类型推导没有发生那么type&&代表一个右值引用。 通用引用,如果它被右值初始化,就会对应地成为右值引用;如果它被左值初始化,就会成为左值引用。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 24:区别通用引用和右值引用 » 条款二十四:区分通用引用与右值引用","id":"39","title":"条款二十四:区分通用引用与右值引用"},"4":{"body":"Item 1: Understand template type deduction 对于一个复杂系统的用户来说很多时候他们最关心的是它做了什么而不是它怎么做的。在这一点上C++中的模板类型推导表现得非常出色。数百万的程序员只需要向模板函数传递实参,就能通过编译器的类型推导获得令人满意的结果,尽管他们中的大多数在被逼无奈的情况下,对于传递给函数的那些实参是如何引导编译器进行类型推导的,也只能给出非常模糊的描述。 如果那些人中包括你我有一个好消息和一个坏消息。好消息是现在C++最重要最吸引人的特性auto是建立在模板类型推导的基础上的。如果你满意C++98的模板类型推导那么你也会满意C++11的auto类型推导。坏消息是当模板类型推导规则应用于auto环境时有时不如应用于template时那么直观。由于这个原因真正理解auto基于的模板类型推导的方方面面非常重要。这项条款便包含了你需要知道的东西。 如果你不介意浏览少许伪代码,我们可以考虑像这样一个函数模板: template<typename T>\nvoid f(ParamType param); 它的调用看起来像这样 f(expr); //使用表达式调用f 在编译期间编译器使用expr进行两个类型推导一个是针对T的另一个是针对ParamType的。这两个类型通常是不同的因为ParamType包含一些修饰比如const和引用修饰符。举个例子如果模板这样声明 template<typename T>\nvoid f(const T& param); //ParamType是const T& 然后这样进行调用 int x = 0;\nf(x); //用一个int类型的变量调用f T被推导为intParamType却被推导为const int& 我们可能很自然的期望T和传递进函数的实参是相同的类型也就是T为expr的类型。在上面的例子中事实就是那样x是intT被推导为int。但有时情况并非总是如此T的类型推导不仅取决于expr的类型也取决于ParamType的类型。这里有三种情况 ParamType是一个指针或引用但不是通用引用关于通用引用请参见 Item24 。在这里你只需要知道它存在,而且不同于左值引用和右值引用) ParamType一个通用引用 ParamType既不是指针也不是引用 我们下面将分成三个情景来讨论这三种情况,每个情景的都基于我们之前给出的模板: template<typename T>\nvoid f(ParamType param); f(expr); //从expr中推导T和ParamType","breadcrumbs":"第一章 类型推导 » Item 1:理解模板类型推导 » 条款一:理解模板类型推导","id":"4","title":"条款一:理解模板类型推导"},"40":{"body":"Item 25: Use std::move on rvalue references, std::forward on universal references 右值引用仅绑定可以移动的对象。如果你有一个右值引用形参就知道这个对象可能会被移动: class Widget { Widget(Widget&& rhs); //rhs定义上引用一个有资格移动的对象 …\n}; 这是个例子你将希望传递这样的对象给其他函数允许那些函数利用对象的右值性rvalueness。这样做的方法是将绑定到此类对象的形参转换为右值。如 Item23 中所述这不仅是std::move所做而且它的创建就是为了这个目的 class Widget {\npublic: Widget(Widget&& rhs) //rhs是右值引用 : name(std::move(rhs.name)), p(std::move(rhs.p)) { … } …\nprivate: std::string name; std::shared_ptr<SomeDataStructure> p;\n}; 另一方面(查看 Item24 ),通用引用 可能 绑定到有资格移动的对象上。通用引用使用右值初始化时,才将其强制转换为右值。 Item23 阐释了这正是std::forward所做的 class Widget {\npublic: template<typename T> void setName(T&& newName) //newName是通用引用 { name = std::forward<T>(newName); } …\n}; 总而言之,当把右值引用转发给其他函数时,右值引用应该被 无条件转换 为右值通过std::move因为它们 总是 绑定到右值;当转发通用引用时,通用引用应该 有条件地转换 为右值通过std::forward因为它们只是 有时 绑定到右值。 Item23 解释说可以在右值引用上使用std::forward表现出适当的行为但是代码较长容易出错所以应该避免在右值引用上使用std::forward。更糟的是在通用引用上使用std::move这可能会意外改变左值比如局部变量 class Widget {\npublic: template<typename T> void setName(T&& newName) //通用引用可以编译, { name = std::move(newName); } //但是代码太太太差了! … private: std::string name; std::shared_ptr<SomeDataStructure> p;\n}; std::string getWidgetName(); //工厂函数 Widget w; auto n = getWidgetName(); //n是局部变量 w.setName(n); //把n移动进w … //现在n的值未知 上面的例子局部变量n被传递给w.setName调用方可能认为这是对n的只读操作——这一点倒是可以被原谅。但是因为setName内部使用std::move无条件将传递的引用形参转换为右值n的值被移动进w.name调用setName返回时n最终变为未定义的值。这种行为使得调用者蒙圈了——还有可能变得狂躁。 你可能争辩说setName不应该将其形参声明为通用引用。此类引用不能使用const见 Item24 但是setName肯定不应该修改其形参。你可能会指出如果为const左值和为右值分别重载setName可以避免整个问题比如这样 class Widget {\npublic: void setName(const std::string& newName) //用const左值设置 { name = newName; } void setName(std::string&& newName) //用右值设置 { name = std::move(newName); } …\n}; 这样的话,当然可以工作,但是有缺点。首先编写和维护的代码更多(两个函数而不是单个模板);其次,效率下降。比如,考虑如下场景: w.setName(\"Adela Novak\"); 使用通用引用的版本的setName字面字符串“Adela Novak”可以被传递给setName再传给w内部std::string的赋值运算符。w的name的数据成员通过字面字符串直接赋值没有临时std::string对象被创建。但是setName重载版本会有一个临时std::string对象被创建setName形参绑定到这个对象然后这个临时std::string移动到w的数据成员中。一次setName的调用会包括std::string构造函数调用创建中间对象std::string赋值运算符调用移动newName到w.namestd::string析构函数调用析构中间对象。这比调用接受const char*指针的std::string赋值运算符开销昂贵许多。增加的开销根据实现不同而不同这些开销是否值得担心也跟应用和库的不同而有所不同但是事实上将通用引用模板替换成对左值引用和右值引用的一对函数重载在某些情况下会导致运行时的开销。如果把例子泛化Widget数据成员是任意类型而不是知道是个std::string性能差距可能会变得更大因为不是所有类型的移动操作都像std::string开销较小参看 Item29 )。 但是关于对左值和右值的重载函数最重要的问题不是源代码的数量也不是代码的运行时性能。而是设计的可扩展性差。Widget::setName有一个形参因此需要两种重载实现但是对于有更多形参的函数每个都可能是左值或右值重载函数的数量几何式增长n个参数的话就要实现2n种重载。这还不是最坏的。有的函数——实际上是函数模板——接受 无限制 个数的参数每个参数都可以是左值或者右值。此类函数的典型代表是std::make_shared还有对于C++14的std::make_unique见 Item21 )。查看他们的的重载声明: template<class T, class... Args> //来自C++11标准\nshared_ptr<T> make_shared(Args&&... args); template<class T, class... Args> //来自C++14标准\nunique_ptr<T> make_unique(Args&&... args); 对于这种函数对于左值和右值分别重载就不能考虑了通用引用是仅有的实现方案。对这种函数我向你保证肯定使用std::forward传递通用引用形参给其他函数。这也是你应该做的。 好吧通常最终。但是不一定最开始就是如此。在某些情况你可能需要在一个函数中多次使用绑定到右值引用或者通用引用的对象并且确保在完成其他操作前这个对象不会被移动。这时你只想在最后一次使用时使用std::move对右值引用或者std::forward对通用引用。比如 template<typename T>\nvoid setSignText(T&& text) //text是通用引用\n{ sign.setText(text); //使用text但是不改变它 auto now = std::chrono::system_clock::now(); //获取现在的时间 signHistory.add(now, std::forward<T>(text)); //有条件的转换为右值\n} 这里我们想要确保text的值不会被sign.setText改变因为我们想要在signHistory.add中继续使用。因此std::forward只在最后使用。 对于std::move同样的思路即最后一次用右值引用的时候再调用std::move但是需要注意在有些稀少的情况下你需要调用std::move_if_noexcept代替std::move。要了解何时以及为什么参考 Item14 。 如果你在 按值 返回的函数中返回值绑定到右值引用或者通用引用上需要对返回的引用使用std::move或者std::forward。要了解原因考虑两个矩阵相加的operator+函数,左侧的矩阵为右值(可以被用来保存求值之后的和): Matrix //按值返回\noperator+(Matrix&& lhs, const Matrix& rhs)\n{ lhs += rhs; return std::move(lhs); //移动lhs到返回值中\n} 通过在return语句中将lhs转换为右值通过std::movelhs可以移动到返回值的内存位置。如果省略了std::move调用 Matrix //同之前一样\noperator+(Matrix&& lhs, const Matrix& rhs)\n{ lhs += rhs; return lhs; //拷贝lhs到返回值中\n} lhs是个左值的事实会强制编译器拷贝它到返回值的内存空间。假定Matrix支持移动操作并且比拷贝操作效率更高在return语句中使用std::move的代码效率更高。 如果Matrix不支持移动操作将其转换为右值不会变差因为右值可以直接被Matrix的拷贝构造函数拷贝见 Item23 。如果Matrix随后支持了移动操作operator+将在下一次编译时受益。就是这种情况通过将std::move应用到按值返回的函数中要返回的右值引用上不会损失什么还可能获得收益。 使用通用引用和std::forward的情况类似。考虑函数模板reduceAndCopy收到一个未规约unreduced对象Fraction将其规约并返回一个规约后的副本。如果原始对象是右值可以将其移动到返回值中避免拷贝开销但是如果原始对象是左值必须创建副本因此如下代码 template<typename T>\nFraction //按值返回\nreduceAndCopy(T&& frac) //通用引用的形参\n{ frac.reduce(); return std::forward<T>(frac); //移动右值,或拷贝左值到返回值中\n} 如果std::forward被忽略frac就被无条件复制到reduceAndCopy的返回值内存空间。 有些开发者获取到上面的知识后并尝试将其扩展到不适用的情况。“如果对要被拷贝到返回值的右值引用形参使用std::move会把拷贝构造变为移动构造”他们想“我也可以对我要返回的局部对象应用同样的优化。”换句话说他们认为有个按值返回局部对象的函数像这样 Widget makeWidget() //makeWidget的“拷贝”版本\n{ Widget w; //局部对象 … //配置w return w; //“拷贝”w到返回值中\n} 他们想要“优化”代码,把“拷贝”变为移动: Widget makeWidget() //makeWidget的移动版本\n{ Widget w; … return std::move(w); //移动w到返回值中不要这样做\n} 我的注释告诉你这种想法是有问题的,但是问题在哪? 这是错的因为对于这种优化标准化委员会远领先于开发者。早就为人认识到的是makeWidget的“拷贝”版本可以避免复制局部变量w的需要通过在分配给函数返回值的内存中构造w来实现。这就是所谓的 返回值优化 return value optimization RVO这在C++标准中已经实现了。 对这种好事遣词表达是个讲究活,因为你想只在那些不影响软件外在行为的地方允许这样的 拷贝消除 copy elision。对标准中教条的也可以说是有毒的絮叨做些解释这个特定的好事就是说编译器可能会在按值返回的函数中消除对局部对象的拷贝或者移动如果满足1局部对象与函数返回值的类型相同2局部对象就是要返回的东西。适合的局部对象包括大多数局部变量比如makeWidget里的w还有作为return语句的一部分而创建的临时对象。函数形参不满足要求。一些人将RVO的应用区分为命名的和未命名的即临时的局部对象限制了RVO术语应用到未命名对象上并把对命名对象的应用称为 命名返回值优化 named return value optimization NRVO把这些记在脑子里再看看makeWidget的“拷贝”版本 Widget makeWidget() //makeWidget的“拷贝”版本\n{ Widget w; … return w; //“拷贝”w到返回值中\n} 这里两个条件都满足你一定要相信我对于这些代码每个合适的C++编译器都会应用RVO来避免拷贝w。那意味着makeWidget的“拷贝”版本实际上不拷贝任何东西。 移动版本的makeWidget行为与其名称一样假设Widget有移动构造函数将w的内容移动到makeWidget的返回值位置。但是为什么编译器不使用RVO消除这种移动而是在分配给函数返回值的内存中再次构造w呢答案很简单它们不能。条件2中规定仅当返回值为局部对象时才进行RVO但是makeWidget的移动版本不满足这条件再次看一下返回语句 return std::move(w); 返回的已经不是局部对象w而是**w的引用**——std::move(w)的结果。返回局部对象的引用不满足RVO的第二个条件所以编译器必须移动w到函数返回值的位置。开发者试图对要返回的局部变量用std::move帮助编译器优化反而限制了编译器的优化选项。 但是RVO就是个优化。编译器不被 要求 消除拷贝和移动操作即使他们被允许这样做。或许你会疑惑并担心编译器用拷贝操作惩罚你因为它们确实可以这样。或者你可能有足够的了解意识到有些情况很难让编译器实现RVO比如当函数不同控制路径返回不同局部变量时。编译器必须产生一些代码在分配的函数返回值的内存中构造适当的局部变量但是编译器如何确定哪个变量是合适的呢如果这样你可能会愿意以移动的代价来保证不会产生拷贝。那就是极可能仍然认为应用std::move到一个要返回的局部对象上是合理的只因为可以不再担心拷贝的代价。 那种情况下应用std::move到一个局部对象上 仍然 是一个坏主意。C++标准关于RVO的部分表明如果满足RVO的条件但是编译器选择不执行拷贝消除则返回的对象 必须被视为右值 。实际上标准要求当RVO被允许时或者实行拷贝消除或者将std::move隐式应用于返回的局部对象。因此在makeWidget的“拷贝”版本中 Widget makeWidget() //同之前一样\n{ Widget w; … return w;\n} 编译器要不消除w的拷贝要不把函数看成像下面写的一样 Widget makeWidget()\n{ Widget w; … return std::move(w); //把w看成右值因为不执行拷贝消除\n} 这种情况与按值返回函数形参的情况很像。形参们没资格参与函数返回值的拷贝消除,但是如果作为返回值的话编译器会将其视作右值。结果就是,如果代码如下: Widget makeWidget(Widget w) //传值形参,与函数返回的类型相同\n{ … return w;\n} 编译器必须看成像下面这样写的代码: Widget makeWidget(Widget w)\n{ … return std::move(w);\n} 这意味着如果对从按值返回的函数返回来的局部对象使用std::move你并不能帮助编译器如果不能实行拷贝消除的话他们必须把局部对象看做右值而是阻碍其执行优化选项通过阻止RVO。在某些情况下将std::move应用于局部变量可能是一件合理的事你把一个变量传给函数并且知道不会再用这个变量但是满足RVO的return语句或者返回一个传值形参并不在此列。 请记住: 最后一次使用时在右值引用上使用std::move在通用引用上使用std::forward。 对按值返回的函数要返回的右值引用和通用引用,执行相同的操作。 如果局部对象可以被返回值优化消除就绝不使用std::move或者std::forward。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 25:对于右值引用使用std::move对于通用引用使用std::forward » 条款二十五对右值引用使用std::move对通用引用使用std::forward","id":"40","title":"条款二十五对右值引用使用std::move对通用引用使用std::forward"},"41":{"body":"Item 26: Avoid overloading on universal references 假定你需要写一个函数,它使用名字作为形参,打印当前日期和时间到日志中,然后将名字加入到一个全局数据结构中。你可能写出来这样的代码: std::multiset<std::string> names; //全局数据结构\nvoid logAndAdd(const std::string& name)\n{ auto now = //获取当前时间 std::chrono::system_clock::now(); log(now, \"logAndAdd\"); //志记信息 names.emplace(name); //把name加到全局数据结构中\n} //emplace的信息见条款42 这份代码没有问题,但是同样的也没有效率。考虑这三个调用: std::string petName(\"Darla\");\nlogAndAdd(petName); //传递左值std::string\nlogAndAdd(std::string(\"Persephone\"));\t//传递右值std::string\nlogAndAdd(\"Patty Dog\"); //传递字符串字面值 在第一个调用中logAndAdd的形参name绑定到变量petName。在logAndAdd中name最终传给names.emplace。因为name是左值会拷贝到names中。没有方法避免拷贝因为是左值petName传递给logAndAdd的。 在第二个调用中形参name绑定到右值显式从“Persephone”创建的临时std::string。name本身是个左值所以它被拷贝到names中但是我们意识到原则上它的值可以被移动到names中。本次调用中我们有个拷贝代价但是我们应该能用移动勉强应付。 在第三个调用中形参name也绑定一个右值但是这次是通过“Patty Dog”隐式创建的临时std::string变量。就像第二个调用中name被拷贝到names但是这里传递给logAndAdd的实参是一个字符串字面量。如果直接将字符串字面量传递给emplace就不会创建std::string的临时变量而是直接在std::multiset中通过字面量构建std::string。在第三个调用中我们有个std::string拷贝开销但是我们连移动开销都不想要更别说拷贝的。 我们可以通过使用通用引用(参见 Item24 重写logAndAdd来使第二个和第三个调用效率提升按照 Item25 的说法std::forward转发这个引用到emplace。代码如下 template<typename T>\nvoid logAndAdd(T&& name)\n{ auto now = std::chrono::system_lock::now(); log(now, \"logAndAdd\"); names.emplace(std::forward<T>(name));\n} std::string petName(\"Darla\"); //跟之前一样\nlogAndAdd(petName); //跟之前一样拷贝左值到multiset\nlogAndAdd(std::string(\"Persephone\"));\t//移动右值而不是拷贝它\nlogAndAdd(\"Patty Dog\"); //在multiset直接创建std::string //而不是拷贝一个临时std::string 非常好,效率优化了! 在故事的最后我们可以骄傲的交付这个代码但是我还没有告诉你客户不总是有直接访问logAndAdd要求的名字的权限。有些客户只有索引logAndAdd拿着索引在表中查找相应的名字。为了支持这些客户logAndAdd需要重载为 std::string nameFromIdx(int idx); //返回idx对应的名字 void logAndAdd(int idx) //新的重载\n{ auto now = std::chrono::system_lock::now(); log(now, \"logAndAdd\"); names.emplace(nameFromIdx(idx));\n} 之后的两个调用按照预期工作: std::string petName(\"Darla\"); //跟之前一样 logAndAdd(petName); //跟之前一样,\nlogAndAdd(std::string(\"Persephone\")); //这些调用都去调用\nlogAndAdd(\"Patty Dog\"); //T&&重载版本 logAndAdd(22); //调用int重载版本 事实上这只能基本按照预期工作假定一个客户将short类型索引传递给logAndAdd short nameIdx;\n… //给nameIdx一个值\nlogAndAdd(nameIdx); //错误! 最后一行的注释并不清楚明白,下面让我来说明发生了什么。 有两个重载的logAndAdd。使用通用引用的那个推导出T的类型是short因此可以精确匹配。对于int类型参数的重载也可以在short类型提升后匹配成功。根据正常的重载解决规则精确匹配优先于类型提升的匹配所以被调用的是通用引用的重载。 在通用引用那个重载中name形参绑定到要传入的short上然后name被std::forward给names一个std::multiset<std::string>的emplace成员函数然后又被转发给std::string构造函数。std::string没有接受short的构造函数所以logAndAdd调用里的multiset::emplace调用里的std::string构造函数调用失败。译者注这句话比较绕实际上就是调用链。所有这一切的原因就是对于short类型通用引用重载优先于int类型的重载。 使用通用引用的函数在C++中是最贪婪的函数。它们几乎可以精确匹配任何类型的实参(极少不适用的实参在 Item30 中介绍)。这也是把重载和通用引用组合在一块是糟糕主意的原因:通用引用的实现会匹配比开发者预期要多得多的实参类型。 一个更容易掉入这种陷阱的例子是写一个完美转发构造函数。简单对logAndAdd例子进行改造就可以说明这个问题。不用写接受std::string或者用索引查找std::string的自由函数只是想一个构造函数有着相同操作的Person类 class Person {\npublic: template<typename T> explicit Person(T&& n) //完美转发的构造函数,初始化数据成员 : name(std::forward<T>(n)) {} explicit Person(int idx) //int的构造函数 : name(nameFromIdx(idx)) {} … private: std::string name;\n}; 就像在logAndAdd的例子中传递一个不是int的整型变量比如std::size_tshortlong等会调用通用引用的构造函数而不是int的构造函数这会导致编译错误。这里这个问题甚至更糟糕因为Person中存在的重载比肉眼看到的更多。在 Item17 中说明在适当的条件下C++会生成拷贝和移动构造函数即使类包含了模板化的构造函数模板函数能实例化产生与拷贝和移动构造函数一样的签名也在合适的条件范围内。如果拷贝和移动构造被生成Person类看起来就像这样 class Person {\npublic: template<typename T> //完美转发的构造函数 explicit Person(T&& n) : name(std::forward<T>(n)) {} explicit Person(int idx); //int的构造函数 Person(const Person& rhs); //拷贝构造函数(编译器生成) Person(Person&& rhs); //移动构造函数(编译器生成) …\n}; 只有你在花了很多时间在编译器领域时,下面的行为才变得直观(译者注:这里意思就是这种实现会导致不符合人类直觉的结果,下面就解释了这种现象的原因): Person p(\"Nancy\"); auto cloneOfP(p); //从p创建新Person这通不过编译 这里我们试图通过一个Person实例创建另一个Person显然应该调用拷贝构造即可。p是左值我们可以把通过移动操作来完成“拷贝”的想法请出去了。但是这份代码不是调用拷贝构造函数而是调用完美转发构造函数。然后完美转发的函数将尝试使用Person对象p初始化Person的std::string数据成员编译器就会报错。 “为什么”你可能会疑问“为什么拷贝构造会被完美转发构造替代我们显然想拷贝Person到另一个Person”。确实我们是这样想的但是编译器严格遵循C++的规则,这里的相关规则就是控制对重载函数调用的解析规则。 编译器的理由如下cloneOfP被non-const左值p初始化这意味着模板化构造函数可被实例化为采用Person类型的non-const左值。实例化之后Person类看起来是这样的 class Person {\npublic: explicit Person(Person& n) //由完美转发模板初始化 : name(std::forward<Person&>(n)) {} explicit Person(int idx); //同之前一样 Person(const Person& rhs); //拷贝构造函数(编译器生成的) …\n}; 在这个语句中, auto cloneOfP(p); 其中p被传递给拷贝构造函数或者完美转发构造函数。调用拷贝构造函数要求在p前加上const的约束来满足函数形参的类型而调用完美转发构造不需要加这些东西。从模板产生的重载函数是更好的匹配所以编译器按照规则调用最佳匹配的函数。“拷贝”non-const左值类型的Person交由完美转发构造函数处理而不是拷贝构造函数。 如果我们将本例中的传递的对象改为const的会得到完全不同的结果 const Person cp(\"Nancy\"); //现在对象是const的\nauto cloneOfP(cp); //调用拷贝构造函数! 因为被拷贝的对象是const是拷贝构造函数的精确匹配。虽然模板化的构造函数可以被实例化为有完全一样的函数签名 class Person {\npublic: explicit Person(const Person& n); //从模板实例化而来 Person(const Person& rhs); //拷贝构造函数(编译器生成的) …\n}; 但是没啥影响,因为重载规则规定当模板实例化函数和非模板函数(或者称为“正常”函数)匹配优先级相当时,优先使用“正常”函数。拷贝构造函数(正常函数)因此胜过具有相同签名的模板实例化函数。 (如果你想知道为什么编译器在生成一个拷贝构造函数时还会模板实例化一个相同签名的函数,参考 Item17 。) 当继承纳入考虑范围时,完美转发的构造函数与编译器生成的拷贝、移动操作之间的交互会更加复杂。尤其是,派生类的拷贝和移动操作的传统实现会表现得非常奇怪。来看一下: class SpecialPerson: public Person {\npublic: SpecialPerson(const SpecialPerson& rhs) //拷贝构造函数,调用基类的 : Person(rhs) //完美转发构造函数! { … } SpecialPerson(SpecialPerson&& rhs) //移动构造函数,调用基类的 : Person(std::move(rhs)) //完美转发构造函数! { … }\n}; 如同注释表示的派生类的拷贝和移动构造函数没有调用基类的拷贝和移动构造函数而是调用了基类的完美转发构造函数为了理解原因要知道派生类将SpecialPerson类型的实参传递给其基类然后通过模板实例化和重载解析规则作用于基类Person。最终代码无法编译因为std::string没有接受一个SpecialPerson的构造函数。 我希望到目前为止,已经说服了你,如果可能的话,避免对通用引用形参的函数进行重载。但是,如果在通用引用上重载是糟糕的主意,那么如果需要可转发大多数实参类型的函数,但是对于某些实参类型又要特殊处理应该怎么办?存在多种办法。实际上,下一个条款, Item27 专门来讨论这个问题,敬请阅读。 请记住: 对通用引用形参的函数进行重载,通用引用函数的调用机会几乎总会比你期望的多得多。 完美转发构造函数是糟糕的实现因为对于non-const左值它们比拷贝构造函数而更匹配而且会劫持派生类对于基类的拷贝和移动构造函数的调用。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 26:避免重载通用引用 » 条款二十六:避免在通用引用上重载","id":"41","title":"条款二十六:避免在通用引用上重载"},"42":{"body":"Item 27: Familiarize yourself with alternatives to overloading on universal references Item26 中说明了对使用通用引用形参的函数,无论是独立函数还是成员函数(尤其是构造函数),进行重载都会导致一系列问题。但是也提供了一些示例,如果能够按照我们期望的方式运行,重载可能也是有用的。这个条款探讨了几种,通过避免在通用引用上重载的设计,或者通过限制通用引用可以匹配的参数类型,来实现所期望行为的方法。 讨论基于 Item26 中的示例,如果你还没有阅读那个条款,请先阅读那个条款再继续。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 27:熟悉重载通用引用的替代品 » 条款二十七:熟悉通用引用重载的替代方法","id":"42","title":"条款二十七:熟悉通用引用重载的替代方法"},"43":{"body":"在 Item26 中的第一个例子中logAndAdd是许多函数的代表这些函数可以使用不同的名字来避免在通用引用上的重载的弊端。例如两个重载的logAndAdd函数可以分别改名为logAndAddName和logAndAddNameIdx。但是这种方式不能用在第二个例子Person构造函数中因为构造函数的名字被语言固定了译者注即构造函数名与类名相同。此外谁愿意放弃重载呢","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 27:熟悉重载通用引用的替代品 » 放弃重载","id":"43","title":"放弃重载"},"44":{"body":"一种替代方案是退回到C++98然后将传递通用引用替换为传递lvalue-refrence-to-const。事实上这是 Item26 中首先考虑的方法。缺点是效率不高。现在我们知道了通用引用和重载的相互关系,所以放弃一些效率来确保行为正确简单可能也是一种不错的折中。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 27:熟悉重载通用引用的替代品 » 传递const T&","id":"44","title":"传递const T&"},"45":{"body":"通常在不增加复杂性的情况下提高性能的一种方法是,将按传引用形参替换为按值传递,这是违反直觉的。该设计遵循 Item41 中给出的建议即在你知道要拷贝时就按值传递因此会参考那个条款来详细讨论如何设计与工作效率如何。这里在Person的例子中展示 class Person {\npublic: explicit Person(std::string n) //代替T&&构造函数, : name(std::move(n)) {} //std::move的使用见条款41 explicit Person(int idx) //同之前一样 : name(nameFromIdx(idx)) {} … private: std::string name;\n}; 因为没有std::string构造函数可以接受整型参数所有int或者其他整型变量比如std::size_t、short、long等都会使用int类型重载的构造函数。相似的所有std::string类似的实参还有可以用来创建std::string的东西比如字面量“Ruth”等都会使用std::string类型的重载构造函数。没有意外情况。我想你可能会说有些人使用0或者NULL指代空指针会调用int重载的构造函数让他们很吃惊但是这些人应该参考 Item8 反复阅读直到使用0或者NULL作为空指针让他们恶心。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 27:熟悉重载通用引用的替代品 » 传值","id":"45","title":"传值"},"46":{"body":"传递lvalue-reference-to-const以及按值传递都不支持完美转发。如果使用通用引用的动机是完美转发我们就只能使用通用引用了没有其他选择。但是又不想放弃重载。所以如果不放弃重载又不放弃通用引用如何避免在通用引用上重载呢 实际上并不难。通过查看所有重载的所有形参以及调用点的所有传入实参,然后选择最优匹配的函数——考虑所有形参/实参的组合。通用引用通常提供了最优匹配,但是如果通用引用是包含其他 非 通用引用的形参列表的一部分,则非通用引用形参的较差匹配会使有一个通用引用的重载版本不被运行。这就是 tag dispatch 方法的基础,下面的示例会使这段话更容易理解。 我们将标签分派应用于logAndAdd例子下面是原来的代码以免你再分心回去查看 std::multiset<std::string> names; //全局数据结构 template<typename T> //志记信息将name添加到数据结构\nvoid logAndAdd(T&& name)\n{ auto now = std::chrono::system_clokc::now(); log(now, \"logAndAdd\"); names.emplace(std::forward<T>(name));\n} 就其本身而言功能执行没有问题但是如果引入一个int类型的重载来用索引查找对象就会重新陷入 Item26 中描述的麻烦。这个条款的目标是避免它。不通过重载我们重新实现logAndAdd函数分拆为两个函数一个针对整型值一个针对其他。logAndAdd本身接受所有实参类型包括整型和非整型。 这两个真正执行逻辑的函数命名为logAndAddImpl即我们使用重载。其中一个函数接受通用引用。所以我们同时使用了重载和通用引用。但是每个函数接受第二个形参表征传入的实参是否为整型。这第二个形参可以帮助我们避免陷入到 Item26 中提到的麻烦中,因为我们将其安排为第二个实参决定选择哪个重载函数。 是的,我知道,“不要在啰嗦了,赶紧亮出代码”。没有问题,代码如下,这是最接近正确版本的: template<typename T>\nvoid logAndAdd(T&& name) { logAndAddImpl(std::forward<T>(name), std::is_integral<T>()); //不那么正确\n} 这个函数转发它的形参给logAndAddImpl函数但是多传递了一个表示形参T是否为整型的实参。至少这就是应该做的。对于右值的整型实参来说这也是正确的。但是如同 Item28 中说明如果左值实参传递给通用引用name对T类型推断会得到左值引用。所以如果左值int被传入logAndAddT将被推断为int&。这不是一个整型类型因为引用不是整型类型。这意味着std::is_integral<T>对于任何左值实参返回false即使确实传入了整型值。 意识到这个问题基本相当于解决了它因为C++标准库有一个 type trait (参见 Item9 std::remove_reference函数名字就说明做了我们希望的移除类型的引用说明符。所以正确实现的代码应该是这样 template<typename T>\nvoid logAndAdd(T&& name)\n{ logAndAddImpl( std::forward<T>(name), std::is_integral<typename std::remove_reference<T>::type>() );\n} 这个代码很巧妙。在C++14中你可以通过std::remove_reference_t<T>来简化写法,参看 Item9 处理完之后我们可以将注意力转移到名为logAndAddImpl的函数上了。有两个重载函数第一个仅用于非整型类型即std::is_integral<typename std::remove_reference<T>::type>是false template<typename T> //非整型实参:添加到全局数据结构中\nvoid logAndAddImpl(T&& name, std::false_type)\t//译者注高亮std::false_type\n{ auto now = std::chrono::system_clock::now(); log(now, \"logAndAdd\"); names.emplace(std::forward<T>(name));\n} 一旦你理解了高亮参数的含义代码就很直观。概念上logAndAdd传递一个布尔值给logAndAddImpl表明是否传入了一个整型类型但是true和false是 运行时 值,我们需要使用重载决议—— 编译时 决策——来选择正确的logAndAddImpl重载。这意味着我们需要一个 类型 对应true另一个不同的类型对应false。这个需要是经常出现的所以标准库提供了这样两个命名std::true_type和std::false_type。logAndAdd传递给logAndAddImpl的实参是个对象如果T是整型对象的类型就继承自std::true_type反之继承自std::false_type。最终的结果就是当T不是整型类型时这个logAndAddImpl重载是个可供调用的候选者。 第二个重载覆盖了相反的场景当T是整型类型。在这个场景中logAndAddImpl简单找到对应传入索引的名字然后传递给logAndAdd std::string nameFromIdx(int idx); //与条款26一样整型实参查找名字并用它调用logAndAdd\nvoid logAndAddImpl(int idx, std::true_type) //译者注高亮std::true_type\n{ logAndAdd(nameFromIdx(idx)); } 通过索引找到对应的name然后让logAndAddImpl传递给logAndAdd名字会被再std::forward给另一个logAndAddImpl重载我们避免了将日志代码放入这个logAndAddImpl重载中。 在这个设计中类型std::true_type和std::false_type是“标签”tag其唯一目的就是强制重载解析按照我们的想法来执行。注意到我们甚至没有对这些参数进行命名。他们在运行时毫无用处事实上我们希望编译器可以意识到这些标签形参没被使用然后在程序执行时优化掉它们。至少某些时候有些编译器会这样做。通过创建标签对象在logAndAdd内部将重载实现函数的调用“分发” dispatch )给正确的重载。因此这个设计名称为: tag dispatch 。这是模板元编程的标准构建模块你对现代C++库中的代码了解越多,你就会越多遇到这种设计。 就我们的目的而言, tag dispatch 的重要之处在于它可以允许我们组合重载和通用引用使用,而没有 Item26 中提到的问题。分发函数——logAndAdd——接受一个没有约束的通用引用参数但是这个函数没有重载。实现函数——logAndAddImpl——是重载的一个接受通用引用参数但是重载规则不仅依赖通用引用形参还依赖新引入的标签形参标签值设计来保证有不超过一个的重载是合适的匹配。结果是标签来决定采用哪个重载函数。通用引用参数可以生成精确匹配的事实在这里并不重要。译者注这里确实比较啰嗦如果理解了上面的内容这段完全可以没有。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 27:熟悉重载通用引用的替代品 » 使用 tag dispatch","id":"46","title":"使用 tag dispatch"},"47":{"body":"tag dispatch 的关键是存在单独一个函数没有重载给客户端API。这个单独的函数分发给具体的实现函数。创建一个没有重载的分发函数通常是容易的但是 Item26 中所述第二个问题案例是Person类的完美转发构造函数是个例外。编译器可能会自行生成拷贝和移动构造函数所以即使你只写了一个构造函数并在其中使用 tag dispatch ,有一些对构造函数的调用也被编译器生成的函数处理,绕过了分发机制。 实际上,真正的问题不是编译器生成的函数会绕过 tag dispatch 设计,而是不 总 会绕过去。你希望类的拷贝构造函数总是处理该类型的左值拷贝请求,但是如同 Item26 中所述提供具有通用引用的构造函数会使通用引用构造函数在拷贝non-const左值时被调用而不是拷贝构造函数。那个条款还说明了当一个基类声明了完美转发构造函数派生类实现自己的拷贝和移动构造函数时会调用那个完美转发构造函数尽管正确的行为是调用基类的拷贝或者移动构造。 这种情况,采用通用引用的重载函数通常比期望的更加贪心,虽然不像单个分派函数一样那么贪心,而又不满足使用 tag dispatch 的条件。你需要另外的技术可以让你确定允许使用通用引用模板的条件。朋友你需要的就是std::enable_if。 std::enable_if可以给你提供一种强制编译器执行行为的方法像是特定模板不存在一样。这种模板被称为被 禁止 disabled。默认情况下所有模板是 启用 的enabled但是使用std::enable_if可以使得仅在std::enable_if指定的条件满足时模板才启用。在这个例子中我们只在传递的类型不是Person时使用Person的完美转发构造函数。如果传递的类型是Person我们要禁止完美转发构造函数即让编译器忽略它因为这会让拷贝或者移动构造函数处理调用这是我们想要使用Person初始化另一个Person的初衷。 这个主意听起来并不难但是语法比较繁杂尤其是之前没有接触过的话让我慢慢引导你。有一些std::enbale_if的contidion条件部分的样板让我们从这里开始。下面的代码是Person完美转发构造函数的声明多展示std::enable_if的部分来简化使用难度。我仅展示构造函数的声明因为std::enable_if的使用对函数实现没影响。实现部分跟 Item26 中没有区别。 class Person {\npublic: template<typename T, typename = typename std::enable_if<condition>::type> //译者注本行高亮condition为某其他特定条件 explicit Person(T&& n); …\n}; 为了理解高亮部分发生了什么我很遗憾的表示你要自行参考其他代码因为详细解释需要花费一定空间和时间而本书并没有足够的空间在你自行学习过程中请研究“SFINAE”以及std::enable_if因为“SFINAE”就是使std::enable_if起作用的技术。这里我想要集中讨论条件的表示该条件表示此构造函数是否启用。 这里我们想表示的条件是确认T不是Person类型即模板构造函数应该在T不是Person类型的时候启用。多亏了 type trait 可以确定两个对象类型是否相同std::is_same看起来我们需要的就是!std::is_same<Person, T>::value注意语句开始的!,我们想要的是 不 相同)。这很接近我们想要的了,但是不完全正确,因为如同 Item28 中所述,使用左值来初始化通用引用的话会推导成左值引用,比如这个代码: Person p(\"Nancy\");\nauto cloneOfP(p); //用左值初始化 T的类型在通用引用的构造函数中被推导为Person&。Person和Person&类型是不同的std::is_same的结果也反映了std::is_same<Person, Person&>::value是false。 如果我们更精细考虑仅当T不是Person类型才启用模板构造函数我们会意识到当我们查看T时应该忽略 是否是个引用 。对于决定是否通用引用构造函数启用的目的来说PersonPerson&Person&&都是跟Person一样的。 是不是const或者volatile 。如上所述const Personvolatile Person const volatile Person也是跟Person一样的。 这意味着我们需要一种方法消除对于T的引用constvolatile修饰。再次标准库提供了这样功能的 type trait 就是std::decay。std::decay<T>::value与T是相同的只不过会移除引用和cv限定符 cv-qualifiers 即const或volatile标识符的修饰。这里我没有说出另外的真相std::decay如同其名一样可以将数组或者函数退化成指针参考 Item1 ,但是在这里讨论的问题中,它刚好合适)。我们想要控制构造函数是否启用的条件可以写成: !std::is_same<Person, typename std::decay<T>::type>::value 即Person和T的类型不同忽略了所有引用和cv限定符。如 Item9 所述std::decay前的“typename”是必需的因为std::decay<T>::type的类型取决于模板形参T。 将其带回上面std::enable_if样板的代码中加上调整一下格式让各部分如何组合在一起看起来更容易Person的完美转发构造函数的声明如下 class Person {\npublic: template< typename T, typename = typename std::enable_if< !std::is_same<Person, typename std::decay<T>::type >::value >::type > explicit Person(T&& n); …\n}; 如果你之前从没有看到过这种类型的代码那你可太幸福了。最后才放出这种设计是有原因的。当你有其他机制来避免同时使用重载和通用引用时你总会这样做确实应该那样做。不过一旦你习惯了使用函数语法和尖括号的使用也不坏。此外这可以提供你一直想要的行为表现。在上面的声明中使用Person初始化一个Person——无论是左值还是右值const还是non-constvolatile还是non-volatile——都不会调用到通用引用构造函数。 成功了,对吗?确实! 啊,不对。等会再庆祝。 Item26 还有一个情景需要解决,我们需要继续探讨下去。 假定从Person派生的类以常规方式实现拷贝和移动操作 class SpecialPerson: public Person {\npublic: SpecialPerson(const SpecialPerson& rhs) //拷贝构造函数,调用基类的 : Person(rhs) //完美转发构造函数! { … } SpecialPerson(SpecialPerson&& rhs) //移动构造函数,调用基类的 : Person(std::move(rhs)) //完美转发构造函数! { … } …\n}; 这和 Item26 中的代码是一样的包括注释也是一样。当我们拷贝或者移动一个SpecialPerson对象时我们希望调用基类对应的拷贝和移动构造函数来拷贝或者移动基类部分但是这里我们将SpecialPerson传递给基类的构造函数因为SpecialPerson和Person类型不同在应用std::decay后也不同所以完美转发构造函数是启用的会实例化为精确匹配SpecialPerson实参的构造函数。相比于派生类到基类的转化——这个转化对于在Person拷贝和移动构造函数中把SpecialPerson对象绑定到Person形参非常重要生成的精确匹配是更优的所以这里的代码拷贝或者移动SpecialPerson对象就会调用Person类的完美转发构造函数来执行基类的部分。跟 Item26 的困境一样。 派生类仅仅是按照常规的规则生成了自己的移动和拷贝构造函数所以这个问题的解决还要落实在基类尤其是控制是否使用Person通用引用构造函数启用的条件。现在我们意识到不只是禁止Person类型启用模板构造函数而是禁止Person**以及任何派生自Person**的类型启用模板构造函数。讨厌的继承! 你应该不意外在这里看到标准库中也有 type trait 判断一个类型是否继承自另一个类型就是std::is_base_of。如果std::is_base_of<T1, T2>是true就表示T2派生自T1。类型也可被认为是从他们自己派生所以std::is_base_of<T, T>::value总是true。这就很方便了我们想要修正控制Person完美转发构造函数的启用条件只有当T在消除引用和cv限定符之后并且既不是Person又不是Person的派生类时才满足条件。所以使用std::is_base_of代替std::is_same就可以了 class Person {\npublic: template< typename T, typename = typename std::enable_if< !std::is_base_of<Person, typename std::decay<T>::type >::value >::type > explicit Person(T&& n); …\n}; 现在我们终于完成了最终版本。这是C++11版本的代码如果我们使用C++14这份代码也可以工作但是可以使用std::enable_if和std::decay的别名模板来少写“typename”和“::type”这样的麻烦东西产生了下面这样看起来舒爽的代码 class Person { //C++14\npublic: template< typename T, typename = std::enable_if_t< //这儿更少的代码 !std::is_base_of<Person, std::decay_t<T> //还有这儿 >::value > //还有这儿 > explicit Person(T&& n); …\n}; 好了,我承认,我又撒谎了。我们还没有完成,但是越发接近最终版本了。非常接近,我保证。 我们已经知道如何使用std::enable_if来选择性禁止Person通用引用构造函数来使得一些实参类型确保使用到拷贝或者移动构造函数但是我们还没将其应用于区分整型参数和非整型参数。毕竟我们的原始目标是解决构造函数模糊性问题。 我们需要的所有东西——我确实意思是所有——是1加入一个Person构造函数重载来处理整型参数2约束模板构造函数使其对于某些实参禁用。使用这些我们讨论过的技术组合起来就能解决这个问题了 class Person {\npublic: template< typename T, typename = std::enable_if_t< !std::is_base_of<Person, std::decay_t<T>>::value && !std::is_integral<std::remove_reference_t<T>>::value > > explicit Person(T&& n) //对于std::strings和可转化为 : name(std::forward<T>(n)) //std::strings的实参的构造函数 { … } explicit Person(int idx) //对于整型实参的构造函数 : name(nameFromIdx(idx)) { … } … //拷贝、移动构造函数等 private: std::string name;\n}; 看!多么优美!好吧,优美之处只是对于那些迷信模板元编程之人,但是确实提出了不仅能工作的方法,而且极具技巧。因为使用了完美转发,所以具有最大效率,因为控制了通用引用与重载的结合而不是禁止它,这种技术可以被用于不可避免要用重载的情况(比如构造函数)。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 27:熟悉重载通用引用的替代品 » 约束使用通用引用的模板","id":"47","title":"约束使用通用引用的模板"},"48":{"body":"本条款提到的前三个技术——放弃重载、传递const T&、传值——在函数调用中指定每个形参的类型。后两个技术—— tag dispatch 和限制模板适用范围——使用完美转发,因此不需要指定形参类型。这一基本决定(是否指定类型)有一定后果。 通常完美转发更有效率因为它避免了仅仅去为了符合形参声明的类型而创建临时对象。在Person构造函数的例子中完美转发允许将“Nancy”这种字符串字面量转发到Person内部的std::string的构造函数不使用完美转发的技术则会从字符串字面值创建一个临时std::string对象来满足Person构造函数指定的形参要求。 但是完美转发也有缺点。即使某些类型的实参可以传递给接受特定类型的函数,也无法完美转发。 Item30 中探索了完美转发失败的例子。 第二个问题是当客户传递无效参数时错误消息的可理解性。例如假如客户传递了一个由char16_t一种C++11引入的类型表示16位字符而不是charstd::string包含的组成的字符串字面值来创建一个Person对象 Person p(u\"Konrad Zuse\"); //“Konrad Zuse”由const char16_t类型字符组成 使用本条款中讨论的前三种方法编译器将看到可用的采用int或者std::string的构造函数它们或多或少会产生错误消息表示没有可以从const char16_t[12]转换为int或者std::string的方法。 但是基于完美转发的方法const char16_t不受约束地绑定到构造函数的形参。从那里将转发到Person的std::string数据成员的构造函数在这里调用者传入的内容const char16_t数组与所需内容std::string构造函数可接受的类型发生的不匹配会被发现。由此产生的错误消息会让人更印象深刻在我使用的编译器上会产生超过160行错误信息。 在这个例子中通用引用仅被转发一次从Person构造函数到std::string构造函数但是更复杂的系统中在最终到达判断实参类型是否可接受的地方之前通用引用会被多层函数调用转发。通用引用被转发的次数越多产生的错误消息偏差就越大。许多开发者发现这种特殊问题是发生在留有通用引用形参的接口上这些接口以性能作为首要考虑点。 在Person这个例子中我们知道完美转发函数的通用引用形参要作为std::string的初始化器所以我们可以用static_assert来确认它可以起这个作用。std::is_constructible这个 type trait 执行编译时测试,确定一个类型的对象是否可以用另一个不同类型(或多个类型)的对象(或多个对象)来构造,所以代码可以这样: class Person {\npublic: template< //同之前一样 typename T, typename = std::enable_if_t< !std::is_base_of<Person, std::decay_t<T>>::value && !std::is_integral<std::remove_reference_t<T>>::value > > explicit Person(T&& n) : name(std::forward<T>(n)) { //断言可以用T对象创建std::string static_assert( std::is_constructible<std::string, T>::value, \"Parameter n can't be used to construct a std::string\" ); … //通常的构造函数的工作写在这 } … //Person类的其他东西同之前一样\n}; 如果客户代码尝试使用无法构造std::string的类型创建Person会导致指定的错误消息。不幸的是在这个例子中static_assert在构造函数体中但是转发的代码作为成员初始化列表的部分在检查之前。所以我使用的编译器结果是由static_assert产生的清晰的错误消息在常规错误消息多达160行以上那个后出现。 请记住: 通用引用和重载的组合替代方案包括使用不同的函数名通过lvalue-reference-to-const传递形参按值传递形参使用 tag dispatch 。 通过std::enable_if约束模板允许组合通用引用和重载使用但它也控制了编译器在哪种条件下才使用通用引用重载。 通用引用参数通常具有高效率的优势,但是可用性就值得斟酌。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 27:熟悉重载通用引用的替代品 » 折中","id":"48","title":"折中"},"49":{"body":"Item 28: Understand reference collapsing Item23 中指出当实参传递给模板函数时被推导的模板形参T根据实参是左值还是右值来编码。但是那条款并没有提到只有当实参被用来实例化通用引用形参时上述推导才会发生但是有充分的理由忽略这一点因为通用引用是 Item24 中才提到。回过头来看,对通用引用和左值/右值编码的观察意味着对于这个模板, template<typename T>\nvoid func(T&& param); 不管传给param的实参是左值还是右值模板形参T都会编码。 编码机制是简单的。当左值实参被传入时T被推导为左值引用。当右值被传入时T被推导为非引用。请注意不对称性左值被编码为左值引用右值被编码为 非引用 。)因此: Widget widgetFactory(); //返回右值的函数\nWidget w; //一个变量(左值)\nfunc(w); //用左值调用funcT被推导为Widget&\nfunc(widgetFactory()); //用右值调用funcT被推导为Widget 上面的两种func调用中Widget被传入因为一个是左值一个是右值模板形参T被推导为不同的类型。正如我们很快看到的这决定了通用引用成为左值还是右值也是std::forward的工作基础。 在我们更加深入std::forward和通用引用之前必须明确在C++中引用的引用是非法的。不知道你是否尝试过下面的写法,编译器会报错: int x;\n…\nauto& & rx = x; //错误!不能声明引用的引用 考虑下,如果一个左值传给接受通用引用的模板函数会发生什么: template<typename T>\nvoid func(T&& param); //同之前一样 func(w); //用左值调用funcT被推导为Widget& 如果我们用T推导出来的类型即Widget&)初始化模板,会得到: void func(Widget& && param); 引用的引用!但是编译器没有报错。我们从 Item24 中了解到因为通用引用param被传入一个左值所以param的类型应该为左值引用但是编译器如何把T推导的类型带入模板变成如下的结果也就是最终的函数签名 void func(Widget& param); 答案是 引用折叠 reference collapsing )。是的,禁止 你 声明引用的引用,但是 编译器 会在特定的上下文中产生这些,模板实例化就是其中一种情况。当编译器生成引用的引用时,引用折叠指导下一步发生什么。 存在两种类型的引用(左值和右值),所以有四种可能的引用组合(左值的左值,左值的右值,右值的右值,右值的左值)。如果一个上下文中允许引用的引用存在(比如,模板的实例化),引用根据规则 折叠 为单个引用: 如果任一引用为左值引用,则结果为左值引用。否则(即,如果引用都是右值引用),结果为右值引用。 在我们上面的例子中将推导类型Widget&替换进模板func会产生对左值引用的右值引用然后引用折叠规则告诉我们结果就是左值引用。 引用折叠是std::forward工作的一种关键机制。就像 Item25 中解释的一样std::forward应用在通用引用参数上所以经常能看到这样使用 template<typename T>\nvoid f(T&& fParam)\n{ … //做些工作 someFunc(std::forward<T>(fParam)); //转发fParam到someFunc\n} 因为fParam是通用引用我们知道类型参数T的类型根据f被传入实参即用来实例化fParam的表达式是左值还是右值来编码。std::forward的作用是当且仅当传给f的实参为右值时即T为非引用类型才将fParam左值转化为一个右值。 std::forward可以这样实现 template<typename T> //在std命名空间\nT&& forward(typename remove_reference<T>::type& param)\n{ return static_cast<T&&>(param);\n} 这不是标准库版本的实现忽略了一些接口描述但是为了理解std::forward的行为这些差异无关紧要。 假设传入到f的实参是Widget的左值类型。T被推导为Widget&然后调用std::forward将实例化为std::forward<Widget&>。Widget&带入到上面的std::forward的实现中 Widget& && forward(typename remove_reference<Widget&>::type& param)\n{ return static_cast<Widget& &&>(param); } std::remove_reference<Widget&>::type这个 type trait 产生Widget查看 Item9 所以std::forward成为 Widget& && forward(Widget& param)\n{ return static_cast<Widget& &&>(param); } 根据引用折叠规则返回值和强制转换可以化简最终版本的std::forward调用就是 Widget& forward(Widget& param)\n{ return static_cast<Widget&>(param); } 正如你所看到的当左值实参被传入到函数模板f时std::forward被实例化为接受和返回左值引用。内部的转换不做任何事因为param的类型已经是Widget&所以转换没有影响。左值实参传入std::forward会返回左值引用。通过定义左值引用就是左值因此将左值传递给std::forward会返回左值就像期待的那样。 现在假设一下传递给f的实参是一个Widget的右值。在这个例子中f的类型参数T的推导类型就是Widget。f内部的std::forward调用因此为std::forward<Widget>std::forward实现中把T换为Widget得到 Widget&& forward(typename remove_reference<Widget>::type& param)\n{ return static_cast<Widget&&>(param); } 将std::remove_reference引用到非引用类型Widget上还是相同的类型Widget所以std::forward变成 Widget&& forward(Widget& param)\n{ return static_cast<Widget&&>(param); } 这里没有引用的引用所以不需要引用折叠这就是std::forward的最终实例化版本。 从函数返回的右值引用被定义为右值因此在这种情况下std::forward会将f的形参fParam左值转换为右值。最终结果是传递给f的右值参数将作为右值转发给someFunc正是想要的结果。 在C++14中std::remove_reference_t的存在使得实现变得更简洁 template<typename T> //C++14仍然在std命名空间\nT&& forward(remove_reference_t<T>& param)\n{ return static_cast<T&&>(param);\n} 引用折叠发生在四种情况下。第一也是最常见的就是模板实例化。第二是auto变量的类型生成具体细节类似于模板因为auto变量的类型推导基本与模板类型推导雷同参见 Item2 )。考虑本条款前面的例子: Widget widgetFactory(); //返回右值的函数\nWidget w; //一个变量(左值)\nfunc(w); //用左值调用funcT被推导为Widget&\nfunc(widgetFactory()); //用又值调用funcT被推导为Widget 在auto的写法中规则是类似的。声明 auto&& w1 = w; 用一个左值初始化w1因此为auto推导出类型Widget&。把Widget&代回w1声明中的auto里产生了引用的引用 Widget& && w1 = w; 应用引用折叠规则,就是 Widget& w1 = w 结果就是w1是一个左值引用。 另一方面,这个声明, auto&& w2 = widgetFactory(); 使用右值初始化w2为auto推导出非引用类型Widget。把Widget代入auto得到 Widget&& w2 = widgetFactory() 没有引用的引用这就是最终结果w2是个右值引用。 现在我们真正理解了 Item24 中引入的通用引用。通用引用不是一种新的引用,它实际上是满足以下两个条件下的右值引用: 类型推导区分左值和右值 。T类型的左值被推导为T&类型T类型的右值被推导为T。 发生引用折叠 。 通用引用的概念是有用的,因为它使你不必一定意识到引用折叠的存在,从直觉上推导左值和右值的不同类型,在凭直觉把推导的类型代入到它们出现的上下文中之后应用引用折叠规则。 我说了有四种情况会发生引用折叠但是只讨论了两种模板实例化和auto的类型生成。第三种情况是typedef和别名声明的产生和使用中参见 Item9 。如果在创建或者评估typedef过程中出现了引用的引用则引用折叠就会起作用。举例子来说假设我们有一个Widget的类模板该模板具有右值引用类型的嵌入式typedef template<typename T>\nclass Widget {\npublic: typedef T&& RvalueRefToT; …\n}; 假设我们使用左值引用实例化Widget Widget<int&> w; Widget模板中把T替换为int&得到: typedef int& && RvalueRefToT; 引用折叠就会发挥作用: typedef int& RvalueRefToT; 这清楚表明我们为typedef选择的名字可能不是我们希望的那样当使用左值引用类型实例化Widget时RvalueRefToT是 左值引用 的typedef。 最后一种引用折叠发生的情况是decltype使用的情况。如果在分析decltype期间出现了引用的引用引用折叠规则就会起作用关于decltype参见 Item3 请记住: 引用折叠发生在四种情况下模板实例化auto类型推导typedef与别名声明的创建和使用decltype。 当编译器在引用折叠环境中生成了引用的引用时,结果就是单个引用。有左值引用折叠结果就是左值引用,否则就是右值引用。 通用引用就是在特定上下文的右值引用,上下文是通过类型推导区分左值还是右值,并且发生引用折叠的那些地方。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 28:理解引用折叠 » 条款二十八:理解引用折叠","id":"49","title":"条款二十八:理解引用折叠"},"5":{"body":"最简单的情况是ParamType是一个指针或者引用但非通用引用。在这种情况下类型推导会这样进行 如果expr的类型是一个引用忽略引用部分 然后expr的类型与ParamType进行模式匹配来决定T 举个例子,如果这是我们的模板, template<typename T>\nvoid f(T& param); //param是一个引用 我们声明这些变量, int x=27; //x是int\nconst int cx=x; //cx是const int\nconst int& rx=x; //rx是指向作为const int的x的引用 在不同的调用中对param和T推导的类型会是这样 f(x); //T是intparam的类型是int&\nf(cx); //T是const intparam的类型是const int&\nf(rx); //T是const intparam的类型是const int& 在第二个和第三个调用中注意因为cx和rx被指定为const值所以T被推导为const int从而产生了const int&的形参类型。这对于调用者来说很重要。当他们传递一个const对象给一个引用类型的形参时他们期望对象保持不可改变性也就是说形参是reference-to-const的。这也是为什么将一个const对象传递给以T&类型为形参的模板安全的对象的常量性constness会被保留为T的一部分。 在第三个例子中注意即使rx的类型是一个引用T也会被推导为一个非引用 这是因为rx的引用性reference-ness在类型推导中会被忽略。 这些例子只展示了左值引用,但是类型推导会如左值引用一样对待右值引用。当然,右值只能传递给右值引用,但是在类型推导中这种限制将不复存在。 如果我们将f的形参类型T&改为const T&情况有所变化但不会变得那么出人意料。cx和rx的constness依然被遵守但是因为现在我们假设param是reference-to-constconst不再被推导为T的一部分 template<typename T>\nvoid f(const T& param); //param现在是reference-to-const int x = 27; //如之前一样\nconst int cx = x; //如之前一样\nconst int& rx = x; //如之前一样 f(x); //T是intparam的类型是const int&\nf(cx); //T是intparam的类型是const int&\nf(rx); //T是intparam的类型是const int& 同之前一样rx的reference-ness在类型推导中被忽略了。 如果param是一个指针或者指向const的指针而不是引用情况本质上也一样 template<typename T>\nvoid f(T* param); //param现在是指针 int x = 27; //同之前一样\nconst int *px = &x; //px是指向作为const int的x的指针 f(&x); //T是intparam的类型是int*\nf(px); //T是const intparam的类型是const int* 到现在为止你会发现你自己打哈欠犯困因为C++的类型推导规则对引用和指针形参如此自然,书面形式来看这些非常枯燥。所有事情都那么理所当然!那正是在类型推导系统中你所想要的。","breadcrumbs":"第一章 类型推导 » Item 1:理解模板类型推导 » 情景一ParamType是一个指针或引用但不是通用引用","id":"5","title":"情景一ParamType是一个指针或引用但不是通用引用"},"50":{"body":"Item 29: Assume that move operations are not present, not cheap, and not used 移动语义可以说是C++11最主要的特性。你可能会见过这些类似的描述“移动容器和拷贝指针一样开销小” “拷贝临时对象现在如此高效写代码避免这种情况简直就是过早优化”。这种情绪很容易理解。移动语义确实是这样重要的特性。它不仅允许编译器使用开销小的移动操作代替大开销的复制操作而且默认这么做当特定条件满足的时候。以C++98的代码为基础使用C++11重新编译你的代码然后你的软件运行的更快了。 移动语义确实可以做这些事,这把这个特性封为一代传说。但是传说总有些夸大成分。这个条款的目的就是给你泼一瓢冷水,保持理智看待移动语义。 让我们从已知很多类型不支持移动操作开始这个过程。为了升级到C++11C++98的很多标准库做了大修改为很多类型提供了移动的能力这些类型的移动实现比复制操作更快并且对库的组件实现修改以利用移动操作。但是很有可能你工作中的代码没有完整地利用C++11。对于你的应用中或者代码库中的类型没有适配C++11的部分编译器即使支持移动语义也是无能为力的。的确C++11倾向于为缺少移动操作的类生成它们但是只有在没有声明复制操作移动操作或析构函数的类中才会生成移动操作参考 Item17 。数据成员或者某类型的基类禁止移动操作比如通过delete移动操作参考 Item11 编译器不生成移动操作的支持。对于没有明确支持移动操作的类型并且不符合编译器默认生成的条件的类没有理由期望C++11会比C++98进行任何性能上的提升。 即使显式支持了移动操作结果可能也没有你希望的那么好。比如所有C++11的标准库容器都支持了移动操作但是认为移动所有容器的开销都非常小是个错误。对于某些容器来说压根就不存在开销小的方式来移动它所包含的内容。对另一些容器来说容器的开销真正小的移动操作会有些容器元素不能满足的注意条件。 考虑一下std::array这是C++11中的新容器。std::array本质上是具有STL接口的内置数组。这与其他标准容器将内容存储在堆内存不同。存储具体数据在堆内存的容器本身只保存了指向堆内存中容器内容的指针真正实现当然更复杂一些但是基本逻辑就是这样。这个指针的存在使得在常数时间移动整个容器成为可能只需要从源容器拷贝保存指向容器内容的指针到目标容器然后将源指针置为空指针就可以了 std::vector<Widget> vm1; //把数据存进vw1\n… //把vw1移动到vw2。以常数时间运行。只有vw1和vw2中的指针被改变\nauto vm2 = std::move(vm1); item29_fig1 std::array没有这种指针实现数据就保存在std::array对象中 std::array<Widget, 10000> aw1; //把数据存进aw1\n… //把aw1移动到aw2。以线性时间运行。aw1中所有元素被移动到aw2\nauto aw2 = std::move(aw1); item29_fig2 注意aw1中的元素被 移动 到了aw2中。假定Widget类的移动操作比复制操作快移动Widget的std::array就比复制要快。所以std::array确实支持移动操作。但是使用std::array的移动操作还是复制操作都将花费线性时间的开销因为每个容器中的元素终归需要拷贝或移动一次这与“移动一个容器就像操作几个指针一样方便”的含义相去甚远。 另一方面std::string提供了常数时间的移动操作和线性时间的复制操作。这听起来移动比复制快多了但是可能不一定。许多字符串的实现采用了小字符串优化 small string optimization SSO。“小”字符串比如长度小于15个字符的存储在了std::string的缓冲区中并没有存储在堆内存移动这种存储的字符串并不必复制操作更快。 SSO的动机是大量证据表明短字符串是大量应用使用的习惯。使用内存缓冲区存储而不分配堆内存空间是为了更好的效率。然而这种内存管理的效率导致移动的效率并不必复制操作高即使一个半吊子程序员也能看出来对于这样的字符串拷贝并不比移动慢。 即使对于支持快速移动操作的类型,某些看似可靠的移动操作最终也会导致复制。 Item14 解释了原因标准库中的某些容器操作提供了强大的异常安全保证确保依赖那些保证的C++98的代码在升级到C++11且仅当移动操作不会抛出异常从而可能替换操作时不会不可运行。结果就是即使类提供了更具效率的移动操作而且即使移动操作更合适比如源对象是右值编译器仍可能被迫使用复制操作因为移动操作没有声明noexcept。 因此存在几种情况C++11的移动语义并无优势 没有移动操作 :要移动的对象没有提供移动操作,所以移动的写法也会变成复制操作。 移动不会更快 :要移动的对象提供的移动操作并不比复制速度更快。 移动不可用 进行移动的上下文要求移动操作不会抛出异常但是该操作没有被声明为noexcept。 值得一提的是,还有另一个场景,会使得移动并没有那么有效率: 源对象是左值 :除了极少数的情况外(例如 Item25 ),只有右值可以作为移动操作的来源。 但是该条款的标题是假定移动操作不存在成本高未被使用。这就是通用代码中的典型情况比如编写模板代码因为你不清楚你处理的具体类型是什么。在这种情况下你必须像出现移动语义之前那样像在C++98里一样保守地去复制对象。“不稳定的”代码也是如此即那些由于经常被修改导致类型特性变化的源代码。 但是,通常,你了解你代码里使用的类型,依赖他们的特性不变性(比如是否支持快速移动操作)。这种情况,你无需这个条款的假设,只需要查找所用类型的移动操作详细信息。如果类型提供了快速移动操作,并且在调用移动操作的上下文中使用对象,可以安全的使用快速移动操作替换复制操作。 请记住: 假定移动操作不存在,成本高,未被使用。 在已知的类型或者支持移动语义的代码中,就不需要上面的假设。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 29:认识移动操作的缺点 » 条款二十九:假定移动操作不存在,成本高,未被使用","id":"50","title":"条款二十九:假定移动操作不存在,成本高,未被使用"},"51":{"body":"Item 30: Familiarize yourself with perfect forwarding failure cases C++11最显眼的功能之一就是完美转发功能。 完美 转发,太 完美 了开始使用你就发现“完美”理想与现实还是有差距。C++11的完美转发是非常好用但是只有当你愿意忽略一些误差情况译者注就是完美转发失败的情况这个条款就是使你熟悉这些情形。 在我们开始误差探索之前,有必要回顾一下“完美转发”的含义。“转发”仅表示将一个函数的形参传递——就是 转发 ——给另一个函数。对于第二个函数(被传递的那个)目标是收到与第一个函数(执行传递的那个)完全相同的对象。这规则排除了按值传递的形参,因为它们是原始调用者传入内容的 拷贝 。我们希望被转发的函数能够使用最开始传进来的那些对象。指针形参也被排除在外,因为我们不想强迫调用者传入指针。关于通常目的的转发,我们将处理引用形参。 完美转发 perfect forwarding 意味着我们不仅转发对象我们还转发显著的特征它们的类型是左值还是右值是const还是volatile。结合到我们会处理引用形参这意味着我们将使用通用引用参见 Item24 ),因为通用引用形参被传入实参时才确定是左值还是右值。 假定我们有一些函数f然后想编写一个转发给它的函数事实上是一个函数模板。我们需要的核心看起来像是这样 template<typename T>\nvoid fwd(T&& param) //接受任何实参\n{ f(std::forward<T>(param)); //转发给f\n} 从本质上说转发函数是通用的。例如fwd模板接受任何类型的实参并转发得到的任何东西。这种通用性的逻辑扩展是转发函数不仅是模板而且是可变模板因此可以接受任何数量的实参。fwd的可变形式如下 template<typename... Ts>\nvoid fwd(Ts&&... params) //接受任何实参\n{ f(std::forward<Ts>(params)...); //转发给f\n} 这种形式你会在标准化容器置入函数emplace functions参见 Item42 和智能指针的工厂函数std::make_unique和std::make_shared中参见 Item21 )看到,当然还有其他一些地方。 给定我们的目标函数f和转发函数fwd如果f使用某特定实参会执行某个操作但是fwd使用相同的实参会执行不同的操作完美转发就会失败 f( expression ); //调用f执行某个操作\nfwd( expression ); //但调用fwd执行另一个操作则fwd不能完美转发expression给f 导致这种失败的实参种类有很多。知道它们是什么以及如何解决它们很重要,因此让我们来看看无法做到完美转发的实参类型。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 30:熟悉完美转发失败的情况 » 条款三十:熟悉完美转发失败的情况","id":"51","title":"条款三十:熟悉完美转发失败的情况"},"52":{"body":"假定f这样声明 void f(const std::vector<int>& v); 在这个例子中用花括号初始化调用f通过编译 f({ 1, 2, 3 }); //可以,“{1, 2, 3}”隐式转换为std::vector<int> 但是传递相同的列表初始化给fwd不能编译 fwd({ 1, 2, 3 }); //错误!不能编译 这是因为这是完美转发失效的一种情况。 所有这种错误有相同的原因。在对f的直接调用例如f({ 1, 2, 3 })编译器看看调用地传入的实参看看f声明的形参类型。它们把调用地的实参和声明的实参进行比较看看是否匹配并且必要时执行隐式转换操作使得调用成功。在上面的例子中从{ 1, 2, 3 }生成了临时std::vector<int>对象因此f的形参v会绑定到std::vector<int>对象上。 当通过调用函数模板fwd间接调用f时编译器不再把调用地传入给fwd的实参和f的声明中形参类型进行比较。而是 推导 传入给fwd的实参类型然后比较推导后的实参类型和f的形参声明类型。当下面情况任何一个发生时完美转发就会失败 **编译器不能推导出fwd的一个或者多个形参类型。**这种情况下代码无法编译。 **编译器推导“错”了fwd的一个或者多个形参类型。**在这里“错误”可能意味着fwd的实例将无法使用推导出的类型进行编译但是也可能意味着使用fwd的推导类型调用f与用传给fwd的实参直接调用f表现出不一致的行为。这种不同行为的原因可能是因为f是个重载函数的名字并且由于是“不正确的”类型推导在fwd内部调用的f重载和直接调用的f重载不一样。 在上面的fwd({ 1, 2, 3 })例子中问题在于将花括号初始化传递给未声明为std::initializer_list的函数模板形参被判定为——就像标准说的——“非推导上下文”。简单来讲这意味着编译器不准在对fwd的调用中推导表达式{ 1, 2, 3 }的类型因为fwd的形参没有声明为std::initializer_list。对于fwd形参的推导类型被阻止编译器只能拒绝该调用。 有趣的是, Item2 说明了使用花括号初始化的auto的变量的类型推导是成功的。这种变量被视为std::initializer_list对象在转发函数应推导出类型为std::initializer_list的情况这提供了一种简单的解决方法——使用auto声明一个局部变量然后将局部变量传进转发函数 auto il = { 1, 2, 3 }; //il的类型被推导为std::initializer_list<int>\nfwd(il); //可以完美转发il给f","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 30:熟悉完美转发失败的情况 » 花括号初始化器","id":"52","title":"花括号初始化器"},"53":{"body":"Item8 说明当你试图传递0或者NULL作为空指针给模板时类型推导会出错会把传来的实参推导为一个整型类型典型情况为int而不是指针类型。结果就是不管是0还是NULL都不能作为空指针被完美转发。解决方法非常简单传一个nullptr而不是0或者NULL。具体的细节参考 Item8 。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 30:熟悉完美转发失败的情况 » 0或者NULL作为空指针","id":"53","title":"0或者NULL作为空指针"},"54":{"body":"通常无需在类中定义整型static const数据成员声明就可以了。这是因为编译器会对此类成员实行 常量传播 const propagation ),因此消除了保留内存的需要。比如,考虑下面的代码: class Widget {\npublic: static const std::size_t MinVals = 28; //MinVal的声明 …\n};\n… //没有MinVals定义 std::vector<int> widgetData;\nwidgetData.reserve(Widget::MinVals); //使用MinVals 这里我们使用Widget::MinVals或者简单点MinVals来确定widgetData的初始容量即使MinVals缺少定义。编译器通过将值28放入所有提到MinVals的位置来补充缺少的定义就像它们被要求的那样。没有为MinVals的值留存储空间是没有问题的。如果要使用MinVals的地址例如有人创建了指向MinVals的指针则MinVals需要存储这样指针才有可指向的东西尽管上面的代码仍然可以编译但是链接时就会报错直到为MinVals提供定义。 按照这个思路想象下ffwd要转发实参给它的那个函数这样声明 void f(std::size_t val); 使用MinVals调用f是可以的因为编译器直接将值28代替MinVals f(Widget::MinVals); //可以视为“f(28)” 不过如果我们尝试通过fwd调用f事情不会进展那么顺利 fwd(Widget::MinVals); //错误!不应该链接 代码可以编译但是不应该链接。如果这让你想到使用MinVals地址会发生的事确实底层的问题是一样的。 尽管代码中没有使用MinVals的地址但是fwd的形参是通用引用而引用在编译器生成的代码中通常被视作指针。在程序的二进制底层代码中以及硬件中指针和引用是一样的。在这个水平上引用只是可以自动解引用的指针。在这种情况下通过引用传递MinVals实际上与通过指针传递MinVals是一样的因此必须有内存使得指针可以指向。通过引用传递的整型static const数据成员通常需要定义它们这个要求可能会造成在不使用完美转发的代码成功的地方使用等效的完美转发失败。译者注这里意思应该是没有定义完美转发就会失败 可能你也注意到了在上述讨论中我使用了一些模棱两可的词。代码“不应该”链接。引用“通常”被看做指针。传递整型static const数据成员“通常”要求定义。看起来就像有些事情我没有告诉你...... 确实根据标准通过引用传递MinVals要求有定义。但不是所有的实现都强制要求这一点。所以取决于你的编译器和链接器你可能发现你可以在未定义的情况使用完美转发恭喜你但是这不是那样做的理由。为了具有可移植性只要给整型static const提供一个定义比如这样 const std::size_t Widget::MinVals; //在Widget的.cpp文件 注意定义中不要重复初始化这个例子中就是赋值28。但是不要忽略这个细节。如果你忘了并且在两个地方都提供了初始化编译器就会报错提醒你只能初始化一次。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 30:熟悉完美转发失败的情况 » 仅有声明的整型static const数据成员","id":"54","title":"仅有声明的整型static const数据成员"},"55":{"body":"假定我们的函数f我们想通过fwd完美转发实参给的那个函数可以通过向其传递执行某些功能的函数来自定义其行为。假设这个函数接受和返回值都是intf声明就像这样 void f(int (*pf)(int)); //pf = “process function” 值得注意的是,也可以使用更简单的非指针语法声明。这种声明就像这样,含义与上面是一样的: void f(int pf(int)); //与上面定义相同的f 无论哪种写法都可现在假设我们有了一个重载函数processVal int processVal(int value);\nint processVal(int value, int priority); 我们可以传递processVal给f f(processVal); //可以 但是我们会发现一些吃惊的事情。f要求一个函数指针作为实参但是processVal不是一个函数指针或者一个函数它是同名的两个不同函数。但是编译器可以知道它需要哪个匹配上f的形参类型的那个。因此选择了仅带有一个int的processVal地址传递给f。 工作的基本机制是f的声明让编译器识别出哪个是需要的processVal。但是fwd是一个函数模板没有它可接受的类型的信息使得编译器不可能决定出哪个函数应被传递 fwd(processVal); //错误那个processVal 单用processVal是没有类型信息的所以就不能类型推导完美转发失败。 如果我们试图使用函数模板而不是(或者也加上)重载函数的名字,同样的问题也会发生。一个函数模板不代表单独一个函数,它表示一个函数族: template<typename T>\nT workOnVal(T param) //处理值的模板\n{ … } fwd(workOnVal); //错误哪个workOnVal实例 要让像fwd的完美转发函数接受一个重载函数名或者模板名方法是指定要转发的那个重载或者实例。比如你可以创造与f相同形参类型的函数指针通过processVal或者workOnVal实例化这个函数指针这可以引导选择正确版本的processVal或者产生正确的workOnVal实例然后传递指针给fwd using ProcessFuncType = //写个类型定义见条款9 int (*)(int); ProcessFuncType processValPtr = processVal; //指定所需的processVal签名 fwd(processValPtr); //可以\nfwd(static_cast<ProcessFuncType>(workOnVal)); //也可以 当然这要求你知道fwd转发的函数指针的类型。没有理由去假定完美转发函数会记录着这些东西。毕竟完美转发被设计为接受任何内容所以如果没有文档告诉你要传递什么你又从何而知这些东西呢","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 30:熟悉完美转发失败的情况 » 重载函数的名称和模板名称","id":"55","title":"重载函数的名称和模板名称"},"56":{"body":"完美转发最后一种失败的情况是函数实参使用位域这种类型。为了更直观的解释IPv4的头部有如下模型这假定的是位域是按从最低有效位 least significant bit lsb到最高有效位 most significant bit msb布局的。C++不保证这一点,但是编译器经常提供一种机制,允许程序员控制位域布局。) struct IPv4Header { std::uint32_t version:4, IHL:4, DSCP:6, ECN:2, totalLength:16; …\n}; 如果声明我们的函数f转发函数fwd的目标为接收一个std::size_t的形参则使用IPv4Header对象的totalLength字段进行调用没有问题 void f(std::size_t sz); //要调用的函数 IPv4Header h;\n…\nf(h.totalLength); //可以 如果通过fwd转发h.totalLength给f呢那就是一个不同的情况了 fwd(h.totalLength); //错误! 问题在于fwd的形参是引用而h.totalLength是non-const位域。听起来并不是那么糟糕但是C++标准非常清楚地谴责了这种组合non-const引用不应该绑定到位域。禁止的理由很充分。位域可能包含了机器字的任意部分比如32位int的3-5位但是这些东西无法直接寻址。我之前提到了在硬件层面引用和指针是一样的所以没有办法创建一个指向任意 bit 的指针C++规定你可以指向的最小单位是char同样没有办法绑定引用到任意 bit 上。 一旦意识到接收位域实参的函数都将接收位域的 副本 就可以轻松解决位域不能完美转发的问题。毕竟没有函数可以绑定引用到位域也没有函数可以接受指向位域的指针因为不存在这种指针。位域可以传给的形参种类只有按值传递的形参有趣的是还有reference-to-const。在传值形参的情况中被调用的函数接受了一个位域的副本在传reference-to-const形参的情况中标准要求这个引用实际上绑定到存放位域值的副本对象这个对象是某种整型比如int。reference-to-const不直接绑定到位域而是绑定位域值拷贝到的一个普通对象。 传递位域给完美转发的关键就是利用传给的函数接受的是一个副本的事实。你可以自己创建副本然后利用副本调用完美转发。在IPv4Header的例子中可以如下写法 //拷贝位域值参看条款6了解关于初始化形式的信息\nauto length = static_cast<std::uint16_t>(h.totalLength); fwd(length); //转发这个副本","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 30:熟悉完美转发失败的情况 » 位域","id":"56","title":"位域"},"57":{"body":"在大多数情况下,完美转发工作的很好。你基本不用考虑其他问题。但是当其不工作时——当看起来合理的代码无法编译,或者更糟的是,虽能编译但无法按照预期运行时——了解完美转发的缺陷就很重要了。同样重要的是如何解决它们。在大多数情况下,都很简单。 请记住: 当模板类型推导失败或者推导出错误类型,完美转发会失败。 导致完美转发失败的实参种类有花括号初始化作为空指针的0或者NULL仅有声明的整型static const数据成员模板和重载函数的名字位域。","breadcrumbs":"第五章 右值引用,移动语义,完美转发 » Item 30:熟悉完美转发失败的情况 » 总结","id":"57","title":"总结"},"58":{"body":"CHAPTER 6 Lambda Expressions lambda 表达式是C++编程中的游戏规则改变者。这有点令人惊讶,因为它没有给语言带来新的表达能力。 lambda 可以做的所有事情都可以通过其他方式完成。但是 lambda 是创建函数对象相当便捷的一种方法对于日常的C++开发影响是巨大的。没有 lambda 时STL中的“_if”算法比如std::find_ifstd::remove_ifstd::count_if等通常需要繁琐的谓词但是当有 lambda 可用时这些算法使用起来就变得相当方便。用比较函数比如std::sortstd::nth_elementstd::lower_bound等来自定义算法也是同样方便的。在STL外 lambda 可以快速创建std::unique_ptr和std::shared_ptr的自定义删除器见 Item18 和 19 并且使线程API中条件变量的谓词指定变得同样简单参见 Item39 )。除了标准库, lambda 有利于即时的回调函数,接口适配函数和特定上下文中的一次性函数。 lambda 确实使C++成为更令人愉快的编程语言。 与 lambda 相关的词汇可能会令人疑惑,这里做一下简单的回顾: lambda 表达式 lambda expression )就是一个表达式。下面是部分源代码。在 std::find_if(container.begin(), container.end(), [](int val){ return 0 < val && val < 10; }); //译者注:本行高亮 中,代码的高亮部分就是 lambda 。 闭包 enclosure )是 lambda 创建的运行时对象。依赖捕获模式闭包持有被捕获数据的副本或者引用。在上面的std::find_if调用中闭包是作为第三个实参在运行时传递给std::find_if的对象。 闭包类 closure class )是从中实例化闭包的类。每个 lambda 都会使编译器生成唯一的闭包类。 lambda 中的语句成为其闭包类的成员函数中的可执行指令。 lambda 通常被用来创建闭包该闭包仅用作函数的实参。上面对std::find_if的调用就是这种情况。然而闭包通常可以拷贝所以可能有多个闭包对应于一个 lambda 。比如下面的代码: { int x; //x是局部对象 … auto c1 = //c1是lambda产生的闭包的副本 [x](int y) { return x * y > 55; }; auto c2 = c1; //c2是c1的拷贝 auto c3 = c2; //c3是c2的拷贝 …\n} c1c2c3都是 lambda 产生的闭包的副本。 非正式的讲,模糊 lambda 闭包和闭包类之间的界限是可以接受的。但是在随后的Item中区分什么存在于编译期 lambdas 和闭包类),什么存在于运行时(闭包)以及它们之间的相互关系是重要的。","breadcrumbs":"第六章 Lambda表达式 » Item 31:避免使用默认捕获模式 » 第6章 lambda 表达式","id":"58","title":"第6章 lambda 表达式"},"59":{"body":"Item 31: Avoid default capture modes C++11中有两种默认的捕获模式按引用捕获和按值捕获。但默认按引用捕获模式可能会带来悬空引用的问题而默认按值捕获模式可能会诱骗你让你以为能解决悬空引用的问题实际上并没有还会让你以为你的闭包是独立的事实上也不是独立的。 这就是本条款的一个总结。如果你偏向技术,渴望了解更多内容,就让我们从按引用捕获的危害谈起吧。 按引用捕获会导致闭包中包含了对某个局部变量或者形参的引用,变量或形参只在定义 lambda 的作用域中可用。如果该 lambda 创建的闭包生命周期超过了局部变量或者形参的生命周期那么闭包中的引用将会变成悬空引用。举个例子假如我们有元素是过滤函数filtering function的一个容器该函数接受一个int并返回一个bool该bool的结果表示传入的值是否满足过滤条件 using FilterContainer = //“using”参见条款9 std::vector<std::function<bool(int)>>; //std::function参见条款2 FilterContainer filters; //过滤函数 我们可以添加一个过滤器用来过滤掉5的倍数 filters.emplace_back( //emplace_back的信息见条款42 [](int value) { return value % 5 == 0; }\n); 然而我们可能需要的是能够在运行期计算除数divisor即不能将5硬编码到 lambda 中。因此添加的过滤器逻辑将会是如下这样: void addDivisorFilter()\n{ auto calc1 = computeSomeValue1(); auto calc2 = computeSomeValue2(); auto divisor = computeDivisor(calc1, calc2); filters.emplace_back( //危险对divisor的引用 [&](int value) { return value % divisor == 0; } //将会悬空! );\n} 这个代码实现是一个定时炸弹。 lambda 对局部变量divisor进行了引用但该变量的生命周期会在addDivisorFilter返回时结束刚好就是在语句filters.emplace_back返回之后。因此添加到filters的函数添加完该函数就死亡了。使用这个过滤器译者注就是那个添加进filters的函数会导致未定义行为这是由它被创建那一刻起就决定了的。 现在同样的问题也会出现在divisor的显式按引用捕获。 filters.emplace_back( [&divisor](int value) //危险对divisor的引用将会悬空 { return value % divisor == 0; }\n); 但通过显式的捕获,能更容易看到 lambda 的可行性依赖于变量divisor的生命周期。另外写下“divisor”这个名字能够提醒我们要注意确保divisor的生命周期至少跟 lambda 闭包一样长。比起“[&]”传达的意思,显式捕获能让人更容易想起“确保没有悬空变量”。 如果你知道一个闭包将会被马上使用例如被传入到一个STL算法中并且不会被拷贝那么在它的 lambda 被创建的环境中,将不会有持有的引用比局部变量和形参活得长的风险。在这种情况下,你可能会争论说,没有悬空引用的危险,就不需要避免使用默认的引用捕获模式。例如,我们的过滤 lambda 只会用做C++11中std::all_of的一个实参返回满足条件的所有元素 template<typename C>\nvoid workWithContainer(const C& container)\n{ auto calc1 = computeSomeValue1(); //同上 auto calc2 = computeSomeValue2(); //同上 auto divisor = computeDivisor(calc1, calc2); //同上 using ContElemT = typename C::value_type; //容器内元素的类型 using std::begin; //为了泛型见条款13 using std::end; if (std::all_of( //如果容器内所有值都为 begin(container), end(container), //除数的倍数 [&](const ContElemT& value) { return value % divisor == 0; }) ) { … //它们... } else { … //至少有一个不是的话... }\n} 的确如此,这是安全的做法,但这种安全是不确定的。如果发现 lambda 在其它上下文中很有用例如作为一个函数被添加在filters容器中然后拷贝粘贴到一个divisor变量已经死亡但闭包生命周期还没结束的上下文中你又回到了悬空的使用上了。同时在该捕获语句中也没有特别提醒了你注意分析divisor的生命周期。 从长期来看,显式列出 lambda 依赖的局部变量和形参,是更加符合软件工程规范的做法。 额外提一下C++14支持了在 lambda 中使用auto来声明变量上面的代码在C++14中可以进一步简化ContElemT的别名可以去掉if条件可以修改为 if (std::all_of(begin(container), end(container), [&](const auto& value) // C++14 { return value % divisor == 0; })) 一个解决问题的方法是divisor默认按值捕获进去也就是说可以按照以下方式来添加 lambda 到filters filters.emplace_back( //现在divisor不会悬空了 [=](int value) { return value % divisor == 0; }\n); 这足以满足本实例的要求,但在通常情况下,按值捕获并不能完全解决悬空引用的问题。这里的问题是如果你按值捕获的是一个指针,你将该指针拷贝到 lambda 对应的闭包里,但这样并不能避免 lambda 外delete这个指针的行为从而导致你的副本指针变成悬空指针。 也许你要抗议说:“这不可能发生。看过了 第4章 我对智能指针的使用非常热衷。只有那些失败的C++98的程序员才会用裸指针和delete语句。”这也许是正确的但却是不相关的因为事实上你的确会使用裸指针也的确存在被你delete的可能性。只不过在现代的C++编程风格中,不容易在源代码中显露出来而已。 假设在一个Widget类可以实现向过滤器的容器添加条目 class Widget {\npublic: … //构造函数等 void addFilter() const; //向filters添加条目\nprivate: int divisor; //在Widget的过滤器使用\n}; 这是Widget::addFilter的定义 void Widget::addFilter() const\n{ filters.emplace_back( [=](int value) { return value % divisor == 0; } );\n} 这个做法看起来是安全的代码。 lambda 依赖于divisor但默认的按值捕获确保divisor被拷贝进了 lambda 对应的所有闭包中,对吗? 错误,完全错误。 捕获只能应用于 lambda 被创建时所在作用域里的non-static局部变量包括形参。在Widget::addFilter的视线里divisor并不是一个局部变量而是Widget类的一个成员变量。它不能被捕获。而如果默认捕获模式被删除代码就不能编译了 void Widget::addFilter() const\n{ filters.emplace_back( //错误! [](int value) { return value % divisor == 0; } //divisor不可用 ); } 另外如果尝试去显式地捕获divisor变量或者按引用或者按值——这不重要也一样会编译失败因为divisor不是一个局部变量或者形参。 void Widget::addFilter() const\n{ filters.emplace_back( [divisor](int value) //错误没有名为divisor局部变量可捕获 { return value % divisor == 0; } );\n} 所以如果默认按值捕获不能捕获divisor而不用默认按值捕获代码就不能编译这是怎么一回事呢 解释就是这里隐式使用了一个原始指针this。每一个non-static成员函数都有一个this指针每次你使用一个类内的数据成员时都会使用到这个指针。例如在任何Widget成员函数中编译器会在内部将divisor替换成this->divisor。在默认按值捕获的Widget::addFilter版本中 void Widget::addFilter() const\n{ filters.emplace_back( [=](int value) { return value % divisor == 0; } );\n} 真正被捕获的是Widget的this指针而不是divisor。编译器会将上面的代码看成以下的写法 void Widget::addFilter() const\n{ auto currentObjectPtr = this; filters.emplace_back( [currentObjectPtr](int value) { return value % currentObjectPtr->divisor == 0; } );\n} 明白了这个就相当于明白了 lambda 闭包的生命周期与Widget对象的关系闭包内含有Widget的this指针的拷贝。特别是考虑以下的代码参考 第4章 的内容,只使用智能指针: using FilterContainer = //跟之前一样 std::vector<std::function<bool(int)>>; FilterContainer filters; //跟之前一样 void doSomeWork()\n{ auto pw = //创建Widgetstd::make_unique std::make_unique<Widget>(); //见条款21 pw->addFilter(); //添加使用Widget::divisor的过滤器 …\n} //销毁Widgetfilters现在持有悬空指针 当调用doSomeWork时就会创建一个过滤器其生命周期依赖于由std::make_unique产生的Widget对象即一个含有指向Widget的指针——Widget的this指针——的过滤器。这个过滤器被添加到filters中但当doSomeWork结束时Widget会由管理它的std::unique_ptr来销毁见 Item18 。从这时起filter会含有一个存着悬空指针的条目。 这个特定的问题可以通过给你想捕获的数据成员做一个局部副本,然后捕获这个副本去解决: void Widget::addFilter() const\n{ auto divisorCopy = divisor; //拷贝数据成员 filters.emplace_back( [divisorCopy](int value) //捕获副本 { return value % divisorCopy == 0; }\t//使用副本 );\n} 事实上如果采用这种方法,默认的按值捕获也是可行的。 void Widget::addFilter() const\n{ auto divisorCopy = divisor; //拷贝数据成员 filters.emplace_back( [=](int value) //捕获副本 { return value % divisorCopy == 0; }\t//使用副本 );\n} 但为什么要冒险呢当一开始你认为你捕获的是divisor的时候默认捕获模式就是造成可能意外地捕获this的元凶。 在C++14中一个更好的捕获成员变量的方式时使用通用的 lambda 捕获: void Widget::addFilter() const\n{ filters.emplace_back( //C++14 [divisor = divisor](int value) //拷贝divisor到闭包 { return value % divisor == 0; }\t//使用这个副本 );\n} 这种通用的 lambda 捕获并没有默认的捕获模式因此在C++14中本条款的建议——避免使用默认捕获模式——仍然是成立的。 使用默认的按值捕获还有另外的一个缺点,它们预示了相关的闭包是独立的并且不受外部数据变化的影响。一般来说,这是不对的。 lambda 可能会依赖局部变量和形参(它们可能被捕获),还有 静态存储生命周期 static storage duration的对象。这些对象定义在全局空间或者命名空间或者在类、函数、文件中声明为static。这些对象也能在 lambda 里使用但它们不能被捕获。但默认按值捕获可能会因此误导你让你以为捕获了这些变量。参考下面版本的addDivisorFilter函数 void addDivisorFilter()\n{ static auto calc1 = computeSomeValue1(); //现在是static static auto calc2 = computeSomeValue2(); //现在是static static auto divisor = //现在是static computeDivisor(calc1, calc2); filters.emplace_back( [=](int value) //什么也没捕获到! { return value % divisor == 0; } //引用上面的static ); ++divisor; //调整divisor\n} 随意地看了这份代码的读者可能看到“[=]”,就会认为“好的, lambda 拷贝了所有使用的对象,因此这是独立的”。但其实不独立。这个 lambda 没有使用任何的non-static局部变量所以它没有捕获任何东西。然而 lambda 的代码引用了static变量divisor在每次调用addDivisorFilter的结尾divisor都会递增通过这个函数添加到filters的所有 lambda 都展示新的行为分别对应新的divisor值。这个 lambda 是通过引用捕获divisor这和默认的按值捕获表示的含义有着直接的矛盾。如果你一开始就避免使用默认的按值捕获模式你就能解除代码的风险。 请记住: 默认的按引用捕获可能会导致悬空引用。 默认的按值捕获对于悬空指针很敏感尤其是this指针并且它会误导人产生 lambda 是独立的想法。","breadcrumbs":"第六章 Lambda表达式 » Item 31:避免使用默认捕获模式 » 条款三十一:避免使用默认捕获模式","id":"59","title":"条款三十一:避免使用默认捕获模式"},"6":{"body":"模板使用通用引用形参的话那事情就不那么明显了。这样的形参被声明为像右值引用一样也就是在函数模板中假设有一个类型形参T那么通用引用声明形式就是T&&),它们的行为在传入左值实参时大不相同。完整的叙述请参见 Item24 ,在这有些最必要的你还是需要知道: 如果expr是左值T和ParamType都会被推导为左值引用。这非常不寻常第一这是模板类型推导中唯一一种T被推导为引用的情况。第二虽然ParamType被声明为右值引用类型但是最后推导的结果是左值引用。 如果expr是右值就使用正常的也就是 情景一 )推导规则 举个例子: template<typename T>\nvoid f(T&& param); //param现在是一个通用引用类型 int x=27; //如之前一样\nconst int cx=x; //如之前一样\nconst int & rx=cx; //如之前一样 f(x); //x是左值所以T是int& //param类型也是int& f(cx); //cx是左值所以T是const int& //param类型也是const int& f(rx); //rx是左值所以T是const int& //param类型也是const int& f(27); //27是右值所以T是int //param类型就是int&& Item24 详细解释了为什么这些例子是像这样发生的。这里关键在于通用引用的类型推导规则是不同于普通的左值或者右值引用的。尤其是,当通用引用被使用时,类型推导会区分左值实参和右值实参,但是对非通用引用时不会区分。","breadcrumbs":"第一章 类型推导 » Item 1:理解模板类型推导 » 情景二ParamType是一个通用引用","id":"6","title":"情景二ParamType是一个通用引用"},"60":{"body":"Item 32: Use init capture to move objects into closures 在某些场景下按值捕获和按引用捕获都不是你所想要的。如果你有一个只能被移动的对象例如std::unique_ptr或std::future要进入到闭包里使用C++11是无法实现的。如果你要复制的对象复制开销非常高但移动的成本却不高例如标准库中的大多数容器并且你希望的是宁愿移动该对象到闭包而不是复制它。然而C++11却无法实现这一目标。 但那是C++11的时候。到了C++14就另一回事了它能支持将对象移动到闭包中。如果你的编译器兼容支持C++14那么请愉快地阅读下去。如果你仍然在使用仅支持C++11的编译器也请愉快阅读因为在C++11中有很多方法可以实现近似的移动捕获。 缺少移动捕获被认为是C++11的一个缺点直接的补救措施是将该特性添加到C++14中但标准化委员会选择了另一种方法。他们引入了一种新的捕获机制该机制非常灵活移动捕获是它可以执行的技术之一。新功能被称作 初始化捕获 init capture C++11捕获形式能做的所有事它几乎可以做甚至能完成更多功能。你不能用初始化捕获表达的东西是默认捕获模式但 Item31 说明提醒了你无论如何都应该远离默认捕获模式。在C++11捕获模式所能覆盖的场景里初始化捕获的语法有点不大方便。因此在C++11的捕获模式能完成所需功能的情况下使用它是完全合理的。 使用初始化捕获可以让你指定: 从lambda生成的闭包类中的 数据成员名称 初始化该成员的 表达式 这是使用初始化捕获将std::unique_ptr移动到闭包中的方法 class Widget { //一些有用的类型\npublic: … bool isValidated() const; bool isProcessed() const; bool isArchived() const;\nprivate: …\n}; auto pw = std::make_unique<Widget>(); //创建Widget使用std::make_unique //的有关信息参见条款21 … //设置*pw auto func = [pw = std::move(pw)] //使用std::move(pw)初始化闭包数据成员 { return pw->isValidated() && pw->isArchived(); }; 高亮的文本包含了初始化捕获的使用译者注高亮了“pw = std::move(pw)”),“=”的左侧是指定的闭包类中数据成员的名称,右侧则是初始化表达式。有趣的是,“=”左侧的作用域不同于右侧的作用域。左侧的作用域是闭包类,右侧的作用域和 lambda 定义所在的作用域相同。在上面的示例中,“=”左侧的名称pw表示闭包类中的数据成员而右侧的名称pw表示在 lambda 上方声明的对象即由调用std::make_unique去初始化的变量。因此“pw = std::move(pw)”的意思是“在闭包中创建一个数据成员pw并使用将std::move应用于局部变量pw的结果来初始化该数据成员”。 一般来说, lambda 主体中的代码在闭包类的作用域内因此pw的使用指的是闭包类的数据成员。 在此示例中,注释“设置*pw”表示在由std::make_unique创建Widget之后 lambda 捕获到指向Widget的std::unique_ptr之前该Widget以某种方式进行了修改。如果不需要这样的设置即如果std::make_unique创建的Widget处于适合被 lambda 捕获的状态则不需要局部变量pw因为闭包类的数据成员可以通过std::make_unique直接初始化 auto func = [pw = std::make_unique<Widget>()] //使用调用make_unique得到的结果 { return pw->isValidated() //初始化闭包数据成员 && pw->isArchived(); }; 这清楚地表明了这个C++14的捕获概念是从C++11发展出来的的在C++11中无法捕获表达式的结果。 因此,初始化捕获的另一个名称是 通用 lambda 捕获 generalized lambda capture )。 但是如果你使用的一个或多个编译器不支持C++14的初始捕获怎么办 如何使用不支持移动捕获的语言完成移动捕获? 请记住, lambda 表达式只是生成一个类和创建该类型对象的一种简单方式而已。没什么事是你用 lambda 可以做而不能自己手动实现的。 那么我们刚刚看到的C++14的示例代码可以用C++11重新编写如下所示 class IsValAndArch { //“is validated and archived”\npublic: using DataType = std::unique_ptr<Widget>; explicit IsValAndArch(DataType&& ptr) //条款25解释了std::move的使用 : pw(std::move(ptr)) {} bool operator()() const { return pw->isValidated() && pw->isArchived(); } private: DataType pw;\n}; auto func = IsValAndArch(std::make_unique<Widget>()); 这个代码量比 lambda 表达式要多但这并不难改变这样一个事实即如果你希望使用一个C++11的类来支持其数据成员的移动初始化那么你唯一要做的就是在键盘上多花点时间。 如果你坚持要使用 lambda 并且考虑到它们的便利性你可能会这样做移动捕获可以在C++11中这样模拟 将要捕获的对象移动到由std::bind产生的函数对象中 将“被捕获的”对象的引用赋予给 lambda 。 如果你熟悉std::bind那么代码其实非常简单。如果你不熟悉std::bind那可能需要花费一些时间来习惯它但这无疑是值得的。 假设你要创建一个本地的std::vector在其中放入一组适当的值然后将其移动到闭包中。在C++14中这很容易实现 std::vector<double> data; //要移动进闭包的对象 … //填充data auto func = [data = std::move(data)] //C++14初始化捕获 { /*使用data*/ }; 我已经对该代码的关键部分进行了高亮要移动的对象的类型std::vector<double>该对象的名称data以及用于初始化捕获的初始化表达式std::move(data)。C++11的等效代码如下其中我强调了相同的关键事项 std::vector<double> data; //同上 … //同上 auto func = std::bind( //C++11模拟初始化捕获 [](const std::vector<double>& data) //译者注:本行高亮 { /*使用data*/ }, std::move(data) //译者注:本行高亮 ); 如 lambda 表达式一样std::bind产生函数对象。我将由std::bind返回的函数对象称为 bind对象 bind objects 。std::bind的第一个实参是可调用对象后续实参表示要传递给该对象的值。 一个bind对象包含了传递给std::bind的所有实参的副本。对于每个左值实参bind对象中的对应对象都是复制构造的。对于每个右值它都是移动构造的。在此示例中第二个实参是一个右值std::move的结果请参见 Item23 因此将data移动构造到绑定对象中。这种移动构造是模仿移动捕获的关键因为将右值移动到bind对象是我们解决无法将右值移动到C++11闭包中的方法。 当“调用”bind对象即调用其函数调用运算符其存储的实参将传递到最初传递给std::bind的可调用对象。在此示例中这意味着当调用funcbind对象func中所移动构造的data副本将作为实参传递给std::bind中的 lambda 。 该 lambda 与我们在C++14中使用的 lambda 相同只是添加了一个形参data来对应我们的伪移动捕获对象。此形参是对bind对象中data副本的左值引用。这不是右值引用因为尽管用于初始化data副本的表达式std::move(data)为右值但data副本本身为左值。因此 lambda 将对绑定在对象内部的移动构造的data副本进行操作。 默认情况下,从 lambda 生成的闭包类中的operator()成员函数为const的。这具有在 lambda 主体内把闭包中的所有数据成员渲染为const的效果。但是bind对象内部的移动构造的data副本不是const的因此为了防止在 lambda 内修改该data副本 lambda 的形参应声明为reference-to-const。 如果将 lambda 声明为mutable则闭包类中的operator()将不会声明为const并且在 lambda 的形参声明中省略const也是合适的 auto func = std::bind( //C++11对mutable lambda [](std::vector<double>& data) mutable\t//初始化捕获的模拟 { /*使用data*/ }, std::move(data) ); 因为bind对象存储着传递给std::bind的所有实参的副本所以在我们的示例中bind对象包含由 lambda 生成的闭包副本,这是它的第一个实参。 因此闭包的生命周期与bind对象的生命周期相同。 这很重要因为这意味着只要存在闭包包含伪移动捕获对象的bind对象也将存在。 如果这是你第一次接触std::bind则可能需要先阅读你最喜欢的C++11参考资料然后再讨论所有详细信息。 即使是这样,这些基本要点也应该清楚: 无法移动构造一个对象到C++11闭包但是可以将对象移动构造进C++11的bind对象。 在C++11中模拟移动捕获包括将对象移动构造进bind对象然后通过传引用将移动构造的对象传递给 lambda 。 由于bind对象的生命周期与闭包对象的生命周期相同因此可以将bind对象中的对象视为闭包中的对象。 作为使用std::bind模仿移动捕获的第二个示例这是我们之前看到的在闭包中创建std::unique_ptr的C++14代码 auto func = [pw = std::make_unique<Widget>()] //同之前一样 { return pw->isValidated() //在闭包中创建pw && pw->isArchived(); }; 这是C++11的模拟实现 auto func = std::bind( [](const std::unique_ptr<Widget>& pw) { return pw->isValidated() && pw->isArchived(); }, std::make_unique<Widget>() ); 具备讽刺意味的是这里我展示了如何使用std::bind解决C++11 lambda 中的限制,因为在 Item34 中,我主张使用 lambda 而不是std::bind。但是该条款解释的是在C++11中有些情况下std::bind可能有用这就是其中一种。 在C++14中初始化捕获和auto形参等特性使得这些情况不再存在。 请记住: 使用C++14的初始化捕获将对象移动到闭包中。 在C++11中通过手写类或std::bind的方式来模拟初始化捕获。","breadcrumbs":"第六章 Lambda表达式 » Item 32:使用初始化捕获来移动对象到闭包中 » 条款三十二:使用初始化捕获来移动对象到闭包中","id":"60","title":"条款三十二:使用初始化捕获来移动对象到闭包中"},"61":{"body":"Item 33: Use decltype on auto&& parameters to std::forward them 泛型 lambda generic lambdas 是C++14中最值得期待的特性之一——因为在 lambda 的形参中可以使用auto关键字。这个特性的实现是非常直截了当的即在闭包类中的operator()函数是一个函数模版。例如存在这么一个 lambda auto f = [](auto x){ return func(normalize(x)); }; 对应的闭包类中的函数调用操作符看来就变成这样: class SomeCompilerGeneratedClassName {\npublic: template<typename T> //auto返回类型见条款3 auto operator()(T x) const { return func(normalize(x)); } … //其他闭包类功能\n}; 在这个样例中, lambda 对变量x做的唯一一件事就是把它转发给函数normalize。如果函数normalize对待左值右值的方式不一样这个 lambda 的实现方式就不大合适了,因为即使传递到 lambda 的实参是一个右值, lambda 传递进normalize的总是一个左值形参x。 实现这个 lambda 的正确方式是把x完美转发给函数normalize。这样做需要对代码做两处修改。首先x需要改成通用引用见 Item24 其次需要使用std::forward将x转发到函数normalize见 Item25 )。理论上,这都是小改动: auto f = [](auto&& x) { return func(normalize(std::forward<???>(x))); }; 在理论和实际之间存在一个问题你应该传递给std::forward的什么类型即确定我在上面写的???该是什么。 一般来说当你在使用完美转发时你是在一个接受类型参数为T的模版函数里所以你可以写std::forward<T>。但在泛型 lambda 中没有可用的类型参数T。在 lambda 生成的闭包里模版化的operator()函数中的确有一个T但在 lambda 里却无法直接使用它,所以也没什么用。 Item28 解释过如果一个左值实参被传给通用引用的形参,那么形参类型会变成左值引用。传递的是右值,形参就会变成右值引用。这意味着在这个 lambda 中可以通过检查形参x的类型来确定传递进来的实参是一个左值还是右值decltype就可以实现这样的效果见 Item3 )。传递给 lambda 的是一个左值decltype(x)就能产生一个左值引用如果传递的是一个右值decltype(x)就会产生右值引用。 Item28 也解释过在调用std::forward时惯例决定了类型实参是左值引用时来表明要传进左值类型实参是非引用就表明要传进右值。在前面的 lambda 中如果x绑定的是一个左值decltype(x)就能产生一个左值引用。这符合惯例。然而如果x绑定的是一个右值decltype(x)就会产生右值引用,而不是常规的非引用。 再看一下 Item28 中关于std::forward的C++14实现 template<typename T> //在std命名空间\nT&& forward(remove_reference_t<T>& param)\n{ return static_cast<T&&>(param);\n} 如果用户想要完美转发一个Widget类型的右值时它会使用Widget类型即非引用类型来实例化std::forward然后产生以下的函数 Widget&& forward(Widget& param) //当T是Widget时的std::forward实例\n{ return static_cast<Widget&&>(param);\n} 思考一下如果用户代码想要完美转发一个Widget类型的右值但没有遵守规则将T指定为非引用类型而是将T指定为右值引用这会发生什么。也就是思考将T换成Widget&&会如何。在std::forward实例化、应用了std::remove_reference_t后引用折叠之前std::forward看起来像这样 Widget&& && forward(Widget& param) //当T是Widget&&时的std::forward实例\n{ //(引用折叠之前) return static_cast<Widget&& &&>(param);\n} 应用了引用折叠之后(右值引用的右值引用变成单个右值引用),代码会变成: Widget&& forward(Widget& param) //当T是Widget&&时的std::forward实例\n{ //(引用折叠之后) return static_cast<Widget&&>(param);\n} 对比这个实例和用Widget设置T去实例化产生的结果它们完全相同。表明用右值引用类型和用非引用类型去初始化std::forward产生的相同的结果。 那是一个很好的消息,因为当传递给 lambda 形参x的是一个右值实参时decltype(x)可以产生一个右值引用。前面已经确认过,把一个左值传给 lambda 时decltype(x)会产生一个可以传给std::forward的常规类型。而现在也验证了对于右值把decltype(x)产生的类型传递给std::forward是非传统的不过它产生的实例化结果与传统类型相同。所以无论是左值还是右值把decltype(x)传递给std::forward都能得到我们想要的结果因此 lambda 的完美转发可以写成: auto f = [](auto&& param) { return func(normalize(std::forward<decltype(param)>(param))); }; 再加上6个点就可以让我们的 lambda 完美转发接受多个形参了因为C++14中的 lambda 也可以是可变形参的: auto f = [](auto&&... params) { return func(normalize(std::forward<decltype(params)>(params)...)); }; 请记住: 对auto&&形参使用decltype以std::forward它们。","breadcrumbs":"第六章 Lambda表达式 » Item 33:对于std::forward的auto&&形参使用decltype » 条款三十三对auto&&形参使用decltype以std::forward它们","id":"61","title":"条款三十三对auto&&形参使用decltype以std::forward它们"},"62":{"body":"Item 34: Prefer lambdas to std::bind C++11中的std::bind是C++98的std::bind1st和std::bind2nd的后续但在2005年已经非正式成为了标准库的一部分。那时标准化委员采用了TR1的文档其中包含了bind的规范。在TR1中bind位于不同的命名空间因此它是std::tr1::bind而不是std::bind接口细节也有所不同。这段历史意味着一些程序员有十年及以上的std::bind使用经验。如果你是其中之一可能会不愿意放弃一个对你有用的工具。这是可以理解的但是在这种情况下改变是更好的因为在C++11中 lambda 几乎总是比std::bind更好的选择。 从C++14开始 lambda 的作用不仅强大,而且是完全值得使用的。 这个条款假设你熟悉std::bind。 如果不是这样,你将需要获得基本的了解,然后再继续。 无论如何这样的理解都是值得的因为你永远不知道何时会在阅读或维护的代码库中遇到std::bind。 与 Item32 中一样我们将从std::bind返回的函数对象称为 bind对象 bind objects )。 优先 lambda 而不是std::bind的最重要原因是 lambda 更易读。 例如,假设我们有一个设置警报器的函数: //一个时间点的类型定义语法见条款9\nusing Time = std::chrono::steady_clock::time_point; //“enum class”见条款10\nenum class Sound { Beep, Siren, Whistle }; //时间段的类型定义\nusing Duration = std::chrono::steady_clock::duration; //在时间t使用s声音响铃时长d\nvoid setAlarm(Time t, Sound s, Duration d); 进一步假设在程序的某个时刻我们已经确定需要设置一个小时后响30秒的警报器。 但是,具体声音仍未确定。我们可以编写一个 lambda 来修改setAlarm的界面以便仅需要指定声音 //setSoundL“L”指代“lambda”是个函数对象允许指定一小时后响30秒的警报器的声音\nauto setSoundL = [](Sound s) { //使std::chrono部件在不指定限定的情况下可用 using namespace std::chrono; setAlarm(steady_clock::now() + hours(1), //一小时后响30秒的闹钟 s, //译注setAlarm三行高亮 seconds(30)); }; 我们在 lambda 中高亮了对setAlarm的调用。这看来起是一个很正常的函数调用即使是几乎没有 lambda 经验的读者也可以看到:传递给 lambda 的形参s又作为实参被传递给了setAlarm。 我们通过使用标准后缀如秒s毫秒ms和小时h等简化在C++14中的代码其中标准后缀基于C++11对用户自定义常量的支持。这些后缀在std::literals命名空间中实现因此上述代码可以按照以下方式重写 auto setSoundL = [](Sound s) { using namespace std::chrono; using namespace std::literals; //对于C++14后缀 setAlarm(steady_clock::now() + 1h,\t//C++14写法但是含义同上 s, 30s); }; 下面是我们第一次编写对应的std::bind调用。这里存在一个我们后续会修复的错误但正确的代码会更加复杂即使是此简化版本也会凸显一些重要问题 using namespace std::chrono; //同上\nusing namespace std::literals;\nusing namespace std::placeholders; //“_1”使用需要 auto setSoundB = //“B”代表“bind” std::bind(setAlarm, steady_clock::now() + 1h, //不正确!见下 _1, 30s); 我想像在之前的 lambda 中一样高亮对setAlarm的调用但是没这么个调用让我高亮。这段代码的读者只需知道调用setSoundB会使用在对std::bind的调用中所指定的时间和持续时间来调用setAlarm。对于门外汉来说占位符“_1”完全是一个魔法但即使是知情的读者也必须从思维上将占位符中的数字映射到其在std::bind形参列表中的位置以便明白调用setSoundB时的第一个实参会被传递进setAlarm作为调用setAlarm的第二个实参。在对std::bind的调用中未标识此实参的类型因此读者必须查阅setAlarm声明以确定将哪种实参传递给setSoundB。 但正如我所说,代码并不完全正确。在 lambda 中表达式steady_clock::now() + 1h显然是setAlarm的实参。调用setAlarm时将对其进行计算。可以理解我们希望在调用setAlarm后一小时响铃。但是在std::bind调用中将steady_clock::now() + 1h作为实参传递给了std::bind而不是setAlarm。这意味着将在调用std::bind时对表达式进行求值并且该表达式产生的时间将存储在产生的bind对象中。结果警报器将被设置为在 调用std::bind后一小时 发出声音而不是在调用setAlarm一小时后发出。 要解决此问题需要告诉std::bind推迟对表达式的求值直到调用setAlarm为止而这样做的方法是将对std::bind的第二个调用嵌套在第一个调用中 auto setSoundB = std::bind(setAlarm, std::bind(std::plus<>(), std::bind(steady_clock::now), 1h), _1, 30s); 如果你熟悉C++98的std::plus模板你可能会惊讶地发现在此代码中尖括号之间未指定任何类型即该代码包含“std::plus<>”而不是“std::plus<type>”。 在C++14中通常可以省略标准运算符模板的模板类型实参因此无需在此处提供。 C++11没有提供此类功能因此等效于 lambda 的C++11 std::bind为 using namespace std::chrono; //同上\nusing namespace std::placeholders;\nauto setSoundB = std::bind(setAlarm, std::bind(std::plus<steady_clock::time_point>(), std::bind(steady_clock::now), hours(1)), _1, seconds(30)); 如果此时 lambda 看起来还没有吸引力,那么应该检查一下视力了。 当setAlarm重载时会出现一个新问题。 假设有一个重载函数,其中第四个形参指定了音量: enum class Volume { Normal, Loud, LoudPlusPlus }; void setAlarm(Time t, Sound s, Duration d, Volume v); lambda 能继续像以前一样使用因为根据重载规则选择了setAlarm的三实参版本 auto setSoundL = //和之前一样 [](Sound s) { using namespace std::chrono; setAlarm(steady_clock::now() + 1h, //可以调用三实参版本的setAlarm s, 30s); }; 然而std::bind的调用将会编译失败 auto setSoundB = //错误哪个setAlarm std::bind(setAlarm, std::bind(std::plus<>(), steady_clock::now(), 1h), _1, 30s); 这里的问题是编译器无法确定应将两个setAlarm函数中的哪一个传递给std::bind。 它们仅有的是一个函数名称,而这个单一个函数名称是有歧义的。 要使对std::bind的调用能编译必须将setAlarm强制转换为适当的函数指针类型 using SetAlarm3ParamType = void(*)(Time t, Sound s, Duration d); auto setSoundB = //现在可以了 std::bind(static_cast<SetAlarm3ParamType>(setAlarm), std::bind(std::plus<>(), steady_clock::now(), 1h), _1, 30s); 但这在 lambda 和std::bind的使用上带来了另一个区别。 在setSoundL的函数调用操作符即 lambda 的闭包类对应的函数调用操作符内部对setAlarm的调用是正常的函数调用编译器可以按常规方式进行内联 setSoundL(Sound::Siren); //setAlarm函数体在这可以很好地内联 但是对std::bind的调用是将函数指针传递给setAlarm这意味着在setSoundB的函数调用操作符即绑定对象的函数调用操作符内部对setAlarm的调用是通过一个函数指针。 编译器不太可能通过函数指针内联函数这意味着与通过setSoundL进行调用相比通过setSoundB对setAlarm的调用其函数不大可能被内联 setSoundB(Sound::Siren); //setAlarm函数体在这不太可能内联 因此,使用 lambda 可能会比使用std::bind能生成更快的代码。 setAlarm示例仅涉及一个简单的函数调用。如果你想做更复杂的事情使用 lambda 会更有利。 例如考虑以下C++14的 lambda 使用它返回其实参是否在最小值lowVal和最大值highVal之间的结果其中lowVal和highVal是局部变量 auto betweenL = [lowVal, highVal] (const auto& val) //C++14 { return lowVal <= val && val <= highVal; }; 使用std::bind可以表达相同的内容但是该构造是一个通过晦涩难懂的代码来保证工作安全性的示例 using namespace std::placeholders; //同上\nauto betweenB = std::bind(std::logical_and<>(), //C++14 std::bind(std::less_equal<>(), lowVal, _1), std::bind(std::less_equal<>(), _1, highVal)); 在C++11中我们必须指定要比较的类型然后std::bind调用将如下所示 auto betweenB = std::bind(std::logical_and<bool>(), //C++11版本 std::bind(std::less_equal<int>(), lowVal, _1), std::bind(std::less_equal<int>(), _1, highVal)); 当然在C++11中 lambda 也不能采用auto形参因此它也必须指定一个类型 auto betweenL = //C++11版本 [lowVal, highVal] (int val) { return lowVal <= val && val <= highVal; }; 无论哪种方式,我希望我们都能同意, lambda 版本不仅更短,而且更易于理解和维护。 之前我就说过对于那些没有std::bind使用经验的人其占位符例如_1_2等都是魔法。 但是这不仅仅在于占位符的行为是不透明的。 假设我们有一个函数可以创建Widget的压缩副本 enum class CompLevel { Low, Normal, High }; //压缩等级 Widget compress(const Widget& w, //制作w的压缩副本 CompLevel lev); 并且我们想创建一个函数对象该函数对象允许我们指定Widget w的压缩级别。这种使用std::bind的话将创建一个这样的对象 Widget w;\nusing namespace std::placeholders;\nauto compressRateB = std::bind(compress, w, _1); 现在当我们将w传递给std::bind时必须将其存储起来以便以后进行压缩。它存储在对象compressRateB中但是它是如何被存储的呢——是通过值还是引用之所以会有所不同是因为如果在对std::bind的调用与对compressRateB的调用之间修改了w则按引用捕获的w将反映这个更改而按值捕获则不会。 答案是它是按值捕获的std::bind总是拷贝它的实参但是调用者可以使用引用来存储实参这要通过应用std::ref到实参上实现。auto compressRateB = std::bind(compress, std::ref(w), _1);的结果就是compressRateB行为像是持有w的引用而非副本。但唯一知道的方法是记住std::bind的工作方式在对std::bind的调用中没有任何迹象。然而在 lambda 方法中其中w是通过值还是通过引用捕获是显式的 auto compressRateL = //w是按值捕获lev是按值传递 [w](CompLevel lev) { return compress(w, lev); }; 同样明确的是形参是如何传递给 lambda 的。 在这里很明显形参lev是通过值传递的。 因此: compressRateL(CompLevel::High); //实参按值传递 但是在对由std::bind生成的对象调用中实参如何传递 compressRateB(CompLevel::High); //实参如何传递? 同样唯一的方法是记住std::bind的工作方式。答案是传递给bind对象的所有实参都是通过引用传递的因为此类对象的函数调用运算符使用完美转发。 与 lambda 相比使用std::bind进行编码的代码可读性较低表达能力较低并且效率可能较低。 在C++14中没有std::bind的合理用例。 但是在C++11中可以在两个受约束的情况下证明使用std::bind是合理的 移动捕获 。C++11的 lambda 不提供移动捕获,但是可以通过结合 lambda 和std::bind来模拟。 有关详细信息,请参阅 Item32 该条款还解释了在C++14中 lambda 对初始化捕获的支持消除了这个模拟的需求。 多态函数对象 。因为bind对象上的函数调用运算符使用完美转发所以它可以接受任何类型的实参以 Item30 中描述的完美转发的限制为界限)。当你要绑定带有模板化函数调用运算符的对象时,此功能很有用。 例如这个类, class PolyWidget {\npublic: template<typename T> void operator()(const T& param); …\n}; std::bind可以如下绑定一个PolyWidget对象 PolyWidget pw;\nauto boundPW = std::bind(pw, _1); boundPW可以接受任意类型的对象了 boundPW(1930); //传int给PolyWidget::operator()\nboundPW(nullptr); //传nullptr给PolyWidget::operator()\nboundPW(\"Rosebud\"); //传字面值给PolyWidget::operator() 这一点无法使用C++11的 lambda 做到。 但是在C++14中可以通过带有auto形参的 lambda 轻松实现: auto boundPW = [pw](const auto& param) //C++14 { pw(param); }; 当然这些是特殊情况并且是暂时的特殊情况因为支持C++14 lambda 的编译器越来越普遍了。 当bind在2005年被非正式地添加到C++中时与1998年的前身相比有了很大的改进。 在C++11中增加了 lambda 支持这使得std::bind几乎已经过时了从C++14开始更是没有很好的用例了。 请记住: 与使用std::bind相比 lambda 更易读,更具表达力并且可能更高效。 只有在C++11中std::bind可能对实现移动捕获或绑定带有模板化函数调用运算符的对象时会很有用。","breadcrumbs":"第六章 Lambda表达式 » Item 34:优先考虑lambda表达式而非std::bind » 条款三十四:考虑 lambda 而非std::bind","id":"62","title":"条款三十四:考虑 lambda 而非std::bind"},"63":{"body":"CHAPTER 7 The Concurrency API C++11的伟大成功之一是将并发整合到语言和库中。熟悉其他线程API比如pthreads或者Windows threads的开发者有时可能会对C++提供的斯巴达式译者注应该是简陋和严谨的意思功能集感到惊讶这是因为C++对于并发的大量支持是在对编译器作者约束的层面。由此产生的语言保证意味着在C++的历史中,开发者首次通过标准库可以写出跨平台的多线程程序。这为构建表达库奠定了坚实的基础,标准库并发组件(任务 tasks ,期望 futures ,线程 threads ,互斥 mutexes ,条件变量 condition variables ,原子对象 atomic objects 等)仅仅是成为并发软件开发者丰富工具集的基础。 在接下来的条款中,记住标准库有两个 future 的模板std::future和std::shared_future。在许多情况下区别不重要所以我们经常简单的混于一谈为 futures 。","breadcrumbs":"第七章 并发API » Item 35:优先考虑基于任务的编程而非基于线程的编程 » 第7章 并发API","id":"63","title":"第7章 并发API"},"64":{"body":"Item 35: Prefer task-based programming to thread-based 如果开发者想要异步执行doAsyncWork函数通常有两种方式。其一是通过创建std::thread执行doAsyncWork这是应用了 基于线程 thread-based )的方式: int doAsyncWork();\nstd::thread t(doAsyncWork); 其二是将doAsyncWork传递给std::async一种 基于任务 task-based )的策略: auto fut = std::async(doAsyncWork); //“fut”表示“future” 这种方式中传递给std::async的函数对象被称为一个 任务 task )。 基于任务的方法通常比基于线程的方法更优原因之一上面的代码已经表明基于任务的方法代码量更少。我们假设调用doAsyncWork的代码对于其提供的返回值是有需求的。基于线程的方法对此无能为力而基于任务的方法就简单了因为std::async返回的 future 提供了get函数从而可以获取返回值。如果doAsycnWork发生了异常get函数就显得更为重要因为get函数可以提供抛出异常的访问而基于线程的方法如果doAsyncWork抛出了异常程序会直接终止通过调用std::terminate。 基于线程与基于任务最根本的区别在于基于任务的抽象层次更高。基于任务的方式使得开发者从线程管理的细节中解放出来对此在C++并发软件中总结了“ thread ”的三种含义: 硬件线程 hardware threads是真实执行计算的线程。现代计算机体系结构为每个CPU核心提供一个或者多个硬件线程。 软件线程 software threads也被称为系统线程OS threads、system threads是操作系统假设有一个操作系统。有些嵌入式系统没有。管理的在硬件线程上执行的线程。通常可以存在比硬件线程更多数量的软件线程因为当软件线程被阻塞的时候比如 I/O、同步锁或者条件变量操作系统可以调度其他未阻塞的软件线程执行提供吞吐量。 std::thread 是C++执行过程的对象,并作为软件线程的句柄( handle 。有些std::thread对象代表“空”句柄即没有对应软件线程因为它们处在默认构造状态即没有函数要执行有些被移动走移动到的std::thread就作为这个软件线程的句柄有些被join它们要运行的函数已经运行完有些被detach它们和对应的软件线程之间的连接关系被打断。 软件线程是有限的资源。如果开发者试图创建大于系统支持的线程数量会抛出std::system_error异常。即使你编写了不抛出异常的代码这仍然会发生比如下面的代码即使 doAsyncWork是 noexcept int doAsyncWork() noexcept; //noexcept见条款14 这段代码仍然会抛出异常: std::thread t(doAsyncWork); //如果没有更多线程可用,则抛出异常 设计良好的软件必须能有效地处理这种可能性但是怎样做一种方法是在当前线程执行doAsyncWork但是这可能会导致负载不均而且如果当前线程是GUI线程可能会导致响应时间过长的问题。另一种方法是等待某些当前运行的软件线程结束之后再创建新的std::thread但是仍然有可能当前运行的线程在等待doAsyncWork的动作例如产生一个结果或者报告一个条件变量。 即使没有超出软件线程的限额,仍然可能会遇到 资源超额 oversubscription 的麻烦。这是一种当前准备运行的即未阻塞的软件线程大于硬件线程的数量的情况。情况发生时线程调度器操作系统的典型部分会将软件线程时间切片分配到硬件上。当一个软件线程的时间片执行结束会让给另一个软件线程此时发生上下文切换。软件线程的上下文切换会增加系统的软件线程管理开销当软件线程安排到与上次时间片运行时不同的硬件线程上这个开销会更高。这种情况下1CPU缓存对这个软件线程很冷淡即几乎没有什么数据也没有有用的操作指南2“新”软件线程的缓存数据会“污染”“旧”线程的数据旧线程之前运行在这个核心上而且还有可能再次在这里运行。 避免资源超额很困难因为软件线程之于硬件线程的最佳比例取决于软件线程的执行频率那是动态改变的比如一个程序从IO密集型变成计算密集型执行频率是会改变的。而且比例还依赖上下文切换的开销以及软件线程对于CPU缓存的使用效率。此外硬件线程的数量和CPU缓存的细节比如缓存多大相应速度多少取决于机器的体系结构即使经过调校在某一种机器平台避免了资源超额而仍然保持硬件的繁忙状态换一个其他类型的机器这个调校并不能提供较好效果的保证。 如果你把这些问题推给另一个人做你就会变得很轻松而使用std::async就做了这件事 auto fut = std::async(doAsyncWork); //线程管理责任交给了标准库的开发者 这种调用方式将线程管理的职责转交给C++标准库的开发者。举个例子这种调用方式会减少抛出资源超额异常的可能性因为这个调用可能不会开启一个新的线程。你会想“怎么可能如果我要求比系统可以提供的更多的软件线程创建std::thread和调用std::async为什么会有区别”确实有区别因为以这种形式调用即使用默认启动策略——见 Item36 std::async不保证会创建新的软件线程。然而他们允许通过调度器来将特定函数本例中为doAsyncWork运行在等待此函数结果的线程上即在对fut调用get或者wait的线程上合理的调度器在系统资源超额或者线程耗尽时就会利用这个自由度。 如果考虑自己实现“在等待结果的线程上运行输出结果的函数”之前提到了可能引出负载不均衡的问题这问题不那么容易解决因为应该是std::async和运行时的调度程序来解决这个问题而不是你。遇到负载不均衡问题时对机器内发生的事情运行时调度程序比你有更全面的了解因为它管理的是所有执行过程而不仅仅个别开发者运行的代码。 有了std::asyncGUI线程中响应变慢仍然是个问题因为调度器并不知道你的哪个线程有高响应要求。这种情况下你会想通过向std::async传递std::launch::async启动策略来保证想运行函数在不同的线程上执行见 Item36 )。 最前沿的线程调度器使用系统级线程池( thread pool )来避免资源超额的问题,并且通过工作窃取算法( work-stealing algorithm 来提升了跨硬件核心的负载均衡。C++标准实际上并不要求使用线程池或者工作窃取实际上C++11并发规范的某些技术层面使得实现这些技术的难度可能比想象中更有挑战。不过库开发者在标准库实现中采用了这些技术也有理由期待这个领域会有更多进展。如果你当前的并发编程采用基于任务的方式在这些技术发展中你会持续获得回报。相反如果你直接使用std::thread编程处理线程耗尽、资源超额、负责均衡问题的责任就压在了你身上更不用说你对这些问题的解决方法与同机器上其他程序采用的解决方案配合得好不好了。 对比基于线程的编程方式基于任务的设计为开发者避免了手动线程管理的痛苦并且自然提供了一种获取异步执行程序的结果即返回值或者异常的方式。当然仍然存在一些场景直接使用std::thread会更有优势 你需要访问非常基础的线程API 。C++并发API通常是通过操作系统提供的系统级APIpthreads或者Windows threads来实现的系统级API通常会提供更加灵活的操作方式举个例子C++没有线程优先级和亲和性的概念。为了提供对底层系统级线程API的访问std::thread对象提供了native_handle的成员函数而std::future即std::async返回的东西没有这种能力。 你需要且能够优化应用的线程使用 。举个例子,你要开发一款已知执行概况的服务器软件,部署在有固定硬件特性的机器上,作为唯一的关键进程。 你需要实现C++并发API之外的线程技术 比如C++实现中未支持的平台的线程池。 这些都是在应用开发中并不常见的例子,大多数情况,开发者应该优先采用基于任务的编程方式。 请记住: std::thread API不能直接访问异步执行的结果如果执行函数有异常抛出代码会终止执行。 基于线程的编程方式需要手动的线程耗尽、资源超额、负责均衡、平台适配性管理。 通过带有默认启动策略的std::async进行基于任务的编程方式会解决大部分问题。","breadcrumbs":"第七章 并发API » Item 35:优先考虑基于任务的编程而非基于线程的编程 » 条款三十五:优先考虑基于任务的编程而非基于线程的编程","id":"64","title":"条款三十五:优先考虑基于任务的编程而非基于线程的编程"},"65":{"body":"Item 36: Specify std::launch::async if asynchronicity is essential. 当你调用std::async执行函数时或者其他可调用对象你通常希望异步执行函数。但是这并不一定是你要求std::async执行的操作。你事实上要求这个函数按照std::async启动策略来执行。有两种标准策略每种都通过std::launch这个限域enum的一个枚举名表示关于枚举的更多细节参见 Item10 。假定一个函数f传给std::async来执行 std::launch::async启动策略 意味着f必须异步执行即在不同的线程。 std::launch::deferred启动策略 意味着f仅当在std::async返回的 future 上调用get或者wait时才执行。这表示f 推迟 到存在这样的调用时才执行译者注异步与并发是两个不同概念这里侧重于惰性求值。当get或wait被调用f会同步执行即调用方被阻塞直到f运行结束。如果get和wait都没有被调用f将不会被执行。这是个简化说法。关键点不是要在其上调用get或wait的那个 future ,而是 future 引用的那个共享状态。( Item38 讨论了 future 与共享状态的关系。因为std::future支持移动也可以用来构造std::shared_future并且因为std::shared_future可以被拷贝对共享状态——对f传到的那个std::async进行调用产生的——进行引用的 future 对象有可能与std::async返回的那个 future 对象不同。这非常绕口所以经常回避这个事实简称为在std::async返回的 future 上调用get或wait。 可能让人惊奇的是std::async的默认启动策略——你不显式指定一个策略时它使用的那个——不是上面中任意一个。相反是求或在一起的。下面的两种调用含义相同 auto fut1 = std::async(f); //使用默认启动策略运行f\nauto fut2 = std::async(std::launch::async | //使用async或者deferred运行f std::launch::deferred, f); 因此默认策略允许f异步或者同步执行。如同 Item35 中指出这种灵活性允许std::async和标准库的线程管理组件承担线程创建和销毁的责任避免资源超额以及平衡负载。这就是使用std::async并发编程如此方便的原因。 但是使用默认启动策略的std::async也有一些有趣的影响。给定一个线程t执行此语句 auto fut = std::async(f); //使用默认启动策略运行f 无法预测f是否会与t并发运行 因为f可能被安排延迟运行。 无法预测f是否会在与某线程相异的另一线程上执行这个某线程在fut上调用get或wait 。如果对fut调用函数的线程是t含义就是无法预测f是否在异于t的另一线程上执行。 无法预测f是否执行 因为不能确保在程序每条路径上都会不会在fut上调用get或者wait。 默认启动策略的调度灵活性导致使用thread_local变量比较麻烦因为这意味着如果f读写了 线程本地存储 thread-local storage TLS不可能预测到哪个线程的变量被访问 auto fut = std::async(f); //f的TLS可能是为单独的线程建的 //也可能是为在fut上调用get或者wait的线程建的 这还会影响到基于wait的循环使用超时机制因为在一个延时的任务参见 Item35 上调用wait_for或者wait_until会产生std::launch::deferred值。意味着以下循环看似应该最终会终止但可能实际上永远运行 using namespace std::literals; //为了使用C++14中的时间段后缀参见条款34 void f() //f休眠1秒然后返回\n{ std::this_thread::sleep_for(1s);\n} auto fut = std::async(f); //异步运行f理论上 while (fut.wait_for(100ms) != //循环直到f完成运行时停止... std::future_status::ready) //但是有可能永远不会发生!\n{ …\n} 如果f与调用std::async的线程并发运行如果为f选择的启动策略是std::launch::async这里没有问题假定f最终会执行完毕但是如果f是延迟执行fut.wait_for将总是返回std::future_status::deferred。这永远不等于std::future_status::ready循环会永远执行下去。 这种错误很容易在开发和单元测试中忽略,因为它可能在负载过高时才能显现出来。那些是使机器资源超额或者线程耗尽的条件,此时任务推迟执行才最有可能发生。毕竟,如果硬件没有资源耗尽,没有理由不安排任务并发执行。 修复也是很简单的只需要检查与std::async对应的future是否被延迟执行即可那样就会避免进入无限循环。不幸的是没有直接的方法来查看future是否被延迟执行。相反你必须调用一个超时函数——比如wait_for这种函数。在这个情况中你不想等待任何事只想查看返回值是否是std::future_status::deferred所以无须怀疑使用0调用wait_for auto fut = std::async(f); //同上 if (fut.wait_for(0s) == //如果task是deferred被延迟状态 std::future_status::deferred)\n{ … //在fut上调用wait或get来异步调用f\n} else { //task没有deferred被延迟 while (fut.wait_for(100ms) != //不可能无限循环假设f完成 std::future_status::ready) { … //task没deferred被延迟也没ready已准备 //做并行工作直到已准备 } … //fut是ready已准备状态\n} 这些各种考虑的结果就是只要满足以下条件std::async的默认启动策略就可以使用 任务不需要和执行get或wait的线程并行执行。 读写哪个线程的thread_local变量没什么问题。 可以保证会在std::async返回的 future 上调用get或wait或者该任务可能永远不会执行也可以接受。 使用wait_for或wait_until编码时考虑到了延迟状态。 如果上述条件任何一个都满足不了你可能想要保证std::async会安排任务进行真正的异步执行。进行此操作的方法是调用时将std::launch::async作为第一个实参传递 auto fut = std::async(std::launch::async, f); //异步启动f的执行 事实上对于一个类似std::async行为的函数但是会自动使用std::launch::async作为启动策略的工具拥有它会非常方便而且编写起来很容易也使它看起来很棒。C++11版本如下 template<typename F, typename... Ts>\ninline\nstd::future<typename std::result_of<F(Ts...)>::type>\nreallyAsync(F&& f, Ts&&... params) //返回异步调用f(params...)得来的future\n{ return std::async(std::launch::async, std::forward<F>(f), std::forward<Ts>(params)...);\n} 这个函数接受一个可调用对象f和0或多个形参params然后完美转发参见 Item25 给std::async使用std::launch::async作为启动策略。就像std::async一样返回std::future作为用params调用f得到的结果。确定结果的类型很容易因为 type trait std::result_of可以提供给你。参见 Item9 关于 type trait 的详细表述。) reallyAsync就像std::async一样使用 auto fut = reallyAsync(f); //异步运行f如果std::async抛出异常它也会抛出 在C++14中reallyAsync返回类型的推导能力可以简化函数的声明 template<typename F, typename... Ts>\ninline\nauto // C++14\nreallyAsync(F&& f, Ts&&... params)\n{ return std::async(std::launch::async, std::forward<F>(f), std::forward<Ts>(params)...);\n} 这个版本清楚表明reallyAsync除了使用std::launch::async启动策略之外什么也没有做。 请记住: std::async的默认启动策略是异步和同步执行兼有的。 这个灵活性导致访问thread_locals的不确定性隐含了任务可能不会被执行的意思会影响调用基于超时的wait的程序逻辑。 如果异步执行任务非常关键则指定std::launch::async。","breadcrumbs":"第七章 并发API » Item 36:如果有异步的必要请指定std::launch::threads » 条款三十六如果有异步的必要请指定std::launch::async","id":"65","title":"条款三十六如果有异步的必要请指定std::launch::async"},"66":{"body":"Item 37: Make std::threads unjoinable on all paths 每个std::thread对象处于两个状态之一 可结合的 joinable )或者 不可结合的 unjoinable 。可结合状态的std::thread对应于正在运行或者可能要运行的异步执行线程。比如对应于一个阻塞的 blocked 或者等待调度的线程的std::thread是可结合的对应于运行结束的线程的std::thread也可以认为是可结合的。 不可结合的std::thread正如所期待一个不是可结合状态的std::thread。不可结合的std::thread对象包括 默认构造的std::threads 。这种std::thread没有函数执行因此没有对应到底层执行线程上。 已经被移动走的std::thread对象 。移动的结果就是一个std::thread原来对应的执行线程现在对应于另一个std::thread。 已经被join的std::thread 。在join之后std::thread不再对应于已经运行完了的执行线程。 已经被detach的std::thread 。detach断开了std::thread对象与执行线程之间的连接。 译者注std::thread可以视作状态保存的对象保存的状态可能也包括可调用对象有没有具体的线程承载就是有没有连接 std::thread的可结合性如此重要的原因之一就是当可结合的线程的析构函数被调用程序执行会终止。比如假定有一个函数doWork使用一个过滤函数filter一个最大值maxVal作为形参。doWork检查是否满足计算所需的条件然后使用在0到maxVal之间的通过过滤器的所有值进行计算。如果进行过滤非常耗时并且确定doWork条件是否满足也很耗时则将两件事并发计算是很合理的。 我们希望为此采用基于任务的设计(参见 Item35 ),但是假设我们希望设置做过滤的线程的优先级。 Item35 阐释了那需要线程的原生句柄只能通过std::thread的API来完成基于任务的API比如 future )做不到。所以最终采用基于线程而不是基于任务。 我们可能写出以下代码: 代码如下: constexpr auto tenMillion = 10000000; //constexpr见条款15 bool doWork(std::function<bool(int)> filter, //返回计算是否执行; int maxVal = tenMillion) //std::function见条款2\n{ std::vector<int> goodVals; //满足filter的值 std::thread t([&filter, maxVal, &goodVals] //填充goodVals { for (auto i = 0; i <= maxVal; ++i) { if (filter(i)) goodVals.push_back(i); } }); auto nh = t.native_handle(); //使用t的原生句柄 … //来设置t的优先级 if (conditionsAreSatisfied()) { t.join(); //等t完成 performComputation(goodVals); return true; //执行了计算 } return false; //未执行计算\n} 在解释这份代码为什么有问题之前我先把tenMillion的初始化值弄得更可读一些这利用了C++14的能力使用单引号作为数字分隔符 constexpr auto tenMillion = 10'000'000; //C++14 还要指出在开始运行之后设置t的优先级就像把马放出去之后再关上马厩门一样译者注太晚了。更好的设计是在挂起状态时开始t这样可以在执行任何计算前调整优先级但是我不想你为考虑那些代码而分心。如果你对代码中忽略的部分感兴趣可以转到 Item39 那个Item告诉你如何以开始那些挂起状态的线程。 返回doWork。如果conditionsAreSatisfied()返回true没什么问题但是如果返回false或者抛出异常在doWork结束调用t的析构函数时std::thread对象t会是可结合的。这造成程序执行中止。 你可能会想为什么std::thread析构的行为是这样的那是因为另外两种显而易见的方式更糟 隐式join 。这种情况下std::thread的析构函数将等待其底层的异步执行线程完成。这听起来是合理的但是可能会导致难以追踪的异常表现。比如如果conditonAreStatisfied()已经返回了falsedoWork继续等待过滤器应用于所有值就很违反直觉。 隐式detach 。这种情况下std::thread析构函数会分离std::thread与其底层的线程。底层线程继续运行。听起来比join的方式好但是可能导致更严重的调试问题。比如在doWork中goodVals是通过引用捕获的局部变量。它也被 lambda 修改通过调用push_back。假定 lambda 异步执行时conditionsAreSatisfied()返回false。这时doWork返回同时局部变量包括goodVals被销毁。栈被弹出并在doWork的调用点继续执行线程。 调用点之后的语句有时会进行其他函数调用并且至少一个这样的调用可能会占用曾经被doWork使用的栈位置。我们调用那么一个函数f。当f运行时doWork启动的 lambda 仍在继续异步运行。该 lambda 可能在栈内存上调用push_back该内存曾属于goodVals但是现在是f的栈内存的某个位置。这意味着对f来说内存被自动修改了想象一下调试的时候“乐趣”吧。 标准委员会认为,销毁可结合的线程如此可怕以至于实际上禁止了它(规定销毁可结合的线程导致程序终止)。 这使你有责任确保使用std::thread对象时在所有的路径上超出定义所在的作用域时都是不可结合的。但是覆盖每条路径可能很复杂可能包括自然执行通过作用域或者通过returncontinuebreakgoto或异常跳出作用域有太多可能的路径。 每当你想在执行跳至块之外的每条路径执行某种操作,最通用的方式就是将该操作放入局部对象的析构函数中。这些对象称为 RAII对象 RAII objects ),从 RAII类 中实例化。RAII全称为 “Resource Acquisition Is Initialization”资源获得即初始化尽管技术关键点在析构上而不是实例化上。RAII类在标准库中很常见。比如STL容器每个容器析构函数都销毁容器中的内容物并释放内存标准智能指针 Item18 - 20 解释了std::uniqu_ptr的析构函数调用他指向的对象的删除器std::shared_ptr和std::weak_ptr的析构函数递减引用计数std::fstream对象它们的析构函数关闭对应的文件等。但是标准库没有std::thread的RAII类可能是因为标准委员会拒绝将join和detach作为默认选项不知道应该怎么样完成RAII。 幸运的是完成自行实现的类并不难。比如下面的类实现允许调用者指定ThreadRAII对象一个std::thread的RAII对象析构时调用join或者detach class ThreadRAII {\npublic: enum class DtorAction { join, detach }; //enum class的信息见条款10 ThreadRAII(std::thread&& t, DtorAction a) //析构函数中对t实行a动作 : action(a), t(std::move(t)) {} ~ThreadRAII() { //可结合性测试见下 if (t.joinable()) { if (action == DtorAction::join) { t.join(); } else { t.detach(); } } } std::thread& get() { return t; } //见下 private: DtorAction action; std::thread t;\n}; 我希望这段代码是不言自明的,但是下面几点说明可能会有所帮助: 构造器只接受std::thread右值因为我们想要把传来的std::thread对象移动进ThreadRAII。std::thread不可以复制。 构造器的形参顺序设计的符合调用者直觉首先传递std::thread然后选择析构执行的动作这比反过来更合理但是成员初始化列表设计的匹配成员声明的顺序。将std::thread对象放在声明最后。在这个类中这个顺序没什么特别之处但是通常可能一个数据成员的初始化依赖于另一个因为std::thread对象可能会在初始化结束后就立即执行函数了所以在最后声明是一个好习惯。这样就能保证一旦构造结束在前面的所有数据成员都初始化完毕可以供std::thread数据成员绑定的异步运行的线程安全使用。 ThreadRAII提供了get函数访问内部的std::thread对象。这类似于标准智能指针提供的get函数可以提供访问原始指针的入口。提供get函数避免了ThreadRAII复制完整std::thread接口的需要也意味着ThreadRAII可以在需要std::thread对象的上下文环境中使用。 在ThreadRAII析构函数调用std::thread对象t的成员函数之前检查t是否可结合。这是必须的因为在不可结合的std::thread上调用join或detach会导致未定义行为。客户端可能会构造一个std::thread然后用它构造一个ThreadRAII使用get获取t然后移动t或者调用join或detach每一个操作都使得t变为不可结合的。 如果你担心下面这段代码 if (t.joinable()) { if (action == DtorAction::join) { t.join(); } else { t.detach(); }\n} 存在竞争因为在t.joinable()的执行和调用join或detach的中间可能有其他线程改变了t为不可结合你的直觉值得表扬但是这个担心不必要。只有调用成员函数才能使std::thread对象从可结合变为不可结合状态比如joindetach或者移动操作。在ThreadRAII对象析构函数调用时应当没有其他线程在那个对象上调用成员函数。如果同时进行调用那肯定是有竞争的但是不在析构函数中是在客户端代码中试图同时在一个对象上调用两个成员函数析构函数和其他函数。通常仅当所有都为const成员函数时在一个对象同时调用多个成员函数才是安全的。 在doWork的例子上使用ThreadRAII的代码如下 bool doWork(std::function<bool(int)> filter, //同之前一样 int maxVal = tenMillion)\n{ std::vector<int> goodVals; //同之前一样 ThreadRAII t( //使用RAII对象 std::thread([&filter, maxVal, &goodVals] { for (auto i = 0; i <= maxVal; ++i) { if (filter(i)) goodVals.push_back(i); } }), ThreadRAII::DtorAction::join //RAII动作 ); auto nh = t.get().native_handle(); … if (conditionsAreSatisfied()) { t.get().join(); performComputation(goodVals); return true; } return false;\n} 这种情况下我们选择在ThreadRAII的析构函数对异步执行的线程进行join因为在先前分析中detach可能导致噩梦般的调试过程。我们之前也分析了join可能会导致表现异常坦率说也可能调试困难但是在未定义行为detach导致程序终止使用原生std::thread导致或者表现异常之间选择一个后果可能表现异常是最好的那个。 哎, Item39 表明了使用ThreadRAII来保证在std::thread的析构时执行join有时不仅可能导致程序表现异常还可能导致程序挂起。“适当”的解决方案是此类程序应该和异步执行的 lambda 通信告诉它不需要执行了可以直接返回但是C++11中不支持 可中断线程 interruptible threads 。可以自行实现但是这不是本书讨论的主题。关于这一点Anthony Williams的《C++ Concurrency in Action》Manning Publications2012的section 9.2中有详细讨论。译者注此书中文版已出版名为《C++并发编程实战》且本文翻译时2020已有第二版出版。 Item17 说明因为ThreadRAII声明了一个析构函数因此不会有编译器生成移动操作但是没有理由ThreadRAII对象不能移动。如果要求编译器生成这些函数函数的功能也正确所以显式声明来告诉编译器自动生成也是合适的 class ThreadRAII {\npublic: enum class DtorAction { join, detach }; //跟之前一样 ThreadRAII(std::thread&& t, DtorAction a) //跟之前一样 : action(a), t(std::move(t)) {} ~ThreadRAII() { … //跟之前一样 } ThreadRAII(ThreadRAII&&) = default; //支持移动 ThreadRAII& operator=(ThreadRAII&&) = default; std::thread& get() { return t; } //跟之前一样 private: // as before DtorAction action; std::thread t;\n}; 请记住: 在所有路径上保证thread最终是不可结合的。 析构时join会导致难以调试的表现异常问题。 析构时detach会导致难以调试的未定义行为。 声明类数据成员时最后声明std::thread对象。","breadcrumbs":"第七章 并发API » Item 37:从各个方面使得std::threads unjoinable » 条款三十七使std::thread在所有路径最后都不可结合","id":"66","title":"条款三十七使std::thread在所有路径最后都不可结合"},"67":{"body":"Item 38Be aware of varying thread handle destructor behavior Item37 中说明了可结合的std::thread对应于执行的系统线程。未延迟non-deferred任务的 future (参见 Item36 与系统线程有相似的关系。因此可以将std::thread对象和 future 对象都视作系统线程的 句柄 handles )。 从这个角度来说有趣的是std::thread和 future 在析构时有相当不同的行为。在 Item37 中说明可结合的std::thread析构会终止你的程序因为两个其他的替代选择——隐式join或者隐式detach都是更加糟糕的。但是 future 的析构表现有时就像执行了隐式join有时又像是隐式执行了detach有时又没有执行这两个选择。它永远不会造成程序终止。这个线程句柄多种表现值得研究一下。 我们可以观察到实际上 future 是通信信道的一端,被调用者通过该信道将结果发送给调用者。( Item39 说,与 future 有关的这种通信信道也可以被用于其他目的。但是对于本条款我们只考虑它们作为这样一个机制的用法即被调用者传送结果给调用者。被调用者通常是异步执行将计算结果写入通信信道中通常通过std::promise对象调用者使用 future 读取结果。你可以想象成下面的图示,虚线表示信息的流动方向: item38_fig1 但是被调用者的结果存储在哪里被调用者会在调用者get相关的 future 之前执行完成所以结果不能存储在被调用者的std::promise。这个对象是局部的当被调用者执行结束后会被销毁。 结果同样不能存储在调用者的 future 因为当然还有其他原因std::future可能会被用来创建std::shared_future这会将被调用者的结果所有权从std::future转移给std::shared_future而std::shared_future在std::future被销毁之后可能被复制很多次。鉴于不是所有的结果都可以被拷贝即只可移动类型并且结果的生命周期至少与最后一个引用它的 future 一样长,这些潜在的 future 中哪个才是被调用者用来存储结果的? 因为与被调用者关联的对象和与调用者关联的对象都不适合存储这个结果,所以必须存储在两者之外的位置。此位置称为 共享状态 shared state )。共享状态通常是基于堆的对象,但是标准并未指定其类型、接口和实现。标准库的作者可以通过任何他们喜欢的方式来实现共享状态。 我们可以想象调用者,被调用者,共享状态之间关系如下图,虚线还是表示信息流方向: item38_fig2 共享状态的存在非常重要,因为 future 的析构函数——这个条款的话题——取决于与 future 关联的共享状态。特别地, 引用了共享状态——使用std::async启动的未延迟任务建立的那个——的最后一个 future 的析构函数会阻塞住 ,直到任务完成。本质上,这种 future 的析构函数对执行异步任务的线程执行了隐式的join。 其他所有 future 的析构函数简单地销毁 future 对象 。对于异步执行的任务就像对底层的线程执行detach。对于延迟任务来说如果这是最后一个 future ,意味着这个延迟任务永远不会执行了。 这些规则听起来好复杂。我们真正要处理的是一个简单的“正常”行为以及一个单独的例外。正常行为是 future 析构函数销毁 future 。就是这样。那意味着不join也不detach也不运行什么只销毁 future 的数据成员(当然,还做了另一件事,就是递减了共享状态中的引用计数,这个共享状态是由引用它的 future 和被调用者的std::promise共同控制的。这个引用计数让库知道共享状态什么时候可以被销毁。对于引用计数的一般信息参见 Item19 。) 正常行为的例外情况仅在某个future同时满足下列所有情况下才会出现 它关联到由于调用std::async而创建出的共享状态 。 任务的启动策略是std::launch::async (参见 Item36 原因是运行时系统选择了该策略或者在对std::async的调用中指定了该策略。 这个 future 是关联共享状态的最后一个 future 。对于std::future情况总是如此对于std::shared_future如果还有其他的std::shared_future与要被销毁的 future 引用相同的共享状态,则要被销毁的 future 遵循正常行为(即简单地销毁它的数据成员)。 只有当上面的三个条件都满足时, future 的析构函数才会表现“异常”行为就是在异步任务执行完之前阻塞住。实际上这相当于对由于运行std::async创建出任务的线程隐式join。 通常会听到将这种异常的析构函数行为称为“std::async来的 futures 阻塞了它们的析构函数”。作为近似描述没有问题,但是有时你不只需要一个近似描述。现在你已经知道了其中真相。 你可能想要了解更加深入。比如“为什么由std::async启动的未延迟任务的共享状态会有这么个特殊规则”这很合理。据我所知标准委员会希望避免隐式detach参见 Item37 的有关问题但是不想采取强制程序终止这种激进的方案就像对可结合的sth::thread做的那样译者注指析构时std::thread若可结合则调用std::terminal终止程序同样参见 Item37 所以妥协使用隐式join。这个决定并非没有争议并且认真讨论过在C++14中放弃这种行为。最后决定先不改变所以C++11和C++14中这里的行为是一致的。 future 的API没办法确定是否 future 引用了一个std::async调用产生的共享状态因此给定一个任意的 future 对象,无法判断会不会阻塞析构函数从而等待异步任务的完成。这就产生了有意思的事情: //这个容器可能在析构函数处阻塞因为其中至少一个future可能引用由std::async启动的\n//未延迟任务创建出来的共享状态\nstd::vector<std::future<void>> futs; //std::future<void>相关信息见条款39 class Widget { //Widget对象可能在析构函数处阻塞\npublic: …\nprivate: std::shared_future<double> fut;\n}; 当然,如果你有办法知道给定的 future 不 满足上面条件的任意一条比如由于程序逻辑造成的不满足你就可以确定析构函数不会执行“异常”行为。比如只有通过std::async创建的共享状态才有资格执行“异常”行为但是有其他创建共享状态的方式。一种是使用std::packaged_task一个std::packaged_task对象通过包覆wrapping方式准备一个函数或者其他可调用对象来异步执行然后将其结果放入共享状态中。然后通过std::packaged_task的get_future函数可以获取有关该共享状态的 future int calcValue(); //要运行的函数\nstd::packaged_task<int()> //包覆calcValue以异步运行 pt(calcValue);\nauto fut = pt.get_future(); //从pt获取future 此时,我们知道 future 没有关联std::async创建的共享状态所以析构函数肯定正常方式执行。 一旦被创建std::packaged_task类型的pt就可以在一个线程上执行。也可以通过调用std::async运行但是如果你想使用std::async运行任务没有理由使用std::packaged_task因为在std::packaged_task安排任务并执行之前std::async会做std::packaged_task做的所有事。 std::packaged_task不可拷贝所以当pt被传递给std::thread构造函数时必须先转为右值通过std::move参见 Item23 std::thread t(std::move(pt)); //在t上运行pt 这个例子是你对于 future 的析构函数的正常行为有一些了解,但是将这些语句放在一个作用域的语句块里更容易看: { //开始代码块 std::packaged_task<int()> pt(calcValue); auto fut = pt.get_future(); std::thread t(std::move(pt)); //见下 …\n} //结束代码块 此处最有趣的代码是在创建std::thread对象t之后代码块结束前的“…”。使代码有趣的事是在“…”中t上会发生什么。有三种可能性 对t什么也不做 。这种情况t会在语句块结束时是可结合的这会使得程序终止参见 Item37 )。 对t调用join 。这种情况不需要fut在它的析构函数处阻塞因为join被显式调用了。 对t调用detach 。这种情况不需要在fut的析构函数执行detach因为显式调用了。 换句话说当你有一个关联了std::packaged_task创建的共享状态的 future 时不需要采取特殊的销毁策略因为通常你会代码中做终止、结合或分离这些决定之一来操作std::packaged_task的运行所在的那个std::thread。 请记住: future 的正常析构行为就是销毁 future 本身的数据成员。 引用了共享状态——使用std::async启动的未延迟任务建立的那个——的最后一个 future 的析构函数会阻塞住,直到任务完成。","breadcrumbs":"第七章 并发API » Item 38:关注不同线程句柄析构行为 » 条款三十八:关注不同线程句柄的析构行为","id":"67","title":"条款三十八:关注不同线程句柄的析构行为"},"68":{"body":"Item 39: Consider void futures for one-shot event communication 有时,一个任务通知另一个异步执行的任务发生了特定的事件很有用,因为第二个任务要等到这个事件发生之后才能继续执行。事件也许是一个数据结构已经初始化,也许是计算阶段已经完成,或者检测到重要的传感器值。这种情况下,线程间通信的最佳方案是什么? 一个明显的方案就是使用条件变量( condition variable ,简称 condvar )。如果我们将检测条件的任务称为 检测任务 detecting task ),对条件作出反应的任务称为 反应任务 reacting task ),策略很简单:反应任务等待一个条件变量,检测任务在事件发生时改变条件变量。代码如下: std::condition_variable cv; //事件的条件变量\nstd::mutex m; //配合cv使用的mutex 检测任务中的代码不能再简单了: … //检测事件\ncv.notify_one(); //通知反应任务 如果有多个反应任务需要被通知使用notify_all代替notify_one但是这里我们假定只有一个反应任务需要通知。 反应任务的代码稍微复杂一点因为在对条件变量调用wait之前必须通过std::unique_lock对象锁住互斥锁。在等待条件变量前锁住互斥锁对线程库来说是经典操作。通过std::unique_lock锁住互斥锁的需要仅仅是C++11 API要求的一部分。概念上的代码如下 … //反应的准备工作\n{ //开启关键部分 std::unique_lock<std::mutex> lk(m); //锁住互斥锁 cv.wait(lk); //等待通知,但是这是错的! … //对事件进行反应m已经上锁\n} //关闭关键部分通过lk的析构函数解锁m\n… //继续反应动作m现在未上锁 这份代码的第一个问题就是有时被称为 代码异味 code smell )的一种情况:即使代码正常工作,但是有些事情也不是很正确。在这个情况中,这种问题源自于使用互斥锁。互斥锁被用于保护共享数据的访问,但是可能检测任务和反应任务可能不会同时访问共享数据,比如说,检测任务会初始化一个全局数据结构,然后给反应任务用,如果检测任务在初始化之后不会再访问这个数据结构,而在检测任务表明数据结构准备完了之前反应任务不会访问这个数据结构,这两个任务在程序逻辑下互不干扰,也就没有必要使用互斥锁。但是条件变量的方法必须使用互斥锁,这就留下了令人不适的设计。 即使你忽略掉这个问题,还有两个问题需要注意: 如果在反应任务wait之前检测任务通知了条件变量反应任务会挂起 。为了能使条件变量唤醒另一个任务任务必须等待在条件变量上。如果在反应任务wait之前检测任务就通知了条件变量反应任务就会丢失这次通知永远不被唤醒。 wait语句虚假唤醒 。线程API的存在一个事实在许多语言中——不只是C++),等待一个条件变量的代码即使在条件变量没有被通知时,也可能被唤醒,这种唤醒被称为 虚假唤醒 spurious wakeups 。正确的代码通过确认要等待的条件确实已经发生来处理这种情况并将这个操作作为唤醒后的第一个操作。C++条件变量的API使得这种问题很容易解决因为允许把一个测试要等待的条件的 lambda 或者其他函数对象传给wait。因此可以将反应任务wait调用这样写 cv.wait(lk, []{ return whether the evet has occurred; }); 要利用这个能力需要反应任务能够确定其等待的条件是否为真。但是我们考虑的场景中,它正在等待的条件是检测线程负责识别的事件的发生情况。反应线程可能无法确定等待的事件是否已发生。这就是为什么它在等待一个条件变量! 在很多情况下,使用条件变量进行任务通信非常合适,但是也有不那么合适的情况。 对于很多开发者来说他们的下一个诀窍是共享的布尔型flag。flag被初始化为false。当检测线程识别到发生的事件将flag置位 std::atomic<bool> flag(false); //共享的flagstd::atomic见条款40\n… //检测某个事件\nflag = true; //告诉反应线程 就其本身而言反应线程轮询该flag。当发现flag被置位它就知道等待的事件已经发生了 … //准备作出反应\nwhile (!flag); //等待事件\n… //对事件作出反应 这种方法不存在基于条件变量的设计的缺点。不需要互斥锁在反应任务开始轮询之前检测任务就对flag置位也不会出现问题并且不会出现虚假唤醒。好好。 不好的一点是反应任务中轮询的开销。在任务等待flag被置位的时间里任务基本被阻塞了但是一直在运行。这样反应线程占用了可能能给另一个任务使用的硬件线程每次启动或者完成它的时间片都增加了上下文切换的开销并且保持核心一直在运行状态否则的话本来可以停下来省电。一个真正阻塞的任务不会发生上面的任何情况。这也是基于条件变量的优点因为wait调用中的任务真的阻塞住了。 将条件变量和flag的设计组合起来很常用。一个flag表示是否发生了感兴趣的事件但是通过互斥锁同步了对该flag的访问。因为互斥锁阻止并发访问该flag所以如 Item40 所述不需要将flag设置为std::atomic。一个简单的bool类型就可以检测任务代码如下 std::condition_variable cv; //跟之前一样\nstd::mutex m;\nbool flag(false); //不是std::atomic\n… //检测某个事件\n{ std::lock_guard<std::mutex> g(m); //通过g的构造函数锁住m flag = true; //通知反应任务第1部分\n} //通过g的析构函数解锁m\ncv.notify_one(); //通知反应任务第2部分 反应任务代码如下: … //准备作出反应\n{ //跟之前一样 std::unique_lock<std::mutex> lk(m); //跟之前一样 cv.wait(lk, [] { return flag; }); //使用lambda来避免虚假唤醒 … //对事件作出反应m被锁定\n}\n… //继续反应动作m现在解锁 这份代码解决了我们一直讨论的问题。无论在检测线程对条件变量发出通知之前反应线程是否调用了wait都可以工作即使出现了虚假唤醒也可以工作而且不需要轮询。但是仍然有些古怪因为检测任务通过奇怪的方式与反应线程通信。译者注下面的话挺绕的可以参考原文检测任务通过通知条件变量告诉反应线程等待的事件可能发生了但是反应线程必须通过检查flag来确保事件发生了。检测线程置位flag来告诉反应线程事件确实发生了但是检测线程仍然还要先需要通知条件变量以唤醒反应线程来检查flag。这种方案是可以工作的但是不太优雅。 一个替代方案是让反应任务通过在检测任务设置的 future 上wait来避免使用条件变量互斥锁和flag。这可能听起来也是个古怪的方案。毕竟 Item38 中说明了 future 代表了从被调用方到(通常是异步的)调用方的通信信道的接收端,这里的检测任务和反应任务没有调用-被调用的关系。然而, Item38 中也说说明了发送端是个std::promise接收端是个 future 的通信信道不是只能用在调用-被调用场景。这样的通信信道可以用在任何你需要从程序一个地方传递信息到另一个地方的场景。这里,我们用来在检测任务和反应任务之间传递信息,传递的信息就是感兴趣的事件已经发生。 方案很简单。检测任务有一个std::promise对象即通信信道的写入端反应任务有对应的 future 。当检测任务看到事件已经发生设置std::promise对象即写入到通信信道。同时wait会阻塞住反应任务直到std::promise被设置。 现在std::promise和 futures 即std::future和std::shared_future都是需要类型参数的模板。形参表明通过通信信道被传递的信息的类型。在这里没有数据被传递只需要让反应任务知道它的 future 已经被设置了。我们在std::promise和 future 模板中需要的东西是表明通信信道中没有数据被传递的一个类型。这个类型就是void。检测任务使用std::promise<void>反应任务使用std::future<void>或者std::shared_future<void>。当感兴趣的事件发生时检测任务设置std::promise<void>,反应任务在 future 上wait。尽管反应任务不从检测任务那里接收任何数据通信信道也可以让反应任务知道检测任务什么时候已经通过对std::promise<void>调用set_value“写入”了void数据。 所以,有 std::promise<void> p; //通信信道的promise 检测任务代码很简洁: … //检测某个事件\np.set_value(); //通知反应任务 反应任务代码也同样简单: … //准备作出反应\np.get_future().wait(); //等待对应于p的那个future\n… //对事件作出反应 像使用flag的方法一样此设计不需要互斥锁无论在反应线程调用wait之前检测线程是否设置了std::promise都可以工作并且不受虚假唤醒的影响只有条件变量才容易受到此影响。与基于条件变量的方法一样反应任务在调用wait之后是真被阻塞住的不会一直占用系统资源。是不是很完美 当然不是,基于 future 的方法没有了上述问题,但是有其他新的问题。比如, Item38 中说明std::promise和 future 之间有个共享状态,并且共享状态是动态分配的。因此你应该假定此设计会产生基于堆的分配和释放开销。 也许更重要的是std::promise只能设置一次。std::promise和 future 之间的通信是 一次性 的不能重复使用。这是与基于条件变量或者基于flag的设计的明显差异条件变量和flag都可以通信多次。条件变量可以被重复通知flag也可以重复清除和设置。 一次通信可能没有你想象中那么大的限制。假定你想创建一个挂起的系统线程。就是,你想避免多次线程创建的那种经常开销,以便想要使用这个线程执行程序时,避免潜在的线程创建工作。或者你想创建一个挂起的线程,以便在线程运行前对其进行设置这样的设置包括优先级或者核心亲和性( core affinity 。C++并发API没有提供这种设置能力但是std::thread提供了native_handle成员函数它的结果就是提供给你对平台原始线程API的访问通常是POSIX或者Windows的线程。这些低层次的API使你可以对线程设置优先级和亲和性。 假设你仅仅想要对某线程挂起一次在创建后运行线程函数前使用void的 future 就是一个可行方案。这是这个技术的关键点: std::promise<void> p;\nvoid react(); //反应任务的函数\nvoid detect() //检测任务的函数\n{ std::thread t([] //创建线程 { p.get_future().wait(); //挂起t直到future被置位 react(); }); … //这里t在调用react前挂起 p.set_value(); //解除挂起t因此调用react … //做其他工作 t.join(); //使t不可结合见条款37\n} 因为所有离开detect的路径中t都要是不可结合的所以使用类似于 Item37 中ThreadRAII的RAII类很明智。代码如下 void detect()\n{ ThreadRAII tr( //使用RAII对象 std::thread([] { p.get_future().wait(); react(); }), ThreadRAII::DtorAction::join //有危险!(见下) ); … //tr中的线程在这里被挂起 p.set_value(); //解除挂起tr中的线程 …\n} 这样看起来安全多了。问题在于第一个“…”区域中注释了“tr中的线程在这里被挂起”的那句如果异常发生p上的set_value永远不会调用这意味着 lambda 中的wait永远不会返回。那意味着在 lambda 中运行的线程不会结束这是个问题因为RAII对象tr在析构函数中被设置为在tr中创建的那个线程上实行join。换句话说如果在第一个“…”区域中发生了异常函数挂起因为tr的析构函数永远无法完成。 有很多方案解决这个问题,但是我把这个经验留给读者。(一个开始研究这个问题的好地方是我的博客 The View From Aristeia 中2013年12月24日的文章“ ThreadRAII + Thread Suspension = Trouble? ”这里我只想展示如何扩展原始代码即不使用RAII类使其挂起然后取消挂起不仅一个反应任务而是多个任务。简单概括关键就是在react的代码中使用std::shared_future代替std::future。一旦你知道std::future的share成员函数将共享状态所有权转移到share产生的std::shared_future中代码自然就写出来了。唯一需要注意的是每个反应线程都需要自己的std::shared_future副本该副本引用共享状态因此通过share获得的shared_future要被在反应线程中运行的 lambda 按值捕获: std::promise<void> p; //跟之前一样\nvoid detect() //现在针对多个反映线程\n{ auto sf = p.get_future().share(); //sf的类型是std::shared_future<void> std::vector<std::thread> vt; //反应线程容器 for (int i = 0; i < threadsToRun; ++i) { vt.emplace_back([sf]{ sf.wait(); //在sf的局部副本上wait react(); }); //emplace_back见条款42 } … //如果这个“…”抛出异常detect挂起 p.set_value(); //所有线程解除挂起 … for (auto& t : vt) { //使所有线程不可结合; t.join(); //“auto&”见条款2 }\n} 使用 future 的设计可以实现这个功能值得注意,这也是你应该考虑将其应用于一次通信的原因。 请记住: 对于简单的事件通信,基于条件变量的设计需要一个多余的互斥锁,对检测和反应任务的相对进度有约束,并且需要反应任务来验证事件是否已发生。 基于flag的设计避免的上一条的问题但是是基于轮询而不是阻塞。 条件变量和flag可以组合使用但是产生的通信机制很不自然。 使用std::promise和 future 的方案避开了这些问题,但是这个方法使用了堆内存存储共享状态,同时有只能使用一次通信的限制。","breadcrumbs":"第七章 并发API » Item 39:考虑对于单次事件通信使用void » 条款三十九对于一次性事件通信考虑使用void的 futures","id":"68","title":"条款三十九对于一次性事件通信考虑使用void的 futures"},"69":{"body":"Item 40: Use std::atomic for concurrency, volatile for special memory 可怜的volatile。如此令人迷惑。本不应该出现在本章节因为它跟并发编程没有关系。但是在其他编程语言中比如Java和C#volatile是有并发含义的即使在C++中有些编译器在实现时也将并发的某种含义加入到了volatile关键字中但仅仅是在用那些编译器时。因此在此值得讨论下关于volatile关键字的含义以消除异议。 开发者有时会与volatile混淆的特性——本来应该属于本章的那个特性——是std::atomic模板。这种模板的实例化比如std::atomic<int>std::atomic<bool>std::atomic<Widget*>等提供了一种在其他线程看来操作是原子性的的保证译注即某些操作是像原子一样的不可分割。。一旦std::atomic对象被构建在其上的操作表现得像操作是在互斥锁保护的关键区内但是通常这些操作是使用特定的机器指令实现这比锁的实现更高效。 分析如下使用std::atmoic的代码 std::atomic<int> ai(0); //初始化ai为0\nai = 10; //原子性地设置ai为10\nstd::cout << ai; //原子性地读取ai的值\n++ai; //原子性地递增ai到11\n--ai; //原子性地递减ai到10 在这些语句执行过程中其他线程读取ai只能读取到01011三个值其中一个。没有其他可能当然假设只有这个线程会修改ai。 这个例子中有两点值得注意。首先在“std::cout << ai;”中ai是一个std::atomic的事实只保证了对ai的读取是原子的。没有保证整个语句的执行是原子的。在读取ai的时刻与调用operator<<将值写入到标准输出之间另一个线程可能会修改ai的值。这对于这个语句没有影响因为int的operator<<是使用int型的传值形参来输出所以输出的值就是读取到的ai的值但是重要的是要理解原子性的范围只保证了读取ai是原子性的。 第二点值得注意的是最后两条语句——关于ai的递增递减。他们都是读-改-写read-modify-writeRMW操作它们整体作为原子执行。这是std::atomic类型的最优的特性之一一旦std::atomic对象被构建所有成员函数包括RMW操作从其他线程来看都是原子性的。 相反使用volatile在多线程中实际上不保证任何事情 volatile int vi(0); //初始化vi为0\nvi = 10; //设置vi为10 std::cout << vi; //读vi的值\n++vi; //递增vi到11\n--vi; //递减vi到10 代码的执行过程中如果其他线程读取vi可能读到任何值比如-12684090727——任何值这份代码有未定义行为因为这里的语句修改vi所以如果同时其他线程读取vi同时存在多个readers和writers读取没有std::atomic或者互斥锁保护的内存这就是数据竞争的定义。 举一个关于在多线程程序中std::atomic和volatile表现不同的具体例子考虑这样一个简单的计数器通过多线程递增。我们把它们初始化为0 std::atomic<int> ac(0); //“原子性的计数器”\nvolatile int vc(0); //“volatile计数器” 然后我们在两个同时运行的线程中对两个计数器递增: /*----- Thread 1 ----- */ /*------- Thread 2 ------- */ ++ac; ++ac; ++vc; ++vc; 当两个线程执行结束时ac的值即std::atomic的值肯定是2因为每个自增操作都是不可分割的原子性的。另一方面vc的值不一定是2因为自增不是原子性的。每个自增操作包括了读取vc的值增加读取的值然后将结果写回到vc。这三个操作对于volatile对象不能保证原子执行所有可能是下面的交叉执行顺序 Thread1读取vc的值是0。 Thread2读取vc的值还是0。 Thread1将读到的0加1然后写回到vc。 Thread2将读到的0加1然后写回到vc。 vc的最后结果是1即使看起来自增了两次。 不仅只有这一种可能的结果通常来说vc的最终结果是不可预测的因为vc会发生数据竞争对于数据竞争造成未定义行为标准规定表示编译器生成的代码可能是任何逻辑。当然编译器不会利用这种行为来作恶。但是它们通常做出一些没有数据竞争的程序中才有效的优化这些优化在存在数据竞争的程序中会造成异常和不可预测的行为。 RMW操作不是仅有的std::atomic在并发中有效而volatile无效的例子。假定一个任务计算第二个任务需要的一个重要的值。当第一个任务完成计算必须传递给第二个任务。 Item39 表明一种使用std::atomic<bool>的方法来使第一个任务通知第二个任务计算完成。计算值的任务的代码如下: std::atomic<bool> valVailable(false); auto imptValue = computeImportantValue(); //计算值\nvalAvailable = true; //告诉另一个任务,值可用了 人类读这份代码能看到在valAvailable赋值之前对imptValue赋值很关键但是所有编译器看到的是给相互独立的变量的一对赋值操作。通常来说编译器会被允许重排这对没有关联的操作。这意味着给定如下顺序的赋值操作其中abxy都是互相独立的变量 a = b;\nx = y; 编译器可能重排为如下顺序: x = y;\na = b; 即使编译器没有重排顺序,底层硬件也可能重排(或者可能使它看起来运行在其他核心上),因为有时这样代码执行更快。 然而std::atomic会限制这种重排序并且这样的限制之一是在源代码中对std::atomic变量写之前不会有任何操作或者操作发生在其他核心上这只在std::atomics使用 顺序一致性 sequential consistency 时成立对于使用在本书中展示的语法的std::atomic对象这也是默认的和唯一的一致性模型。C++11也支持带有更灵活的代码重排规则的一致性模型。这样的 弱 weak )(亦称 松散的 relaxed )模型使构建一些软件在某些硬件构架上运行的更快成为可能,但是使用这样的模型产生的软件 更加 难改正、理解、维护。在使用松散原子性的代码中微小的错误很常见,即使专家也会出错,所以应当尽可能坚持顺序一致性。)这意味对我们的代码, auto imptValue = computeImportantValue(); //计算值\nvalAvailable = true; //告诉另一个任务,值可用了 编译器不仅要保证imptValue和valAvailable的赋值顺序还要保证生成的硬件代码不会改变这个顺序。结果就是将valAvailable声明为std::atomic确保了必要的顺序——其他线程看到的是imptValue值的改变不会晚于valAvailable。 将valAvailable声明为volatile不能保证上述顺序 volatile bool valVailable(false); auto imptValue = computeImportantValue();\nvalAvailable = true; //其他线程可能看到这个赋值操作早于imptValue的赋值操作 这份代码编译器可能将imptValue和valAvailable赋值顺序对调如果它们没这么做可能不能生成机器代码来阻止底部硬件在其他核心上的代码看到valAvailable更改在imptValue之前。 这两个问题——不保证操作的原子性以及对代码重排顺序没有足够限制——解释了为什么volatile在多线程编程中没用但是没有解释它应该用在哪。简而言之它是用来告诉编译器它们处理的内存有不正常的表现。 “正常”内存应该有这个特性在写入值之后这个值会一直保持直到被覆盖。假设有这样一个正常的int int x; 编译器看到下列的操作序列: auto y = x; //读x\ny = x; //再次读x 编译器可通过忽略对y的一次赋值来优化代码因为有了y初始化赋值是冗余的。 正常内存还有一个特征,就是如果你写入内存没有读取,再次写入,第一次写就可以被忽略,因为值没被用过。给出下面的代码: x = 10; //写x\nx = 20; //再次写x 编译器可以忽略第一次写入。这意味着如果写在一起: auto y = x; //读x\ny = x; //再次读x\nx = 10; //写x\nx = 20; //再次写x 编译器生成的代码是这样的: auto y = x; //读x\nx = 20; //写x 可能你会想谁会写这种重复读写的代码(技术上称为 冗余访问 redundant loads )和 无用存储 dead stores )),答案是开发者不会直接写——至少我们不希望开发者这样写。但是在编译器拿到看起来合理的代码,执行了模板实例化,内联和一系列重排序优化之后,结果会出现冗余访问和无用存储,所以编译器需要摆脱这样的情况并不少见。 这种优化仅仅在内存表现正常时有效。“特殊”的内存不行。最常见的“特殊”内存是用来做内存映射I/O的内存。这种内存实际上是与外围设备比如外部传感器或者显示器打印机网络端口通信而不是读写通常的内存比如RAM。这种情况下再次考虑这看起来冗余的代码 auto y = x; //读x\ny = x; //再次读x 如果x的值是一个温度传感器上报的第二次对于x的读取就不是多余的因为温度可能在第一次和第二次读取之间变化。 看起来冗余的写操作也类似。比如在这段代码中: x = 10; //写x\nx = 20; //再次写x 如果x与无线电发射器的控制端口关联则代码是给无线电发指令10和20意味着不同的指令。优化掉第一条赋值会改变发送到无线电的指令流。 volatile是告诉编译器我们正在处理特殊内存。意味着告诉编译器“不要对这块内存执行任何优化”。所以如果x对应于特殊内存应该声明为volatile volatile int x; 考虑对我们的原始代码序列有何影响: auto y = x; //读x\ny = x; //再次读x不会被优化掉 x = 10; //写x不会被优化掉\nx = 20; //再次写x 如果x是内存映射的或者已经映射到跨进程共享的内存位置等这正是我们想要的。 突击测试在最后一段代码中y是什么类型int还是volatile inty的类型使用auto类型推导所以使用 Item2 中的规则。规则上说非引用非指针类型的声明就是y的情况const和volatile限定符被拿掉。y的类型因此仅仅是int。这意味着对y的冗余读取和写入可以被消除。在例子中编译器必须执行对y的初始化和赋值两个语句因为x是volatile的所以第二次对x的读取可能会产生一个与第一次不同的值。 在处理特殊内存时必须保留看似冗余访问和无用存储的事实顺便说明了为什么std::atomic不适合这种场景。编译器被允许消除对std::atomic的冗余操作。代码的编写方式与volatile那些不那么相同但是如果我们暂时忽略它只关注编译器执行的操作则概念上可以说编译器看到这个 std::atomic<int> x;\nauto y = x; //概念上会读x见下\ny = x; //概念上会再次读x见下 x = 10; //写x\nx = 20; //再次写x 会优化为: auto y = x; //概念上会读x见下\nx = 20; //写x 对于特殊内存,显然这是不可接受的。 现在就像下面所发生的当x是std::atomic时这两条语句都无法编译通过 auto y = x; //错误\ny = x; //错误 这是因为std::atomic类型的拷贝操作是被删除的参见 Item11 。因为有个很好的理由删除。想象一下如果y使用x来初始化会发生什么。因为x是std::atomic类型y的类型被推导为std::atomic参见 Item2 。我之前说了std::atomic最好的特性之一就是所有成员函数都是原子性的但是为了使从x拷贝初始化y的过程是原子性的编译器不得不生成代码把读取x和写入y放在一个单独的原子性操作中。硬件通常无法做到这一点因此std::atomic不支持拷贝构造。出于同样的原因拷贝赋值也被删除了这也是为什么从x赋值给y也编译失败。移动操作在std::atomic没有显式声明因此根据 Item17 中描述的规则来看std::atomic不支持移动构造和移动赋值。 可以将x的值传递给y但是需要使用std::atomic的load和store成员函数。load函数原子性地读取store原子性地写入。要使用x初始化y然后将x的值放入y代码应该这样写 std::atomic<int> y(x.load()); //读x\ny.store(x.load()); //再次读x 这可以编译读取x通过x.load()是与初始化或者存储到y相独立的函数这个事实清楚地表明没理由期待上面的任何一个语句会在单独的原子性的操作中整体执行。 给出上面的代码编译器可以通过存储x的值到寄存器代替读取两次来“优化” register = x.load(); //把x读到寄存器\nstd::atomic<int> y(register); //使用寄存器值初始化y\ny.store(register); //把寄存器值存储到y 结果如你所见仅读取x一次这是对于特殊内存必须避免的优化。这种优化是不允许对volatile类型变量执行的。 因此情况很明显: std::atomic用在并发编程中对访问特殊内存没用。 volatile用于访问特殊内存对并发编程没用。 因为std::atomic和volatile用于不同的目的所以可以结合起来使用 volatile std::atomic<int> vai; //对vai的操作是原子性的且不能被优化掉 如果vai变量关联了内存映射I/O的位置被多个线程并发访问这会很有用。 最后一点一些开发者在即使不必要时也尤其喜欢使用std::atomic的load和store函数因为这在代码中显式表明了这个变量不“正常”。强调这一事实并非没有道理。因为访问std::atomic确实会比non-std::atomic更慢一些我们也看到了std::atomic会阻止编译器对代码执行一些特定的本应被允许的顺序重排。调用load和store可以帮助识别潜在的可扩展性瓶颈。从正确性的角度来看 没有 看到在一个变量上调用store来与其他线程进行通信比如用个flag表示数据的可用性可能意味着该变量在声明时本应使用而没有使用std::atomic。 这更多是习惯问题但是一定要知道atomic和volatile的巨大不同。 请记住: std::atomic用于在不使用互斥锁情况下来使变量被多个线程访问的情况。是用来编写并发程序的一个工具。 volatile用在读取和写入不应被优化掉的内存上。是用来处理特殊内存的一个工具。","breadcrumbs":"第七章 并发API » Item 40:对于并发使用std::atomicvolatile用于特殊内存区 » 条款四十对于并发使用std::atomic对于特殊内存使用volatile","id":"69","title":"条款四十对于并发使用std::atomic对于特殊内存使用volatile"},"7":{"body":"当ParamType既不是指针也不是引用时我们通过传值pass-by-value的方式处理 template<typename T>\nvoid f(T param); //以传值的方式处理param 这意味着无论传递什么param都会成为它的一份拷贝——一个完整的新对象。事实上param成为一个新对象这一行为会影响T如何从expr中推导出结果。 和之前一样如果expr的类型是一个引用忽略这个引用部分 如果忽略expr的引用性reference-ness之后expr是一个const那就再忽略const。如果它是volatile也忽略volatilevolatile对象不常见它通常用于驱动程序的开发中。关于volatile的细节请参见 Item40 因此 int x=27; //如之前一样\nconst int cx=x; //如之前一样\nconst int & rx=cx; //如之前一样 f(x); //T和param的类型都是int\nf(cx); //T和param的类型都是int\nf(rx); //T和param的类型都是int 注意即使cx和rx表示const值param也不是const。这是有意义的。param是一个完全独立于cx和rx的对象——是cx或rx的一个拷贝。具有常量性的cx和rx不可修改并不代表param也是一样。这就是为什么expr的常量性constness或易变性volatileness)在推导param类型时会被忽略因为expr不可修改并不意味着它的拷贝也不能被修改。 认识到只有在传值给形参时才会忽略const和volatile这一点很重要正如我们看到的对于reference-to-const和pointer-to-const形参来说expr的常量性constness在推导时会被保留。但是考虑这样的情况expr是一个const指针指向const对象expr通过传值传递给param template<typename T>\nvoid f(T param); //仍然以传值的方式处理param const char* const ptr = //ptr是一个常量指针指向常量对象 \"Fun with pointers\"; f(ptr); //传递const char * const类型的实参 在这里,解引用符号(*的右边的const表示ptr本身是一个constptr不能被修改为指向其它地址也不能被设置为null解引用符号左边的const表示ptr指向一个字符串这个字符串是const因此字符串不能被修改。当ptr作为实参传给f组成这个指针的每一比特都被拷贝进param。像这种情况ptr 自身的值会被传给形参 根据类型推导的第三条规则ptr自身的常量性constness将会被省略所以param是const char*也就是一个可变指针指向const字符串。在类型推导中这个指针指向的数据的常量性constness将会被保留但是当拷贝ptr来创造一个新指针param时ptr自身的常量性constness将会被忽略。","breadcrumbs":"第一章 类型推导 » Item 1:理解模板类型推导 » 情景三ParamType既不是指针也不是引用","id":"7","title":"情景三ParamType既不是指针也不是引用"},"70":{"body":"CHAPTER 8 Tweaks 对于C++中的通用技术和特性总是存在适用和不适用的场景。除了本章覆盖的两个例外描述什么场景使用哪种通用技术通常来说很容易。这两个例外是传值pass by value和安置emplacement。决定何时使用这两种技术受到多种因素的影响本书提供的最佳建议是在使用它们的同时仔细考虑清楚尽管它们都是高效的现代C++编程的重要角色。接下来的条款提供了使用它们来编写软件是否合适的所需信息。","breadcrumbs":"第八章 微调 » Item 41:对于那些可移动总是被拷贝的形参使用传值方式 » 第8章 微调","id":"70","title":"第8章 微调"},"71":{"body":"Item 41: Consider pass by value for copyable parameters that are cheap to move and always copied 有些函数的形参是可拷贝的。(在本条款中,“拷贝”一个形参通常意思是,将形参作为拷贝或移动操作的源对象。 简介 中提到C++没有术语来区分拷贝操作得到的副本和移动操作得到的副本。比如说addName成员函数可以拷贝自己的形参到一个私有容器。为了提高效率应该拷贝左值移动右值。 class Widget {\npublic: void addName(const std::string& newName) //接受左值;拷贝它 { names.push_back(newName); } void addName(std::string&& newName) //接受右值移动它std::move { names.push_back(std::move(newName)); } //的使用见条款25 …\nprivate: std::vector<std::string> names;\n}; 这是可行的,但是需要编写两个函数来做本质相同的事。这有点让人难受:两个函数声明,两个函数实现,两个函数写说明,两个函数的维护。唉。 此外,目标代码中会有两个函数——你可能会担心程序的空间占用。这种情况下,两个函数都可能内联,可能会避免同时两个函数同时存在导致的代码膨胀问题,但是一旦没有被内联,目标代码就会出现两个函数。 另一种方法是使addName函数成为具有通用引用的函数模板参考 Item24 class Widget {\npublic: template<typename T> //接受左值和右值; void addName(T&& newName) { //拷贝左值,移动右值; names.push_back(std::forward<T>(newName)); //std::forward的使用见条款25 } …\n}; 这减少了源代码的维护工作但是通用引用会导致其他复杂性。作为模板addName的实现必须放置在头文件中。在编译器展开的时候可能会产生多个函数因为不止为左值和右值实例化也可能为std::string和可转换为std::string的类型分别实例化为多个函数参考 Item25 )。同时有些实参类型不能通过通用引用传递(参考 Item30 ),而且如果传递了不合法的实参类型,编译器错误会令人生畏(参考 Item27 )。 是否存在一种编写addName的方法可以左值拷贝右值移动只用处理一个函数源代码和目标代码中且避免使用通用引用答案是是的。你要做的就是放弃你学习C++编程的第一条规则。这条规则是避免在传递用户定义的对象时使用传值方式。像是addName函数中的newName形参按值传递可能是一种完全合理的策略。 在我们讨论为什么对于addName中的newName按值传递非常合理之前让我们来考虑该会怎样实现 class Widget {\npublic: void addName(std::string newName) { //接受左值或右值;移动它 names.push_back(std::move(newName)); } …\n} 该代码唯一可能令人困惑的部分就是对形参newName使用std::move。std::move典型的应用场景是用在右值引用但是在这里我们了解到1newName是与调用者传进来的对象相完全独立的一个对象所以改变newName不会影响到调用者2这就是newName的最后一次使用所以移动它不会影响函数内此后的其他代码。 只有一个addName函数的事实解释了在源代码和目标代码中我们怎样避免了代码重复。我们没有使用通用引用不会导致头文件膨胀、奇怪的失败情况、或者令人困惑的编译错误消息。但是这种设计的效率如何呢我们在按值传递哎会不会开销很大 在C++98中可以肯定确实开销会大。无论调用者传入什么形参newName都是由拷贝构造出来。但是在C++11中只有在左值实参情况下addName被拷贝构造出来对于右值它会被移动构造。来看如下例子 Widget w;\n…\nstd::string name(\"Bart\");\nw.addName(name); //使用左值调用addName\n…\nw.addName(name + \"Jenne\"); //使用右值调用addName见下 第一处调用addName当name被传递时形参newName是使用左值被初始化。newName因此是被拷贝构造就像在C++98中一样。第二处调用newName使用std::string对象被初始化这个std::string对象是调用std::string的operator+(即 append 操作得到的结果。这个对象是一个右值因此newName是被移动构造的。 就像我们想要的那样,左值拷贝,右值移动,优雅吧? 优雅但是要牢记一些警示回顾一下我们考虑过的三个版本的addName class Widget { //方法1对左值和右值重载\npublic: void addName(const std::string& newName) { names.push_back(newName); } // rvalues void addName(std::string&& newName) { names.push_back(std::move(newName)); } …\nprivate: std::vector<std::string> names;\n}; class Widget { //方法2使用通用引用\npublic: template<typename T> void addName(T&& newName) { names.push_back(std::forward<T>(newName)); } …\n}; class Widget { //方法3传值\npublic: void addName(std::string newName) { names.push_back(std::move(newName)); } …\n}; 我将前两个版本称为“按引用方法”,因为都是通过引用传递形参。 仍然考虑这两种调用方式: Widget w;\n…\nstd::string name(\"Bart\");\nw.addName(name); //传左值\n…\nw.addName(name + \"Jenne\"); //传右值 现在分别考虑三种实现中给Widget添加一个名字的两种调用方式拷贝和移动操作的开销。会忽略编译器对于移动和拷贝操作的优化因为这些优化是与上下文和编译器有关的实际上不会改变我们分析的本质。 重载 无论传递左值还是传递右值调用都会绑定到一个叫newName的引用上。从拷贝和移动操作方面看这个过程零开销。左值重载中newName拷贝到Widget::names中右值重载中移动进去。开销总结左值一次拷贝右值一次移动。 使用通用引用 同重载一样调用也绑定到addName这个引用上没有开销。由于使用了std::forward左值std::string实参会拷贝到Widget::names右值std::string实参移动进去。对std::string实参来说开销同重载方式一样左值一次拷贝右值一次移动。 Item25 解释了如果调用者传递的实参不是std::string类型将会转发到std::string的构造函数几乎也没有std::string拷贝或者移动操作。因此通用引用的方式有同样效率所以这不影响本次分析简单假定调用者总是传入std::string类型实参即可。 按值传递 无论传递左值还是右值都必须构造newName形参。如果传递的是左值需要拷贝的开销如果传递的是右值需要移动的开销。在函数的实现中newName总是采用移动的方式到Widget::names。开销总结左值实参一次拷贝一次移动右值实参两次移动。对比按引用传递的方法对于左值或者右值均多出一次移动操作。 再次回顾本Item的内容 对于移动成本低且总是被拷贝的可拷贝形参,考虑按值传递 这样措辞是有原因的。实际上四个原因: 应该仅 考虑 使用传值方式。确实,只需要编写一个函数。确实,只会在目标代码中生成一个函数。确实,避免了通用引用的种种问题。但是毕竟开销会比那些替代方式更高(译者注:指接受引用的两种实现方式),而且下面还会讨论,还会存在一些目前我们并未讨论到的开销。 仅考虑对于 可拷贝形参 使用按值传递。不符合此条件的的形参必须有只可移动的类型( move-only types )(的数据成员),因为函数总是会做副本(译注:指的是传值时形参总是实参的一个副本),而如果它们不可拷贝,副本就必须通过移动构造函数创建。(这样的句子就说明有一个术语来区分拷贝操作制作的副本,和移动操作制作的副本,是非常好的。)回忆一下传值方案比“重载”方案的优势在于,仅有一个函数要写。但是对于只可移动类型,没必要为左值实参提供重载,因为拷贝左值需要拷贝构造函数,只可移动类型的拷贝构造函数是禁用的。那意味着只需要支持右值实参,“重载”方案只需要一个重载函数:接受右值引用的函数。 考虑一个类有个std::unique_ptr<std::string>的数据成员,对它有个赋值器( setter 。std::unique_ptr是只可移动的类型所以赋值器的“重载”方式只有一个函数 class Widget {\npublic: … void setPtr(std::unique_ptr<std::string>&& ptr) { p = std::move(ptr); } private: std::unique_ptr<std::string> p;\n}; 调用者可能会这样写: Widget w;\n…\nw.setPtr(std::make_unique<std::string>(\"Modern C++\")); 这样从std::make_unique返回的右值std::unique_ptr<std::string>通过右值引用被传给setPtr然后移动到数据成员p中。整体开销就是一次移动。 如果setPtr使用传值方式接受形参 class Widget {\npublic: … void setPtr(std::unique_ptr<std::string> ptr) { p = std::move(ptr); } …\n}; 同样的调用就会先移动构造ptr形参然后ptr再移动赋值到数据成员p整体开销就是两次移动——是“重载”方法开销的两倍。 按值传递应该仅考虑那些 移动开销小 的形参。当移动的开销较低额外的一次移动才能被开发者接受但是当移动的开销很大执行不必要的移动就类似执行一个不必要的拷贝而避免不必要的拷贝的重要性就是最开始C++98规则中避免传值的原因 你应该只对 总是被拷贝 的形参考虑按值传递。为了看清楚为什么这很重要假定在拷贝形参到names容器前addName需要检查新的名字的长度是否过长或者过短如果是就忽略增加名字的操作 class Widget {\npublic: void addName(std::string newName) { if ((newName.length() >= minLen) && (newName.length() <= maxLen)) { names.push_back(std::move(newName)); } } …\nprivate: std::vector<std::string> names;\n}; 即使这个函数没有在names添加任何内容也增加了构造和销毁newName的开销而按引用传递会避免这笔开销。 即使你编写的函数对可拷贝类型执行无条件的复制且这个类型移动开销小有时也可能不适合按值传递。这是因为函数拷贝一个形参存在两种方式一种是通过构造函数拷贝构造或者移动构造还有一种是赋值拷贝赋值或者移动赋值。addName使用构造函数它的形参newName传递给vector::push_back在这个函数内部newName是通过拷贝构造在std::vector末尾创建一个新元素。对于使用构造函数拷贝形参的函数之前的分析已经可以给出最终结论按值传递对于左值和右值均增加了一次移动操作的开销。 当形参通过赋值操作进行拷贝时分析起来更加复杂。比如我们有一个表征密码的类因为密码可能会被修改我们提供了赋值器函数changeTo。用按值传递的策略我们实现一个Password类如下 class Password {\npublic: explicit Password(std::string pwd) //传值 : text(std::move(pwd)) {} //构造text void changeTo(std::string newPwd) //传值 { text = std::move(newPwd); } //赋值text …\nprivate: std::string text; //密码的text\n}; 将密码存储为纯文本格式恐怕将使你的软件安全团队抓狂,但是先忽略这点考虑这段代码: std::string initPwd(\"Supercalifragilisticexpialidocious\");\nPassword p(initPwd); 毫无疑问p.text被给定的密码构造在构造函数用按值传递的方式增加了一次移动构造的开销如果使用重载或者通用引用就会消除这个开销。一切都还好。 但是该程序的用户可能对这个密码不太满意因为“Supercalifragilisticexpialidocious”可以在许多字典中找到。他或者她因此采取等价于如下代码的一些动作 std::string newPassword = \"Beware the Jabberwock\";\np.changeTo(newPassword); 不用关心新密码是不是比旧密码更好那是用户关心的问题。我们关心的是changeTo使用赋值来拷贝形参newPwd可能导致函数的按值传递实现方案的开销大大增加。 传递给changeTo的实参是一个左值newPassword所以newPwd形参被构造时std::string的拷贝构造函数会被调用这个函数会分配新的存储空间给新密码。newPwd会移动赋值到text这会导致text本来持有的内存被释放。所以changeTo存在两次动态内存管理的操作一次是为新密码创建内存一次是销毁旧密码的内存。 但是在这个例子中,旧密码比新密码长度更长,所以不需要分配新内存,销毁旧内存的操作。如果使用重载的方式,有可能两次动态内存管理操作得以避免: class Password {\npublic: … void changeTo(std::string& newPwd) //对左值的重载 { text = newPwd; //如果text.capacity() >= newPwd.size() //可能重用text的内存 } …\nprivate: std::string text; //同上\n}; 这种情况下按值传递的开销包括了内存分配和内存销毁——可能会比std::string的移动操作高出几个数量级。 有趣的是如果旧密码短于新密码在赋值过程中就不可避免要销毁、分配内存这种情况按值传递跟按引用传递的效率是一样的。因此基于赋值的形参拷贝操作开销取决于具体的实参的值这种分析适用于在动态分配内存中存值的形参类型。不是所有类型都满足但是很多——包括std::string和std::vector——是这样。 这种潜在的开销增加仅在传递左值实参时才适用,因为执行内存分配和释放通常发生在真正的拷贝操作(即,不是移动)中。对右值实参,移动几乎就足够了。 结论是使用通过赋值拷贝一个形参进行按值传递的函数的额外开销取决于传递的类型左值和右值的比例这个类型是否需要动态分配内存以及如果需要分配内存的话赋值操作符的具体实现还有赋值目标占的内存至少要跟赋值源占的内存一样大。对于std::string来说开销还取决于实现是否使用了小字符串优化SSO——参考 Item29 如果是那么要赋值的值是否匹配SSO缓冲区。 所以,正如我所说,当形参通过赋值进行拷贝时,分析按值传递的开销是复杂的。通常,最有效的经验就是“在证明没问题之前假设有问题”,就是除非已证明按值传递会为你需要的形参类型产生可接受的执行效率,否则使用重载或者通用引用的实现方式。 到此为止对于需要运行尽可能快的软件来说按值传递可能不是一个好策略因为避免即使开销很小的移动操作也非常重要。此外有时并不能清楚知道会发生多少次移动操作。在Widget::addName例子中按值传递仅多了一次移动操作但是如果Widget::addName调用了Widget::validateName这个函数也是按值传递。假定它有理由总是拷贝它的形参比如把验证过的所有值存在一个数据结构中。并假设validateName调用了第三个函数也是按值传递…… 可以看到这将会通向何方。在调用链中,每个函数都使用传值,因为“只多了一次移动的开销”,但是整个调用链总体就会产生无法忍受的开销,通过引用传递,调用链不会增加这种开销。 跟性能无关但总是需要考虑的是按值传递不像按引用传递那样会收到切片问题的影响。这是C++98的事在此不在详述但是如果要设计一个函数来处理这样的形参基类 或者任何其派生类 ,你肯定不想声明一个那个类型的传值形参,因为你会“切掉”传入的任意派生类对象的派生类特征: class Widget { … }; //基类\nclass SpecialWidget: public Widget { … }; //派生类\nvoid processWidget(Widget w); //对任意类型的Widget的函数包括派生类型\n… //遇到对象切片问题\nSpecialWidget sw;\n…\nprocessWidget(sw); //processWidget看到的是Widget //不是SpecialWidget 如果不熟悉对象切片问题可以先通过搜索引擎了解一下。这样你就知道切片问题是C++98中默认按值传递名声不好的另一个原因要在效率问题的原因之上。有充分的理由来说明为什么你学习C++编程的第一件事就是避免用户自定义类型进行按值传递。 C++11没有从根本上改变C++98对于按值传递的智慧。通常按值传递仍然会带来你希望避免的性能下降而且按值传递会导致切片问题。C++11中新的功能是区分了左值和右值实参。利用对于可拷贝类型的右值的移动语义需要重载或者通用引用尽管两者都有其缺陷。对于特殊的场景可拷贝且移动开销小的类型传递给总是会拷贝他们的一个函数并且切片也不需要考虑这时按值传递就提供了一种简单的实现方式效率接近传递引用的函数但是避免了传引用方案的缺点。 请记住: 对于可拷贝,移动开销低,而且无条件被拷贝的形参,按值传递效率基本与按引用传递效率一致,而且易于实现,还生成更少的目标代码。 通过构造拷贝形参可能比通过赋值拷贝形参开销大的多。 按值传递会引起切片问题,所说不适合基类形参类型。","breadcrumbs":"第八章 微调 » Item 41:对于那些可移动总是被拷贝的形参使用传值方式 » 条款四十一:对于移动成本低且总是被拷贝的可拷贝形参,考虑按值传递","id":"71","title":"条款四十一:对于移动成本低且总是被拷贝的可拷贝形参,考虑按值传递"},"72":{"body":"Item 42: Consider emplacement instead of insertion 如果你拥有一个容器例如放着std::string那么当你通过插入insertion函数例如insertpush_frontpush_back或者对于std::forward_list来说是insert_after添加新元素时你传入的元素类型应该是std::string。毕竟这就是容器里的内容。 逻辑上看来如此,但是并非总是如此。考虑如下代码: std::vector<std::string> vs; //std::string的容器\nvs.push_back(\"xyzzy\"); //添加字符串字面量 这里容器里内容是std::string但是你有的——你实际上试图通过push_back加入的——是字符串字面量即引号内的字符序列。字符串字面量并不是std::string这意味着你传递给push_back的实参并不是容器里的内容类型。 std::vector的push_back被按左值和右值分别重载 template <class T, //来自C++11标准 class Allocator = allocator<T>>\nclass vector {\npublic: … void push_back(const T& x); //插入左值 void push_back(T&& x); //插入右值 …\n}; 在 vs.push_back(\"xyzzy\"); 这个调用中编译器看到实参类型const char[6]和push_back采用的形参类型std::string的引用之间不匹配。它们通过从字符串字面量创建一个std::string类型的临时对象来消除不匹配然后传递临时变量给push_back。换句话说编译器处理的这个调用应该像这样 vs.push_back(std::string(\"xyzzy\")); //创建临时std::string把它传给push_back 代码可以编译并运行,皆大欢喜。除了对于性能执着的人意识到了这份代码不如预期的执行效率高。 为了在std::string容器中创建新元素调用了std::string的构造函数但是这份代码并不仅调用了一次构造函数而是调用了两次而且还调用了std::string析构函数。下面是在push_back运行时发生了什么 一个std::string的临时对象从字面量“xyzzy”被创建。这个对象没有名字我们可以称为temp。temp的构造是第一次std::string构造。因为是临时变量所以temp是右值。 temp被传递给push_back的右值重载函数绑定到右值引用形参x。在std::vector的内存中一个x的副本被创建。这次构造——也是第二次构造——在std::vector内部真正创建一个对象。将x副本拷贝到std::vector内部的构造函数是移动构造函数因为x在它被拷贝前被转换为一个右值成为右值引用。有关将右值引用形参强制转换为右值的信息请参见 Item25 )。 在push_back返回之后temp立刻被销毁调用了一次std::string的析构函数。 对于性能执着的人不禁注意到是否存在一种方法可以获取字符串字面量并将其直接传入到步骤2里在std::vector内构造std::string的代码中可以避免临时对象temp的创建与销毁。这样的效率最好对于性能执着的人也不会有什么意见了。 因为你是一个C++开发者所以你更大可能是一个对性能执着的人。如果你不是C++开发者你可能也会同意这个观点。如果你根本不考虑性能为什么你没在用Python所以我很高兴告诉你有一种方法恰是在调用push_back中实现效率最大化。它不叫push_back。push_back函数不正确。你需要的是emplace_back。 emplace_back就是像我们想要的那样做的使用传递给它的任何实参直接在std::vector内部构造一个std::string。没有临时变量会生成 vs.emplace_back(\"xyzzy\"); //直接用“xyzzy”在vs内构造std::string emplace_back使用完美转发因此只要你没有遇到完美转发的限制参见 Item30 就可以传递任何实参以及组合到emplace_back。比如如果你想通过接受一个字符和一个数量的std::string构造函数在vs中创建一个std::string代码如下 vs.emplace_back(50, 'x'); //插入由50个“x”组成的一个std::string emplace_back可以用于每个支持push_back的标准容器。类似的每个支持push_front的标准容器都支持emplace_front。每个支持insert除了std::forward_list和std::array的标准容器支持emplace。关联容器提供emplace_hint来补充接受“hint”迭代器的insert函数std::forward_list有emplace_after来匹配insert_after。 使得置入emplacement函数功能优于插入函数的原因是它们有灵活的接口。插入函数接受 对象 去插入,而置入函数接受 对象的构造函数接受的实参 去插入。这种差异允许置入函数避免插入函数所必需的临时对象的创建和销毁。 因为可以传递容器内元素类型的实参给置入函数(因此该实参使函数执行复制或者移动构造函数),所以在插入函数不会构造临时对象的情况,也可以使用置入函数。在这种情况下,插入和置入函数做的是同一件事,比如: std::string queenOfDisco(\"Donna Summer\"); 下面的调用都是可行的,对容器的实际效果也一样: vs.push_back(queenOfDisco); //拷贝构造queenOfDisco\nvs.emplace_back(queenOfDisco); //同上 因此,置入函数可以完成插入函数的所有功能。并且有时效率更高,至少在理论上,不会更低效。那为什么不在所有场合使用它们? 因为就像说的那样只是“理论上”在理论和实际上没有什么区别但是实际上区别还是有的。在当前标准库的实现下有些场景就像预期的那样置入执行性能优于插入但是有些场景反而插入更快。这种场景不容易描述因为依赖于传递的实参的类型、使用的容器、置入或插入到容器中的位置、容器中类型的构造函数的异常安全性和对于禁止重复值的容器即std::setstd::mapstd::unordered_setset::unordered_map要添加的值是否已经在容器中。因此大致的调用建议是通过benchmark测试来确定置入和插入哪种更快。 当然这个结论不是很令人满意,所以你会很高兴听到还有一种启发式的方法来帮助你确定是否应该使用置入。如果下列条件都能满足,置入会优于插入: 值是通过构造函数添加到容器,而不是直接赋值。 例子就像本条款刚开始的那样用“xyzzy”添加std::string到std::vector容器vs中值添加到vs末尾——一个先前没有对象存在的地方。新值必须通过构造函数添加到std::vector。如果我们回看这个例子新值放到已经存在了对象的一个地方那情况就完全不一样了。考虑下 std::vector<std::string> vs; //跟之前一样\n… //添加元素到vs\nvs.emplace(vs.begin(), \"xyzzy\"); //添加“xyzzy”到vs头部 对于这份代码没有实现会在已经存在对象的位置vs[0]构造这个添加的std::string。而是通过移动赋值的方式添加到需要的位置。但是移动赋值需要一个源对象所以这意味着一个临时对象要被创建而置入优于插入的原因就是没有临时对象的创建和销毁所以当通过赋值操作添加元素时置入的优势消失殆尽。 而且向容器添加元素是通过构造还是赋值通常取决于实现者。但是启发式仍然是有帮助的。基于节点的容器实际上总是使用构造添加新元素大多数标准库容器都是基于节点的。例外的容器只有std::vectorstd::dequestd::string。std::array也不是基于节点的但是它不支持置入和插入所以它与这儿无关。在不是基于节点的容器中你可以依靠emplace_back来使用构造向容器添加元素对于std::dequeemplace_front也是一样的。 传递的实参类型与容器的初始化类型不同。 再次强调置入优于插入通常基于以下事实当传递的实参不是容器保存的类型时接口不需要创建和销毁临时对象。当将类型为T的对象添加到container<T>时,没有理由期望置入比插入运行的更快,因为不需要创建临时对象来满足插入的接口。 容器不拒绝重复项作为新值。 这意味着容器要么允许添加重复值,要么你添加的元素大部分都是不重复的。这样要求的原因是为了判断一个元素是否已经存在于容器中,置入实现通常会创建一个具有新值的节点,以便可以将该节点的值与现有容器中节点的值进行比较。如果要添加的值不在容器中,则链接该节点。然后,如果值已经存在,置入操作取消,创建的节点被销毁,意味着构造和析构时的开销被浪费了。这样的节点更多的是为置入函数而创建,相比起为插入函数来说。 本条款开始的例子中下面的调用满足上面的条件。所以emplace_back比push_back运行更快。 vs.emplace_back(\"xyzzy\"); //在容器末尾构造新值;不是传递的容器中元 //素的类型;没有使用拒绝重复项的容器 vs.emplace_back(50, 'x'); //同上 在决定是否使用置入函数时需要注意另外两个问题。首先是资源管理。假定你有一个盛放std::shared_ptr<Widget>s的容器 std::list<std::shared_ptr<Widget>> ptrs; 然后你想添加一个通过自定义删除器释放的std::shared_ptr参见 Item19 )。 Item21 说明你应该使用std::make_shared来创建std::shared_ptr但是它也承认有时你无法做到这一点。比如当你要指定一个自定义删除器时。这时你必须直接new一个原始指针然后通过std::shared_ptr来管理。 如果自定义删除器是这个函数, void killWidget(Widget* pWidget); 使用插入函数的代码如下: ptrs.push_back(std::shared_ptr<Widget>(new Widget, killWidget)); 也可以像这样: ptrs.push_back({new Widget, killWidget}); 不管哪种写法在调用push_back前会生成一个临时std::shared_ptr对象。push_back的形参是std::shared_ptr的引用因此必须有一个std::shared_ptr。 用emplace_back应该可以避免std::shared_ptr临时对象的创建但是在这个场景下临时对象值得被创建。考虑如下可能的时间序列 在上述的调用中一个std::shared_ptr<Widget>的临时对象被创建来持有“new Widget”返回的原始指针。称这个对象为temp。 push_back通过引用接受temp。在存储temp的副本的 list 节点的内存分配过程中,内存溢出异常被抛出。 随着异常从push_back的传播temp被销毁。作为唯一管理这个Widget的std::shared_ptr它自动销毁Widget在这里就是调用killWidget。 这样的话即使发生了异常没有资源泄漏在调用push_back中通过“new Widget”创建的Widget在std::shared_ptr管理下自动销毁。生命周期良好。 考虑使用emplace_back代替push_back ptrs.emplace_back(new Widget, killWidget); 通过new Widget创建的原始指针完美转发给emplace_back中 list 节点被分配的位置。如果分配失败,还是抛出内存溢出异常。 当异常从emplace_back传播原始指针是仅有的访问堆上Widget的途径但是因为异常而丢失了那个Widget的资源以及任何它所拥有的资源发生了泄漏。 在这个场景中生命周期不良好这个失误不能赖std::shared_ptr。使用带自定义删除器的std::unique_ptr也会有同样的问题。根本上讲像std::shared_ptr和std::unique_ptr这样的资源管理类的高效性是以资源比如从new来的原始指针被 立即 传递给资源管理对象的构造函数为条件的。实际上std::make_shared和std::make_unique这样的函数自动做了这些事是使它们如此重要的原因。 在对存储资源管理类对象的容器比如std::list<std::shared_ptr<Widget>>调用插入函数时函数的形参类型通常确保在资源的获取比如使用new和资源管理对象的创建之间没有其他操作。在置入函数中完美转发推迟了资源管理对象的创建直到可以在容器的内存中构造它们为止这给“异常导致资源泄漏”提供了可能。所有的标准库容器都容易受到这个问题的影响。在使用资源管理对象的容器时必须注意确保在使用置入函数而不是插入函数时不会为提高效率带来的降低异常安全性付出代价。 坦白说无论如何你不应该将“new Widget”之类的表达式传递给emplace_back或者push_back或者大多数这种函数因为就像 Item21 中解释的那样这可能导致我们刚刚讨论的异常安全性问题。消除资源泄漏可能性的方法是使用独立语句把从“new Widget”获取的指针传递给资源管理类对象然后这个对象作为右值传递给你本来想传递“new Widget”的函数 Item21 有这个观点的详细讨论。使用push_back的代码应该如下 std::shared_ptr<Widget> spw(new Widget, //创建Widget让spw管理它 killWidget);\nptrs.push_back(std::move(spw)); //添加spw右值 emplace_back的版本如下 std::shared_ptr<Widget> spw(new Widget, killWidget);\nptrs.emplace_back(std::move(spw)); 无论哪种方式都会产生spw的创建和销毁成本。选择置入而非插入的动机是避免容器元素类型的临时对象的开销。但是对于spw的概念来讲当添加资源管理类型对象到容器中并根据正确的方式确保在获取资源和连接到资源管理对象上之间无其他操作时置入函数不太可能胜过插入函数。 置入函数的第二个值得注意的方面是它们与explicit的构造函数的交互。鉴于C++11对正则表达式的支持假设你创建了一个正则表达式对象的容器 std::vector<std::regex> regexes; 由于你同事的打扰,你写出了如下看似毫无意义的代码: regexes.emplace_back(nullptr); //添加nullptr到正则表达式的容器中 你没有注意到错误,编译器也没有提示你,所以你浪费了大量时间来调试。突然,你发现你插入了空指针到正则表达式的容器中。但是这怎么可能?指针不是正则表达式,如果你试图下面这样写, std::regex r = nullptr; //错误!不能编译 编译器就会报错。有趣的是如果你调用push_back而不是emplace_back编译器也会报错 regexes.push_back(nullptr); //错误!不能编译 当前你遇到的奇怪行为来源于“可能用字符串构造std::regex对象”的事实这就意味着下面代码合法 std::regex upperCaseWorld(\"[A-Z]+\"); 通过字符串创建std::regex要求相对较长的运行时开销所以为了最小程度减少无意中产生此类开销的可能性采用const char*指针的std::regex构造函数是explicit的。这就是下面代码无法编译的原因 std::regex r = nullptr; //错误!不能编译\nregexes.push_back(nullptr); //错误 在上面的代码中我们要求从指针到std::regex的隐式转换但是构造函数的explicitness拒绝了此类转换。 但是在emplace_back的调用中我们没有说明要传递一个std::regex对象。然而我们传递了一个std::regex 构造函数实参 。那不被认为是个隐式转换要求。相反,编译器看你像是写了如下代码: std::regex r(nullptr); //可编译 如果简洁的注释“可编译”缺乏直观理解好的因为这个代码可以编译但是行为不确定。使用const char*指针的std::regex构造函数要求字符串是一个有效的正则表达式空指针并不满足要求。如果你写出并编译了这样的代码最好的希望就是运行时程序崩溃掉。如果你不幸运就会花费大量的时间调试。 先把push_backemplace_back放在一边注意到相似的初始化语句导致了多么不一样的结果 std::regex r1 = nullptr; //错误!不能编译\nstd::regex r2(nullptr); //可以编译 在标准的官方术语中用于初始化r1的语法使用等号是所谓的 拷贝初始化 。相反用于初始化r2的语法是使用小括号有时也用花括号被称为 直接初始化 。 using regex = basic_regex<char>; explicit basic_regex(const char* ptr,flag_type flags); //定义 (1)explicit构造函数 basic_regex(const basic_regex& right); //定义 (2)拷贝构造函数 拷贝初始化不被允许使用explicit构造函数译者注即没法调用相应类的explicit拷贝构造函数对于r1,使用赋值运算符定义变量时将调用拷贝构造函数定义 (2)其形参类型为basic_regex&。因此nullptr首先需要隐式装换为basic_regex。而根据定义 (1)中的explicit这样的隐式转换不被允许从而产生编译时期的报错。对于直接初始化编译器会自动选择与提供的参数最匹配的构造函数即定义 (1)。就是初始化r1不能编译而初始化r2可以编译的原因。 然后回到push_back和emplace_back更一般来说是插入函数和置入函数的对比。置入函数使用直接初始化这意味着可能使用explicit的构造函数。插入函数使用拷贝初始化所以不能用explicit的构造函数。因此 regexes.emplace_back(nullptr); //可编译。直接初始化允许使用接受指针的 //std::regex的explicit构造函数\nregexes.push_back(nullptr); //错误!拷贝初始化不允许用那个构造函数 获得的经验是当你使用置入函数时请特别小心确保传递了正确的实参因为即使是explicit的构造函数也会被编译器考虑编译器会试图以有效方式解释你的代码。 请记住: 原则上,置入函数有时会比插入函数高效,并且不会更差。 实际上当以下条件满足时置入函数更快1值被构造到容器中而不是直接赋值2传入的类型与容器的元素类型不一致3容器不拒绝已经存在的重复值。 置入函数可能执行插入函数拒绝的类型转换。","breadcrumbs":"第八章 微调 » Item 42:考虑就地创建而非插入 » 条款四十二:考虑使用置入代替插入","id":"72","title":"条款四十二:考虑使用置入代替插入"},"8":{"body":"上面的内容几乎覆盖了模板类型推导的大部分内容,但这里还有一些小细节值得注意,比如数组类型不同于指针类型,虽然它们两个有时候是可互换的。关于这个错觉最常见的例子是,在很多上下文中数组会退化为指向它的第一个元素的指针。这样的退化允许像这样的代码可以被编译: const char name[] = \"J. P. Briggs\"; //name的类型是const char[13] const char * ptrToName = name; //数组退化为指针 在这里const char*指针ptrToName会由name初始化而name的类型为const char[13]这两种类型const char*和const char[13])是不一样的,但是由于数组退化为指针的规则,编译器允许这样的代码。 但要是一个数组传值给一个模板会怎样?会发生什么? template<typename T>\nvoid f(T param); //传值形参的模板 f(name); //T和param会推导成什么类型? 我们从一个简单的例子开始,这里有一个函数的形参是数组,是的,这样的语法是合法的, void myFunc(int param[]); 但是数组声明会被视作指针声明这意味着myFunc的声明和下面声明是等价的 void myFunc(int* param); //与上面相同的函数 数组与指针形参这样的等价是C语言的产物C++又是建立在C语言的基础上它让人产生了一种数组和指针是等价的的错觉。 因为数组形参会视作指针形参所以传值给模板的一个数组类型会被推导为一个指针类型。这意味着在模板函数f的调用中它的类型形参T会被推导为const char* f(name); //name是一个数组但是T被推导为const char* 但是现在难题来了,虽然函数不能声明形参为真正的数组,但是 可以 接受指向数组的 引用 所以我们修改f为传引用 template<typename T>\nvoid f(T& param); //传引用形参的模板 我们这样进行调用, f(name); //传数组给f T被推导为了真正的数组这个类型包括了数组的大小在这个例子中T被推导为const char[13]f的形参对这个数组的引用的类型则为const char (&)[13]。是的,这种语法看起来简直有毒,但是知道它将会让你在关心这些问题的人的提问中获得大神的称号。 有趣的是,可声明指向数组的引用的能力,使得我们可以创建一个模板函数来推导出数组的大小: //在编译期间返回一个数组大小的常量值(//数组形参没有名字,\n//因为我们只关心数组的大小)\ntemplate<typename T, std::size_t N> //关于\nconstexpr std::size_t arraySize(T (&)[N]) noexcept //constexpr\n{ //和noexcept return N; //的信息\n} //请看下面 在 Item15 提到将一个函数声明为constexpr使得结果在编译期间可用。这使得我们可以用一个花括号声明一个数组然后第二个数组可以使用第一个数组的大小作为它的大小就像这样 int keyVals[] = { 1, 3, 7, 9, 11, 22, 35 }; //keyVals有七个元素 int mappedVals[arraySize(keyVals)]; //mappedVals也有七个 当然作为一个现代C++程序员你自然应该想到使用std::array而不是内置的数组 std::array<int, arraySize(keyVals)> mappedVals; //mappedVals的大小为7 至于arraySize被声明为noexcept会使得编译器生成更好的代码具体的细节请参见 Item14 。","breadcrumbs":"第一章 类型推导 » Item 1:理解模板类型推导 » 数组实参","id":"8","title":"数组实参"},"9":{"body":"在C++中不只是数组会退化为指针,函数类型也会退化为一个函数指针,我们对于数组类型推导的全部讨论都可以应用到函数类型推导和退化为函数指针上来。结果是: void someFunc(int, double); //someFunc是一个函数 //类型是void(int, double) template<typename T>\nvoid f1(T param); //传值给f1 template<typename T>\nvoid f2(T & param); //传引用给f2 f1(someFunc); //param被推导为指向函数的指针 //类型是void(*)(int, double)\nf2(someFunc); //param被推导为指向函数的引用 //类型是void(&)(int, double) 这个实际上没有什么不同,但是如果你知道数组退化为指针,你也会知道函数退化为指针。 这里你需要知道auto依赖于模板类型推导。正如我在开始谈论的在大多数情况下它们的行为很直接。在通用引用中对于左值的特殊处理使得本来很直接的行为变得有些污点然而数组和函数退化为指针把这团水搅得更浑浊。有时你只需要编译器告诉你推导出的类型是什么。这种情况下翻到 item4 ,它会告诉你如何让编译器这么做。 请记住: 在模板类型推导时,有引用的实参会被视为无引用,他们的引用会被忽略 对于通用引用的推导,左值实参会被特殊对待 对于传值类型推导const和/或volatile实参会被认为是non-const的和non-volatile的 在模板类型推导时,数组名或者函数名实参会退化为指针,除非它们被用于初始化引用","breadcrumbs":"第一章 类型推导 » Item 1:理解模板类型推导 » 函数实参","id":"9","title":"函数实参"}},"length":73,"save":true},"fields":["title","body","breadcrumbs"],"index":{"body":{"root":{"0":{"4":{"df":1,"docs":{"35":{"tf":1.0}}},"df":12,"docs":{"11":{"tf":2.23606797749979},"17":{"tf":1.0},"20":{"tf":2.6457513110645907},"21":{"tf":1.7320508075688772},"23":{"tf":2.0},"28":{"tf":2.0},"29":{"tf":1.0},"4":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":3.872983346207417},"66":{"tf":1.4142135623730951},"68":{"tf":1.0}},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"23":{"tf":2.0}}}}}}}}}}},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"45":{"tf":1.0},"53":{"tf":1.0}}}}}}}}},"1":{")":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"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":{},"化":{"df":0,"docs":{},"r":{"1":{"df":0,"docs":{},"不":{"df":0,"docs":{},"能":{"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":{"2":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}},"0":{"'":{"0":{"0":{"0":{"'":{"0":{"0":{"0":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"23":{"tf":2.0}}},"df":8,"docs":{"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"23":{"tf":1.0},"28":{"tf":1.4142135623730951},"35":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":2.6457513110645907}},"个":{"df":0,"docs":{},"元":{"df":0,"docs":{},"素":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"和":{"2":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"的":{"df":0,"docs":{},"表":{"df":0,"docs":{},"达":{"df":0,"docs":{},"式":{"df":0,"docs":{},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"因":{"df":0,"docs":{},"为":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"1":{"df":3,"docs":{"10":{"tf":1.7320508075688772},"24":{"tf":1.0},"8":{"tf":1.0}}},"2":{"df":1,"docs":{"25":{"tf":1.0}}},"3":{"df":3,"docs":{"10":{"tf":1.0},"26":{"tf":1.0},"59":{"tf":1.0}}},"4":{".":{"5":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":2,"docs":{"27":{"tf":1.0},"29":{"tf":1.0}}},"5":{"df":2,"docs":{"1":{"tf":1.0},"28":{"tf":1.0}}},"6":{".":{"5":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"29":{"tf":1.0}}},"7":{"df":1,"docs":{"30":{"tf":1.0}}},"8":{"df":2,"docs":{"32":{"tf":1.0},"33":{"tf":1.0}}},"9":{".":{"1":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},"8":{"3":{")":{";":{"/":{"/":{"df":0,"docs":{},"和":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"9":{"8":{"df":1,"docs":{"26":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":3,"docs":{"33":{"tf":1.0},"35":{"tf":1.0},"58":{"tf":1.0}}},"df":12,"docs":{"10":{"tf":2.23606797749979},"20":{"tf":1.0},"23":{"tf":2.0},"28":{"tf":1.7320508075688772},"29":{"tf":1.0},"3":{"tf":1.4142135623730951},"4":{"tf":1.0},"52":{"tf":2.8284271247461903},"68":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.0},"8":{"tf":1.0}},"h":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}},"2":{"0":{"0":{"df":1,"docs":{"23":{"tf":2.0}}},"1":{"3":{"df":0,"docs":{},"年":{"1":{"2":{"df":0,"docs":{},"月":{"2":{"4":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"6":{"df":0,"docs":{},"月":{"5":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":5,"docs":{"20":{"tf":2.0},"34":{"tf":1.0},"35":{"tf":1.7320508075688772},"66":{"tf":1.0},"69":{"tf":2.6457513110645907}}},"1":{"df":3,"docs":{"35":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0}},"":{"df":0,"docs":{},"通":{"df":0,"docs":{},"过":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"2":{"df":2,"docs":{"36":{"tf":1.0},"8":{"tf":1.0}}},"3":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"38":{"tf":1.0}}},"4":{"df":1,"docs":{"39":{"tf":1.0}}},"5":{"df":2,"docs":{"40":{"tf":1.0},"71":{"tf":1.0}},"解":{"df":0,"docs":{},"释":{"df":0,"docs":{},"了":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"60":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"6":{"df":2,"docs":{"39":{"tf":1.0},"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":{},"查":{"df":0,"docs":{},"找":{"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":{},"o":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"d":{"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}},"7":{".":{"7":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":4,"docs":{"10":{"tf":3.605551275463989},"22":{"tf":1.0},"42":{"tf":1.0},"5":{"tf":1.4142135623730951}},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}},"右":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}}}}}}}},"8":{"df":2,"docs":{"49":{"tf":1.0},"54":{"tf":1.0}}},"9":{"df":1,"docs":{"50":{"tf":1.0}}},"d":{"df":1,"docs":{"29":{"tf":1.0}}},"df":9,"docs":{"10":{"tf":2.449489742783178},"16":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.0},"52":{"tf":2.8284271247461903},"68":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}},"3":{".":{"0":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":2,"docs":{"51":{"tf":1.0},"62":{"tf":2.6457513110645907}}},"1":{"df":1,"docs":{"59":{"tf":1.0}}},"2":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"27":{"tf":1.0},"60":{"tf":1.0}}},"3":{"df":1,"docs":{"61":{"tf":1.0}}},"4":{"df":1,"docs":{"62":{"tf":1.0}}},"5":{"df":2,"docs":{"64":{"tf":1.0},"8":{"tf":1.0}}},"6":{"df":1,"docs":{"65":{"tf":1.0}}},"7":{"df":1,"docs":{"66":{"tf":1.0}}},"8":{"df":0,"docs":{},"":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"9":{"df":1,"docs":{"68":{"tf":1.0}}},"^":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":9,"docs":{"10":{"tf":2.0},"11":{"tf":1.0},"15":{"tf":1.0},"19":{"tf":1.4142135623730951},"20":{"tf":1.0},"24":{"tf":1.0},"52":{"tf":2.6457513110645907},"71":{"tf":1.0},"8":{"tf":1.0}},"}":{"df":0,"docs":{},"”":{"df":0,"docs":{},"隐":{"df":0,"docs":{},"式":{"df":0,"docs":{},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"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":{}}}}}}}}}}},"4":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"df":2,"docs":{"38":{"tf":1.0},"71":{"tf":1.0}}},"2":{"df":2,"docs":{"13":{"tf":1.0},"72":{"tf":1.0}}},"df":4,"docs":{"12":{"tf":1.0},"18":{"tf":1.0},"31":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951}}},"5":{".":{"0":{"df":1,"docs":{"20":{"tf":2.8284271247461903}}},"3":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"0":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{},"个":{"df":0,"docs":{},"“":{"df":0,"docs":{},"x":{"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":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"5":{"df":1,"docs":{"58":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.4142135623730951},"20":{"tf":1.0},"28":{"tf":1.0},"37":{"tf":1.4142135623730951},"59":{"tf":1.4142135623730951}}},"6":{"4":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}},"df":5,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.4142135623730951},"61":{"tf":1.0}}},"7":{"df":4,"docs":{"20":{"tf":1.0},"29":{"tf":1.0},"63":{"tf":1.4142135623730951},"8":{"tf":1.0}}},"8":{"df":2,"docs":{"21":{"tf":1.0},"70":{"tf":1.4142135623730951}}},"9":{"df":7,"docs":{"10":{"tf":1.7320508075688772},"22":{"tf":1.0},"29":{"tf":1.0},"38":{"tf":1.0},"55":{"tf":1.0},"62":{"tf":1.0},"8":{"tf":1.0}}},"_":{"1":{"df":1,"docs":{"62":{"tf":3.4641016151377544}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.0}}}}}}},"a":{")":{"[":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":1.4142135623730951}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"a":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":1,"docs":{"66":{"tf":2.0}},"》":{"df":0,"docs":{},"":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"d":{"d":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"71":{"tf":1.4142135623730951}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.0}}}}}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}}}},"i":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"1":{"df":1,"docs":{"20":{"tf":1.0}}},"2":{"(":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"20":{"tf":1.0}}},"df":1,"docs":{"69":{"tf":2.23606797749979}},"为":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"到":{"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}},"i":{"a":{"df":2,"docs":{"19":{"tf":1.0},"22":{"tf":1.7320508075688772}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"v":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":2,"docs":{"39":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":4,"docs":{"18":{"tf":1.4142135623730951},"35":{"tf":1.0},"39":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"42":{"tf":1.0}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"38":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"38":{"tf":1.7320508075688772}}}}}},"p":{"df":0,"docs":{},"i":{"df":4,"docs":{"63":{"tf":1.4142135623730951},"64":{"tf":1.0},"67":{"tf":1.0},"68":{"tf":1.0}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":2.0}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"21":{"tf":1.4142135623730951},"32":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}}}},"r":{"1":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"2":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":1,"docs":{"28":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":0,"docs":{},"v":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"t":{"df":1,"docs":{"8":{"tf":1.0}}}},"1":{"df":1,"docs":{"28":{"tf":1.0}}},"2":{"df":1,"docs":{"28":{"tf":1.4142135623730951}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"z":{"df":0,"docs":{},"的":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"50":{"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":1,"docs":{"65":{"tf":1.0}}}}}},"或":{"df":0,"docs":{},"者":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"运":{"df":0,"docs":{},"行":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"29":{"tf":1.7320508075688772},"63":{"tf":1.0}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":2.6457513110645907}}}}},"df":0,"docs":{}}}}},"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":2.23606797749979}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"&":{"&":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"以":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"61":{"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":{},"款":{"2":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":39,"docs":{"10":{"tf":5.385164807134504},"11":{"tf":2.449489742783178},"13":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"16":{"tf":1.7320508075688772},"17":{"tf":4.123105625617661},"18":{"tf":3.4641016151377544},"21":{"tf":3.1622776601683795},"23":{"tf":3.4641016151377544},"25":{"tf":2.0},"26":{"tf":1.7320508075688772},"28":{"tf":3.3166247903554},"29":{"tf":2.8284271247461903},"32":{"tf":2.23606797749979},"33":{"tf":2.0},"34":{"tf":2.0},"35":{"tf":3.0},"36":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":2.449489742783178},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"49":{"tf":2.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.7320508075688772},"59":{"tf":3.7416573867739413},"60":{"tf":3.0},"61":{"tf":3.1622776601683795},"62":{"tf":4.358898943540674},"64":{"tf":1.4142135623730951},"65":{"tf":3.0},"66":{"tf":2.449489742783178},"67":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"69":{"tf":3.3166247903554}},"创":{"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":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"35":{"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":{"61":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"41":{"tf":1.0},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"1":{"df":1,"docs":{"50":{"tf":1.7320508075688772}},"移":{"df":0,"docs":{},"动":{"df":0,"docs":{},"到":{"a":{"df":0,"docs":{},"w":{"2":{"df":0,"docs":{},"。":{"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":{},"w":{"1":{"df":0,"docs":{},"中":{"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":{},"w":{"2":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"2":{"df":1,"docs":{"50":{"tf":1.0}}},"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{")":{"[":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}},",":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"31":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"(":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"30":{"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":{"30":{"tf":1.0}}}}}}},"df":0,"docs":{}},":":{":":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"25":{"tf":2.6457513110645907},"28":{"tf":2.449489742783178},"30":{"tf":2.449489742783178},"64":{"tf":2.0}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}},"i":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"24":{"tf":3.0}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"在":{"c":{"+":{"+":{"9":{"8":{"df":1,"docs":{"24":{"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":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"df":4,"docs":{"17":{"tf":2.23606797749979},"20":{"tf":2.23606797749979},"27":{"tf":1.0},"69":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"tf":1.0}}}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"66":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"1":{"tf":1.0},"67":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"b":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":1,"docs":{"20":{"tf":1.0}},"l":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"30":{"tf":1.0}}},"n":{"d":{"df":2,"docs":{"60":{"tf":1.7320508075688772},"62":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":3.3166247903554},"56":{"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":{},"应":{"df":0,"docs":{},"用":{"df":0,"docs":{},"程":{"df":0,"docs":{},"序":{"df":0,"docs":{},"移":{"df":0,"docs":{},"植":{"df":0,"docs":{},"到":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"l":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"23":{"tf":2.6457513110645907}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"33":{"tf":1.0},"66":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.0}}}},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"32":{"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":1,"docs":{"32":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":11,"docs":{"1":{"tf":1.4142135623730951},"11":{"tf":1.0},"18":{"tf":1.7320508075688772},"20":{"tf":2.449489742783178},"21":{"tf":1.0},"24":{"tf":2.449489742783178},"29":{"tf":1.7320508075688772},"60":{"tf":2.0},"66":{"tf":1.4142135623730951},"68":{"tf":1.0},"69":{"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":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}}}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"15":{"tf":1.0}},"得":{"df":0,"docs":{},"到":{"df":0,"docs":{},"f":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}},"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"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":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"r":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"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":{},"n":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"(":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"1":{"9":{"3":{"0":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":1,"docs":{"62":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"2":{"tf":1.0}}},"i":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"”":{"df":0,"docs":{},"代":{"df":0,"docs":{},"表":{"df":0,"docs":{},"“":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"到":{"df":0,"docs":{},"e":{"df":1,"docs":{"17":{"tf":1.0}}}},"指":{"df":0,"docs":{},"向":{"a":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}},"c":{"+":{"+":{"1":{"1":{"df":16,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"17":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":2.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"30":{"tf":1.0},"40":{"tf":1.0},"50":{"tf":1.0},"51":{"tf":1.0},"60":{"tf":1.4142135623730951},"62":{"tf":2.8284271247461903},"72":{"tf":1.0}},"中":{"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":{"d":{":":{":":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"60":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"和":{"c":{"+":{"+":{"1":{"4":{"df":1,"docs":{"1":{"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":{},"u":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"60":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"的":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"":{"df":0,"docs":{},"参":{"df":0,"docs":{},"见":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"9":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"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":{"4":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"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":1,"docs":{"27":{"tf":1.0}}}}}}}}}}},"4":{"df":18,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":1.4142135623730951},"11":{"tf":2.0},"17":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"23":{"tf":1.7320508075688772},"28":{"tf":1.7320508075688772},"32":{"tf":1.4142135623730951},"39":{"tf":1.0},"40":{"tf":1.0},"47":{"tf":1.0},"59":{"tf":2.0},"60":{"tf":1.7320508075688772},"61":{"tf":1.4142135623730951},"62":{"tf":2.8284271247461903},"65":{"tf":1.0},"66":{"tf":1.0}},"中":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"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":{},"参":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"3":{"4":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"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":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}},"可":{"df":0,"docs":{},"以":{"df":0,"docs":{},"通":{"df":0,"docs":{},"过":{"df":0,"docs":{},"带":{"df":0,"docs":{},"有":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"没":{"df":0,"docs":{},"有":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"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":{},"了":{"c":{"+":{"+":{"1":{"1":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"版":{"df":0,"docs":{},"本":{"df":0,"docs":{},"的":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"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":{}}}},"的":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"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":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"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":{},"在":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"38":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"":{"df":0,"docs":{},"仍":{"df":0,"docs":{},"然":{"df":0,"docs":{},"在":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"9":{"8":{"df":3,"docs":{"1":{"tf":1.0},"25":{"tf":1.0},"27":{"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":1,"docs":{"26":{"tf":1.0}}}}}}}}},"和":{"c":{"+":{"+":{"0":{"3":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}},"1":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{"1":{"df":1,"docs":{"25":{"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":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"即":{"df":0,"docs":{},"非":{"df":0,"docs":{},"限":{"df":0,"docs":{},"域":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"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":{},"数":{"df":0,"docs":{},"为":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"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":{},"做":{"c":{"+":{"+":{"1":{"1":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"运":{"df":0,"docs":{},"行":{"df":0,"docs":{},"时":{"df":0,"docs":{},"行":{"df":0,"docs":{},"为":{"df":0,"docs":{},"一":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"30":{"tf":1.0}}}}},"赋":{"df":0,"docs":{},"值":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"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":{},"f":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"并":{"df":0,"docs":{},"发":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":1.0}}}}},"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":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"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":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"1":{"df":1,"docs":{"58":{"tf":1.4142135623730951}},"是":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"":{"c":{"2":{"df":0,"docs":{},"":{"c":{"3":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"2":{"df":1,"docs":{"58":{"tf":1.4142135623730951}},"是":{"c":{"1":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"3":{"df":1,"docs":{"58":{"tf":1.0}},"是":{"c":{"2":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":2.0}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"[":{"df":0,"docs":{},"i":{"d":{"]":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"29":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"29":{"tf":3.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"29":{"tf":2.8284271247461903}},"是":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"29":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"c":{"1":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"59":{"tf":2.449489742783178}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"1":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"27":{"tf":1.0}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"48":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"59":{"tf":1.0},"60":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"11":{"tf":1.0},"20":{"tf":1.0},"51":{"tf":1.0}}},"t":{"df":3,"docs":{"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.7320508075688772}}}}},"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}}},"df":17,"docs":{"0":{"tf":1.0},"1":{"tf":1.7320508075688772},"11":{"tf":2.8284271247461903},"17":{"tf":1.0},"18":{"tf":1.4142135623730951},"19":{"tf":1.4142135623730951},"2":{"tf":1.0},"20":{"tf":1.0},"23":{"tf":2.6457513110645907},"26":{"tf":2.0},"30":{"tf":1.0},"39":{"tf":1.4142135623730951},"46":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.4142135623730951},"64":{"tf":1.4142135623730951},"71":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":8,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"3":{"tf":1.0},"31":{"tf":1.0},"37":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"70":{"tf":1.0}}}}}},"r":{"*":{"df":0,"docs":{},"也":{"df":0,"docs":{},"应":{"df":0,"docs":{},"该":{"df":0,"docs":{},"无":{"df":0,"docs":{},"效":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"这":{"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":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"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":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"会":{"df":0,"docs":{},"由":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"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":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}}},"1":{"6":{"_":{"df":0,"docs":{},"t":{"[":{"1":{"2":{"]":{"df":0,"docs":{},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"48":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"48":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},">":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"[":{"1":{"3":{"]":{"df":0,"docs":{},"":{"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":{},"个":{"df":0,"docs":{},"数":{"df":0,"docs":{},"组":{"df":0,"docs":{},"的":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"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":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"10":{"tf":1.7320508075688772},"15":{"tf":1.0},"24":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"72":{"tf":1.0},"8":{"tf":2.23606797749979}},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"50":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":1,"docs":{"26":{"tf":1.0}}},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":37,"docs":{"1":{"tf":2.6457513110645907},"11":{"tf":1.0},"14":{"tf":1.7320508075688772},"15":{"tf":2.0},"18":{"tf":2.0},"20":{"tf":2.6457513110645907},"22":{"tf":3.0},"23":{"tf":3.1622776601683795},"24":{"tf":2.8284271247461903},"25":{"tf":3.3166247903554},"26":{"tf":1.0},"27":{"tf":1.7320508075688772},"28":{"tf":1.4142135623730951},"29":{"tf":2.6457513110645907},"30":{"tf":2.449489742783178},"32":{"tf":2.23606797749979},"33":{"tf":1.7320508075688772},"35":{"tf":1.4142135623730951},"36":{"tf":3.0},"38":{"tf":2.449489742783178},"39":{"tf":2.449489742783178},"40":{"tf":2.6457513110645907},"41":{"tf":2.23606797749979},"45":{"tf":1.0},"47":{"tf":2.449489742783178},"48":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"61":{"tf":1.0},"62":{"tf":2.0},"66":{"tf":2.0},"67":{"tf":1.0},"71":{"tf":3.605551275463989},"72":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"那":{"df":0,"docs":{},"一":{"df":0,"docs":{},"年":{"df":0,"docs":{},"":{"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":{"9":{"9":{"8":{"df":0,"docs":{},"":{"df":0,"docs":{},"第":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":1,"docs":{"26":{"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":{"0":{"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":{},"款":{"1":{"0":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"":{"df":0,"docs":{},"的":{"df":0,"docs":{},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"成":{"df":0,"docs":{},"员":{"df":0,"docs":{},"们":{"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":{},"m":{"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":1,"docs":{"36":{"tf":1.0}}}}}}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"(":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{},"p":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":0,"docs":{},"被":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"1":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0}}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"27":{"tf":1.0},"68":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":2,"docs":{"39":{"tf":1.0},"49":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{":":{":":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}},"w":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"1":{"tf":1.4142135623730951},"23":{"tf":4.0}},"与":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"和":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.0}}}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"b":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{":":{":":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{":":{":":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"1":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"69":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":3.1622776601683795}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"在":{"df":0,"docs":{},"“":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"1":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}}},"n":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":5,"docs":{"19":{"tf":1.0},"29":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0},"69":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"47":{"tf":1.0},"63":{"tf":1.0},"68":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"等":{"df":0,"docs":{},"价":{"df":0,"docs":{},"于":{"df":0,"docs":{},"指":{"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":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}}}}}}}},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}}}},"重":{"df":0,"docs":{},"写":{"c":{"+":{"+":{"9":{"8":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}}},"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":30,"docs":{"1":{"tf":1.0},"10":{"tf":2.6457513110645907},"11":{"tf":2.0},"13":{"tf":1.0},"15":{"tf":4.0},"17":{"tf":3.1622776601683795},"20":{"tf":1.0},"22":{"tf":2.0},"24":{"tf":1.0},"25":{"tf":3.1622776601683795},"26":{"tf":1.7320508075688772},"28":{"tf":2.23606797749979},"29":{"tf":3.1622776601683795},"38":{"tf":1.0},"40":{"tf":1.7320508075688772},"41":{"tf":1.4142135623730951},"44":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"48":{"tf":1.7320508075688772},"5":{"tf":2.449489742783178},"54":{"tf":2.23606797749979},"57":{"tf":1.0},"59":{"tf":3.3166247903554},"6":{"tf":1.4142135623730951},"60":{"tf":2.8284271247461903},"61":{"tf":1.0},"62":{"tf":1.0},"7":{"tf":2.449489742783178},"72":{"tf":1.0},"8":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":4,"docs":{"23":{"tf":2.0},"28":{"tf":5.744562646538029},"66":{"tf":1.4142135623730951},"8":{"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":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}}}}}}}}}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"1":{"5":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"48":{"tf":1.0}}}},"df":0,"docs":{}}},"和":{"/":{"df":0,"docs":{},"或":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"实":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"9":{"tf":1.0}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}},"容":{"df":0,"docs":{},"器":{"df":0,"docs":{},"中":{"df":0,"docs":{},"获":{"df":0,"docs":{},"取":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"":{"df":0,"docs":{},"没":{"df":0,"docs":{},"办":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}}}}}}},"左":{"df":0,"docs":{},"值":{"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":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}}}}}}}}}},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"39":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"的":{"df":0,"docs":{},"和":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"9":{"tf":1.0}}}}}},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"上":{"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":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"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":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"谓":{"df":0,"docs":{},"指":{"df":0,"docs":{},"向":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"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":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"":{"df":0,"docs":{},"也":{"df":0,"docs":{},"就":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"不":{"df":0,"docs":{},"再":{"df":0,"docs":{},"被":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"为":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"11":{"tf":2.449489742783178},"26":{"tf":1.4142135623730951},"59":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"23":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":5,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.0},"36":{"tf":1.4142135623730951},"40":{"tf":1.0},"71":{"tf":1.0}}},"y":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"68":{"tf":1.0}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":2.0}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"33":{"tf":1.4142135623730951},"35":{"tf":2.449489742783178}},"":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"":{"df":0,"docs":{},"为":{"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"t":{"df":1,"docs":{"15":{"tf":2.0}}}}},"p":{"(":{"\"":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"15":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"33":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"s":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"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":{"1":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"v":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"df":1,"docs":{"68":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":2,"docs":{"47":{"tf":1.0},"68":{"tf":1.4142135623730951}},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"的":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"w":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}},"x":{"=":{"df":0,"docs":{},"x":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}}}},"df":2,"docs":{"10":{"tf":2.23606797749979},"5":{"tf":1.0}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}},"d":{"[":{"5":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":3,"docs":{"18":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.4142135623730951}}}}},"t":{"a":{"1":{"df":1,"docs":{"28":{"tf":1.0}}},"2":{"df":1,"docs":{"28":{"tf":1.0}}},"df":5,"docs":{"25":{"tf":1.7320508075688772},"28":{"tf":1.0},"29":{"tf":1.0},"36":{"tf":2.0},"60":{"tf":3.3166247903554}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"25":{"tf":2.6457513110645907},"60":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":4,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":2.23606797749979},"62":{"tf":1.7320508075688772}},"e":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"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":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":5,"docs":{"1":{"tf":1.0},"17":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"27":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"11":{"tf":2.23606797749979},"61":{"tf":1.0}},"e":{"(":{"(":{"df":0,"docs":{},"x":{")":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"&":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"f":{"2":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":3,"docs":{"11":{"tf":2.6457513110645907},"21":{"tf":1.0},"38":{"tf":1.0}}}}}},"c":{"[":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{")":{">":{"df":0,"docs":{},"。":{"df":0,"docs":{},"":{"df":0,"docs":{},"对":{"df":0,"docs":{},"于":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"32":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"1":{"df":1,"docs":{"32":{"tf":1.0}}},"df":1,"docs":{"32":{"tf":1.7320508075688772}}}}}}}}}},"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"w":{")":{")":{"df":0,"docs":{},"是":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},")":{"df":0,"docs":{},"是":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{")":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"33":{"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":{},"x":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"y":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{">":{"(":{"c":{")":{"[":{"df":0,"docs":{},"i":{"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":{}}}}},"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":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"[":{"0":{"]":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"w":{")":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"f":{"1":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"d":{"df":0,"docs":{},"u":{"c":{"df":3,"docs":{"12":{"tf":1.0},"18":{"tf":1.0},"3":{"tf":1.0}},"t":{"df":3,"docs":{"10":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"36":{"tf":1.0}}}},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":4,"docs":{"30":{"tf":3.1622776601683795},"36":{"tf":2.8284271247461903},"59":{"tf":1.0},"66":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"14":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"36":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"24":{"tf":1.0},"36":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":7,"docs":{"24":{"tf":5.656854249492381},"30":{"tf":2.23606797749979},"31":{"tf":1.0},"32":{"tf":2.0},"33":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0}},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"32":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"32":{"tf":2.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}}}}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"25":{"tf":2.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"66":{"tf":2.0}},"断":{"df":0,"docs":{},"开":{"df":0,"docs":{},"了":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"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":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"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":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"46":{"tf":2.23606797749979},"47":{"tf":2.0},"48":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"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":{"29":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"20":{"tf":1.0},"39":{"tf":1.0}}}}}}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"59":{"tf":2.0}}},"y":{"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":1,"docs":{"59":{"tf":5.385164807134504}},"。":{"df":0,"docs":{},"在":{"df":0,"docs":{},"默":{"df":0,"docs":{},"认":{"df":0,"docs":{},"按":{"df":0,"docs":{},"值":{"df":0,"docs":{},"捕":{"df":0,"docs":{},"获":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"a":{"d":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}}}},"":{"df":0,"docs":{},"但":{"df":0,"docs":{},"默":{"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":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}},"o":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.7320508075688772}},"传":{"df":0,"docs":{},"递":{"df":0,"docs":{},"给":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"64":{"tf":1.0}}},"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":{"41":{"tf":1.7320508075688772}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{">":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"59":{"tf":1.0}}}}}}}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":7,"docs":{"10":{"tf":2.0},"18":{"tf":1.0},"20":{"tf":3.3166247903554},"21":{"tf":1.0},"28":{"tf":2.0},"29":{"tf":1.4142135623730951},"9":{"tf":2.0}},"e":{"df":0,"docs":{},"到":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}}},"的":{"df":0,"docs":{},"和":{"df":0,"docs":{},"可":{"df":0,"docs":{},"能":{"df":0,"docs":{},"不":{"df":0,"docs":{},"能":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"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":2,"docs":{"25":{"tf":2.6457513110645907},"27":{"tf":1.0}},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"为":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"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":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"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":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}},"s":{"c":{"df":0,"docs":{},"p":{":":{"6":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":2.449489742783178}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{":":{":":{"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":2.0}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"":{"df":0,"docs":{},"“":{"d":{"df":0,"docs":{},"o":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"n":{":":{"2":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"g":{"df":2,"docs":{"11":{"tf":1.0},"20":{"tf":1.0}}}},"df":2,"docs":{"17":{"tf":2.0},"23":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":1,"docs":{"39":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"51":{"tf":1.0},"72":{"tf":1.0}},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"39":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"72":{"tf":1.0}},"代":{"df":0,"docs":{},"替":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"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":{},"息":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"2":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"2":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"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":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"58":{"tf":1.0}}}}}}}},"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":5,"docs":{"1":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"23":{"tf":5.385164807134504},"62":{"tf":2.0},"66":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":2.449489742783178}}}},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"1":{"0":{"df":1,"docs":{"1":{"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":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"未":{"df":0,"docs":{},"限":{"df":0,"docs":{},"域":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}}}},"p":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"a":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"14":{"tf":2.0}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"25":{"tf":1.0},"27":{"tf":2.0}}}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"32":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"p":{"df":1,"docs":{"28":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"1":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"17":{"tf":1.0},"38":{"tf":1.7320508075688772},"41":{"tf":2.6457513110645907},"45":{"tf":1.4142135623730951},"47":{"tf":2.449489742783178},"48":{"tf":1.0},"60":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"r":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":4,"docs":{"18":{"tf":1.4142135623730951},"28":{"tf":1.0},"51":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951}}}}},"中":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"t":{"df":0,"docs":{},"和":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"与":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}},"f":{"(":{"&":{"df":0,"docs":{},"v":{"df":0,"docs":{},"w":{"[":{"0":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"df":1,"docs":{"5":{"tf":1.0}}}},"0":{"df":1,"docs":{"21":{"tf":1.0}}},"2":{"7":{"df":1,"docs":{"6":{"tf":1.0}}},"8":{"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":7,"docs":{"11":{"tf":1.0},"15":{"tf":1.7320508075688772},"27":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":1.0}}}}}},"x":{"df":3,"docs":{"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"4":{"tf":1.4142135623730951}}}}}},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{")":{"df":0,"docs":{},"而":{"df":0,"docs":{},"不":{"df":0,"docs":{},"是":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"21":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{".":{".":{".":{")":{"df":0,"docs":{},"得":{"df":0,"docs":{},"来":{"df":0,"docs":{},"的":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}},"x":{"df":1,"docs":{"5":{"tf":1.0}}}},"r":{"df":0,"docs":{},"x":{"df":3,"docs":{"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"51":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"51":{"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":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":1.0},"56":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":7,"docs":{"10":{"tf":1.0},"39":{"tf":1.7320508075688772},"49":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"v":{"df":1,"docs":{"39":{"tf":1.0}},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"w":{"df":2,"docs":{"11":{"tf":1.0},"39":{"tf":1.0}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"37":{"tf":1.0},"39":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"x":{"df":4,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"1":{"(":{"0":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"9":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"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":1,"docs":{"9":{"tf":1.0}}}},"df":2,"docs":{"11":{"tf":1.0},"9":{"tf":1.0}},"m":{"df":1,"docs":{"21":{"tf":1.7320508075688772}}},"传":{"df":0,"docs":{},"递":{"0":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"":{"df":0,"docs":{},"f":{"2":{"df":0,"docs":{},"":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"9":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"9":{"tf":1.0}}}},"df":2,"docs":{"11":{"tf":1.0},"9":{"tf":1.0}},"m":{"df":1,"docs":{"21":{"tf":1.7320508075688772}}},"传":{"df":0,"docs":{},"递":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}},"3":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.7320508075688772}}},"传":{"df":0,"docs":{},"递":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":2.0}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"51":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"s":{"df":3,"docs":{"23":{"tf":1.4142135623730951},"29":{"tf":2.0},"66":{"tf":1.4142135623730951}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"42":{"tf":1.0},"51":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"d":{"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":10,"docs":{"10":{"tf":1.7320508075688772},"15":{"tf":1.4142135623730951},"21":{"tf":1.0},"4":{"tf":1.0},"51":{"tf":2.0},"52":{"tf":1.7320508075688772},"55":{"tf":1.0},"61":{"tf":2.0},"65":{"tf":4.123105625617661},"8":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{")":{"[":{"5":{"df":1,"docs":{"18":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"36":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":2.0}}}}},"df":0,"docs":{}}}}},"df":2,"docs":{"59":{"tf":2.23606797749979},"66":{"tf":1.7320508075688772}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"59":{"tf":3.605551275463989}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"n":{"d":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":2,"docs":{"68":{"tf":2.0},"72":{"tf":1.0}},"":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"0":{"df":1,"docs":{"68":{"tf":1.0}}},"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":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"20":{"tf":1.4142135623730951}},"和":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"df":0,"docs":{},"":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"":{"df":0,"docs":{},"每":{"df":0,"docs":{},"个":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"(":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.0},"61":{"tf":1.0}}}},"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":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.7320508075688772},"61":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}},"df":4,"docs":{"1":{"tf":1.0},"37":{"tf":1.4142135623730951},"39":{"tf":1.0},"51":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"p":{")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"tf":1.0}},"到":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"r":{"a":{"c":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"40":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"n":{"c":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"?":{"?":{"?":{">":{"(":{"df":0,"docs":{},"x":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{")":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{")":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"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":{"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}},"t":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}},"w":{"df":1,"docs":{"49":{"tf":1.7320508075688772}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.4142135623730951}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"1":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"2":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}},"x":{"(":{"2":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":4,"docs":{"17":{"tf":1.0},"21":{"tf":1.4142135623730951},"39":{"tf":1.0},"60":{"tf":2.8284271247461903}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"27":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":11,"docs":{"1":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"25":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"51":{"tf":1.0},"55":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"x":{"df":1,"docs":{"23":{"tf":1.0}}}}},"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"被":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"为":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"7":{"tf":1.0}}},"t":{".":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"0":{"df":1,"docs":{"65":{"tf":1.0}}},"1":{"0":{"0":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"1":{"df":1,"docs":{"65":{"tf":1.0}}},"2":{"df":1,"docs":{"65":{"tf":1.0}}},"df":3,"docs":{"64":{"tf":1.4142135623730951},"65":{"tf":2.449489742783178},"67":{"tf":2.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"63":{"tf":1.7320508075688772},"64":{"tf":1.0},"65":{"tf":2.8284271247461903},"66":{"tf":1.0},"67":{"tf":6.244997998398398},"68":{"tf":4.0}}}},"”":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"“":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}}}},"上":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"或":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"来":{"df":0,"docs":{},"异":{"df":0,"docs":{},"步":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}}}}}},"df":0,"docs":{}}}}},"是":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"w":{"d":{"(":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"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":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"df":1,"docs":{"55":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{">":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"55":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"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":1,"docs":{"51":{"tf":1.4142135623730951}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"55":{"tf":1.0}}}}}}}}}},"df":2,"docs":{"51":{"tf":1.0},"52":{"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":{},"f":{"df":0,"docs":{},"w":{"d":{"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":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"51":{"tf":1.0}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"的":{"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":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"54":{"tf":1.0}}}}},"转":{"df":0,"docs":{},"发":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}}}},"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":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"仅":{"df":0,"docs":{},"当":{"df":0,"docs":{},"在":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"休":{"df":0,"docs":{},"眠":{"1":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}},"传":{"df":0,"docs":{},"给":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"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":1,"docs":{"65":{"tf":1.0}}}}}}},"的":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"65":{"tf":1.0}}}},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"t":{"&":{"df":0,"docs":{},"改":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"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":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":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"t":{"df":0,"docs":{},"和":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}},"":{"df":0,"docs":{},"如":{"df":0,"docs":{},"果":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"g":{"(":{"df":0,"docs":{},"f":{"1":{"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.0}}}},"2":{"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.0}}}},"3":{"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":2,"docs":{"29":{"tf":1.0},"68":{"tf":1.0}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}}}}},"1":{",":{"df":0,"docs":{},"g":{"2":{",":{"df":0,"docs":{},"g":{"3":{"df":1,"docs":{"36":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"36":{"tf":1.0}}},"2":{"df":1,"docs":{"36":{"tf":1.0}}},"3":{"df":1,"docs":{"36":{"tf":1.0}}},"a":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.7320508075688772}}}},"df":1,"docs":{"36":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"30":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":2.0}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"或":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"者":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"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":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"和":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"23":{"tf":2.0}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":2.23606797749979}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"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":{}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"d":{"(":{"df":0,"docs":{},"m":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"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":{"68":{"tf":1.0}}}}}}}}},"析":{"df":0,"docs":{},"构":{"df":0,"docs":{},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"解":{"df":0,"docs":{},"锁":{"df":0,"docs":{},"m":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"1":{"tf":1.4142135623730951}},"l":{"df":2,"docs":{"64":{"tf":1.0},"67":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"d":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":1,"docs":{"56":{"tf":1.0}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"62":{"tf":1.0}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":3.1622776601683795}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"1":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"a":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"i":{"d":{"df":2,"docs":{"13":{"tf":1.0},"34":{"tf":1.4142135623730951}},"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":{},"出":{"df":0,"docs":{},"":{"df":0,"docs":{},"从":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}},"编":{"df":0,"docs":{},"辑":{"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":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":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"y":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":3,"docs":{"18":{"tf":1.4142135623730951},"32":{"tf":1.0},"36":{"tf":1.0}}}}},"x":{"df":4,"docs":{"41":{"tf":2.449489742783178},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"l":{":":{"4":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"df":2,"docs":{"20":{"tf":2.23606797749979},"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"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":{}},"df":0,"docs":{}}}}}}}}}},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"52":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":3.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"32":{"tf":1.0},"36":{"tf":1.4142135623730951}}}}}}},"和":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"69":{"tf":2.0}}}}},"df":0,"docs":{}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":2,"docs":{"15":{"tf":1.0},"36":{"tf":3.872983346207417}},"e":{"df":0,"docs":{},"了":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"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":3,"docs":{"14":{"tf":1.4142135623730951},"23":{"tf":2.0},"36":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"23":{"tf":2.0}}}}}}}},"x":{"df":2,"docs":{"11":{"tf":3.872983346207417},"18":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"60":{"tf":1.4142135623730951}},"i":{"df":4,"docs":{"10":{"tf":1.0},"18":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"29":{"tf":1.0}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"35":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"w":{"d":{"(":{"\"":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"i":{"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":{}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}},"v":{"df":1,"docs":{"26":{"tf":1.7320508075688772}}}}}},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{">":{"df":0,"docs":{},"时":{"df":0,"docs":{},"写":{"df":0,"docs":{},"了":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{}},"df":0,"docs":{}}}}}},"":{"df":0,"docs":{},"而":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"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":{}},"df":0,"docs":{}}}}}}},"df":33,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":2.8284271247461903},"11":{"tf":2.6457513110645907},"13":{"tf":1.4142135623730951},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":2.23606797749979},"18":{"tf":1.0},"20":{"tf":3.3166247903554},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.7320508075688772},"25":{"tf":1.7320508075688772},"27":{"tf":1.4142135623730951},"28":{"tf":3.0},"29":{"tf":2.0},"35":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"49":{"tf":1.7320508075688772},"5":{"tf":3.872983346207417},"55":{"tf":2.23606797749979},"58":{"tf":1.4142135623730951},"59":{"tf":3.0},"6":{"tf":2.6457513110645907},"62":{"tf":1.0},"64":{"tf":1.4142135623730951},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":2.0},"7":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"和":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}},"的":{"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"的":{"df":0,"docs":{},"变":{"df":0,"docs":{},"量":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}}}},"给":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"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":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"值":{"df":0,"docs":{},"是":{"2":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"y":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":3.4641016151377544}}}}},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"s":{"_":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"v":{"4":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"56":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"60":{"tf":2.449489742783178}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"y":{"(":{"'":{"a":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{".":{"5":{"df":1,"docs":{"24":{"tf":1.0}},"f":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"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":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"24":{"tf":2.0}}}},"df":0,"docs":{}}}},"v":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"60":{"tf":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":{"60":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"60":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"1":{"0":{"df":2,"docs":{"22":{"tf":1.0},"65":{"tf":1.0}}},"1":{"df":3,"docs":{"30":{"tf":1.0},"50":{"tf":1.0},"69":{"tf":1.0}}},"4":{"df":7,"docs":{"1":{"tf":1.0},"23":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"40":{"tf":1.0},"50":{"tf":1.0},"8":{"tf":1.0}}},"5":{"df":2,"docs":{"23":{"tf":1.0},"8":{"tf":1.0}}},"7":{"df":7,"docs":{"24":{"tf":1.0},"27":{"tf":1.0},"36":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"50":{"tf":1.0},"66":{"tf":1.0},"69":{"tf":1.0}}},"8":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"32":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":8,"docs":{"22":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.4142135623730951},"36":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"66":{"tf":1.0}}},"9":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":5,"docs":{"32":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.4142135623730951},"67":{"tf":1.0},"72":{"tf":1.0}}},"df":4,"docs":{"10":{"tf":2.0},"11":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"47":{"tf":1.0}}},"2":{"0":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"34":{"tf":1.0}}},"2":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"1":{"tf":1.0},"33":{"tf":1.0}}},"1":{"df":8,"docs":{"20":{"tf":1.0},"25":{"tf":1.0},"33":{"tf":2.23606797749979},"34":{"tf":1.0},"36":{"tf":1.0},"40":{"tf":1.0},"51":{"tf":1.0},"72":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"32":{"tf":1.0}}},"3":{"df":8,"docs":{"22":{"tf":1.0},"27":{"tf":1.0},"30":{"tf":1.0},"35":{"tf":1.0},"40":{"tf":2.0},"49":{"tf":1.0},"60":{"tf":1.0},"67":{"tf":1.0}}},"4":{"df":10,"docs":{"11":{"tf":1.0},"38":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"49":{"tf":1.7320508075688772},"51":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.0},"71":{"tf":1.0}}},"5":{"df":11,"docs":{"11":{"tf":1.0},"20":{"tf":1.0},"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"41":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"61":{"tf":1.0},"65":{"tf":1.0},"71":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"6":{"df":6,"docs":{"30":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.0},"44":{"tf":1.0},"46":{"tf":1.7320508075688772},"47":{"tf":2.449489742783178}}},"7":{"df":2,"docs":{"41":{"tf":1.0},"71":{"tf":1.0}}},"8":{"df":5,"docs":{"38":{"tf":1.7320508075688772},"39":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"61":{"tf":1.7320508075688772}}},"9":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"2":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"40":{"tf":1.0},"71":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.4142135623730951},"17":{"tf":1.7320508075688772},"20":{"tf":1.0},"35":{"tf":1.0},"49":{"tf":1.0},"52":{"tf":1.0},"69":{"tf":1.4142135623730951}}},"3":{"0":{"df":8,"docs":{"1":{"tf":1.0},"35":{"tf":1.4142135623730951},"39":{"tf":1.0},"41":{"tf":1.0},"48":{"tf":1.0},"62":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}},"1":{"df":1,"docs":{"60":{"tf":1.0}}},"2":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"39":{"tf":1.0}}},"4":{"df":2,"docs":{"17":{"tf":1.0},"60":{"tf":1.0}}},"5":{"df":2,"docs":{"65":{"tf":1.4142135623730951},"66":{"tf":1.4142135623730951}}},"6":{"df":2,"docs":{"64":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}},"7":{"df":2,"docs":{"67":{"tf":2.23606797749979},"68":{"tf":1.0}}},"8":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"67":{"tf":1.0}}},"2":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"65":{"tf":1.0},"68":{"tf":1.7320508075688772}}},"9":{"df":4,"docs":{"58":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"69":{"tf":1.0}}},"df":7,"docs":{"10":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"32":{"tf":1.4142135623730951},"38":{"tf":1.0},"49":{"tf":1.0},"61":{"tf":1.0}}},"4":{"0":{"df":4,"docs":{"20":{"tf":1.0},"29":{"tf":1.0},"68":{"tf":1.0},"7":{"tf":1.0}}},"1":{"df":4,"docs":{"11":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.4142135623730951},"45":{"tf":1.0}}},"2":{"df":2,"docs":{"33":{"tf":1.0},"51":{"tf":1.0}}},"df":3,"docs":{"11":{"tf":1.0},"17":{"tf":1.0},"9":{"tf":1.0}}},"5":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.4142135623730951},"23":{"tf":1.0}}},"6":{"df":1,"docs":{"11":{"tf":1.0}}},"7":{"df":2,"docs":{"10":{"tf":1.0},"35":{"tf":1.0}}},"8":{"df":2,"docs":{"45":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"9":{"df":7,"docs":{"23":{"tf":1.7320508075688772},"26":{"tf":1.0},"38":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"49":{"tf":1.4142135623730951},"65":{"tf":1.0}}},"df":42,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"12":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":1.0},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"51":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0},"62":{"tf":1.0},"64":{"tf":1.0},"65":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"r":{"df":1,"docs":{"26":{"tf":1.4142135623730951}},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"j":{"a":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"66":{"tf":2.0},"67":{"tf":1.0}},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"17":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"72":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"12":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"48":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":16,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":2.0},"10":{"tf":1.4142135623730951},"11":{"tf":1.4142135623730951},"17":{"tf":1.7320508075688772},"19":{"tf":1.0},"32":{"tf":2.8284271247461903},"33":{"tf":1.0},"39":{"tf":2.0},"58":{"tf":4.69041575982343},"59":{"tf":5.291502622129181},"60":{"tf":5.385164807134504},"61":{"tf":4.47213595499958},"62":{"tf":5.744562646538029},"66":{"tf":2.23606797749979},"68":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"写":{"df":0,"docs":{},"于":{"2":{"0":{"1":{"3":{"df":1,"docs":{"35":{"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":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}},"v":{"df":1,"docs":{"62":{"tf":2.0}}}},"h":{"df":2,"docs":{"1":{"tf":1.0},"40":{"tf":2.6457513110645907}},"s":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"“":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"22":{"tf":1.4142135623730951},"72":{"tf":1.4142135623730951}}}}},"k":{"(":{"df":0,"docs":{},"m":{"df":1,"docs":{"68":{"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":{},"m":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"20":{"tf":1.0},"65":{"tf":1.0}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"{":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"n":{"d":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"f":{"1":{"df":1,"docs":{"21":{"tf":1.0}}},"2":{"df":1,"docs":{"21":{"tf":1.0}}},"3":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}}},"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":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"41":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951}}}}}},"a":{"df":0,"docs":{},"n":{"d":{"a":{"d":{"d":{"(":{"\"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}},"2":{"2":{"df":1,"docs":{"41":{"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":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"\"":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.7320508075688772}}}},"df":2,"docs":{"41":{"tf":2.0},"46":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}}},"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":1,"docs":{"46":{"tf":1.0}}}},"df":1,"docs":{"46":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"38":{"tf":1.0}}},"w":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"33":{"tf":2.449489742783178}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}},"u":{"d":{"df":1,"docs":{"62":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"62":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}},"df":0,"docs":{}}}},"s":{"b":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"38":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"46":{"tf":1.0}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}},"m":{"1":{"df":1,"docs":{"18":{"tf":1.0}}},"2":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"60":{"tf":1.0}},"e":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":3,"docs":{"29":{"tf":1.0},"35":{"tf":2.8284271247461903},"66":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":1.7320508075688772}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":1,"docs":{"32":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"\"":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":1,"docs":{"30":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":1,"docs":{"30":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":2.0}}}}}}}},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{")":{".":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"25":{"tf":1.4142135623730951},"40":{"tf":2.8284271247461903}},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"里":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"函":{"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":{},"r":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}}}}}}}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"32":{"tf":1.0},"33":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"[":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":0,"docs":{},"v":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"的":{"df":0,"docs":{},"大":{"df":0,"docs":{},"小":{"df":0,"docs":{},"为":{"7":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":3,"docs":{"1":{"tf":1.7320508075688772},"18":{"tf":2.23606797749979},"40":{"tf":2.0}}}}}},"x":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":2.449489742783178}}}},"df":0,"docs":{}}}},"df":3,"docs":{"17":{"tf":1.7320508075688772},"29":{"tf":2.0},"68":{"tf":2.449489742783178}},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"36":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"17":{"tf":1.0},"69":{"tf":1.0}}}}}},"t":{"a":{"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":{"22":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"f":{"1":{"df":1,"docs":{"25":{"tf":2.23606797749979}}},"2":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"25":{"tf":2.23606797749979}}},"4":{"df":1,"docs":{"25":{"tf":2.23606797749979}},"在":{"b":{"a":{"df":0,"docs":{},"s":{"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":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"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":{"15":{"tf":1.4142135623730951}}}}}}}}},"d":{"df":1,"docs":{"28":{"tf":1.7320508075688772}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{},"p":{"1":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":2.0}},"s":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"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":{},"为":{"df":0,"docs":{},"编":{"df":0,"docs":{},"译":{"df":0,"docs":{},"器":{"df":0,"docs":{},"直":{"df":0,"docs":{},"接":{"df":0,"docs":{},"将":{"df":0,"docs":{},"值":{"2":{"8":{"df":0,"docs":{},"代":{"df":0,"docs":{},"替":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"24":{"tf":1.0}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"59":{"tf":1.0}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"19":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":8,"docs":{"19":{"tf":1.4142135623730951},"29":{"tf":1.0},"32":{"tf":1.4142135623730951},"36":{"tf":1.0},"37":{"tf":1.7320508075688772},"50":{"tf":1.0},"60":{"tf":1.0},"71":{"tf":1.4142135623730951}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}},"直":{"df":0,"docs":{},"接":{"df":0,"docs":{},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"41":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"29":{"tf":3.3166247903554},"60":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":2,"docs":{"21":{"tf":1.4142135623730951},"63":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"21":{"tf":2.449489742783178}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":2.0}}}}}}},"y":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":2.23606797749979}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"22":{"tf":2.23606797749979}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":1,"docs":{"22":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"11":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"2":{"df":1,"docs":{"11":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"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":{},"为":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"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":{},"都":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"n":{"+":{"1":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"b":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":3,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"47":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"&":{">":{"(":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":3,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.0}}},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":9,"docs":{"10":{"tf":1.7320508075688772},"36":{"tf":2.0},"40":{"tf":2.6457513110645907},"41":{"tf":2.23606797749979},"45":{"tf":1.0},"46":{"tf":2.449489742783178},"47":{"tf":1.0},"71":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.0}},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"41":{"tf":1.0},"46":{"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":{}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"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":{}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"71":{"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":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"a":{"c":{"df":3,"docs":{"18":{"tf":1.0},"62":{"tf":3.3166247903554},"65":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"是":{"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":{},"被":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"20":{"tf":1.0},"27":{"tf":1.0}}}}}}},"df":11,"docs":{"10":{"tf":1.0},"15":{"tf":2.449489742783178},"18":{"tf":1.0},"27":{"tf":1.7320508075688772},"28":{"tf":1.4142135623730951},"40":{"tf":1.7320508075688772},"41":{"tf":2.0},"45":{"tf":1.0},"47":{"tf":2.23606797749979},"48":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}}},"w":{"df":4,"docs":{"1":{"tf":1.0},"33":{"tf":1.4142135623730951},"35":{"tf":2.449489742783178},"72":{"tf":1.4142135623730951}},"i":{"df":1,"docs":{"28":{"tf":2.0}}},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"40":{"tf":2.449489742783178},"71":{"tf":3.0}},"e":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"w":{"d":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":1,"docs":{"71":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"x":{"df":1,"docs":{"28":{"tf":2.0}}},"出":{"df":0,"docs":{},"来":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"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":{},"r":{"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}}}}}},"h":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"p":{"(":{"*":{"a":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":6,"docs":{"23":{"tf":2.0},"27":{"tf":3.0},"28":{"tf":3.4641016151377544},"29":{"tf":1.4142135623730951},"64":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"较":{"df":0,"docs":{},"之":{"df":0,"docs":{},"于":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"1":{"4":{"df":1,"docs":{"64":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"n":{"df":9,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"38":{"tf":1.0},"41":{"tf":1.0},"59":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"z":{"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":{},"x":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"v":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":4,"docs":{"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":3,"docs":{"21":{"tf":1.7320508075688772},"34":{"tf":1.0},"72":{"tf":2.0}},"给":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"而":{"df":0,"docs":{},"非":{"0":{"df":0,"docs":{},"和":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"移":{"df":0,"docs":{},"动":{"df":0,"docs":{},"进":{"df":0,"docs":{},"w":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":2.449489742783178}}}}}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":2,"docs":{"24":{"tf":1.0},"68":{"tf":1.0}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{")":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{},"函":{"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":1,"docs":{"61":{"tf":1.0}}}}}}}}}}},"成":{"df":0,"docs":{},"员":{"df":0,"docs":{},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"60":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"+":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"=":{"(":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"30":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"24":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.0},"36":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"[":{"]":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"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":{}},"df":0,"docs":{}}}}},"df":6,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"35":{"tf":1.0},"36":{"tf":1.0},"50":{"tf":1.0},"60":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"40":{"tf":1.4142135623730951},"50":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"24":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":3,"docs":{"25":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"25":{"tf":4.0}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"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":2,"docs":{"32":{"tf":1.4142135623730951},"33":{"tf":1.4142135623730951}}}}}}}}}}},"p":{"(":{"\"":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"i":{"df":2,"docs":{"41":{"tf":1.0},"47":{"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":0,"docs":{},"p":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"\"":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"48":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},".":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"71":{"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":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"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":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"68":{"tf":2.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"1":{"(":{"9":{".":{"4":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"17":{"tf":2.449489742783178},"28":{"tf":1.0}}},"2":{"(":{"2":{"8":{".":{"8":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"17":{"tf":2.449489742783178},"28":{"tf":1.7320508075688772}}},"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":21,"docs":{"1":{"tf":1.0},"10":{"tf":2.23606797749979},"15":{"tf":3.4641016151377544},"20":{"tf":1.4142135623730951},"32":{"tf":2.0},"33":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.7320508075688772},"39":{"tf":4.0},"4":{"tf":1.7320508075688772},"49":{"tf":3.605551275463989},"5":{"tf":2.23606797749979},"51":{"tf":1.4142135623730951},"55":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951},"7":{"tf":2.0},"8":{"tf":2.0},"9":{"tf":2.0}},"e":{"df":0,"docs":{},"t":{"df":5,"docs":{"1":{"tf":1.0},"39":{"tf":1.7320508075688772},"48":{"tf":1.0},"61":{"tf":1.0},"71":{"tf":1.0}}}},"s":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":4,"docs":{"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}},"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":{},"时":{"df":0,"docs":{},"":{"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":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"7":{"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":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"到":{"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":1,"docs":{"38":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"和":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"现":{"df":0,"docs":{},"在":{"df":0,"docs":{},"是":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}},"的":{"df":0,"docs":{},"实":{"df":0,"docs":{},"参":{"df":0,"docs":{},"是":{"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"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":1,"docs":{"49":{"tf":1.0}}}}}}}}}}}}}}}}},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"x":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"也":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"就":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{},"s":{"df":1,"docs":{"20":{"tf":1.0}}},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"71":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"66":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"33":{"tf":1.0}}}}}}}},"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":8,"docs":{"17":{"tf":1.7320508075688772},"27":{"tf":1.0},"28":{"tf":1.4142135623730951},"29":{"tf":1.0},"40":{"tf":1.4142135623730951},"68":{"tf":1.7320508075688772},"71":{"tf":1.7320508075688772},"8":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"37":{"tf":1.4142135623730951},"51":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"v":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"&":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"是":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"47":{"tf":1.0}}}}},"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":2.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"41":{"tf":1.7320508075688772},"45":{"tf":1.0},"47":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}}}}}}},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"45":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":2.23606797749979},"48":{"tf":1.0}}}},"df":4,"docs":{"41":{"tf":3.3166247903554},"45":{"tf":1.0},"47":{"tf":3.0},"48":{"tf":1.7320508075688772}},"也":{"df":0,"docs":{},"是":{"df":0,"docs":{},"跟":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.0}}}}}}}}}}},"和":{"df":0,"docs":{},"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":{},"所":{"df":0,"docs":{},"有":{"df":0,"docs":{},"引":{"df":0,"docs":{},"用":{"df":0,"docs":{},"和":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}},"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"a":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}},"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":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.0}}}}}},")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":1.0}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"36":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{">":{"(":{"*":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"36":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"32":{"tf":1.0},"36":{"tf":3.3166247903554}}}}},"n":{"df":0,"docs":{},"v":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"32":{"tf":1.4142135623730951}}}}}}}}}},".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"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":1,"docs":{"32":{"tf":2.449489742783178}}}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"32":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":3.3166247903554}}}}}}}},"k":{"6":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}}}}},"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":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}}}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.0},"28":{"tf":3.7416573867739413},"29":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"1":{"tf":1.7320508075688772},"19":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"36":{"tf":1.0},"7":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"的":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}}}},"df":1,"docs":{"29":{"tf":2.0}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"64":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},"w":{"(":{"3":{"df":1,"docs":{"28":{"tf":1.0}}},"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.7320508075688772}}}}}},"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":9,"docs":{"17":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"35":{"tf":1.0},"62":{"tf":1.0},"64":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"50":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{">":{"(":{"c":{"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":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"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":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"35":{"tf":1.4142135623730951},"55":{"tf":1.0}}}}}}},"v":{"a":{"df":0,"docs":{},"t":{"df":19,"docs":{"20":{"tf":1.0},"22":{"tf":1.7320508075688772},"24":{"tf":2.0},"25":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":2.23606797749979},"30":{"tf":1.4142135623730951},"33":{"tf":1.4142135623730951},"36":{"tf":2.8284271247461903},"38":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"45":{"tf":1.0},"47":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"71":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"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":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"33":{"tf":1.7320508075688772},"38":{"tf":1.0},"55":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"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":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}},"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":{},"t":{"df":1,"docs":{"24":{"tf":1.7320508075688772}}}},"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{">":{"(":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{">":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.0}}}}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":1.0}}}}}},"df":1,"docs":{"55":{"tf":1.7320508075688772}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"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":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"35":{"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":{}},"w":{"df":1,"docs":{"71":{"tf":1.0}}}},"w":{",":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}}}}}},"df":1,"docs":{"18":{"tf":1.4142135623730951}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"18":{"tf":1.0},"35":{"tf":1.4142135623730951}},"时":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"了":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"而":{"df":0,"docs":{},"不":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"看":{"df":0,"docs":{},"到":{"df":0,"docs":{},"的":{"df":0,"docs":{},"是":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.0}}}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":1.0}}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"i":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}}}}},"t":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}},"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"r":{",":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":7,"docs":{"21":{"tf":1.4142135623730951},"24":{"tf":1.7320508075688772},"35":{"tf":1.0},"60":{"tf":1.0},"7":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"72":{"tf":1.0}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"72":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"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":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"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":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"{":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"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":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"21":{"tf":2.0}}}}}}},"获":{"df":0,"docs":{},"取":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"":{"2":{"0":{"1":{"2":{"df":0,"docs":{},"":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":29,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":2.449489742783178},"24":{"tf":2.6457513110645907},"25":{"tf":3.872983346207417},"28":{"tf":1.4142135623730951},"29":{"tf":2.6457513110645907},"30":{"tf":2.23606797749979},"32":{"tf":2.0},"33":{"tf":2.23606797749979},"36":{"tf":2.8284271247461903},"38":{"tf":2.449489742783178},"39":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":2.449489742783178},"45":{"tf":1.0},"47":{"tf":2.6457513110645907},"48":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"61":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"71":{"tf":3.4641016151377544},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":2,"docs":{"39":{"tf":1.0},"72":{"tf":1.0}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"66":{"tf":1.0},"72":{"tf":1.0}},"通":{"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":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"。":{"df":0,"docs":{},"在":{"df":0,"docs":{},"存":{"df":0,"docs":{},"储":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"w":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"1":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":1,"docs":{"33":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":1,"docs":{"33":{"tf":1.0}}},"]":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":6,"docs":{"21":{"tf":1.0},"33":{"tf":2.8284271247461903},"35":{"tf":1.0},"59":{"tf":1.4142135623730951},"60":{"tf":4.358898943540674},"62":{"tf":1.0}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}},"x":{"df":1,"docs":{"5":{"tf":1.0}},"是":{"df":0,"docs":{},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"作":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"新":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}}}},"的":{"df":0,"docs":{},"那":{"df":0,"docs":{},"个":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.4142135623730951},"47":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"o":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"r":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}}},"1":{"df":1,"docs":{"72":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":2,"docs":{"66":{"tf":2.449489742783178},"68":{"tf":1.0}}}},"w":{"df":1,"docs":{"1":{"tf":1.0}}}},"c":{"df":0,"docs":{},"变":{"df":0,"docs":{},"为":{"0":{"df":0,"docs":{},"":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"10":{"tf":1.0},"72":{"tf":1.4142135623730951}},"e":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":2.23606797749979}}}},"d":{"df":1,"docs":{"69":{"tf":1.0}},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"d":{"b":{"(":{"\"":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"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":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"32":{"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":1,"docs":{"32":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"y":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"就":{"df":0,"docs":{},"像":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"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":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.0}}}}},"d":{"df":3,"docs":{"1":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":2.8284271247461903}},"u":{"c":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"d":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":17,"docs":{"1":{"tf":1.0},"11":{"tf":1.7320508075688772},"15":{"tf":1.0},"18":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"33":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.7320508075688772},"39":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"60":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"72":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}}}}},"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":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.7320508075688772}}}}}}}}}},"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":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"69":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":3,"docs":{"22":{"tf":1.0},"38":{"tf":1.4142135623730951},"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":3,"docs":{"32":{"tf":1.0},"33":{"tf":1.0},"66":{"tf":1.0}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"28":{"tf":1.0}}},"x":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"1":{"df":1,"docs":{"21":{"tf":1.0}}},"2":{"df":1,"docs":{"21":{"tf":1.0}}},"3":{"df":1,"docs":{"21":{"tf":1.0}}},"df":2,"docs":{"21":{"tf":2.8284271247461903},"28":{"tf":2.449489742783178}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"27":{"tf":1.7320508075688772}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":26,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.6457513110645907},"17":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"23":{"tf":1.7320508075688772},"25":{"tf":1.7320508075688772},"26":{"tf":1.0},"28":{"tf":2.449489742783178},"29":{"tf":3.0},"32":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0},"38":{"tf":1.4142135623730951},"40":{"tf":3.605551275463989},"49":{"tf":2.6457513110645907},"58":{"tf":1.4142135623730951},"59":{"tf":3.872983346207417},"60":{"tf":2.23606797749979},"61":{"tf":3.0},"62":{"tf":1.7320508075688772},"65":{"tf":1.4142135623730951},"66":{"tf":2.449489742783178},"68":{"tf":1.4142135623730951},"8":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}}}}}}}},"h":{"df":7,"docs":{"1":{"tf":1.7320508075688772},"30":{"tf":2.0},"36":{"tf":3.1622776601683795},"38":{"tf":2.0},"40":{"tf":2.8284271247461903},"41":{"tf":2.449489742783178},"47":{"tf":1.4142135623730951}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}},"df":0,"docs":{},"":{"df":0,"docs":{},"“":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.7320508075688772}},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"29":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"df":1,"docs":{"29":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"29":{"tf":2.8284271247461903}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"29":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"38":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":5,"docs":{"1":{"tf":1.0},"37":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"71":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.7320508075688772}}}}}}}}}}}},"df":0,"docs":{},"o":{"df":1,"docs":{"40":{"tf":1.0}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"这":{"df":0,"docs":{},"在":{"c":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"x":{"=":{"c":{"df":0,"docs":{},"x":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":3,"docs":{"10":{"tf":1.4142135623730951},"49":{"tf":1.0},"5":{"tf":1.0}},"是":{"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"作":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"的":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"引":{"df":0,"docs":{},"用":{"df":0,"docs":{},"性":{"df":0,"docs":{},"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}}}}}},"s":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{">":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"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":{}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"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":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}},"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":2,"docs":{"1":{"tf":1.0},"29":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}},"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"27":{"tf":1.0},"38":{"tf":1.0},"62":{"tf":3.0}},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"s":{"(":{"3":{"0":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"19":{"tf":1.0},"37":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"69":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.7320508075688772}}}}}},"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":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"3":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":1,"docs":{"62":{"tf":2.8284271247461903}}}}},"df":0,"docs":{}}},"df":1,"docs":{"33":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"40":{"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":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"a":{"df":1,"docs":{"40":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":1,"docs":{"71":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"b":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"62":{"tf":2.23606797749979}}},"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"62":{"tf":2.0}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"28":{"tf":1.0},"71":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}},"x":{"(":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"(":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"f":{".":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"68":{"tf":1.0}},"的":{"df":0,"docs":{},"局":{"df":0,"docs":{},"部":{"df":0,"docs":{},"副":{"df":0,"docs":{},"本":{"df":0,"docs":{},"上":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"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":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"68":{"tf":1.0}}},"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":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":2,"docs":{"33":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"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":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{".":{"a":{"d":{"d":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"56":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"62":{"tf":1.0}}}}},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":1,"docs":{"18":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"50":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"19":{"tf":1.0},"31":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"68":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"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":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"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":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"1":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"10":{"tf":1.7320508075688772},"9":{"tf":1.0}},"的":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"中":{"df":0,"docs":{},"":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}}},"v":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"62":{"tf":2.6457513110645907}}},"df":0,"docs":{}}}},"p":{"df":1,"docs":{"32":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"30":{"tf":1.0},"36":{"tf":1.0},"69":{"tf":1.0}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":2,"docs":{"25":{"tf":1.0},"27":{"tf":1.0}},"i":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":1,"docs":{"68":{"tf":1.0}}}}}}},"v":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}},"w":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":3,"docs":{"33":{"tf":1.0},"35":{"tf":1.7320508075688772},"72":{"tf":1.4142135623730951}}}}}},"1":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":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.0}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":1,"docs":{"34":{"tf":1.0}},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"3":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":4,"docs":{"21":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.7320508075688772},"72":{"tf":1.0}},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"之":{"df":0,"docs":{},"后":{"df":0,"docs":{},"":{"df":0,"docs":{},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":1,"docs":{"71":{"tf":1.0}}}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"67":{"tf":1.0}}},"i":{"c":{"_":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"48":{"tf":1.0}}}}}}}},"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{">":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"w":{")":{"[":{"5":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{">":{"(":{"c":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{">":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{"(":{"d":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{">":{"(":{"df":0,"docs":{},"m":{"1":{"df":1,"docs":{"18":{"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":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"1":{"6":{"_":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"e":{">":{">":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"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":{}}},"t":{"&":{"&":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"49":{"tf":1.4142135623730951},"61":{"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":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{"&":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"49":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"49":{"tf":1.4142135623730951},"61":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"33":{"tf":1.0},"34":{"tf":1.0},"38":{"tf":1.0},"54":{"tf":1.7320508075688772},"59":{"tf":3.0}},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"是":{"df":0,"docs":{},"你":{"df":0,"docs":{},"期":{"df":0,"docs":{},"望":{"df":0,"docs":{},"的":{"df":0,"docs":{},"行":{"df":0,"docs":{},"为":{"df":0,"docs":{},"":{"df":0,"docs":{},"":{"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":{"1":{"df":1,"docs":{"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":{},"值":{"df":0,"docs":{},"运":{"df":0,"docs":{},"算":{"df":0,"docs":{},"符":{"df":0,"docs":{},"根":{"df":0,"docs":{},"据":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"30":{"tf":1.0}}}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"23":{"tf":2.8284271247461903}}}}},"d":{":":{":":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"<":{".":{".":{".":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"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":{"d":{":":{":":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"_":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"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":{"d":{"d":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{">":{":":{":":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"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":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{},"r":{"a":{"df":0,"docs":{},"y":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"28":{"tf":2.0},"8":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"50":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"没":{"df":0,"docs":{},"有":{"df":0,"docs":{},"这":{"df":0,"docs":{},"种":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"实":{"df":0,"docs":{},"现":{"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":{"d":{":":{":":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"50":{"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":{},"n":{"c":{"(":{"d":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":2.23606797749979}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"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":3,"docs":{"64":{"tf":1.0},"65":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"m":{"df":3,"docs":{"20":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":2.0}},"i":{"c":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"29":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"20":{"tf":1.7320508075688772},"29":{"tf":1.0},"69":{"tf":2.449489742783178}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"":{"df":0,"docs":{},"对":{"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":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"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":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"59":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":2.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"3":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{">":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"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":{}}}},"d":{":":{":":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"62":{"tf":1.7320508075688772}},"s":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"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":{"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":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"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":3,"docs":{"17":{"tf":1.0},"60":{"tf":2.0},"62":{"tf":3.7416573867739413}},"可":{"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":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"解":{"df":0,"docs":{},"决":{"c":{"+":{"+":{"1":{"1":{"df":1,"docs":{"60":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"c":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"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":{"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":{}}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":4,"docs":{"38":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"k":{"c":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":2.449489742783178}}}}}}},"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":0,"docs":{},"v":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"15":{"tf":2.0},"69":{"tf":1.7320508075688772}}}}}},"d":{"df":0,"docs":{},"e":{"c":{"a":{"df":0,"docs":{},"y":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"47":{"tf":1.4142135623730951}},"e":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"47":{"tf":1.0}}}}},"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":{},"t":{">":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"47":{"tf":1.0},"48":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}},"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":{},"i":{"df":0,"docs":{},"f":{"<":{"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":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"47":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"47":{"tf":1.4142135623730951},"48":{"tf":1.0}}}},"df":1,"docs":{"47":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"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":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}}},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"46":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"(":{"c":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"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":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"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":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"c":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"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":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"会":{"df":0,"docs":{},"出":{"df":0,"docs":{},"现":{"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":{"8":{"df":0,"docs":{},"中":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}},"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":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{">":{"(":{"c":{")":{"[":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"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":1,"docs":{"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":{},"l":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{")":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"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":{},"f":{">":{"(":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{">":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":5,"docs":{"11":{"tf":1.0},"38":{"tf":1.0},"40":{"tf":1.7320508075688772},"49":{"tf":1.7320508075688772},"61":{"tf":1.0}},"将":{"df":0,"docs":{},"x":{"df":0,"docs":{},"转":{"df":0,"docs":{},"发":{"df":0,"docs":{},"到":{"df":0,"docs":{},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}}}}}},"的":{"c":{"+":{"+":{"1":{"4":{"df":1,"docs":{"61":{"tf":1.0}}},"df":0,"docs":{}},"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":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"故":{"df":0,"docs":{},"事":{"df":0,"docs":{},"与":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"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":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}},"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":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}},"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":{"59":{"tf":1.0}}},"df":0,"docs":{}}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"2":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{">":{"df":0,"docs":{},"相":{"df":0,"docs":{},"关":{"df":0,"docs":{},"信":{"df":0,"docs":{},"息":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"3":{"9":{"df":1,"docs":{"67":{"tf":1.0}}},"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":{},"u":{"df":0,"docs":{},"s":{":":{":":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"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":{"<":{"1":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"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":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"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":{}},"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":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"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":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{")":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"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":{}}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"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":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}}}},"t":{">":{"df":0,"docs":{},"中":{"df":0,"docs":{},"的":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"20":{"tf":3.0},"35":{"tf":1.0}},"为":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"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":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"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":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"s":{"_":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"47":{"tf":1.7320508075688772},"48":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"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":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"48":{"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":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"47":{"tf":1.0},"48":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"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":1,"docs":{"46":{"tf":1.0}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"s":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"65":{"tf":2.0},"67":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"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":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"22":{"tf":2.23606797749979}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"62":{"tf":1.4142135623730951},"65":{"tf":1.0}}}}}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":3,"docs":{"21":{"tf":1.0},"29":{"tf":1.4142135623730951},"68":{"tf":1.0}}}}}}}},"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":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"33":{"tf":1.0},"35":{"tf":1.7320508075688772}},"e":{"d":{"<":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{">":{"(":{"1":{"0":{"df":1,"docs":{"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}}},"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":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"35":{"tf":1.0}},"e":{"<":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{">":{"(":{"1":{"0":{"df":1,"docs":{"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"59":{"tf":1.0},"60":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"20":{"tf":1.0},"35":{"tf":1.0},"51":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"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":{},"w":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"p":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"30":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"a":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"60":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"h":{"df":1,"docs":{"40":{"tf":1.0}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"w":{"df":1,"docs":{"60":{"tf":1.4142135623730951}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"2":{"df":1,"docs":{"36":{"tf":1.0}}},"df":1,"docs":{"40":{"tf":2.0}}}},"df":3,"docs":{"38":{"tf":1.4142135623730951},"40":{"tf":1.7320508075688772},"71":{"tf":1.0}},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"38":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}}}},"的":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"1":{"df":1,"docs":{"45":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":3,"docs":{"21":{"tf":1.0},"29":{"tf":2.0},"68":{"tf":1.4142135623730951}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}},"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"62":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":2.23606797749979}},"e":{"<":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"68":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.0}}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"72":{"tf":2.449489742783178}},"的":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"22":{"tf":1.4142135623730951},"46":{"tf":1.0}},"e":{">":{"df":0,"docs":{},"是":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"46":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"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":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{".":{".":{")":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"df":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":{"65":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{"d":{":":{":":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{},"e":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"<":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"a":{"df":0,"docs":{},"t":{"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":{"40":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":4,"docs":{"33":{"tf":2.8284271247461903},"34":{"tf":1.4142135623730951},"35":{"tf":2.0},"72":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":5,"docs":{"32":{"tf":1.0},"33":{"tf":2.449489742783178},"34":{"tf":2.0},"35":{"tf":2.0},"36":{"tf":1.0}},"s":{"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}}}}},"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":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"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":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":4,"docs":{"23":{"tf":1.4142135623730951},"38":{"tf":1.0},"54":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"q":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"x":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{">":{"df":0,"docs":{},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"。":{"df":0,"docs":{},"拷":{"df":0,"docs":{},"贝":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"30":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":15,"docs":{"17":{"tf":1.7320508075688772},"22":{"tf":2.23606797749979},"23":{"tf":1.0},"27":{"tf":1.0},"30":{"tf":1.7320508075688772},"36":{"tf":2.0},"38":{"tf":2.23606797749979},"40":{"tf":2.0},"41":{"tf":3.0},"45":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.7320508075688772},"48":{"tf":1.0},"71":{"tf":2.8284271247461903},"72":{"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":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}},"把":{"df":0,"docs":{},"它":{"df":0,"docs":{},"传":{"df":0,"docs":{},"给":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"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":{},"换":{"df":0,"docs":{},"的":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"1":{"df":1,"docs":{"65":{"tf":1.0}}},"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":{"a":{"d":{"(":{"[":{"&":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"64":{"tf":2.0},"66":{"tf":3.3166247903554},"67":{"tf":2.0},"68":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"46":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"3":{"2":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"23":{"tf":1.7320508075688772},"56":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"e":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"23":{"tf":1.4142135623730951}},"e":{">":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"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":{},"t":{"<":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"25":{"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":{"34":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":2.23606797749979}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":2.6457513110645907}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"22":{"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":{}}},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"35":{"tf":1.0}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"17":{"tf":3.3166247903554},"35":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"17":{"tf":1.0},"32":{"tf":2.6457513110645907},"33":{"tf":1.4142135623730951},"34":{"tf":1.0},"36":{"tf":1.7320508075688772},"60":{"tf":1.0}},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{},"化":{"df":0,"docs":{},"为":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"32":{"tf":1.0}}}}}},"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":{"d":{":":{":":{"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":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"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":{},"用":{"df":0,"docs":{},"于":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"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":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{">":{":":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"18":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":4,"docs":{"25":{"tf":1.4142135623730951},"29":{"tf":1.7320508075688772},"36":{"tf":2.0},"60":{"tf":2.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{":":{":":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"和":{"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":{"17":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":8,"docs":{"10":{"tf":1.0},"17":{"tf":1.0},"20":{"tf":2.0},"26":{"tf":1.7320508075688772},"39":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":1.0},"66":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"71":{"tf":1.7320508075688772},"72":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":4,"docs":{"15":{"tf":1.0},"27":{"tf":1.0},"39":{"tf":1.0},"50":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"11":{"tf":1.0},"20":{"tf":1.0},"39":{"tf":1.0}},"的":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"1":{"tf":1.0},"34":{"tf":1.7320508075688772},"35":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":4,"docs":{"18":{"tf":1.0},"38":{"tf":1.0},"49":{"tf":1.0},"61":{"tf":1.0}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":2.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":2,"docs":{"22":{"tf":1.0},"26":{"tf":1.0}}},"o":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"32":{"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":1,"docs":{"32":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"p":{"df":1,"docs":{"39":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"59":{"tf":1.0},"65":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"69":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"38":{"tf":1.0}}}}}},">":{"df":0,"docs":{},"":{"<":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{">":{"df":0,"docs":{},"以":{"df":0,"docs":{},"及":{"df":0,"docs":{},"g":{"a":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":3,"docs":{"36":{"tf":2.23606797749979},"38":{"tf":1.4142135623730951},"50":{"tf":1.0}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"30":{"tf":2.6457513110645907}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"11":{"tf":1.0},"22":{"tf":1.0},"27":{"tf":1.0},"36":{"tf":3.4641016151377544},"56":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"1":{"df":1,"docs":{"20":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"x":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"20":{"tf":1.0}}},"df":1,"docs":{"18":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}},"w":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"71":{"tf":1.0}}},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}},"z":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"28":{"tf":2.449489742783178},"56":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"又":{"df":0,"docs":{},"作":{"df":0,"docs":{},"为":{"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":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"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":{},"第":{"5":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}},"t":{"&":{"/":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{},"和":{"df":0,"docs":{},"t":{"&":{"&":{"df":0,"docs":{},"中":{"df":0,"docs":{},"产":{"df":0,"docs":{},"出":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"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":1,"docs":{"66":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"35":{"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":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}},"t":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"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":1,"docs":{"66":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{")":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"66":{"tf":1.7320508075688772},"68":{"tf":1.4142135623730951}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"1":{"df":1,"docs":{"27":{"tf":1.0}}},"2":{"df":1,"docs":{"27":{"tf":1.0}}},">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"47":{"tf":1.0},"48":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"46":{"tf":2.0},"47":{"tf":2.0},"48":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"26":{"tf":1.7320508075688772}}}}}}},"s":{"df":0,"docs":{},"k":{"df":3,"docs":{"63":{"tf":1.0},"64":{"tf":1.7320508075688772},"68":{"tf":1.4142135623730951}},"是":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{}},"没":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"":{"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":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"有":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"d":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}}}},"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}},"x":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}}},"df":1,"docs":{"14":{"tf":1.7320508075688772}}},"df":35,"docs":{"10":{"tf":3.0},"11":{"tf":1.4142135623730951},"14":{"tf":1.0},"15":{"tf":3.7416573867739413},"20":{"tf":2.0},"22":{"tf":3.605551275463989},"24":{"tf":1.7320508075688772},"27":{"tf":1.4142135623730951},"30":{"tf":2.0},"35":{"tf":1.4142135623730951},"38":{"tf":1.7320508075688772},"39":{"tf":3.1622776601683795},"4":{"tf":2.23606797749979},"40":{"tf":2.449489742783178},"41":{"tf":2.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":2.0},"47":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":3.0},"5":{"tf":2.0},"51":{"tf":1.0},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"61":{"tf":2.0},"62":{"tf":2.23606797749979},"66":{"tf":3.1622776601683795},"67":{"tf":1.0},"68":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"72":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772},"9":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"18":{"tf":1.0}},"l":{"a":{"df":0,"docs":{},"t":{"df":13,"docs":{"1":{"tf":2.0},"18":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":2.449489742783178},"24":{"tf":2.8284271247461903},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"33":{"tf":1.0},"39":{"tf":1.7320508075688772},"4":{"tf":1.0},"47":{"tf":2.0},"48":{"tf":1.0},"72":{"tf":1.0}},"e":{"<":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"18":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":36,"docs":{"1":{"tf":1.0},"10":{"tf":2.449489742783178},"11":{"tf":2.8284271247461903},"14":{"tf":1.0},"15":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"20":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":2.23606797749979},"23":{"tf":1.7320508075688772},"24":{"tf":1.7320508075688772},"26":{"tf":1.0},"30":{"tf":1.4142135623730951},"32":{"tf":2.23606797749979},"33":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.7320508075688772},"39":{"tf":2.23606797749979},"4":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":1.7320508075688772},"46":{"tf":2.0},"47":{"tf":1.0},"49":{"tf":2.449489742783178},"5":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"55":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"62":{"tf":1.0},"65":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":2.0}}}}}}}}}},"x":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},".":{"c":{"a":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"38":{"tf":1.7320508075688772},"40":{"tf":1.7320508075688772},"71":{"tf":2.8284271247461903}},"到":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"38":{"tf":1.0}}}}},"df":0,"docs":{}}},"通":{"df":0,"docs":{},"过":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"被":{"df":0,"docs":{},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"h":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"13":{"tf":1.7320508075688772}}}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"。":{"df":0,"docs":{},"每":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"1":{"df":0,"docs":{},"将":{"df":0,"docs":{},"读":{"df":0,"docs":{},"到":{"df":0,"docs":{},"的":{"0":{"df":0,"docs":{},"加":{"1":{"df":0,"docs":{},"":{"df":0,"docs":{},"然":{"df":0,"docs":{},"后":{"df":0,"docs":{},"写":{"df":0,"docs":{},"回":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"c":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"读":{"df":0,"docs":{},"取":{"df":0,"docs":{},"v":{"c":{"df":0,"docs":{},"的":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"是":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"2":{"df":0,"docs":{},"将":{"df":0,"docs":{},"读":{"df":0,"docs":{},"到":{"df":0,"docs":{},"的":{"0":{"df":0,"docs":{},"加":{"1":{"df":0,"docs":{},"":{"df":0,"docs":{},"然":{"df":0,"docs":{},"后":{"df":0,"docs":{},"写":{"df":0,"docs":{},"回":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"c":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"读":{"df":0,"docs":{},"取":{"df":0,"docs":{},"v":{"c":{"df":0,"docs":{},"的":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}},"df":8,"docs":{"29":{"tf":1.7320508075688772},"63":{"tf":1.0},"64":{"tf":2.0},"65":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.4142135623730951}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},":":{":":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{":":{":":{"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"66":{"tf":1.0},"68":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"66":{"tf":2.449489742783178},"68":{"tf":1.4142135623730951}},"的":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.0}}}}}}},"、":{"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":1,"docs":{"64":{"tf":1.0}}}}}}}}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"也":{"df":0,"docs":{},"被":{"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":1,"docs":{"64":{"tf":1.0}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.7320508075688772}}}},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"28":{"tf":1.0},"39":{"tf":1.0},"62":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}}}},"l":{"df":1,"docs":{"65":{"tf":1.0}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"1":{"6":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":1,"docs":{"23":{"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":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":10,"docs":{"22":{"tf":2.23606797749979},"23":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"38":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.7320508075688772},"48":{"tf":1.0},"49":{"tf":1.0},"65":{"tf":1.4142135623730951}}}}},"df":1,"docs":{"68":{"tf":1.7320508075688772}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":6,"docs":{"20":{"tf":2.6457513110645907},"24":{"tf":1.0},"29":{"tf":2.23606797749979},"66":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"69":{"tf":1.7320508075688772}}}}},"s":{"df":7,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.0},"32":{"tf":2.23606797749979},"33":{"tf":1.0},"35":{"tf":1.0},"51":{"tf":1.0},"65":{"tf":2.0}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"70":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"r":{"<":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{")":{">":{"(":{")":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"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":{},"f":{"df":3,"docs":{"22":{"tf":3.0},"26":{"tf":2.23606797749979},"49":{"tf":2.0}}}}},"df":21,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":2.0},"17":{"tf":1.4142135623730951},"18":{"tf":2.0},"22":{"tf":3.3166247903554},"23":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"29":{"tf":1.0},"3":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":1.0},"65":{"tf":1.4142135623730951},"71":{"tf":1.0}},"i":{"d":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":14,"docs":{"11":{"tf":2.6457513110645907},"17":{"tf":1.4142135623730951},"20":{"tf":1.0},"21":{"tf":2.0},"22":{"tf":2.449489742783178},"23":{"tf":1.4142135623730951},"26":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.4142135623730951},"39":{"tf":1.4142135623730951},"47":{"tf":3.872983346207417},"48":{"tf":1.4142135623730951},"59":{"tf":1.0},"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"上":{"df":0,"docs":{},"运":{"df":0,"docs":{},"行":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"67":{"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":{"7":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"中":{"df":0,"docs":{},"产":{"df":0,"docs":{},"出":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"和":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"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":{},"t":{"df":1,"docs":{"7":{"tf":1.7320508075688772}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"在":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"实":{"df":0,"docs":{},"行":{"a":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}}},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"48":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{"&":{"df":0,"docs":{},"时":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"61":{"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":{},"t":{"d":{":":{":":{"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":{"61":{"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":1,"docs":{"22":{"tf":1.0}}}}}}},"直":{"df":0,"docs":{},"到":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}},"类":{"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":{},"r":{"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":{},"t":{"&":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"":{"df":0,"docs":{},"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":{},"t":{"df":1,"docs":{"49":{"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":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"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":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}},"":{"df":0,"docs":{},"因":{"df":0,"docs":{},"此":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"s":{"df":0,"docs":{},"声":{"df":0,"docs":{},"音":{"df":0,"docs":{},"响":{"df":0,"docs":{},"铃":{"df":0,"docs":{},"时":{"df":0,"docs":{},"长":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":2.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"14":{"tf":1.4142135623730951},"24":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":6,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"30":{"tf":1.0},"38":{"tf":1.0},"4":{"tf":1.0},"49":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"10":{"tf":1.0},"20":{"tf":1.0}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":4,"docs":{"39":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}}}}}},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}}}},"s":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"p":{"b":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{"(":{"\"":{"[":{"a":{"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":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"v":{"df":1,"docs":{"35":{"tf":1.0}}},"w":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"33":{"tf":1.0},"35":{"tf":1.0}}}}}},"1":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"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":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"1":{"df":1,"docs":{"10":{"tf":1.0}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}},"2":{"df":1,"docs":{"10":{"tf":1.0}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"3":{"df":1,"docs":{"10":{"tf":1.0}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"s":{"df":27,"docs":{"14":{"tf":1.4142135623730951},"15":{"tf":1.7320508075688772},"18":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.6457513110645907},"23":{"tf":1.0},"25":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":2.0},"32":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0},"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"48":{"tf":1.0},"50":{"tf":1.0},"55":{"tf":1.0},"59":{"tf":2.23606797749979},"60":{"tf":1.4142135623730951},"61":{"tf":1.0},"62":{"tf":3.7416573867739413},"65":{"tf":1.0},"69":{"tf":1.0},"72":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":2.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"”":{"df":0,"docs":{},"参":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"9":{"df":1,"docs":{"59":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"9":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"v":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}},"1":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"df":0,"docs":{},"{":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"[":{"0":{"df":1,"docs":{"11":{"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":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"i":{"df":1,"docs":{"69":{"tf":1.4142135623730951}}},"l":{"1":{"df":1,"docs":{"29":{"tf":2.449489742783178}}},"2":{"df":1,"docs":{"29":{"tf":2.449489742783178}}},"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"为":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":4,"docs":{"23":{"tf":2.0},"54":{"tf":1.0},"58":{"tf":1.7320508075688772},"62":{"tf":2.449489742783178}},"i":{"d":{"df":1,"docs":{"60":{"tf":1.0}}},"df":0,"docs":{}},"s":{"1":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}}}}}},"u":{"df":10,"docs":{"25":{"tf":2.0},"26":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951},"38":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.7320508075688772},"55":{"tf":1.4142135623730951},"59":{"tf":5.477225575051661},"7":{"tf":1.0},"71":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{">":{"(":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"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":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"69":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"1":{"df":1,"docs":{"39":{"tf":2.23606797749979}}},"2":{"df":1,"docs":{"39":{"tf":1.7320508075688772}}},"df":0,"docs":{},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"63":{"tf":1.0},"68":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"67":{"tf":1.0}}}}},"c":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":1.4142135623730951}},"的":{"df":0,"docs":{},"最":{"df":0,"docs":{},"后":{"df":0,"docs":{},"结":{"df":0,"docs":{},"果":{"df":0,"docs":{},"是":{"1":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":8,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"17":{"tf":1.0},"20":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772},"39":{"tf":1.4142135623730951},"52":{"tf":1.0},"62":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":5,"docs":{"11":{"tf":1.0},"26":{"tf":1.4142135623730951},"36":{"tf":1.7320508075688772},"39":{"tf":1.4142135623730951},"72":{"tf":1.0}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{":":{"4":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"x":{"df":1,"docs":{"20":{"tf":1.0}}}},"i":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":2.23606797749979}},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"12":{"tf":1.0},"68":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":4.69041575982343},"30":{"tf":1.7320508075688772},"32":{"tf":1.0}}}},"df":0,"docs":{}}}},"为":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"到":{"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"2":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"d":{"(":{"&":{")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"*":{")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"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":{"24":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},">":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":40,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":2.6457513110645907},"15":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"20":{"tf":1.0},"21":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"23":{"tf":1.0},"24":{"tf":3.1622776601683795},"25":{"tf":5.196152422706632},"26":{"tf":1.0},"27":{"tf":2.449489742783178},"28":{"tf":2.0},"32":{"tf":1.4142135623730951},"33":{"tf":2.23606797749979},"35":{"tf":1.7320508075688772},"37":{"tf":1.0},"38":{"tf":1.7320508075688772},"39":{"tf":3.4641016151377544},"4":{"tf":1.7320508075688772},"40":{"tf":2.23606797749979},"41":{"tf":1.7320508075688772},"46":{"tf":2.23606797749979},"49":{"tf":2.23606797749979},"5":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":1.4142135623730951},"56":{"tf":1.0},"59":{"tf":3.605551275463989},"6":{"tf":1.0},"62":{"tf":1.7320508075688772},"65":{"tf":1.0},"68":{"tf":2.449489742783178},"7":{"tf":1.4142135623730951},"71":{"tf":3.7416573867739413},"72":{"tf":1.7320508075688772},"8":{"tf":2.0},"9":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"69":{"tf":3.0},"9":{"tf":1.0}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"\"":{"df":0,"docs":{},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}}},"5":{"0":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"o":{"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":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"\"":{"df":0,"docs":{},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"o":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"\"":{"df":0,"docs":{},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"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":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"72":{"tf":1.7320508075688772}}},"t":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"[":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":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":{"68":{"tf":1.4142135623730951}}},"w":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"1":{"df":1,"docs":{"50":{"tf":1.0}}},"df":2,"docs":{"15":{"tf":2.0},"27":{"tf":1.0}}},"初":{"df":0,"docs":{},"始":{"df":0,"docs":{},"内":{"df":0,"docs":{},"容":{"df":0,"docs":{},"为":{"1":{",":{"3":{",":{"5":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"w":{".":{"a":{"d":{"d":{"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":{"71":{"tf":2.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"a":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"a":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{">":{"(":{"\"":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"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":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"1":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"20":{"tf":2.0},"36":{"tf":1.7320508075688772},"49":{"tf":2.0}}},"2":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"36":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":3,"docs":{"20":{"tf":2.0},"36":{"tf":1.0},"49":{"tf":1.7320508075688772}},"{":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"3":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"20":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"20":{"tf":1.0}},"{":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}},"5":{"(":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"20":{"tf":1.0}}},"6":{"df":1,"docs":{"20":{"tf":1.0}},"{":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}}},"7":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"8":{"df":0,"docs":{},"{":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"]":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"或":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"68":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"68":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}}}},"df":13,"docs":{"1":{"tf":1.7320508075688772},"11":{"tf":2.0},"18":{"tf":2.23606797749979},"25":{"tf":2.0},"27":{"tf":1.4142135623730951},"36":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":4.242640687119285},"49":{"tf":2.449489742783178},"62":{"tf":2.23606797749979},"71":{"tf":2.0}},"e":{"a":{"df":0,"docs":{},"k":{"df":3,"docs":{"33":{"tf":1.0},"35":{"tf":2.449489742783178},"69":{"tf":1.0}}}},"df":0,"docs":{}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"28":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"22":{"tf":1.0},"23":{"tf":3.605551275463989}}}}}},"i":{"d":{"df":1,"docs":{"1":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.4142135623730951},"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":3.1622776601683795}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":5,"docs":{"1":{"tf":1.0},"30":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":1,"docs":{"36":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":3.4641016151377544}}}},":":{":":{"a":{"d":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":3.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":2.0}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":3.0}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"=":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"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":1,"docs":{"33":{"tf":1.7320508075688772}},"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":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{">":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"36":{"tf":2.0}}}}}},"df":0,"docs":{}}},"~":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}}},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"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":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}}}},"df":29,"docs":{"1":{"tf":2.449489742783178},"11":{"tf":2.6457513110645907},"15":{"tf":3.0},"17":{"tf":1.0},"18":{"tf":1.7320508075688772},"20":{"tf":5.916079783099616},"22":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"25":{"tf":3.4641016151377544},"27":{"tf":1.0},"29":{"tf":1.7320508075688772},"30":{"tf":3.3166247903554},"33":{"tf":4.123105625617661},"34":{"tf":2.0},"35":{"tf":3.4641016151377544},"36":{"tf":5.830951894845301},"37":{"tf":1.0},"38":{"tf":2.0},"39":{"tf":2.6457513110645907},"40":{"tf":4.242640687119285},"49":{"tf":3.872983346207417},"54":{"tf":1.0},"59":{"tf":1.7320508075688772},"60":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":2.0},"67":{"tf":1.4142135623730951},"71":{"tf":3.872983346207417},"72":{"tf":2.449489742783178}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"49":{"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":{},"":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"的":{"df":0,"docs":{},"原":{"df":0,"docs":{},"始":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"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":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"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":{},"针":{"df":0,"docs":{},"完":{"df":0,"docs":{},"美":{"df":0,"docs":{},"转":{"df":0,"docs":{},"发":{"df":0,"docs":{},"给":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"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":{}}}}}}}}}}}}}}}}},"模":{"df":0,"docs":{},"板":{"df":0,"docs":{},"中":{"df":0,"docs":{},"把":{"df":0,"docs":{},"t":{"df":0,"docs":{},"替":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}}}}}}}}}}},"的":{".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"里":{"df":0,"docs":{},"面":{"df":0,"docs":{},"的":{"df":0,"docs":{},"值":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"2":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"":{"df":0,"docs":{},"让":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}},"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":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"60":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"是":{"df":0,"docs":{},"个":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"《":{"c":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}},"r":{"d":{"df":3,"docs":{"18":{"tf":1.7320508075688772},"32":{"tf":1.0},"33":{"tf":1.4142135623730951}}},"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"55":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"w":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"34":{"tf":1.0}}}}}},".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":1,"docs":{"34":{"tf":1.4142135623730951}},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"与":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":0,"docs":{},"所":{"df":0,"docs":{},"指":{"df":0,"docs":{},"相":{"df":0,"docs":{},"同":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"。":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"仍":{"df":0,"docs":{},"为":{"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":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}},"抛":{"df":0,"docs":{},"出":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"b":{"a":{"d":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"即":{"df":0,"docs":{},"使":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"r":{"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":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}}},"添":{"df":0,"docs":{},"加":{"df":0,"docs":{},"进":{"df":0,"docs":{},"v":{"df":0,"docs":{},"w":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"的":{"df":0,"docs":{},"压":{"df":0,"docs":{},"缩":{"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":{"d":{":":{":":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}},"x":{"(":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},",":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}},".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"1":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"17":{"tf":1.0}}},"2":{"(":{"2":{"7":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"3":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"17":{"tf":1.0}}},"4":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"5":{"df":1,"docs":{"10":{"tf":1.0}}},"=":{"2":{"7":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":19,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":3.0},"11":{"tf":2.23606797749979},"13":{"tf":1.0},"17":{"tf":1.4142135623730951},"20":{"tf":2.0},"23":{"tf":1.0},"25":{"tf":2.23606797749979},"27":{"tf":1.4142135623730951},"28":{"tf":2.0},"29":{"tf":1.4142135623730951},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"49":{"tf":1.4142135623730951},"5":{"tf":2.23606797749979},"58":{"tf":1.7320508075688772},"61":{"tf":1.7320508075688772},"69":{"tf":7.615773105863909},"72":{"tf":2.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"14":{"tf":1.7320508075688772}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}},"u":{"df":1,"docs":{"28":{"tf":1.0}},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.0}}},"y":{"df":0,"docs":{},"”":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"df":1,"docs":{"72":{"tf":1.0}}}},"在":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{"df":0,"docs":{},"内":{"df":0,"docs":{},"构":{"df":0,"docs":{},"造":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{},"为":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}}}},"和":{"df":0,"docs":{},"i":{"df":3,"docs":{"14":{"tf":1.0},"15":{"tf":1.0},"28":{"tf":1.0}}}},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}}}}}}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"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":{},"符":{"df":0,"docs":{},"是":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"y":{"(":{"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":{"69":{"tf":1.0}}}}}}}},"x":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"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":{"69":{"tf":1.0}}}}}}}},"x":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":6,"docs":{"13":{"tf":1.0},"20":{"tf":2.449489742783178},"28":{"tf":2.0},"29":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"69":{"tf":4.242640687119285}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"42":{"tf":1.0},"51":{"tf":1.0}}}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"14":{"tf":1.7320508075688772}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}},"u":{"df":1,"docs":{"28":{"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":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"z":{"(":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"20":{"tf":2.449489742783178},"72":{"tf":1.0}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"48":{"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":{"48":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"breadcrumbs":{"root":{"0":{"4":{"df":1,"docs":{"35":{"tf":1.0}}},"df":12,"docs":{"11":{"tf":2.23606797749979},"17":{"tf":1.0},"20":{"tf":2.6457513110645907},"21":{"tf":1.7320508075688772},"23":{"tf":2.0},"28":{"tf":2.0},"29":{"tf":1.0},"4":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":3.872983346207417},"66":{"tf":1.4142135623730951},"68":{"tf":1.0}},"x":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":1,"docs":{"23":{"tf":2.0}}}}}}}}}}},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":2,"docs":{"45":{"tf":1.0},"53":{"tf":1.4142135623730951}}}}}}}}},"1":{")":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"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":{},"化":{"df":0,"docs":{},"r":{"1":{"df":0,"docs":{},"不":{"df":0,"docs":{},"能":{"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":{"2":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}},"0":{"'":{"0":{"0":{"0":{"'":{"0":{"0":{"0":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"0":{"0":{"0":{"0":{"0":{"0":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"23":{"tf":2.0}}},"df":8,"docs":{"1":{"tf":1.0},"11":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"35":{"tf":1.0},"58":{"tf":1.0},"69":{"tf":2.6457513110645907}},"个":{"df":0,"docs":{},"元":{"df":0,"docs":{},"素":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"和":{"2":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"的":{"df":0,"docs":{},"表":{"df":0,"docs":{},"达":{"df":0,"docs":{},"式":{"df":0,"docs":{},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"因":{"df":0,"docs":{},"为":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"1":{":":{"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":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":3,"docs":{"10":{"tf":1.7320508075688772},"24":{"tf":1.0},"8":{"tf":1.0}}},"2":{":":{"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":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"25":{"tf":1.0}}},"3":{":":{"df":0,"docs":{},"优":{"df":0,"docs":{},"先":{"df":0,"docs":{},"考":{"df":0,"docs":{},"虑":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"10":{"tf":1.0},"26":{"tf":1.0},"59":{"tf":1.0}}},"4":{".":{"5":{"df":1,"docs":{"23":{"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":{},"用":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}},"df":2,"docs":{"27":{"tf":1.0},"29":{"tf":1.0}}},"5":{":":{"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":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":2,"docs":{"1":{"tf":1.0},"28":{"tf":1.0}}},"6":{".":{"5":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},":":{"df":0,"docs":{},"让":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"29":{"tf":1.0}}},"7":{"df":1,"docs":{"30":{"tf":1.4142135623730951}}},"8":{":":{"df":0,"docs":{},"对":{"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":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"31":{"tf":1.0},"32":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"df":2,"docs":{"32":{"tf":1.0},"33":{"tf":1.0}}},"9":{".":{"1":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}},"8":{"3":{")":{";":{"/":{"/":{"df":0,"docs":{},"和":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"9":{"8":{"df":1,"docs":{"26":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"df":3,"docs":{"33":{"tf":1.0},"35":{"tf":1.0},"58":{"tf":1.0}}},"df":16,"docs":{"10":{"tf":2.23606797749979},"20":{"tf":1.0},"23":{"tf":2.0},"28":{"tf":1.7320508075688772},"29":{"tf":1.0},"3":{"tf":2.0},"4":{"tf":1.4142135623730951},"5":{"tf":1.0},"52":{"tf":2.8284271247461903},"6":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0},"7":{"tf":1.0},"71":{"tf":1.0},"8":{"tf":1.4142135623730951},"9":{"tf":1.0}},"h":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}},"2":{"0":{"0":{"df":1,"docs":{"23":{"tf":2.0}}},"1":{"3":{"df":0,"docs":{},"年":{"1":{"2":{"df":0,"docs":{},"月":{"2":{"4":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"6":{"df":0,"docs":{},"月":{"5":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},":":{"df":0,"docs":{},"当":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{"d":{":":{":":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{}}}}},"df":5,"docs":{"20":{"tf":2.0},"34":{"tf":1.0},"35":{"tf":1.7320508075688772},"66":{"tf":1.0},"69":{"tf":2.6457513110645907}}},"1":{":":{"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":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":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":{"35":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.0}},"":{"df":0,"docs":{},"通":{"df":0,"docs":{},"过":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"2":{":":{"df":0,"docs":{},"当":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}}}}},"df":2,"docs":{"36":{"tf":1.0},"8":{"tf":1.0}}},"3":{":":{"df":0,"docs":{},"理":{"df":0,"docs":{},"解":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":2,"docs":{"37":{"tf":1.0},"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":2,"docs":{"10":{"tf":1.7320508075688772},"38":{"tf":1.0}}},"4":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}},"5":{":":{"df":0,"docs":{},"对":{"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":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"40":{"tf":1.0}}},"df":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":{"40":{"tf":1.0},"71":{"tf":1.0}},"解":{"df":0,"docs":{},"释":{"df":0,"docs":{},"了":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":1,"docs":{"60":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"6":{"df":2,"docs":{"39":{"tf":1.0},"41":{"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":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"d":{"d":{"df":1,"docs":{"46":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}},"7":{".":{"7":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":10,"docs":{"10":{"tf":3.605551275463989},"22":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"5":{"tf":1.4142135623730951}},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}},"右":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}}}}}}}},"8":{"df":2,"docs":{"49":{"tf":1.4142135623730951},"54":{"tf":1.0}}},"9":{"df":1,"docs":{"50":{"tf":1.4142135623730951}}},":":{"df":0,"docs":{},"理":{"df":0,"docs":{},"解":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"d":{"df":1,"docs":{"29":{"tf":1.0}}},"df":9,"docs":{"10":{"tf":2.449489742783178},"16":{"tf":1.7320508075688772},"28":{"tf":1.4142135623730951},"29":{"tf":1.0},"52":{"tf":2.8284271247461903},"68":{"tf":1.0},"69":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}},"3":{".":{"0":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"0":{"df":8,"docs":{"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"57":{"tf":1.0},"62":{"tf":2.6457513110645907}}},"1":{"df":2,"docs":{"58":{"tf":1.0},"59":{"tf":1.4142135623730951}}},"2":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"27":{"tf":1.0},"60":{"tf":1.4142135623730951}}},"3":{":":{"df":0,"docs":{},"对":{"df":0,"docs":{},"于":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"的":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"&":{"&":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"61":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":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":{"61":{"tf":1.0}}},"4":{":":{"df":0,"docs":{},"优":{"df":0,"docs":{},"先":{"df":0,"docs":{},"考":{"df":0,"docs":{},"虑":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":0,"docs":{},"表":{"df":0,"docs":{},"达":{"df":0,"docs":{},"式":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"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":1,"docs":{"62":{"tf":1.0}}},"5":{"df":3,"docs":{"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"8":{"tf":1.0}}},"6":{":":{"df":0,"docs":{},"如":{"df":0,"docs":{},"果":{"df":0,"docs":{},"有":{"df":0,"docs":{},"异":{"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":{"d":{":":{":":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}},"df":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":{"65":{"tf":1.0}}},"7":{":":{"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":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"df":1,"docs":{"66":{"tf":1.0}}},"8":{"df":1,"docs":{"67":{"tf":1.0}},"":{"b":{"df":0,"docs":{},"e":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"9":{":":{"df":0,"docs":{},"考":{"df":0,"docs":{},"虑":{"df":0,"docs":{},"对":{"df":0,"docs":{},"于":{"df":0,"docs":{},"单":{"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":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}}}}}},"df":1,"docs":{"68":{"tf":1.0}}},":":{"df":0,"docs":{},"理":{"df":0,"docs":{},"解":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"^":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":9,"docs":{"10":{"tf":2.0},"11":{"tf":1.0},"15":{"tf":1.0},"19":{"tf":1.7320508075688772},"20":{"tf":1.0},"24":{"tf":1.0},"52":{"tf":2.6457513110645907},"71":{"tf":1.0},"8":{"tf":1.0}},"}":{"df":0,"docs":{},"”":{"df":0,"docs":{},"隐":{"df":0,"docs":{},"式":{"df":0,"docs":{},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"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":{}}}}}}}}}}},"4":{"0":{":":{"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":{"d":{":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"69":{"tf":1.0}}},"1":{"df":3,"docs":{"38":{"tf":1.0},"70":{"tf":1.0},"71":{"tf":1.4142135623730951}}},"2":{"df":2,"docs":{"13":{"tf":1.0},"72":{"tf":1.4142135623730951}}},"df":7,"docs":{"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"18":{"tf":1.0},"31":{"tf":1.7320508075688772},"59":{"tf":1.4142135623730951}}},"5":{".":{"0":{"df":1,"docs":{"20":{"tf":2.8284271247461903}}},"3":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"0":{"0":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{},"个":{"df":0,"docs":{},"“":{"df":0,"docs":{},"x":{"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":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"5":{"df":1,"docs":{"58":{"tf":1.0}}},":":{"df":0,"docs":{},"优":{"df":0,"docs":{},"先":{"df":0,"docs":{},"考":{"df":0,"docs":{},"虑":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":2,"docs":{"16":{"tf":1.0},"17":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":7,"docs":{"11":{"tf":1.4142135623730951},"17":{"tf":1.0},"18":{"tf":1.4142135623730951},"20":{"tf":1.0},"28":{"tf":1.0},"37":{"tf":1.7320508075688772},"59":{"tf":1.4142135623730951}}},"6":{"4":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}},":":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":5,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.7320508075688772},"61":{"tf":1.0}}},"7":{"df":5,"docs":{"19":{"tf":1.0},"20":{"tf":1.4142135623730951},"29":{"tf":1.0},"63":{"tf":1.7320508075688772},"8":{"tf":1.0}}},"8":{":":{"df":0,"docs":{},"优":{"df":0,"docs":{},"先":{"df":0,"docs":{},"考":{"df":0,"docs":{},"虑":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"0":{"df":0,"docs":{},"和":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"df":2,"docs":{"21":{"tf":1.0},"70":{"tf":1.7320508075688772}}},"9":{":":{"df":0,"docs":{},"优":{"df":0,"docs":{},"先":{"df":0,"docs":{},"考":{"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":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"22":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"df":7,"docs":{"10":{"tf":1.7320508075688772},"22":{"tf":1.0},"29":{"tf":1.0},"38":{"tf":1.0},"55":{"tf":1.0},"62":{"tf":1.0},"8":{"tf":1.0}}},"_":{"1":{"df":1,"docs":{"62":{"tf":3.4641016151377544}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.0}}}}}}},"a":{")":{"[":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":1.4142135623730951}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"a":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":1,"docs":{"66":{"tf":2.0}},"》":{"df":0,"docs":{},"":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}},"d":{"d":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}}}}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"71":{"tf":1.4142135623730951}},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.0}}}}}},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}}}},"i":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"1":{"df":1,"docs":{"20":{"tf":1.0}}},"2":{"(":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"3":{"df":1,"docs":{"20":{"tf":1.0}}},"df":1,"docs":{"69":{"tf":2.23606797749979}},"为":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"到":{"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"m":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}},"i":{"a":{"df":2,"docs":{"19":{"tf":1.0},"22":{"tf":1.7320508075688772}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"v":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":2,"docs":{"39":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":4,"docs":{"18":{"tf":1.4142135623730951},"35":{"tf":1.0},"39":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"42":{"tf":1.0}}}}}},"w":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"n":{"d":{"df":0,"docs":{},"r":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"38":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":1,"docs":{"38":{"tf":1.7320508075688772}}}}}},"p":{"df":0,"docs":{},"i":{"df":7,"docs":{"63":{"tf":2.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.0},"66":{"tf":1.0},"67":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"69":{"tf":1.0}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":2.0}},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"21":{"tf":1.4142135623730951},"32":{"tf":1.0}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"a":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}}}},"r":{"1":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"2":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":1,"docs":{"28":{"tf":1.7320508075688772}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":0,"docs":{},"v":{"df":1,"docs":{"8":{"tf":1.0}}}}}},"t":{"df":1,"docs":{"8":{"tf":1.0}}}},"1":{"df":1,"docs":{"28":{"tf":1.0}}},"2":{"df":1,"docs":{"28":{"tf":1.4142135623730951}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"z":{"df":0,"docs":{},"的":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"50":{"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":1,"docs":{"65":{"tf":1.0}}}}}},"或":{"df":0,"docs":{},"者":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"运":{"df":0,"docs":{},"行":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":2,"docs":{"29":{"tf":1.7320508075688772},"63":{"tf":1.0}}}}},"u":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"11":{"tf":2.6457513110645907}}}}},"df":0,"docs":{}}}}},"d":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"11":{"tf":2.23606797749979}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"o":{"&":{"&":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"以":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"61":{"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":{},"款":{"2":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":39,"docs":{"10":{"tf":5.477225575051661},"11":{"tf":2.449489742783178},"13":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"16":{"tf":2.23606797749979},"17":{"tf":4.358898943540674},"18":{"tf":3.7416573867739413},"21":{"tf":3.1622776601683795},"23":{"tf":3.4641016151377544},"25":{"tf":2.0},"26":{"tf":1.7320508075688772},"28":{"tf":3.3166247903554},"29":{"tf":2.8284271247461903},"32":{"tf":2.23606797749979},"33":{"tf":2.0},"34":{"tf":2.0},"35":{"tf":3.0},"36":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":2.449489742783178},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"49":{"tf":2.0},"50":{"tf":1.4142135623730951},"52":{"tf":1.0},"56":{"tf":1.0},"58":{"tf":1.7320508075688772},"59":{"tf":3.7416573867739413},"60":{"tf":3.0},"61":{"tf":3.1622776601683795},"62":{"tf":4.358898943540674},"64":{"tf":1.4142135623730951},"65":{"tf":3.0},"66":{"tf":2.449489742783178},"67":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"69":{"tf":3.3166247903554}},"创":{"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":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"35":{"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":{"61":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":2,"docs":{"41":{"tf":1.0},"59":{"tf":1.0}}},"df":0,"docs":{}}}},"w":{"1":{"df":1,"docs":{"50":{"tf":1.7320508075688772}},"移":{"df":0,"docs":{},"动":{"df":0,"docs":{},"到":{"a":{"df":0,"docs":{},"w":{"2":{"df":0,"docs":{},"。":{"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":{},"w":{"1":{"df":0,"docs":{},"中":{"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":{},"w":{"2":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"2":{"df":1,"docs":{"50":{"tf":1.0}}},"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}},"b":{")":{"[":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}},",":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}},"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":1,"docs":{"31":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"e":{"(":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"30":{"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":{"30":{"tf":1.0}}}}}}},"df":0,"docs":{}},":":{":":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"25":{"tf":2.6457513110645907},"28":{"tf":2.449489742783178},"30":{"tf":2.449489742783178},"64":{"tf":2.0}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}},"i":{"c":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":1,"docs":{"24":{"tf":3.0}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"在":{"c":{"+":{"+":{"9":{"8":{"df":1,"docs":{"24":{"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":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":1,"docs":{"72":{"tf":1.0}}}}}}}},"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"df":4,"docs":{"17":{"tf":2.23606797749979},"20":{"tf":2.23606797749979},"27":{"tf":1.0},"69":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"tf":1.0}}}},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"66":{"tf":1.0}}}}},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"h":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":2,"docs":{"1":{"tf":1.0},"67":{"tf":1.0}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"b":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":1,"docs":{"20":{"tf":1.0}},"l":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"g":{"df":1,"docs":{"30":{"tf":1.0}}},"n":{"d":{"df":2,"docs":{"60":{"tf":1.7320508075688772},"62":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"t":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"18":{"tf":3.3166247903554},"56":{"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":{},"应":{"df":0,"docs":{},"用":{"df":0,"docs":{},"程":{"df":0,"docs":{},"序":{"df":0,"docs":{},"移":{"df":0,"docs":{},"植":{"df":0,"docs":{},"到":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"17":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"l":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"23":{"tf":2.6457513110645907}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":2,"docs":{"33":{"tf":1.0},"66":{"tf":1.0}}}},"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.0}}}},"u":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"32":{"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":1,"docs":{"32":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":11,"docs":{"1":{"tf":1.4142135623730951},"11":{"tf":1.0},"18":{"tf":1.7320508075688772},"20":{"tf":2.449489742783178},"21":{"tf":1.0},"24":{"tf":2.449489742783178},"29":{"tf":1.7320508075688772},"60":{"tf":2.0},"66":{"tf":1.4142135623730951},"68":{"tf":1.0},"69":{"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":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}}}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{".":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"15":{"tf":1.0}},"得":{"df":0,"docs":{},"到":{"df":0,"docs":{},"f":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}},"/":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"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":{},"i":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"r":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"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":{},"n":{"d":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"(":{"\"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"b":{"df":0,"docs":{},"u":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"1":{"9":{"3":{"0":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":1,"docs":{"62":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}},"r":{"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"2":{"tf":1.4142135623730951}}},"i":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"”":{"df":0,"docs":{},"代":{"df":0,"docs":{},"表":{"df":0,"docs":{},"“":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"到":{"df":0,"docs":{},"e":{"df":1,"docs":{"17":{"tf":1.0}}}},"指":{"df":0,"docs":{},"向":{"a":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}},"c":{"+":{"+":{"1":{"1":{"df":16,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":1.4142135623730951},"17":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":2.0},"23":{"tf":1.0},"24":{"tf":1.0},"25":{"tf":1.0},"30":{"tf":1.0},"40":{"tf":1.0},"50":{"tf":1.0},"51":{"tf":1.0},"60":{"tf":1.4142135623730951},"62":{"tf":2.8284271247461903},"72":{"tf":1.0}},"中":{"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":{"d":{":":{":":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"60":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"和":{"c":{"+":{"+":{"1":{"4":{"df":1,"docs":{"1":{"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":{},"u":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"60":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"的":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"":{"df":0,"docs":{},"参":{"df":0,"docs":{},"见":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"9":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"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":{"4":{"df":1,"docs":{"0":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"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":1,"docs":{"27":{"tf":1.0}}}}}}}}}}},"4":{"df":18,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":1.4142135623730951},"11":{"tf":2.0},"17":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":1.7320508075688772},"23":{"tf":1.7320508075688772},"28":{"tf":1.7320508075688772},"32":{"tf":1.4142135623730951},"39":{"tf":1.0},"40":{"tf":1.0},"47":{"tf":1.0},"59":{"tf":2.0},"60":{"tf":1.7320508075688772},"61":{"tf":1.4142135623730951},"62":{"tf":2.8284271247461903},"65":{"tf":1.0},"66":{"tf":1.0}},"中":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"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":{},"参":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"3":{"4":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"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":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}},"可":{"df":0,"docs":{},"以":{"df":0,"docs":{},"通":{"df":0,"docs":{},"过":{"df":0,"docs":{},"带":{"df":0,"docs":{},"有":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"没":{"df":0,"docs":{},"有":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"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":{},"了":{"c":{"+":{"+":{"1":{"1":{"df":1,"docs":{"22":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"版":{"df":0,"docs":{},"本":{"df":0,"docs":{},"的":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"c":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"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":{}}}},"的":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"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":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"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":{},"在":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"38":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"":{"df":0,"docs":{},"仍":{"df":0,"docs":{},"然":{"df":0,"docs":{},"在":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"9":{"8":{"df":3,"docs":{"1":{"tf":1.0},"25":{"tf":1.0},"27":{"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":1,"docs":{"26":{"tf":1.0}}}}}}}}},"和":{"c":{"+":{"+":{"0":{"3":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}},"1":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{"1":{"df":1,"docs":{"25":{"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":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"即":{"df":0,"docs":{},"非":{"df":0,"docs":{},"限":{"df":0,"docs":{},"域":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"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":{},"数":{"df":0,"docs":{},"为":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"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":{},"做":{"c":{"+":{"+":{"1":{"1":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"运":{"df":0,"docs":{},"行":{"df":0,"docs":{},"时":{"df":0,"docs":{},"行":{"df":0,"docs":{},"为":{"df":0,"docs":{},"一":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"30":{"tf":1.0}}}}},"赋":{"df":0,"docs":{},"值":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"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":{},"f":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"并":{"df":0,"docs":{},"发":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"64":{"tf":1.0}}}}},"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":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"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":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"1":{"df":1,"docs":{"58":{"tf":1.4142135623730951}},"是":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"":{"c":{"2":{"df":0,"docs":{},"":{"c":{"3":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"2":{"df":1,"docs":{"58":{"tf":1.4142135623730951}},"是":{"c":{"1":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"3":{"df":1,"docs":{"58":{"tf":1.0}},"是":{"c":{"2":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"[":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":2.0}}}},"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"[":{"df":0,"docs":{},"i":{"d":{"]":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"34":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"29":{"tf":1.0}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"29":{"tf":3.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"29":{"tf":2.8284271247461903}},"是":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"29":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"c":{"1":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"59":{"tf":2.449489742783178}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"1":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.4142135623730951}}}}}}},"df":1,"docs":{"27":{"tf":1.0}}}},"n":{"'":{"df":0,"docs":{},"t":{"df":1,"docs":{"48":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":2,"docs":{"59":{"tf":1.0},"60":{"tf":1.7320508075688772}}}}}},"s":{"df":0,"docs":{},"e":{"df":3,"docs":{"11":{"tf":1.0},"20":{"tf":1.0},"51":{"tf":1.0}}},"t":{"df":3,"docs":{"18":{"tf":1.0},"23":{"tf":1.0},"26":{"tf":1.7320508075688772}}}}},"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}}},"df":24,"docs":{"0":{"tf":1.0},"1":{"tf":1.7320508075688772},"11":{"tf":2.8284271247461903},"17":{"tf":1.0},"18":{"tf":1.4142135623730951},"19":{"tf":2.0},"2":{"tf":1.0},"20":{"tf":1.4142135623730951},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":2.8284271247461903},"24":{"tf":1.0},"25":{"tf":1.0},"26":{"tf":2.23606797749979},"27":{"tf":1.0},"28":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.4142135623730951},"39":{"tf":1.4142135623730951},"46":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.4142135623730951},"64":{"tf":1.4142135623730951},"71":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":8,"docs":{"16":{"tf":1.0},"19":{"tf":1.0},"3":{"tf":1.0},"31":{"tf":1.0},"37":{"tf":1.0},"58":{"tf":1.0},"63":{"tf":1.0},"70":{"tf":1.0}}}}}},"r":{"*":{"df":0,"docs":{},"也":{"df":0,"docs":{},"应":{"df":0,"docs":{},"该":{"df":0,"docs":{},"无":{"df":0,"docs":{},"效":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"这":{"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":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"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":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"会":{"df":0,"docs":{},"由":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"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":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}}}},"1":{"6":{"_":{"df":0,"docs":{},"t":{"[":{"1":{"2":{"]":{"df":0,"docs":{},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"48":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"48":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},">":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"[":{"1":{"3":{"]":{"df":0,"docs":{},"":{"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":{},"个":{"df":0,"docs":{},"数":{"df":0,"docs":{},"组":{"df":0,"docs":{},"的":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"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":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"10":{"tf":1.7320508075688772},"15":{"tf":1.0},"24":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"72":{"tf":1.0},"8":{"tf":2.23606797749979}},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"p":{"df":2,"docs":{"50":{"tf":1.0},"71":{"tf":1.0}}}},"df":0,"docs":{}}},"i":{"df":1,"docs":{"26":{"tf":1.0}}},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":37,"docs":{"1":{"tf":2.6457513110645907},"11":{"tf":1.0},"14":{"tf":1.7320508075688772},"15":{"tf":2.0},"18":{"tf":2.0},"20":{"tf":2.6457513110645907},"22":{"tf":3.0},"23":{"tf":3.1622776601683795},"24":{"tf":2.8284271247461903},"25":{"tf":3.3166247903554},"26":{"tf":1.0},"27":{"tf":1.7320508075688772},"28":{"tf":1.4142135623730951},"29":{"tf":2.6457513110645907},"30":{"tf":2.449489742783178},"32":{"tf":2.23606797749979},"33":{"tf":1.7320508075688772},"35":{"tf":1.4142135623730951},"36":{"tf":3.0},"38":{"tf":2.449489742783178},"39":{"tf":2.449489742783178},"40":{"tf":2.6457513110645907},"41":{"tf":2.23606797749979},"45":{"tf":1.0},"47":{"tf":2.449489742783178},"48":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"61":{"tf":1.0},"62":{"tf":2.0},"66":{"tf":2.0},"67":{"tf":1.0},"71":{"tf":3.605551275463989},"72":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"那":{"df":0,"docs":{},"一":{"df":0,"docs":{},"年":{"df":0,"docs":{},"":{"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":{"9":{"9":{"8":{"df":0,"docs":{},"":{"df":0,"docs":{},"第":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":1,"docs":{"26":{"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":{"0":{"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":{},"款":{"1":{"0":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"":{"df":0,"docs":{},"的":{"df":0,"docs":{},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"成":{"df":0,"docs":{},"员":{"df":0,"docs":{},"们":{"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":{},"m":{"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":1,"docs":{"36":{"tf":1.0}}}}}}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"(":{"c":{"df":0,"docs":{},"p":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{},"p":{"df":2,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":0,"docs":{},"被":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}}}},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":3,"docs":{"1":{"tf":1.0},"58":{"tf":1.0},"60":{"tf":1.0}}}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":2,"docs":{"27":{"tf":1.0},"68":{"tf":1.0}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":2,"docs":{"39":{"tf":1.0},"49":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{":":{":":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}},"w":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"1":{"tf":1.4142135623730951},"23":{"tf":4.0}},"与":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"和":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}}}},"m":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.0}}}},"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"b":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{":":{":":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{":":{":":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"1":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"69":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":3.1622776601683795}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"在":{"df":0,"docs":{},"“":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"1":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}}},"n":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":5,"docs":{"19":{"tf":1.0},"29":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0},"69":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"47":{"tf":1.0},"63":{"tf":1.0},"68":{"tf":1.0}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"v":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"d":{"df":3,"docs":{"68":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"等":{"df":0,"docs":{},"价":{"df":0,"docs":{},"于":{"df":0,"docs":{},"指":{"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":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}}}}}}}},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.7320508075688772}}}}}}}},"重":{"df":0,"docs":{},"写":{"c":{"+":{"+":{"9":{"8":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}}},"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":30,"docs":{"1":{"tf":1.0},"10":{"tf":2.6457513110645907},"11":{"tf":2.0},"13":{"tf":1.0},"15":{"tf":4.0},"17":{"tf":3.1622776601683795},"20":{"tf":1.0},"22":{"tf":2.0},"24":{"tf":1.0},"25":{"tf":3.1622776601683795},"26":{"tf":1.7320508075688772},"28":{"tf":2.23606797749979},"29":{"tf":3.3166247903554},"38":{"tf":1.0},"40":{"tf":1.7320508075688772},"41":{"tf":1.4142135623730951},"44":{"tf":1.7320508075688772},"47":{"tf":1.4142135623730951},"48":{"tf":1.7320508075688772},"5":{"tf":2.449489742783178},"54":{"tf":2.449489742783178},"57":{"tf":1.0},"59":{"tf":3.3166247903554},"6":{"tf":1.4142135623730951},"60":{"tf":2.8284271247461903},"61":{"tf":1.0},"62":{"tf":1.0},"7":{"tf":2.449489742783178},"72":{"tf":1.0},"8":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":4,"docs":{"23":{"tf":2.0},"28":{"tf":5.830951894845301},"66":{"tf":1.4142135623730951},"8":{"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":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}}}}}}}}}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"1":{"5":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}}},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"48":{"tf":1.0}}}},"df":0,"docs":{}}},"和":{"/":{"df":0,"docs":{},"或":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"实":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"9":{"tf":1.0}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}},"容":{"df":0,"docs":{},"器":{"df":0,"docs":{},"中":{"df":0,"docs":{},"获":{"df":0,"docs":{},"取":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"":{"df":0,"docs":{},"没":{"df":0,"docs":{},"办":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}}}}}}},"左":{"df":0,"docs":{},"值":{"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":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}}}}}}}}}},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"39":{"tf":1.0}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"的":{"df":0,"docs":{},"和":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"9":{"tf":1.0}}}}}},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"上":{"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":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"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":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"谓":{"df":0,"docs":{},"指":{"df":0,"docs":{},"向":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"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":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"":{"df":0,"docs":{},"也":{"df":0,"docs":{},"就":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"不":{"df":0,"docs":{},"再":{"df":0,"docs":{},"被":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"为":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"11":{"tf":2.449489742783178},"26":{"tf":1.4142135623730951},"59":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"58":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"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":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"23":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}}},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"20":{"tf":1.0}}}}}}},"p":{"df":0,"docs":{},"i":{"df":5,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.0},"36":{"tf":1.4142135623730951},"40":{"tf":1.0},"71":{"tf":1.0}}},"y":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":1,"docs":{"68":{"tf":1.0}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":2.0}}}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"33":{"tf":1.4142135623730951},"35":{"tf":2.449489742783178}},"":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"":{"df":0,"docs":{},"为":{"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"t":{"df":1,"docs":{"15":{"tf":2.0}}}}},"p":{"(":{"\"":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.4142135623730951}},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"15":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"p":{"df":1,"docs":{"33":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}},"s":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"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":{"1":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"2":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"v":{".":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"l":{"df":0,"docs":{},"k":{"df":1,"docs":{"68":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":2,"docs":{"47":{"tf":1.0},"68":{"tf":1.4142135623730951}},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"的":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"w":{"df":1,"docs":{"11":{"tf":1.7320508075688772}}},"x":{"=":{"df":0,"docs":{},"x":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}}}},"df":2,"docs":{"10":{"tf":2.23606797749979},"5":{"tf":1.0}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}}}},"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}},"d":{"[":{"5":{"df":1,"docs":{"11":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"l":{"df":3,"docs":{"18":{"tf":1.0},"31":{"tf":1.0},"34":{"tf":1.4142135623730951}}}}},"t":{"a":{"1":{"df":1,"docs":{"28":{"tf":1.0}}},"2":{"df":1,"docs":{"28":{"tf":1.0}}},"df":5,"docs":{"25":{"tf":1.7320508075688772},"28":{"tf":1.0},"29":{"tf":1.0},"36":{"tf":2.0},"60":{"tf":3.3166247903554}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"25":{"tf":2.6457513110645907},"60":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":4,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":2.23606797749979},"62":{"tf":1.7320508075688772}},"e":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"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":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":5,"docs":{"1":{"tf":1.0},"17":{"tf":1.0},"22":{"tf":1.4142135623730951},"25":{"tf":1.0},"27":{"tf":1.0}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"11":{"tf":2.449489742783178},"61":{"tf":1.0}},"e":{"(":{"(":{"df":0,"docs":{},"x":{")":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"&":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"f":{"2":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":3,"docs":{"11":{"tf":2.6457513110645907},"21":{"tf":1.0},"38":{"tf":1.0}}}}}},"c":{"[":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{")":{">":{"df":0,"docs":{},"。":{"df":0,"docs":{},"":{"df":0,"docs":{},"对":{"df":0,"docs":{},"于":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"32":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"1":{"df":1,"docs":{"32":{"tf":1.0}}},"df":1,"docs":{"32":{"tf":1.7320508075688772}}}}}}}}}},"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"w":{")":{")":{"df":0,"docs":{},"是":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},")":{"df":0,"docs":{},"是":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"i":{")":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"33":{"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":{},"x":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"y":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{">":{"(":{"c":{")":{"[":{"df":0,"docs":{},"i":{"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":{}}}}},"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":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"[":{"0":{"]":{")":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"w":{")":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"x":{"df":0,"docs":{},"":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"f":{"1":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"d":{"df":0,"docs":{},"u":{"c":{"df":3,"docs":{"12":{"tf":1.0},"18":{"tf":1.0},"3":{"tf":1.0}},"t":{"df":3,"docs":{"10":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":1,"docs":{"36":{"tf":1.0}}}},"f":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":4,"docs":{"30":{"tf":3.1622776601683795},"36":{"tf":2.8284271247461903},"59":{"tf":1.0},"66":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"14":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"36":{"tf":1.0}},"i":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"24":{"tf":1.0},"36":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":7,"docs":{"24":{"tf":5.744562646538029},"30":{"tf":2.23606797749979},"31":{"tf":1.0},"32":{"tf":2.0},"33":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0}},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"32":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"32":{"tf":2.0}}}}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"c":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}}}}},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"25":{"tf":2.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"34":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"t":{"a":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"66":{"tf":2.0}},"断":{"df":0,"docs":{},"开":{"df":0,"docs":{},"了":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"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":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"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":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}},"s":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":3,"docs":{"46":{"tf":2.449489742783178},"47":{"tf":2.0},"48":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"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":{"29":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"df":2,"docs":{"20":{"tf":1.0},"39":{"tf":1.0}}}}}}}}}}},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"59":{"tf":2.0}}},"y":{"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":1,"docs":{"59":{"tf":5.385164807134504}},"。":{"df":0,"docs":{},"在":{"df":0,"docs":{},"默":{"df":0,"docs":{},"认":{"df":0,"docs":{},"按":{"df":0,"docs":{},"值":{"df":0,"docs":{},"捕":{"df":0,"docs":{},"获":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"a":{"d":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}}}},"":{"df":0,"docs":{},"但":{"df":0,"docs":{},"默":{"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":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}},"o":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.7320508075688772}},"传":{"df":0,"docs":{},"递":{"df":0,"docs":{},"给":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"64":{"tf":1.0}}},"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":{"41":{"tf":1.7320508075688772}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{">":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"59":{"tf":1.0}}}}}}}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":7,"docs":{"10":{"tf":2.0},"18":{"tf":1.0},"20":{"tf":3.3166247903554},"21":{"tf":1.0},"28":{"tf":2.0},"29":{"tf":1.4142135623730951},"9":{"tf":2.0}},"e":{"df":0,"docs":{},"到":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}}},"的":{"df":0,"docs":{},"和":{"df":0,"docs":{},"可":{"df":0,"docs":{},"能":{"df":0,"docs":{},"不":{"df":0,"docs":{},"能":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"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":2,"docs":{"25":{"tf":2.6457513110645907},"27":{"tf":1.0}},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"为":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"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":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"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":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}},"s":{"c":{"df":0,"docs":{},"p":{":":{"6":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":2.449489742783178}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{":":{":":{"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":2.0}}}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"":{"df":0,"docs":{},"“":{"d":{"df":0,"docs":{},"o":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"n":{":":{"2":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"g":{"df":2,"docs":{"11":{"tf":1.0},"20":{"tf":1.0}}}},"df":2,"docs":{"17":{"tf":2.0},"23":{"tf":1.7320508075688772}},"f":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"2":{"tf":1.0}}}},"df":0,"docs":{}}}},"l":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":1,"docs":{"39":{"tf":1.0}}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":2,"docs":{"51":{"tf":1.0},"72":{"tf":1.0}},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"39":{"tf":1.0}}}}},"df":0,"docs":{}},"df":1,"docs":{"72":{"tf":1.0}},"代":{"df":0,"docs":{},"替":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"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":{},"息":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"2":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"2":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"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":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"58":{"tf":1.0}}}}}}}},"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":5,"docs":{"1":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"23":{"tf":5.385164807134504},"62":{"tf":2.0},"66":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":2.449489742783178}}}},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"1":{"0":{"df":1,"docs":{"1":{"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":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"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":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"未":{"df":0,"docs":{},"限":{"df":0,"docs":{},"域":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}}}}}}}}}},"p":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"a":{".":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"l":{"df":1,"docs":{"2":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"14":{"tf":2.0}}}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"25":{"tf":1.0},"27":{"tf":2.0}}}}},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":1,"docs":{"32":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"p":{"df":1,"docs":{"28":{"tf":2.8284271247461903}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"1":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":9,"docs":{"17":{"tf":1.0},"38":{"tf":1.7320508075688772},"41":{"tf":2.6457513110645907},"45":{"tf":1.4142135623730951},"47":{"tf":2.449489742783178},"48":{"tf":1.0},"60":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}},"l":{"df":0,"docs":{},"i":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"r":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":4,"docs":{"18":{"tf":1.4142135623730951},"28":{"tf":1.0},"51":{"tf":1.4142135623730951},"58":{"tf":1.4142135623730951}}}}},"中":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"t":{"df":0,"docs":{},"和":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}}}}}}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"与":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}},"f":{"(":{"&":{"df":0,"docs":{},"v":{"df":0,"docs":{},"w":{"[":{"0":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}},"x":{"df":1,"docs":{"5":{"tf":1.0}}}},"0":{"df":1,"docs":{"21":{"tf":1.0}}},"2":{"7":{"df":1,"docs":{"6":{"tf":1.0}}},"8":{"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":7,"docs":{"11":{"tf":1.0},"15":{"tf":1.7320508075688772},"27":{"tf":1.0},"39":{"tf":1.0},"4":{"tf":1.0},"5":{"tf":1.0},"52":{"tf":1.0}}}}}},"x":{"df":3,"docs":{"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":2,"docs":{"10":{"tf":1.0},"4":{"tf":1.4142135623730951}}}}}},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{")":{"df":0,"docs":{},"而":{"df":0,"docs":{},"不":{"df":0,"docs":{},"是":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"21":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"55":{"tf":1.4142135623730951}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":1,"docs":{"8":{"tf":1.7320508075688772}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{".":{".":{".":{")":{"df":0,"docs":{},"得":{"df":0,"docs":{},"来":{"df":0,"docs":{},"的":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"4":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"v":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"7":{"tf":1.0}}}},"x":{"df":1,"docs":{"5":{"tf":1.0}}}},"r":{"df":0,"docs":{},"x":{"df":3,"docs":{"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"51":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"51":{"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":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"54":{"tf":1.0},"56":{"tf":1.0}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":7,"docs":{"10":{"tf":1.0},"39":{"tf":1.7320508075688772},"49":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}},"v":{"df":1,"docs":{"39":{"tf":1.0}},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"w":{"df":2,"docs":{"11":{"tf":1.0},"39":{"tf":1.0}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":2,"docs":{"37":{"tf":1.0},"39":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"x":{"df":4,"docs":{"4":{"tf":1.0},"5":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"1":{"(":{"0":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"9":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"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":1,"docs":{"9":{"tf":1.0}}}},"df":2,"docs":{"11":{"tf":1.0},"9":{"tf":1.0}},"m":{"df":1,"docs":{"21":{"tf":1.7320508075688772}}},"传":{"df":0,"docs":{},"递":{"0":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}},"":{"df":0,"docs":{},"f":{"2":{"df":0,"docs":{},"":{"df":0,"docs":{},"f":{"3":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"9":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"9":{"tf":1.0}}}},"df":2,"docs":{"11":{"tf":1.0},"9":{"tf":1.0}},"m":{"df":1,"docs":{"21":{"tf":1.7320508075688772}}},"传":{"df":0,"docs":{},"递":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}},"3":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"21":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.7320508075688772}}},"传":{"df":0,"docs":{},"递":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.0}}}}}}}}}}}},"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":2.0}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"51":{"tf":1.0}}}}}},"l":{"df":0,"docs":{},"s":{"df":3,"docs":{"23":{"tf":1.4142135623730951},"29":{"tf":2.0},"66":{"tf":1.4142135623730951}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"42":{"tf":1.0},"51":{"tf":1.0}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"d":{"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":10,"docs":{"10":{"tf":1.7320508075688772},"15":{"tf":1.4142135623730951},"21":{"tf":1.0},"4":{"tf":1.0},"51":{"tf":2.0},"52":{"tf":1.7320508075688772},"55":{"tf":1.0},"61":{"tf":2.0},"65":{"tf":4.123105625617661},"8":{"tf":1.4142135623730951}},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{")":{"[":{"5":{"df":1,"docs":{"18":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"36":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":2.0}}}}},"df":0,"docs":{}}}}},"df":2,"docs":{"59":{"tf":2.23606797749979},"66":{"tf":1.7320508075688772}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"59":{"tf":3.605551275463989}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"n":{"d":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"c":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"26":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"l":{"a":{"df":0,"docs":{},"g":{"(":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":2,"docs":{"68":{"tf":2.0},"72":{"tf":1.0}},"":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"0":{"df":1,"docs":{"68":{"tf":1.0}}},"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":{"a":{"df":0,"docs":{},"t":{"df":2,"docs":{"18":{"tf":1.0},"20":{"tf":1.4142135623730951}},"和":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"o":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"m":{"df":0,"docs":{},"":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"":{"df":0,"docs":{},"每":{"df":0,"docs":{},"个":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}}},"w":{"a":{"df":0,"docs":{},"r":{"d":{"(":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.0},"61":{"tf":1.0}}}},"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":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"49":{"tf":1.7320508075688772},"61":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}},"df":4,"docs":{"1":{"tf":1.0},"37":{"tf":1.4142135623730951},"39":{"tf":1.0},"51":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"p":{")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"tf":1.0}},"到":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"49":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"22":{"tf":1.4142135623730951}}},"r":{"a":{"c":{".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"u":{"c":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":1,"docs":{"40":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}},"u":{"df":0,"docs":{},"n":{"c":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"?":{"?":{"?":{">":{"(":{"df":0,"docs":{},"x":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{")":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{")":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"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":{"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}},"t":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}},"w":{"df":1,"docs":{"49":{"tf":1.7320508075688772}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.4142135623730951}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"49":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"1":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"2":{"df":1,"docs":{"10":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"c":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}},"x":{"(":{"2":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":4,"docs":{"17":{"tf":1.0},"21":{"tf":1.4142135623730951},"39":{"tf":1.0},"60":{"tf":2.8284271247461903}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"27":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":11,"docs":{"1":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"25":{"tf":1.0},"26":{"tf":1.4142135623730951},"27":{"tf":1.0},"29":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.0},"51":{"tf":1.0},"55":{"tf":1.0}}}}},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"x":{"df":1,"docs":{"23":{"tf":1.0}}}}},"":{"df":0,"docs":{},"t":{"df":0,"docs":{},"被":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"为":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}}}}}}}}}},"df":1,"docs":{"7":{"tf":1.0}}},"t":{".":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"0":{"df":1,"docs":{"65":{"tf":1.0}}},"1":{"0":{"0":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"1":{"df":1,"docs":{"65":{"tf":1.0}}},"2":{"df":1,"docs":{"65":{"tf":1.0}}},"df":3,"docs":{"64":{"tf":1.4142135623730951},"65":{"tf":2.449489742783178},"67":{"tf":2.0}},"u":{"df":0,"docs":{},"r":{"df":6,"docs":{"63":{"tf":1.7320508075688772},"64":{"tf":1.0},"65":{"tf":2.8284271247461903},"66":{"tf":1.0},"67":{"tf":6.244997998398398},"68":{"tf":4.123105625617661}}}},"”":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"“":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"64":{"tf":1.0}}}}}}}}}}},"上":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"或":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"来":{"df":0,"docs":{},"异":{"df":0,"docs":{},"步":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}}}}}},"df":0,"docs":{}}}}},"是":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"w":{"d":{"(":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"52":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"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":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.0}}}}}}},"df":1,"docs":{"55":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{">":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"55":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"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":1,"docs":{"51":{"tf":1.4142135623730951}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"55":{"tf":1.0}}}}}}}}}},"df":2,"docs":{"51":{"tf":1.0},"52":{"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":{},"f":{"df":0,"docs":{},"w":{"d":{"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":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"51":{"tf":1.0}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}}}}}}}}}}},"的":{"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":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"54":{"tf":1.0}}}}},"转":{"df":0,"docs":{},"发":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}}}},"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":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"仅":{"df":0,"docs":{},"当":{"df":0,"docs":{},"在":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"休":{"df":0,"docs":{},"眠":{"1":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}},"传":{"df":0,"docs":{},"给":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"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":1,"docs":{"65":{"tf":1.0}}}}}}},"的":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"65":{"tf":1.0}}}},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"t":{"&":{"df":0,"docs":{},"改":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}},"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":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":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"t":{"df":0,"docs":{},"和":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}},"":{"df":0,"docs":{},"如":{"df":0,"docs":{},"果":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"g":{"(":{"df":0,"docs":{},"f":{"1":{"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.0}}}},"2":{"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.0}}}},"3":{"df":0,"docs":{},"m":{"df":1,"docs":{"21":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":2,"docs":{"29":{"tf":1.0},"68":{"tf":1.0}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}}}}},"1":{",":{"df":0,"docs":{},"g":{"2":{",":{"df":0,"docs":{},"g":{"3":{"df":1,"docs":{"36":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":1,"docs":{"36":{"tf":1.0}}},"2":{"df":1,"docs":{"36":{"tf":1.0}}},"3":{"df":1,"docs":{"36":{"tf":1.0}}},"a":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.7320508075688772}}}},"df":1,"docs":{"36":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"30":{"tf":1.0},"60":{"tf":1.0},"61":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":2.0}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"或":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"65":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}},"者":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"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":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"和":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"15":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"o":{"d":{"df":1,"docs":{"23":{"tf":2.0}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":2.23606797749979}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"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":{}}},"u":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"d":{"(":{"df":0,"docs":{},"m":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"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":{"68":{"tf":1.0}}}}}}}}},"析":{"df":0,"docs":{},"构":{"df":0,"docs":{},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"解":{"df":0,"docs":{},"锁":{"df":0,"docs":{},"m":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"1":{"tf":1.4142135623730951}},"l":{"df":2,"docs":{"64":{"tf":1.0},"67":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"r":{"d":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"h":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":1,"docs":{"56":{"tf":1.0}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":1,"docs":{"62":{"tf":1.0}},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":3.1622776601683795}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"1":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{":":{"/":{"/":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"i":{"a":{".":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"/":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"k":{"df":0,"docs":{},"i":{"/":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":1,"docs":{"20":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"i":{"d":{"df":2,"docs":{"13":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951}},"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":{},"出":{"df":0,"docs":{},"":{"df":0,"docs":{},"从":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}},"编":{"df":0,"docs":{},"辑":{"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":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":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"y":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"13":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":3,"docs":{"18":{"tf":1.4142135623730951},"32":{"tf":1.0},"36":{"tf":1.0}}}}},"x":{"df":4,"docs":{"41":{"tf":2.449489742783178},"45":{"tf":1.0},"46":{"tf":1.4142135623730951},"47":{"tf":1.0}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"l":{":":{"4":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"l":{"df":2,"docs":{"20":{"tf":2.23606797749979},"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"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":{}},"df":0,"docs":{}}}}}}}}}},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"52":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":3.0}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"32":{"tf":1.0},"36":{"tf":1.4142135623730951}}}}}}},"和":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"69":{"tf":2.0}}}}},"df":0,"docs":{}}}}},"n":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"d":{"df":2,"docs":{"15":{"tf":1.0},"36":{"tf":3.872983346207417}},"e":{"df":0,"docs":{},"了":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"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":3,"docs":{"14":{"tf":1.4142135623730951},"23":{"tf":2.0},"36":{"tf":1.0}}}}}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"23":{"tf":2.0}}}}}}}},"x":{"df":2,"docs":{"11":{"tf":3.872983346207417},"18":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"60":{"tf":1.4142135623730951}},"i":{"df":4,"docs":{"10":{"tf":1.0},"18":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"29":{"tf":1.0}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"35":{"tf":1.0}}}}}},"p":{"df":0,"docs":{},"w":{"d":{"(":{"\"":{"df":0,"docs":{},"s":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"i":{"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":{}},"df":0,"docs":{}}}}},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}},"v":{"df":1,"docs":{"26":{"tf":1.7320508075688772}}}}}},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{">":{"df":0,"docs":{},"时":{"df":0,"docs":{},"写":{"df":0,"docs":{},"了":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{}},"df":0,"docs":{}}}}}},"":{"df":0,"docs":{},"而":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"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":{}},"df":0,"docs":{}}}}}}},"df":33,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":2.8284271247461903},"11":{"tf":2.6457513110645907},"13":{"tf":1.4142135623730951},"14":{"tf":1.4142135623730951},"15":{"tf":1.0},"17":{"tf":2.23606797749979},"18":{"tf":1.0},"20":{"tf":3.3166247903554},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.7320508075688772},"25":{"tf":1.7320508075688772},"27":{"tf":1.4142135623730951},"28":{"tf":3.0},"29":{"tf":2.0},"35":{"tf":1.7320508075688772},"4":{"tf":1.4142135623730951},"41":{"tf":1.7320508075688772},"49":{"tf":1.7320508075688772},"5":{"tf":3.872983346207417},"55":{"tf":2.23606797749979},"58":{"tf":1.4142135623730951},"59":{"tf":3.0},"6":{"tf":2.6457513110645907},"62":{"tf":1.0},"64":{"tf":1.4142135623730951},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":2.0},"7":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":1.0}}}},"r":{"df":0,"docs":{},"f":{"a":{"c":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"和":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}},"的":{"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"的":{"df":0,"docs":{},"变":{"df":0,"docs":{},"量":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"4":{"tf":1.0}}}}}}}}}},"给":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"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":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"值":{"df":0,"docs":{},"是":{"2":{"7":{"df":1,"docs":{"10":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"y":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":3.4641016151377544}}}}},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"s":{"_":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"v":{"4":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"56":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"s":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"60":{"tf":2.449489742783178}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"c":{"df":0,"docs":{},"k":{"df":0,"docs":{},"y":{"(":{"'":{"a":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"3":{".":{"5":{"df":1,"docs":{"24":{"tf":1.0}},"f":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}},"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"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":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"24":{"tf":2.0}}}},"df":0,"docs":{}}}},"v":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"n":{"d":{"a":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"h":{"(":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"60":{"tf":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":{"60":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"60":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"1":{"0":{"df":2,"docs":{"22":{"tf":1.0},"65":{"tf":1.0}}},"1":{"df":3,"docs":{"30":{"tf":1.0},"50":{"tf":1.0},"69":{"tf":1.0}}},"4":{"df":7,"docs":{"1":{"tf":1.0},"23":{"tf":1.0},"30":{"tf":1.0},"32":{"tf":1.0},"40":{"tf":1.0},"50":{"tf":1.0},"8":{"tf":1.0}}},"5":{"df":2,"docs":{"23":{"tf":1.0},"8":{"tf":1.0}}},"7":{"df":7,"docs":{"24":{"tf":1.0},"27":{"tf":1.0},"36":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"50":{"tf":1.0},"66":{"tf":1.0},"69":{"tf":1.0}}},"8":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"32":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":8,"docs":{"22":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.4142135623730951},"36":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.0},"66":{"tf":1.0}}},"9":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":5,"docs":{"32":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.4142135623730951},"67":{"tf":1.0},"72":{"tf":1.0}}},"df":4,"docs":{"10":{"tf":2.0},"11":{"tf":1.4142135623730951},"15":{"tf":1.4142135623730951},"47":{"tf":1.0}}},"2":{"0":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"34":{"tf":1.0}}},"2":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"1":{"tf":1.0},"33":{"tf":1.0}}},"1":{"df":8,"docs":{"20":{"tf":1.0},"25":{"tf":1.0},"33":{"tf":2.23606797749979},"34":{"tf":1.0},"36":{"tf":1.0},"40":{"tf":1.0},"51":{"tf":1.0},"72":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"32":{"tf":1.0}}},"3":{"df":8,"docs":{"22":{"tf":1.0},"27":{"tf":1.0},"30":{"tf":1.0},"35":{"tf":1.0},"40":{"tf":2.0},"49":{"tf":1.0},"60":{"tf":1.0},"67":{"tf":1.0}}},"4":{"df":10,"docs":{"11":{"tf":1.0},"38":{"tf":1.0},"4":{"tf":1.0},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"49":{"tf":1.7320508075688772},"51":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":1.0},"71":{"tf":1.0}}},"5":{"df":11,"docs":{"11":{"tf":1.0},"20":{"tf":1.0},"32":{"tf":1.0},"39":{"tf":1.4142135623730951},"41":{"tf":1.0},"49":{"tf":1.0},"50":{"tf":1.0},"61":{"tf":1.0},"65":{"tf":1.0},"71":{"tf":1.4142135623730951},"72":{"tf":1.0}}},"6":{"df":6,"docs":{"30":{"tf":1.0},"42":{"tf":1.4142135623730951},"43":{"tf":1.0},"44":{"tf":1.0},"46":{"tf":1.7320508075688772},"47":{"tf":2.449489742783178}}},"7":{"df":2,"docs":{"41":{"tf":1.0},"71":{"tf":1.0}}},"8":{"df":5,"docs":{"38":{"tf":1.7320508075688772},"39":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"61":{"tf":1.7320508075688772}}},"9":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"2":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"40":{"tf":1.0},"71":{"tf":1.0}}},"df":7,"docs":{"11":{"tf":1.4142135623730951},"17":{"tf":1.7320508075688772},"20":{"tf":1.0},"35":{"tf":1.0},"49":{"tf":1.0},"52":{"tf":1.0},"69":{"tf":1.4142135623730951}}},"3":{"0":{"df":8,"docs":{"1":{"tf":1.0},"35":{"tf":1.4142135623730951},"39":{"tf":1.0},"41":{"tf":1.0},"48":{"tf":1.0},"62":{"tf":1.0},"71":{"tf":1.0},"72":{"tf":1.0}}},"1":{"df":1,"docs":{"60":{"tf":1.0}}},"2":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"39":{"tf":1.0}}},"4":{"df":2,"docs":{"17":{"tf":1.0},"60":{"tf":1.0}}},"5":{"df":2,"docs":{"65":{"tf":1.4142135623730951},"66":{"tf":1.4142135623730951}}},"6":{"df":2,"docs":{"64":{"tf":1.4142135623730951},"67":{"tf":1.4142135623730951}}},"7":{"df":2,"docs":{"67":{"tf":2.23606797749979},"68":{"tf":1.0}}},"8":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"1":{"df":1,"docs":{"67":{"tf":1.0}}},"2":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":2,"docs":{"65":{"tf":1.0},"68":{"tf":1.7320508075688772}}},"9":{"df":4,"docs":{"58":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"69":{"tf":1.0}}},"df":7,"docs":{"10":{"tf":1.0},"21":{"tf":1.0},"23":{"tf":1.0},"32":{"tf":1.4142135623730951},"38":{"tf":1.0},"49":{"tf":1.0},"61":{"tf":1.0}}},"4":{"0":{"df":4,"docs":{"20":{"tf":1.0},"29":{"tf":1.0},"68":{"tf":1.0},"7":{"tf":1.0}}},"1":{"df":4,"docs":{"11":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.4142135623730951},"45":{"tf":1.0}}},"2":{"df":2,"docs":{"33":{"tf":1.0},"51":{"tf":1.0}}},"df":3,"docs":{"11":{"tf":1.0},"17":{"tf":1.0},"9":{"tf":1.0}}},"5":{"df":3,"docs":{"10":{"tf":1.0},"18":{"tf":1.4142135623730951},"23":{"tf":1.0}}},"6":{"df":1,"docs":{"11":{"tf":1.0}}},"7":{"df":2,"docs":{"10":{"tf":1.0},"35":{"tf":1.0}}},"8":{"df":2,"docs":{"45":{"tf":1.0},"53":{"tf":1.4142135623730951}}},"9":{"df":7,"docs":{"23":{"tf":1.7320508075688772},"26":{"tf":1.0},"38":{"tf":1.4142135623730951},"46":{"tf":1.4142135623730951},"47":{"tf":1.0},"49":{"tf":1.4142135623730951},"65":{"tf":1.0}}},"df":70,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.4142135623730951},"12":{"tf":1.4142135623730951},"13":{"tf":1.0},"14":{"tf":1.0},"15":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.4142135623730951},"18":{"tf":1.4142135623730951},"19":{"tf":1.0},"20":{"tf":1.4142135623730951},"21":{"tf":1.4142135623730951},"22":{"tf":1.4142135623730951},"23":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"25":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"28":{"tf":1.4142135623730951},"29":{"tf":1.4142135623730951},"3":{"tf":1.0},"30":{"tf":1.4142135623730951},"31":{"tf":1.0},"32":{"tf":1.4142135623730951},"33":{"tf":1.4142135623730951},"34":{"tf":1.4142135623730951},"35":{"tf":1.4142135623730951},"36":{"tf":1.4142135623730951},"37":{"tf":1.0},"38":{"tf":1.4142135623730951},"39":{"tf":1.4142135623730951},"4":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951},"41":{"tf":1.4142135623730951},"42":{"tf":1.4142135623730951},"43":{"tf":1.0},"44":{"tf":1.0},"45":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"5":{"tf":1.0},"50":{"tf":1.4142135623730951},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"53":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":1.0},"56":{"tf":1.0},"57":{"tf":1.0},"58":{"tf":1.0},"59":{"tf":1.4142135623730951},"6":{"tf":1.0},"60":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951},"62":{"tf":1.4142135623730951},"63":{"tf":1.0},"64":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951},"66":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"69":{"tf":1.4142135623730951},"7":{"tf":1.0},"70":{"tf":1.0},"71":{"tf":1.7320508075688772},"72":{"tf":1.4142135623730951},"8":{"tf":1.0},"9":{"tf":1.0}}},"r":{"df":1,"docs":{"26":{"tf":1.4142135623730951}},"t":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"j":{"a":{"b":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"71":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"8":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}},"df":2,"docs":{"66":{"tf":2.0},"67":{"tf":1.0}},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":1,"docs":{"17":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"72":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"12":{"tf":1.0}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"48":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}}},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":16,"docs":{"0":{"tf":1.4142135623730951},"1":{"tf":2.0},"10":{"tf":1.4142135623730951},"11":{"tf":1.4142135623730951},"17":{"tf":1.7320508075688772},"19":{"tf":1.0},"32":{"tf":2.8284271247461903},"33":{"tf":1.0},"39":{"tf":2.0},"58":{"tf":4.898979485566356},"59":{"tf":5.385164807134504},"60":{"tf":5.477225575051661},"61":{"tf":4.58257569495584},"62":{"tf":5.916079783099616},"66":{"tf":2.23606797749979},"68":{"tf":2.23606797749979}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"j":{"df":0,"docs":{},"写":{"df":0,"docs":{},"于":{"2":{"0":{"1":{"3":{"df":1,"docs":{"35":{"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":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}},"v":{"df":1,"docs":{"62":{"tf":2.0}}}},"h":{"df":2,"docs":{"1":{"tf":1.0},"40":{"tf":2.6457513110645907}},"s":{"df":0,"docs":{},"表":{"df":0,"docs":{},"示":{"df":0,"docs":{},"“":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"22":{"tf":1.4142135623730951},"72":{"tf":1.4142135623730951}}}}},"k":{"(":{"df":0,"docs":{},"m":{"df":1,"docs":{"68":{"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":{},"m":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"a":{"df":0,"docs":{},"l":{"df":2,"docs":{"20":{"tf":1.0},"65":{"tf":1.0}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"{":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"n":{"d":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.0}},"l":{"(":{"df":0,"docs":{},"f":{"1":{"df":1,"docs":{"21":{"tf":1.0}}},"2":{"df":1,"docs":{"21":{"tf":1.0}}},"3":{"df":1,"docs":{"21":{"tf":1.0}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":1.4142135623730951}}}}}},"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":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"41":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951}}}}}},"a":{"df":0,"docs":{},"n":{"d":{"a":{"d":{"d":{"(":{"\"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}},"2":{"2":{"df":1,"docs":{"41":{"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":{"41":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"\"":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.7320508075688772}}}},"df":2,"docs":{"41":{"tf":2.0},"46":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"46":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}}},"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":1,"docs":{"46":{"tf":1.0}}}},"df":1,"docs":{"46":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"38":{"tf":1.0}}},"w":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"33":{"tf":2.449489742783178}}}}},"df":0,"docs":{}}}}}},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}},"u":{"d":{"df":1,"docs":{"62":{"tf":1.0}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"62":{"tf":1.0}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":2.449489742783178}}}},"df":0,"docs":{}}}},"s":{"b":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"v":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"38":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":3,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"46":{"tf":1.0}}}}},"df":0,"docs":{}},"w":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}},"m":{"1":{"df":1,"docs":{"18":{"tf":1.0}}},"2":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"3":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}},"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"60":{"tf":1.0}},"e":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"40":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"df":3,"docs":{"29":{"tf":1.0},"35":{"tf":2.8284271247461903},"66":{"tf":1.0}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":1.7320508075688772}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"df":1,"docs":{"32":{"tf":1.0}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":2.23606797749979}}}},"df":0,"docs":{}}}}}}}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{"(":{"\"":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":1,"docs":{"30":{"tf":1.0}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"y":{"df":1,"docs":{"30":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":2.0}}}}}}}},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{")":{".":{"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"25":{"tf":1.4142135623730951},"40":{"tf":2.8284271247461903}},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"里":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"25":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}}},"函":{"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":{},"r":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}}}}}}}}}},"n":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"32":{"tf":1.0},"33":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"[":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"y":{"df":0,"docs":{},"v":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{},"的":{"df":0,"docs":{},"大":{"df":0,"docs":{},"小":{"df":0,"docs":{},"为":{"7":{"df":1,"docs":{"8":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":1,"docs":{"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":3,"docs":{"1":{"tf":1.7320508075688772},"18":{"tf":2.23606797749979},"40":{"tf":2.0}}}}}},"x":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":2.449489742783178}}}},"df":0,"docs":{}}}},"df":3,"docs":{"17":{"tf":1.7320508075688772},"29":{"tf":2.0},"68":{"tf":2.449489742783178}},"e":{"a":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":3,"docs":{"29":{"tf":1.0},"30":{"tf":1.0},"36":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":2,"docs":{"17":{"tf":1.0},"69":{"tf":1.0}}}}}},"t":{"a":{"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":{"22":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"f":{"1":{"df":1,"docs":{"25":{"tf":2.23606797749979}}},"2":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"25":{"tf":2.23606797749979}}},"4":{"df":1,"docs":{"25":{"tf":2.23606797749979}},"在":{"b":{"a":{"df":0,"docs":{},"s":{"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":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"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":{"15":{"tf":1.4142135623730951}}}}}}}}},"d":{"df":1,"docs":{"28":{"tf":1.7320508075688772}},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{},"p":{"1":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"n":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"71":{"tf":1.0}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"54":{"tf":2.0}},"s":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"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":{},"为":{"df":0,"docs":{},"编":{"df":0,"docs":{},"译":{"df":0,"docs":{},"器":{"df":0,"docs":{},"直":{"df":0,"docs":{},"接":{"df":0,"docs":{},"将":{"df":0,"docs":{},"值":{"2":{"8":{"df":0,"docs":{},"代":{"df":0,"docs":{},"替":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"24":{"tf":1.0}}}}},"o":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"59":{"tf":1.0}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"19":{"tf":1.0}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}},"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"c":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"38":{"tf":1.7320508075688772}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":8,"docs":{"19":{"tf":1.4142135623730951},"29":{"tf":1.0},"32":{"tf":1.4142135623730951},"36":{"tf":1.0},"37":{"tf":1.7320508075688772},"50":{"tf":1.0},"60":{"tf":1.0},"71":{"tf":1.4142135623730951}}}}},"u":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}},"直":{"df":0,"docs":{},"接":{"df":0,"docs":{},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"41":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"29":{"tf":3.3166247903554},"60":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":2,"docs":{"21":{"tf":1.4142135623730951},"63":{"tf":1.0}}}}},"x":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"21":{"tf":2.449489742783178}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"21":{"tf":2.0}}}}}}},"y":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":2.23606797749979}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"22":{"tf":2.23606797749979}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{},"n":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":1,"docs":{"22":{"tf":2.0}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"1":{"df":1,"docs":{"11":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"2":{"df":1,"docs":{"11":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"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":{},"为":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"a":{"b":{"df":0,"docs":{},"l":{"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":{},"都":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"n":{"+":{"1":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"b":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":3,"docs":{"41":{"tf":1.0},"45":{"tf":1.0},"47":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"&":{">":{"(":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":3,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":1.0},"48":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":1,"docs":{"45":{"tf":1.0}}},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":9,"docs":{"10":{"tf":1.7320508075688772},"36":{"tf":2.0},"40":{"tf":2.6457513110645907},"41":{"tf":2.23606797749979},"45":{"tf":1.0},"46":{"tf":2.449489742783178},"47":{"tf":1.0},"71":{"tf":1.7320508075688772},"8":{"tf":1.4142135623730951}},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"41":{"tf":1.0}},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"(":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"x":{"df":1,"docs":{"41":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"41":{"tf":1.0},"46":{"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":{}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"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":{}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"71":{"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":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"p":{"a":{"c":{"df":3,"docs":{"18":{"tf":1.0},"62":{"tf":3.3166247903554},"65":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"是":{"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":{},"被":{"df":0,"docs":{},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"8":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":2,"docs":{"20":{"tf":1.0},"27":{"tf":1.0}}}}}}},"df":11,"docs":{"10":{"tf":1.0},"15":{"tf":2.449489742783178},"18":{"tf":1.0},"27":{"tf":1.7320508075688772},"28":{"tf":1.4142135623730951},"40":{"tf":1.7320508075688772},"41":{"tf":2.0},"45":{"tf":1.0},"47":{"tf":2.23606797749979},"48":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}}},"w":{"df":4,"docs":{"1":{"tf":1.0},"33":{"tf":1.4142135623730951},"35":{"tf":2.449489742783178},"72":{"tf":1.4142135623730951}},"i":{"df":1,"docs":{"28":{"tf":2.0}}},"n":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"40":{"tf":2.449489742783178},"71":{"tf":3.0}},"e":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"w":{"d":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":1,"docs":{"71":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"x":{"df":1,"docs":{"28":{"tf":2.0}}},"出":{"df":0,"docs":{},"来":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"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":{},"r":{"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}}}}}},"h":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"p":{"(":{"*":{"a":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":6,"docs":{"23":{"tf":2.0},"27":{"tf":3.1622776601683795},"28":{"tf":3.4641016151377544},"29":{"tf":1.4142135623730951},"64":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"较":{"df":0,"docs":{},"之":{"df":0,"docs":{},"于":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"1":{"4":{"df":1,"docs":{"64":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"n":{"df":9,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"22":{"tf":1.0},"25":{"tf":1.0},"28":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"38":{"tf":1.0},"41":{"tf":1.0},"59":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.4142135623730951}},"i":{"df":0,"docs":{},"z":{"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":{},"x":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"v":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}},"w":{"df":4,"docs":{"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.7320508075688772},"46":{"tf":1.4142135623730951}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":3,"docs":{"21":{"tf":1.4142135623730951},"32":{"tf":1.4142135623730951},"34":{"tf":1.0}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":3,"docs":{"21":{"tf":1.7320508075688772},"34":{"tf":1.0},"72":{"tf":2.0}},"给":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"而":{"df":0,"docs":{},"非":{"0":{"df":0,"docs":{},"和":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":1,"docs":{"21":{"tf":1.0}}}}}}},"m":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"移":{"df":0,"docs":{},"动":{"df":0,"docs":{},"进":{"df":0,"docs":{},"w":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"o":{"b":{"df":0,"docs":{},"j":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":7,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"30":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951},"62":{"tf":1.0},"63":{"tf":1.0},"66":{"tf":1.0}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":2.449489742783178}}}}}}},"c":{"c":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":2,"docs":{"24":{"tf":1.0},"68":{"tf":1.0}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{")":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":1,"docs":{"61":{"tf":1.0}}}},"df":0,"docs":{},"函":{"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":1,"docs":{"61":{"tf":1.0}}}}}}}}}}},"成":{"df":0,"docs":{},"员":{"df":0,"docs":{},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"60":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"+":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"=":{"(":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"30":{"tf":1.0}}}},"df":0,"docs":{}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":3,"docs":{"24":{"tf":1.4142135623730951},"30":{"tf":1.7320508075688772},"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.0},"36":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"[":{"]":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"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":{}},"df":0,"docs":{}}}}},"df":6,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.4142135623730951},"35":{"tf":1.0},"36":{"tf":1.0},"50":{"tf":1.0},"60":{"tf":1.0}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":2,"docs":{"40":{"tf":1.4142135623730951},"50":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"24":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.0}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":3,"docs":{"25":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"25":{"tf":4.123105625617661}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"64":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"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":2,"docs":{"32":{"tf":1.4142135623730951},"33":{"tf":1.4142135623730951}}}}}}}}}}},"p":{"(":{"\"":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"i":{"df":2,"docs":{"41":{"tf":1.0},"47":{"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":0,"docs":{},"p":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"u":{"\"":{"df":0,"docs":{},"k":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"r":{"a":{"d":{"df":1,"docs":{"48":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},".":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"71":{"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":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"_":{"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":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}}},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"68":{"tf":2.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"1":{"(":{"9":{".":{"4":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"17":{"tf":2.449489742783178},"28":{"tf":1.0}}},"2":{"(":{"2":{"8":{".":{"8":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},".":{"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"17":{"tf":2.449489742783178},"28":{"tf":1.7320508075688772}}},"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}},"r":{"a":{"df":0,"docs":{},"m":{"df":21,"docs":{"1":{"tf":1.0},"10":{"tf":2.23606797749979},"15":{"tf":3.4641016151377544},"20":{"tf":1.4142135623730951},"32":{"tf":2.0},"33":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.7320508075688772},"39":{"tf":4.0},"4":{"tf":1.7320508075688772},"49":{"tf":3.605551275463989},"5":{"tf":2.23606797749979},"51":{"tf":1.4142135623730951},"55":{"tf":1.0},"6":{"tf":1.4142135623730951},"61":{"tf":2.6457513110645907},"62":{"tf":1.4142135623730951},"65":{"tf":1.4142135623730951},"7":{"tf":2.0},"8":{"tf":2.0},"9":{"tf":2.0}},"e":{"df":0,"docs":{},"t":{"df":5,"docs":{"1":{"tf":1.0},"39":{"tf":1.7320508075688772},"48":{"tf":1.0},"61":{"tf":1.0},"71":{"tf":1.0}}}},"s":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":4,"docs":{"4":{"tf":1.4142135623730951},"5":{"tf":1.4142135623730951},"6":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951}},"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":{},"时":{"df":0,"docs":{},"":{"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":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"7":{"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":{"4":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"到":{"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":1,"docs":{"38":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"和":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}},"现":{"df":0,"docs":{},"在":{"df":0,"docs":{},"是":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}},"的":{"df":0,"docs":{},"实":{"df":0,"docs":{},"参":{"df":0,"docs":{},"是":{"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"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":1,"docs":{"49":{"tf":1.0}}}}}}}}}}}}}}}}},"推":{"df":0,"docs":{},"导":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"x":{"df":1,"docs":{"10":{"tf":1.0}}}},"x":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"也":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"就":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{},"s":{"df":1,"docs":{"20":{"tf":1.0}}},"t":{"df":1,"docs":{"20":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"71":{"tf":1.0}},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":1,"docs":{"71":{"tf":1.7320508075688772}}},"df":0,"docs":{}}}}}},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"66":{"tf":1.0}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"33":{"tf":1.0}}}}}}}},"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"b":{"df":0,"docs":{},"j":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":8,"docs":{"17":{"tf":1.7320508075688772},"27":{"tf":1.0},"28":{"tf":1.4142135623730951},"29":{"tf":1.0},"40":{"tf":1.4142135623730951},"68":{"tf":1.7320508075688772},"71":{"tf":1.7320508075688772},"8":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"37":{"tf":1.4142135623730951},"51":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"df":0,"docs":{},"g":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"v":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"&":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"是":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"47":{"tf":1.0}}}}},"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":2.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"41":{"tf":1.7320508075688772},"45":{"tf":1.0},"47":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}}}}}}},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"45":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":3,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":2.23606797749979},"48":{"tf":1.0}}}},"df":4,"docs":{"41":{"tf":3.3166247903554},"45":{"tf":1.0},"47":{"tf":3.0},"48":{"tf":1.7320508075688772}},"也":{"df":0,"docs":{},"是":{"df":0,"docs":{},"跟":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.0}}}}}}}}}}},"和":{"df":0,"docs":{},"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":{},"所":{"df":0,"docs":{},"有":{"df":0,"docs":{},"引":{"df":0,"docs":{},"用":{"df":0,"docs":{},"和":{"c":{"df":0,"docs":{},"v":{"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}},"":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"47":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"d":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"a":{"df":1,"docs":{"41":{"tf":1.7320508075688772}}},"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":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.0}}}}}},")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"55":{"tf":1.0}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"36":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{">":{"(":{"*":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"36":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":2,"docs":{"32":{"tf":1.0},"36":{"tf":3.3166247903554}}}}},"n":{"df":0,"docs":{},"v":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"32":{"tf":1.4142135623730951}}}}}}}}}},".":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"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":1,"docs":{"32":{"tf":2.449489742783178}}}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"32":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":3.3166247903554}}}}}}}},"k":{"6":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}}}}},"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":{"df":1,"docs":{"15":{"tf":1.0}}}}}}}}}}}}},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"(":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":3,"docs":{"11":{"tf":1.0},"28":{"tf":3.7416573867739413},"29":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":7,"docs":{"1":{"tf":1.7320508075688772},"19":{"tf":1.0},"31":{"tf":1.4142135623730951},"32":{"tf":1.0},"34":{"tf":1.0},"36":{"tf":1.0},"7":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"的":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}}}},"df":1,"docs":{"29":{"tf":2.0}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"64":{"tf":1.0}}}},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},"w":{"(":{"3":{"df":1,"docs":{"28":{"tf":1.0}}},"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.7320508075688772}}}}}},"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":9,"docs":{"17":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":1.0},"24":{"tf":1.0},"26":{"tf":1.0},"35":{"tf":1.0},"62":{"tf":1.0},"64":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"50":{"tf":1.0}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"(":{"c":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{">":{"(":{"c":{"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":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"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":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":2,"docs":{"35":{"tf":1.4142135623730951},"55":{"tf":1.0}}}}}}},"v":{"a":{"df":0,"docs":{},"t":{"df":19,"docs":{"20":{"tf":1.0},"22":{"tf":1.7320508075688772},"24":{"tf":2.0},"25":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":2.23606797749979},"30":{"tf":1.4142135623730951},"33":{"tf":1.4142135623730951},"36":{"tf":2.8284271247461903},"38":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"45":{"tf":1.0},"47":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"71":{"tf":2.449489742783178}}}},"df":0,"docs":{}}},"o":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"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":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"33":{"tf":1.7320508075688772},"38":{"tf":1.0},"55":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.0}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"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":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}},"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":{},"t":{"df":1,"docs":{"24":{"tf":1.7320508075688772}}}},"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{">":{"(":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"24":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{">":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"24":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"55":{"tf":1.0}}}}},"s":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"给":{"df":0,"docs":{},"f":{"df":1,"docs":{"55":{"tf":1.0}}}}}},"df":1,"docs":{"55":{"tf":1.7320508075688772}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}}},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"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":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"35":{"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":{}},"w":{"df":1,"docs":{"71":{"tf":1.0}}}},"w":{",":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}}}}}},"df":1,"docs":{"18":{"tf":1.4142135623730951}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"18":{"tf":1.0},"35":{"tf":1.4142135623730951}},"时":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"了":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"而":{"df":0,"docs":{},"不":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"看":{"df":0,"docs":{},"到":{"df":0,"docs":{},"的":{"df":0,"docs":{},"是":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.0}}}}},"p":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"54":{"tf":1.0}}}},"df":0,"docs":{}},"x":{"df":0,"docs":{},"i":{"df":1,"docs":{"18":{"tf":1.4142135623730951}}}}}},"t":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}},"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":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"r":{",":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":7,"docs":{"21":{"tf":1.4142135623730951},"24":{"tf":1.7320508075688772},"35":{"tf":1.0},"60":{"tf":1.0},"7":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"72":{"tf":1.0}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"72":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"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":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"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":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"{":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"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":{}},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"21":{"tf":2.0}}}}}}},"获":{"df":0,"docs":{},"取":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}}}},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"":{"2":{"0":{"1":{"2":{"df":0,"docs":{},"":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"df":29,"docs":{"1":{"tf":1.0},"11":{"tf":1.0},"18":{"tf":1.0},"20":{"tf":2.449489742783178},"24":{"tf":2.6457513110645907},"25":{"tf":3.872983346207417},"28":{"tf":1.4142135623730951},"29":{"tf":2.6457513110645907},"30":{"tf":2.23606797749979},"32":{"tf":2.0},"33":{"tf":2.23606797749979},"36":{"tf":2.8284271247461903},"38":{"tf":2.449489742783178},"39":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":2.449489742783178},"45":{"tf":1.0},"47":{"tf":2.6457513110645907},"48":{"tf":1.0},"49":{"tf":1.0},"54":{"tf":1.0},"59":{"tf":1.0},"60":{"tf":1.4142135623730951},"61":{"tf":1.0},"62":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"71":{"tf":3.4641016151377544},"72":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"df":0,"docs":{},"t":{"df":2,"docs":{"39":{"tf":1.0},"72":{"tf":1.0}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"66":{"tf":1.0},"72":{"tf":1.0}},"通":{"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":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"。":{"df":0,"docs":{},"在":{"df":0,"docs":{},"存":{"df":0,"docs":{},"储":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"w":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"60":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"1":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":1,"docs":{"33":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":1,"docs":{"33":{"tf":1.0}}},"]":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":6,"docs":{"21":{"tf":1.0},"33":{"tf":2.8284271247461903},"35":{"tf":1.0},"59":{"tf":1.4142135623730951},"60":{"tf":4.358898943540674},"62":{"tf":1.0}},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"df":0,"docs":{}}},"x":{"df":1,"docs":{"5":{"tf":1.0}},"是":{"df":0,"docs":{},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"作":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"新":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"41":{"tf":1.0}}}}}}}}}}},"的":{"df":0,"docs":{},"那":{"df":0,"docs":{},"个":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}}}},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":2,"docs":{"25":{"tf":1.4142135623730951},"47":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"o":{"(":{"\"":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"n":{"a":{"df":1,"docs":{"72":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"r":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}}},"1":{"df":1,"docs":{"72":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}},"a":{"c":{"df":0,"docs":{},"e":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":2,"docs":{"66":{"tf":2.449489742783178},"68":{"tf":1.0}}}},"w":{"df":1,"docs":{"1":{"tf":1.0}}}},"c":{"df":0,"docs":{},"变":{"df":0,"docs":{},"为":{"0":{"df":0,"docs":{},"":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"10":{"tf":1.0},"72":{"tf":1.4142135623730951}},"e":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":2.23606797749979}}}},"d":{"df":1,"docs":{"69":{"tf":1.0}},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"d":{"b":{"(":{"\"":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"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":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"32":{"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":1,"docs":{"32":{"tf":1.4142135623730951}}}}},"l":{"df":0,"docs":{},"y":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.7320508075688772}}}},"df":0,"docs":{},"就":{"df":0,"docs":{},"像":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"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":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}}}}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.0}}}}},"d":{"df":3,"docs":{"1":{"tf":1.0},"22":{"tf":1.0},"23":{"tf":2.8284271247461903}},"u":{"c":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"d":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"y":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":1,"docs":{"34":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":17,"docs":{"1":{"tf":1.0},"11":{"tf":1.7320508075688772},"15":{"tf":1.0},"18":{"tf":1.4142135623730951},"22":{"tf":1.0},"25":{"tf":1.4142135623730951},"33":{"tf":1.0},"37":{"tf":1.4142135623730951},"38":{"tf":1.7320508075688772},"39":{"tf":2.449489742783178},"40":{"tf":1.4142135623730951},"41":{"tf":1.0},"42":{"tf":1.0},"46":{"tf":1.0},"48":{"tf":1.0},"49":{"tf":1.4142135623730951},"60":{"tf":1.0}}}},"l":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"28":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"44":{"tf":1.0}}},"df":0,"docs":{}}}}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"72":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}}}}},"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":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.7320508075688772}}}}}}}}}},"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":{},"t":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"l":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"69":{"tf":1.0}}}},"df":0,"docs":{}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":3,"docs":{"22":{"tf":1.0},"38":{"tf":1.4142135623730951},"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"10":{"tf":1.4142135623730951}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"c":{"df":3,"docs":{"32":{"tf":1.0},"33":{"tf":1.0},"66":{"tf":1.0}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"28":{"tf":1.0}}},"x":{"df":1,"docs":{"28":{"tf":1.0}}}}}}},"1":{"df":1,"docs":{"21":{"tf":1.0}}},"2":{"df":1,"docs":{"21":{"tf":1.0}}},"3":{"df":1,"docs":{"21":{"tf":1.0}}},"df":2,"docs":{"21":{"tf":2.8284271247461903},"28":{"tf":2.449489742783178}}}}}},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"27":{"tf":1.7320508075688772}}}}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":26,"docs":{"1":{"tf":1.0},"10":{"tf":1.0},"11":{"tf":2.6457513110645907},"17":{"tf":1.7320508075688772},"21":{"tf":1.4142135623730951},"23":{"tf":1.7320508075688772},"25":{"tf":1.7320508075688772},"26":{"tf":1.0},"28":{"tf":2.449489742783178},"29":{"tf":3.0},"32":{"tf":1.4142135623730951},"34":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0},"38":{"tf":1.4142135623730951},"40":{"tf":3.605551275463989},"49":{"tf":2.6457513110645907},"58":{"tf":1.4142135623730951},"59":{"tf":3.872983346207417},"60":{"tf":2.23606797749979},"61":{"tf":3.0},"62":{"tf":1.7320508075688772},"65":{"tf":1.4142135623730951},"66":{"tf":2.449489742783178},"68":{"tf":1.4142135623730951},"8":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}}}}}}}},"h":{"df":7,"docs":{"1":{"tf":1.7320508075688772},"30":{"tf":2.0},"36":{"tf":3.1622776601683795},"38":{"tf":2.0},"40":{"tf":2.8284271247461903},"41":{"tf":2.449489742783178},"47":{"tf":1.4142135623730951}},"s":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}},"df":0,"docs":{},"":{"df":0,"docs":{},"“":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}}}}}}},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"h":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"29":{"tf":1.7320508075688772}},"s":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"29":{"tf":2.449489742783178}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"df":1,"docs":{"29":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"29":{"tf":2.8284271247461903}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"29":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"29":{"tf":1.7320508075688772}}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.4142135623730951}}}},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":1,"docs":{"38":{"tf":1.0}}}}},"df":0,"docs":{},"u":{"df":5,"docs":{"1":{"tf":1.0},"37":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":1.0},"71":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.7320508075688772}}}}}}}}}}}},"df":0,"docs":{},"o":{"df":1,"docs":{"40":{"tf":1.0}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"这":{"df":0,"docs":{},"在":{"c":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"x":{"=":{"c":{"df":0,"docs":{},"x":{"df":3,"docs":{"10":{"tf":1.4142135623730951},"6":{"tf":1.0},"7":{"tf":1.0}}}},"df":0,"docs":{},"x":{"df":1,"docs":{"5":{"tf":1.0}}}},"df":3,"docs":{"10":{"tf":1.4142135623730951},"49":{"tf":1.0},"5":{"tf":1.0}},"是":{"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"作":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"的":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}},"引":{"df":0,"docs":{},"用":{"df":0,"docs":{},"性":{"df":0,"docs":{},"":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"5":{"tf":1.0}}}}}}}}}}}}}},"s":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{">":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"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":{}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"r":{"df":0,"docs":{},"h":{"df":0,"docs":{},"s":{".":{"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":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"27":{"tf":1.0}}}}}}}}},"a":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":2,"docs":{"1":{"tf":1.0},"29":{"tf":1.0}},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}},"df":6,"docs":{"11":{"tf":1.0},"18":{"tf":1.0},"23":{"tf":1.0},"27":{"tf":1.0},"38":{"tf":1.0},"62":{"tf":3.0}},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"s":{"(":{"3":{"0":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"19":{"tf":1.0},"37":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"69":{"tf":1.0}}}}}}}},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.7320508075688772}}}}}},"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":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"3":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"62":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":1,"docs":{"62":{"tf":2.8284271247461903}}}}},"df":0,"docs":{}}},"df":1,"docs":{"33":{"tf":1.0}},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"40":{"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":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"a":{"df":1,"docs":{"40":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":1,"docs":{"71":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{"b":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"62":{"tf":2.23606797749979}}},"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"62":{"tf":2.0}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"28":{"tf":1.0},"71":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}},"x":{"(":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{"(":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"f":{".":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":1,"docs":{"68":{"tf":1.0}},"的":{"df":0,"docs":{},"局":{"df":0,"docs":{},"部":{"df":0,"docs":{},"副":{"df":0,"docs":{},"本":{"df":0,"docs":{},"上":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"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":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"68":{"tf":1.0}}},"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":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":2,"docs":{"33":{"tf":1.4142135623730951},"67":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"41":{"tf":1.0}}}},"t":{"df":1,"docs":{"68":{"tf":1.0}}}}},"i":{"d":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{".":{"df":0,"docs":{},"s":{"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":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"y":{".":{"a":{"d":{"d":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"40":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"56":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":1,"docs":{"62":{"tf":1.0}}}}},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":1,"docs":{"18":{"tf":1.0}}}}},"m":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"50":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":3,"docs":{"1":{"tf":1.0},"19":{"tf":1.0},"31":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"68":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"f":{"df":0,"docs":{},"t":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}}}},"m":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"d":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"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":{},"u":{"df":0,"docs":{},"n":{"c":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"tf":1.0}}}}},"m":{"df":0,"docs":{},"y":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"39":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"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":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"1":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"1":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":2,"docs":{"10":{"tf":1.7320508075688772},"9":{"tf":1.0}},"的":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"中":{"df":0,"docs":{},"":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}}}},"v":{"a":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"62":{"tf":2.6457513110645907}}},"df":0,"docs":{}}}},"p":{"df":1,"docs":{"32":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"30":{"tf":1.0},"36":{"tf":1.0},"69":{"tf":1.0}},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"41":{"tf":1.0},"47":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":2,"docs":{"41":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951}}}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"71":{"tf":1.7320508075688772}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"f":{"df":2,"docs":{"25":{"tf":1.0},"27":{"tf":1.0}},"i":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"df":1,"docs":{"68":{"tf":1.0}}}}}}},"v":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}},"w":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":3,"docs":{"33":{"tf":1.0},"35":{"tf":1.7320508075688772},"72":{"tf":1.4142135623730951}}}}}},"1":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":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.0}}},"2":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":1,"docs":{"34":{"tf":1.0}},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"33":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"3":{"(":{"df":0,"docs":{},"w":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":4,"docs":{"21":{"tf":1.0},"34":{"tf":1.4142135623730951},"35":{"tf":1.7320508075688772},"72":{"tf":1.0}},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"之":{"df":0,"docs":{},"后":{"df":0,"docs":{},"":{"df":0,"docs":{},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"s":{"df":0,"docs":{},"o":{"df":1,"docs":{"71":{"tf":1.0}}}},"t":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}},"t":{"df":0,"docs":{},"e":{"df":1,"docs":{"67":{"tf":1.0}}},"i":{"c":{"_":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"df":1,"docs":{"48":{"tf":1.0}}}}}}}},"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{">":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"(":{"df":0,"docs":{},"w":{")":{"[":{"5":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{">":{"(":{"c":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{">":{"(":{"c":{"a":{"df":0,"docs":{},"l":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{"(":{"d":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"m":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"x":{">":{"(":{"df":0,"docs":{},"m":{"1":{"df":1,"docs":{"18":{"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":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"38":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"1":{"6":{"_":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"h":{".":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":1,"docs":{"56":{"tf":1.0}}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"e":{">":{">":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"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":{}}},"t":{"&":{"&":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"49":{"tf":1.4142135623730951},"61":{"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":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{"&":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":2,"docs":{"49":{"tf":1.4142135623730951},"61":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"49":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"49":{"tf":1.4142135623730951},"61":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":5,"docs":{"33":{"tf":1.0},"34":{"tf":1.0},"38":{"tf":1.0},"54":{"tf":2.0},"59":{"tf":3.0}},"数":{"df":0,"docs":{},"据":{"df":0,"docs":{},"是":{"df":0,"docs":{},"你":{"df":0,"docs":{},"期":{"df":0,"docs":{},"望":{"df":0,"docs":{},"的":{"df":0,"docs":{},"行":{"df":0,"docs":{},"为":{"df":0,"docs":{},"":{"df":0,"docs":{},"":{"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":{"1":{"df":1,"docs":{"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":{},"值":{"df":0,"docs":{},"运":{"df":0,"docs":{},"算":{"df":0,"docs":{},"符":{"df":0,"docs":{},"根":{"df":0,"docs":{},"据":{"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":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"30":{"tf":1.0}}}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"u":{"df":1,"docs":{"23":{"tf":2.8284271247461903}}}}},"d":{":":{":":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"<":{".":{".":{".":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"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":{"d":{":":{":":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"p":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"_":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"_":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"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":{"d":{"d":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"(":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":1,"docs":{"59":{"tf":1.0}}}}},"df":0,"docs":{},"o":{"c":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{">":{":":{":":{"_":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"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":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{},"r":{"a":{"df":0,"docs":{},"y":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"28":{"tf":2.0},"8":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"50":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"没":{"df":0,"docs":{},"有":{"df":0,"docs":{},"这":{"df":0,"docs":{},"种":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"df":0,"docs":{},"实":{"df":0,"docs":{},"现":{"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":{"d":{":":{":":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"y":{"df":1,"docs":{"50":{"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":{},"n":{"c":{"(":{"d":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":2.23606797749979}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"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":3,"docs":{"64":{"tf":1.0},"65":{"tf":1.7320508075688772},"67":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"m":{"df":3,"docs":{"20":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":2.0}},"i":{"c":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":3,"docs":{"29":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":3,"docs":{"20":{"tf":1.7320508075688772},"29":{"tf":1.0},"69":{"tf":2.449489742783178}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}},"df":0,"docs":{},"":{"df":0,"docs":{},"对":{"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":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"c":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"<":{"c":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"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":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":1,"docs":{"59":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"n":{"d":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}}}}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.0}}}},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":2.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"3":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{">":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"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":{}}}},"d":{":":{":":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"e":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"o":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"c":{"a":{"df":0,"docs":{},"l":{"_":{"a":{"df":0,"docs":{},"n":{"d":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"62":{"tf":1.7320508075688772}},"s":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"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":{"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":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"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":3,"docs":{"17":{"tf":1.0},"60":{"tf":2.0},"62":{"tf":3.872983346207417}},"可":{"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":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}},"解":{"df":0,"docs":{},"决":{"c":{"+":{"+":{"1":{"1":{"df":1,"docs":{"60":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"c":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"d":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"62":{"tf":1.0}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"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":{"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":{}}},"y":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":4,"docs":{"38":{"tf":1.0},"40":{"tf":1.0},"41":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"k":{"c":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"46":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"41":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"62":{"tf":2.449489742783178}}}}}}},"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":0,"docs":{},"v":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"t":{"df":2,"docs":{"15":{"tf":2.0},"69":{"tf":1.7320508075688772}}}}}},"d":{"df":0,"docs":{},"e":{"c":{"a":{"df":0,"docs":{},"y":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"47":{"tf":1.4142135623730951}},"e":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"47":{"tf":1.0}}}}},"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":{},"t":{">":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"47":{"tf":1.0},"48":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"47":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"11":{"tf":1.0}}}}}},"df":0,"docs":{}},"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":{},"i":{"df":0,"docs":{},"f":{"<":{"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":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"47":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"47":{"tf":1.4142135623730951},"48":{"tf":1.0}}}},"df":1,"docs":{"47":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"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":{"df":1,"docs":{"59":{"tf":1.0}}},"df":0,"docs":{}}},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"46":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"(":{"c":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}},"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":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"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":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"c":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"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":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"会":{"df":0,"docs":{},"出":{"df":0,"docs":{},"现":{"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":{"8":{"df":0,"docs":{},"中":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"是":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}},"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":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{">":{"(":{"c":{")":{"[":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"b":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"h":{"df":1,"docs":{"39":{"tf":1.0}}}},"df":0,"docs":{}}},"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":1,"docs":{"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":{},"l":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{")":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"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":{},"f":{">":{"(":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}},"t":{">":{"(":{"df":0,"docs":{},"f":{"df":0,"docs":{},"r":{"a":{"c":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":5,"docs":{"11":{"tf":1.0},"38":{"tf":1.0},"40":{"tf":1.7320508075688772},"49":{"tf":1.7320508075688772},"61":{"tf":1.0}},"将":{"df":0,"docs":{},"x":{"df":0,"docs":{},"转":{"df":0,"docs":{},"发":{"df":0,"docs":{},"到":{"df":0,"docs":{},"函":{"df":0,"docs":{},"数":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":1,"docs":{"61":{"tf":1.0}}}}}}}}}}}}},"的":{"c":{"+":{"+":{"1":{"4":{"df":1,"docs":{"61":{"tf":1.0}}},"df":0,"docs":{}},"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":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"故":{"df":0,"docs":{},"事":{"df":0,"docs":{},"与":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"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":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":1,"docs":{"41":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}},"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":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}},"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":{"59":{"tf":1.0}}},"df":0,"docs":{}}}}},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"2":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{">":{"df":0,"docs":{},"相":{"df":0,"docs":{},"关":{"df":0,"docs":{},"信":{"df":0,"docs":{},"息":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"3":{"9":{"df":1,"docs":{"67":{"tf":1.0}}},"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":{},"u":{"df":0,"docs":{},"s":{":":{":":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}},"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":{"<":{"1":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"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":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"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":{}},"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":{},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"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":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{")":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"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":{}}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{">":{"(":{"df":0,"docs":{},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}},"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":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}}}},"t":{">":{"df":0,"docs":{},"中":{"df":0,"docs":{},"的":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":2,"docs":{"20":{"tf":3.0},"35":{"tf":1.0}},"为":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"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":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"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":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"s":{"_":{"b":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":2,"docs":{"47":{"tf":1.7320508075688772},"48":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"c":{"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":0,"docs":{},"i":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"48":{"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":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"l":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"47":{"tf":1.0},"48":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"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":1,"docs":{"46":{"tf":1.0}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"s":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"47":{"tf":1.4142135623730951}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":2,"docs":{"65":{"tf":2.23606797749979},"67":{"tf":1.0}}},"df":0,"docs":{}}}}},"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"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":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":1,"docs":{"22":{"tf":2.23606797749979}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":2,"docs":{"62":{"tf":1.4142135623730951},"65":{"tf":1.0}}}}}},"o":{"c":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"g":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":3,"docs":{"21":{"tf":1.0},"29":{"tf":1.4142135623730951},"68":{"tf":1.0}}}}}}}},"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":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":2,"docs":{"33":{"tf":1.0},"35":{"tf":1.7320508075688772}},"e":{"d":{"<":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{">":{"(":{"1":{"0":{"df":1,"docs":{"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"34":{"tf":1.0},"35":{"tf":1.0}}}}}},"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":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"35":{"tf":1.0}},"e":{"<":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":1,"docs":{"25":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{">":{"(":{"1":{"0":{"df":1,"docs":{"35":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":2,"docs":{"59":{"tf":1.0},"60":{"tf":2.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":3,"docs":{"20":{"tf":1.0},"35":{"tf":1.0},"51":{"tf":1.0}},"e":{"d":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"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":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"36":{"tf":1.0}}}}}}}}}}}}}}}}}},"df":0,"docs":{}}},"p":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"30":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"a":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"60":{"tf":1.7320508075688772}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"l":{"df":0,"docs":{},"h":{"df":1,"docs":{"40":{"tf":1.0}}}},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"40":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.4142135623730951}}}},"w":{"df":1,"docs":{"60":{"tf":1.4142135623730951}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}},"df":0,"docs":{},"m":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}}},"w":{"2":{"df":1,"docs":{"36":{"tf":1.0}}},"df":1,"docs":{"40":{"tf":2.0}}}},"df":3,"docs":{"38":{"tf":1.4142135623730951},"40":{"tf":1.7320508075688772},"71":{"tf":1.0}},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"38":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}}}},"的":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"4":{"1":{"df":1,"docs":{"45":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"41":{"tf":1.0},"46":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":3,"docs":{"21":{"tf":1.0},"29":{"tf":2.0},"68":{"tf":1.4142135623730951}}}}}}},"p":{"a":{"c":{"df":0,"docs":{},"k":{"a":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"k":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}}}},"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"h":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"62":{"tf":2.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":2.23606797749979}},"e":{"<":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"68":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":1.0}}}},"df":0,"docs":{}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"72":{"tf":2.449489742783178}},"的":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"72":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}}}},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":2,"docs":{"22":{"tf":1.4142135623730951},"46":{"tf":1.0}},"e":{">":{"df":0,"docs":{},"是":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"46":{"tf":1.0}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"49":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"_":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":1,"docs":{"38":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}}}},"s":{"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":0,"docs":{},"t":{"df":0,"docs":{},"s":{".":{".":{".":{")":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"65":{"tf":1.0}}}}}},"df":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":{"65":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{"d":{":":{":":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"<":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":1.0}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":1.0}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"d":{"a":{"df":0,"docs":{},"t":{"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":{"40":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}},"df":4,"docs":{"33":{"tf":2.8284271247461903},"34":{"tf":1.4142135623730951},"35":{"tf":2.0},"72":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":5,"docs":{"32":{"tf":1.0},"33":{"tf":2.6457513110645907},"34":{"tf":2.0},"35":{"tf":2.0},"36":{"tf":1.0}},"s":{"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"35":{"tf":1.4142135623730951}}}}}},"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":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"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":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":4,"docs":{"23":{"tf":1.4142135623730951},"38":{"tf":1.0},"54":{"tf":1.4142135623730951},"8":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"q":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"(":{"df":0,"docs":{},"x":{"df":1,"docs":{"29":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{">":{"df":0,"docs":{},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"。":{"df":0,"docs":{},"拷":{"df":0,"docs":{},"贝":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"30":{"tf":1.0}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":15,"docs":{"17":{"tf":1.7320508075688772},"22":{"tf":2.23606797749979},"23":{"tf":1.0},"27":{"tf":1.0},"30":{"tf":1.7320508075688772},"36":{"tf":2.0},"38":{"tf":2.23606797749979},"40":{"tf":2.0},"41":{"tf":3.0},"45":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.7320508075688772},"48":{"tf":1.0},"71":{"tf":2.8284271247461903},"72":{"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":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}},"把":{"df":0,"docs":{},"它":{"df":0,"docs":{},"传":{"df":0,"docs":{},"给":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"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":{},"换":{"df":0,"docs":{},"的":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"(":{"1":{"df":1,"docs":{"65":{"tf":1.0}}},"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":{"a":{"d":{"(":{"[":{"&":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"66":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":4,"docs":{"64":{"tf":2.0},"66":{"tf":3.4641016151377544},"67":{"tf":2.0},"68":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"46":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"23":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"3":{"2":{"_":{"df":0,"docs":{},"t":{"df":2,"docs":{"23":{"tf":1.7320508075688772},"56":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"8":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"df":0,"docs":{},"y":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"e":{">":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"23":{"tf":1.4142135623730951}},"e":{">":{"(":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"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":{},"t":{"<":{"df":1,"docs":{"23":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"68":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"b":{"a":{"df":0,"docs":{},"s":{"df":1,"docs":{"25":{"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":{"34":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":2.23606797749979}}}}},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"32":{"tf":2.6457513110645907}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"71":{"tf":1.0}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"22":{"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":{}}},"t":{">":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"35":{"tf":1.0}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":3,"docs":{"17":{"tf":3.3166247903554},"35":{"tf":1.4142135623730951},"60":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":6,"docs":{"17":{"tf":1.0},"32":{"tf":2.8284271247461903},"33":{"tf":1.4142135623730951},"34":{"tf":1.0},"36":{"tf":1.7320508075688772},"60":{"tf":1.0}},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{},"化":{"df":0,"docs":{},"为":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"32":{"tf":1.0}}}}}},"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":{"d":{":":{":":{"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":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"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":{},"用":{"df":0,"docs":{},"于":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"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":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"17":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"17":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{">":{":":{":":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"18":{"tf":1.0}}}}}},"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":4,"docs":{"25":{"tf":1.4142135623730951},"29":{"tf":1.7320508075688772},"36":{"tf":2.0},"60":{"tf":2.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{":":{":":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"和":{"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":{"17":{"tf":1.0}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":8,"docs":{"10":{"tf":1.0},"17":{"tf":1.0},"20":{"tf":2.0},"26":{"tf":1.7320508075688772},"39":{"tf":1.0},"52":{"tf":1.0},"54":{"tf":1.0},"66":{"tf":1.4142135623730951}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"67":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"33":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.0}}}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":2,"docs":{"71":{"tf":1.7320508075688772},"72":{"tf":1.4142135623730951}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":4,"docs":{"15":{"tf":1.0},"27":{"tf":1.0},"39":{"tf":1.0},"50":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"11":{"tf":1.0},"20":{"tf":1.0},"39":{"tf":1.0}},"的":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"15":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"34":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":3,"docs":{"1":{"tf":1.0},"34":{"tf":1.7320508075688772},"35":{"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":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":4,"docs":{"18":{"tf":1.0},"38":{"tf":1.0},"49":{"tf":1.0},"61":{"tf":1.0}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"y":{"_":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{":":{":":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"62":{"tf":2.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{},"l":{"df":1,"docs":{"64":{"tf":1.0}}}},"df":0,"docs":{}},"l":{"df":2,"docs":{"22":{"tf":1.0},"26":{"tf":1.0}}},"o":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"32":{"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":1,"docs":{"32":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"p":{"df":1,"docs":{"39":{"tf":1.0}}},"r":{"a":{"df":0,"docs":{},"g":{"df":2,"docs":{"59":{"tf":1.0},"65":{"tf":1.0}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"69":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"38":{"tf":1.0}}}}}},">":{"df":0,"docs":{},"":{"<":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{">":{"df":0,"docs":{},"以":{"df":0,"docs":{},"及":{"df":0,"docs":{},"g":{"a":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{".":{"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":3,"docs":{"36":{"tf":2.23606797749979},"38":{"tf":1.4142135623730951},"50":{"tf":1.0}},"t":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"30":{"tf":2.6457513110645907}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"c":{"df":0,"docs":{},"t":{"df":5,"docs":{"11":{"tf":1.0},"22":{"tf":1.0},"27":{"tf":1.0},"36":{"tf":3.4641016151377544},"56":{"tf":1.0}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"m":{"1":{"df":1,"docs":{"20":{"tf":1.0}}},"2":{"(":{"df":0,"docs":{},"x":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}},"3":{"df":1,"docs":{"20":{"tf":1.0}}},"df":1,"docs":{"18":{"tf":1.4142135623730951}},"m":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"72":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}},"w":{"a":{"df":0,"docs":{},"p":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"27":{"tf":1.0}}}}},"df":0,"docs":{}},"t":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"71":{"tf":1.0}}},"y":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"x":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}},"z":{"df":3,"docs":{"17":{"tf":1.4142135623730951},"28":{"tf":2.449489742783178},"56":{"tf":1.0}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{">":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"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":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"又":{"df":0,"docs":{},"作":{"df":0,"docs":{},"为":{"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":{},"t":{"a":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"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":{},"第":{"5":{"df":1,"docs":{"18":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}},"t":{"&":{"/":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"df":0,"docs":{},"和":{"df":0,"docs":{},"t":{"&":{"&":{"df":0,"docs":{},"中":{"df":0,"docs":{},"产":{"df":0,"docs":{},"出":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.0}}}}}}},"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":1,"docs":{"66":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"d":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"r":{"d":{"<":{"df":0,"docs":{},"t":{"df":0,"docs":{},"s":{">":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"35":{"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":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"67":{"tf":1.4142135623730951}}}},"t":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"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":1,"docs":{"66":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{")":{".":{"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.0}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}}},"df":0,"docs":{}},"df":2,"docs":{"66":{"tf":1.7320508075688772},"68":{"tf":1.4142135623730951}}}}}},"n":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"l":{"df":1,"docs":{"66":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}},"1":{"df":1,"docs":{"27":{"tf":1.0}}},"2":{"df":1,"docs":{"27":{"tf":1.0}}},">":{":":{":":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":2,"docs":{"47":{"tf":1.0},"48":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"g":{"df":3,"docs":{"46":{"tf":2.23606797749979},"47":{"tf":2.0},"48":{"tf":1.4142135623730951}}},"r":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"v":{"df":1,"docs":{"26":{"tf":1.7320508075688772}}}}}}},"s":{"df":0,"docs":{},"k":{"df":3,"docs":{"63":{"tf":1.0},"64":{"tf":1.7320508075688772},"68":{"tf":1.4142135623730951}},"是":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{}},"没":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"":{"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":{"a":{"d":{"df":0,"docs":{},"i":{"df":1,"docs":{"65":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{},"有":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"65":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"d":{"<":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}}}},"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"i":{"df":1,"docs":{"14":{"tf":1.0}}},"x":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"14":{"tf":1.4142135623730951}}}}}},"df":1,"docs":{"14":{"tf":1.7320508075688772}}},"df":35,"docs":{"10":{"tf":3.0},"11":{"tf":1.4142135623730951},"14":{"tf":1.0},"15":{"tf":3.7416573867739413},"20":{"tf":2.0},"22":{"tf":3.605551275463989},"24":{"tf":1.7320508075688772},"27":{"tf":1.4142135623730951},"30":{"tf":2.0},"35":{"tf":1.4142135623730951},"38":{"tf":1.7320508075688772},"39":{"tf":3.1622776601683795},"4":{"tf":2.23606797749979},"40":{"tf":2.449489742783178},"41":{"tf":2.0},"44":{"tf":1.4142135623730951},"45":{"tf":1.0},"46":{"tf":2.0},"47":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":3.0},"5":{"tf":2.0},"51":{"tf":1.0},"55":{"tf":1.4142135623730951},"6":{"tf":1.0},"61":{"tf":2.0},"62":{"tf":2.23606797749979},"66":{"tf":3.1622776601683795},"67":{"tf":1.0},"68":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"72":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772},"9":{"tf":1.4142135623730951}},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"18":{"tf":1.0}},"l":{"a":{"df":0,"docs":{},"t":{"df":13,"docs":{"1":{"tf":2.0},"18":{"tf":1.0},"20":{"tf":1.0},"22":{"tf":2.449489742783178},"24":{"tf":2.8284271247461903},"26":{"tf":1.0},"27":{"tf":1.4142135623730951},"33":{"tf":1.0},"39":{"tf":1.7320508075688772},"4":{"tf":1.0},"47":{"tf":2.0},"48":{"tf":1.0},"72":{"tf":1.0}},"e":{"<":{"c":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":3,"docs":{"18":{"tf":1.0},"39":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":36,"docs":{"1":{"tf":1.0},"10":{"tf":2.449489742783178},"11":{"tf":2.8284271247461903},"14":{"tf":1.0},"15":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"20":{"tf":1.0},"21":{"tf":1.4142135623730951},"22":{"tf":2.23606797749979},"23":{"tf":1.7320508075688772},"24":{"tf":1.7320508075688772},"26":{"tf":1.0},"30":{"tf":1.4142135623730951},"32":{"tf":2.23606797749979},"33":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.7320508075688772},"39":{"tf":2.23606797749979},"4":{"tf":1.7320508075688772},"40":{"tf":2.0},"41":{"tf":1.7320508075688772},"46":{"tf":2.0},"47":{"tf":1.0},"49":{"tf":2.449489742783178},"5":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"55":{"tf":1.0},"59":{"tf":1.0},"6":{"tf":1.0},"61":{"tf":1.4142135623730951},"62":{"tf":1.0},"65":{"tf":1.4142135623730951},"7":{"tf":1.4142135623730951},"71":{"tf":1.4142135623730951},"8":{"tf":1.7320508075688772},"9":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}},"n":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":2.0}}}}}}}}}},"x":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"d":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},".":{"c":{"a":{"df":0,"docs":{},"p":{"a":{"c":{"df":1,"docs":{"71":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"38":{"tf":1.7320508075688772},"40":{"tf":1.7320508075688772},"71":{"tf":2.8284271247461903}},"到":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"38":{"tf":1.0}}}}},"df":0,"docs":{}}},"通":{"df":0,"docs":{},"过":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":0,"docs":{},"被":{"df":0,"docs":{},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"h":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"13":{"tf":1.7320508075688772}}}}}}}},"df":0,"docs":{}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"。":{"df":0,"docs":{},"每":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}}}}},"r":{"df":0,"docs":{},"e":{"a":{"d":{"1":{"df":0,"docs":{},"将":{"df":0,"docs":{},"读":{"df":0,"docs":{},"到":{"df":0,"docs":{},"的":{"0":{"df":0,"docs":{},"加":{"1":{"df":0,"docs":{},"":{"df":0,"docs":{},"然":{"df":0,"docs":{},"后":{"df":0,"docs":{},"写":{"df":0,"docs":{},"回":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"c":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"读":{"df":0,"docs":{},"取":{"df":0,"docs":{},"v":{"c":{"df":0,"docs":{},"的":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"是":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"2":{"df":0,"docs":{},"将":{"df":0,"docs":{},"读":{"df":0,"docs":{},"到":{"df":0,"docs":{},"的":{"0":{"df":0,"docs":{},"加":{"1":{"df":0,"docs":{},"":{"df":0,"docs":{},"然":{"df":0,"docs":{},"后":{"df":0,"docs":{},"写":{"df":0,"docs":{},"回":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"c":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"读":{"df":0,"docs":{},"取":{"df":0,"docs":{},"v":{"c":{"df":0,"docs":{},"的":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}},"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}},"df":8,"docs":{"29":{"tf":1.7320508075688772},"63":{"tf":1.0},"64":{"tf":2.0},"65":{"tf":1.0},"66":{"tf":1.4142135623730951},"67":{"tf":1.0},"68":{"tf":1.0},"69":{"tf":1.4142135623730951}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"66":{"tf":1.0}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},":":{":":{"d":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{":":{":":{"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":2,"docs":{"66":{"tf":1.0},"68":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":2,"docs":{"66":{"tf":2.449489742783178},"68":{"tf":1.4142135623730951}},"的":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"i":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":1,"docs":{"68":{"tf":1.0}}}}}}},"、":{"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":1,"docs":{"64":{"tf":1.0}}}}}}}}},"":{"df":0,"docs":{},"":{"df":0,"docs":{},"也":{"df":0,"docs":{},"被":{"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":1,"docs":{"64":{"tf":1.0}}}}}}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{},"e":{"df":1,"docs":{"30":{"tf":1.7320508075688772}}}},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"27":{"tf":1.4142135623730951}}}}}},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"df":3,"docs":{"28":{"tf":1.0},"39":{"tf":1.0},"62":{"tf":1.0}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"c":{"df":1,"docs":{"39":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"r":{"df":1,"docs":{"39":{"tf":1.4142135623730951}}}}}},"l":{"df":1,"docs":{"65":{"tf":1.0}}},"m":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}},"o":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{":":{"1":{"6":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"df":0,"docs":{}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":1,"docs":{"23":{"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":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}}}}}}}}}},"r":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":10,"docs":{"22":{"tf":2.23606797749979},"23":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"38":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":1.7320508075688772},"48":{"tf":1.0},"49":{"tf":1.0},"65":{"tf":1.4142135623730951}}}}},"df":1,"docs":{"68":{"tf":1.7320508075688772}},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}}},"u":{"df":0,"docs":{},"e":{"df":6,"docs":{"20":{"tf":2.6457513110645907},"24":{"tf":1.0},"29":{"tf":2.23606797749979},"66":{"tf":1.4142135623730951},"68":{"tf":1.4142135623730951},"69":{"tf":1.7320508075688772}}}}},"s":{"df":7,"docs":{"1":{"tf":1.4142135623730951},"20":{"tf":1.0},"32":{"tf":2.23606797749979},"33":{"tf":1.0},"35":{"tf":1.0},"51":{"tf":1.0},"65":{"tf":2.0}}},"u":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"df":1,"docs":{"70":{"tf":1.0}}}},"df":0,"docs":{}}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"i":{"d":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"_":{"c":{"df":0,"docs":{},"v":{"df":0,"docs":{},"r":{"<":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{")":{">":{"(":{")":{".":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"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":{},"p":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"_":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"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":{},"f":{"df":3,"docs":{"22":{"tf":3.1622776601683795},"26":{"tf":2.23606797749979},"49":{"tf":2.0}}}}},"df":21,"docs":{"10":{"tf":1.0},"12":{"tf":1.0},"14":{"tf":2.0},"17":{"tf":1.4142135623730951},"18":{"tf":2.0},"22":{"tf":3.3166247903554},"23":{"tf":1.4142135623730951},"27":{"tf":1.4142135623730951},"29":{"tf":1.0},"3":{"tf":1.0},"32":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.0},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"46":{"tf":1.0},"47":{"tf":2.23606797749979},"48":{"tf":1.0},"49":{"tf":1.0},"65":{"tf":1.4142135623730951},"71":{"tf":1.0}},"i":{"d":{"(":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}},"df":0,"docs":{}},"t":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"x":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"y":{")":{".":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"15":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":14,"docs":{"11":{"tf":2.6457513110645907},"17":{"tf":1.4142135623730951},"20":{"tf":1.0},"21":{"tf":2.0},"22":{"tf":2.449489742783178},"23":{"tf":1.4142135623730951},"26":{"tf":1.0},"35":{"tf":1.0},"38":{"tf":1.4142135623730951},"39":{"tf":1.4142135623730951},"47":{"tf":3.872983346207417},"48":{"tf":1.4142135623730951},"59":{"tf":1.0},"65":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}}},"上":{"df":0,"docs":{},"运":{"df":0,"docs":{},"行":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"67":{"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":{"7":{"df":1,"docs":{"68":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"中":{"df":0,"docs":{},"产":{"df":0,"docs":{},"出":{"df":0,"docs":{},"t":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"和":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"8":{"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":{},"t":{"df":1,"docs":{"7":{"tf":1.7320508075688772}}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}},"在":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"实":{"df":0,"docs":{},"行":{"a":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}}},"对":{"df":0,"docs":{},"象":{"df":0,"docs":{},"创":{"df":0,"docs":{},"建":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"48":{"tf":1.0}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.7320508075688772}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"5":{"tf":1.4142135623730951}}}}}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"&":{"&":{"df":0,"docs":{},"时":{"df":0,"docs":{},"的":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"61":{"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":{},"t":{"d":{":":{":":{"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":{"61":{"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":1,"docs":{"22":{"tf":1.0}}}}}}},"直":{"df":0,"docs":{},"到":{"df":0,"docs":{},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}}}}}},"类":{"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":{},"r":{"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":{},"t":{"&":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"":{"df":0,"docs":{},"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":{},"t":{"df":1,"docs":{"49":{"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":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}}},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"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":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"4":{"tf":1.0}}}}}}},"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":1,"docs":{"67":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"67":{"tf":1.0}}}}}}}},"":{"df":0,"docs":{},"因":{"df":0,"docs":{},"此":{"df":0,"docs":{},"调":{"df":0,"docs":{},"用":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"c":{"df":0,"docs":{},"t":{"df":1,"docs":{"68":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"df":0,"docs":{},"s":{"df":0,"docs":{},"声":{"df":0,"docs":{},"音":{"df":0,"docs":{},"响":{"df":0,"docs":{},"铃":{"df":0,"docs":{},"时":{"df":0,"docs":{},"长":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}},"u":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}},"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":2.0}}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}}}}},"n":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":3,"docs":{"1":{"tf":1.0},"14":{"tf":1.4142135623730951},"24":{"tf":1.0}}}}},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"n":{"d":{"df":6,"docs":{"10":{"tf":1.0},"11":{"tf":1.0},"30":{"tf":1.0},"38":{"tf":1.0},"4":{"tf":1.0},"49":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"18":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"df":2,"docs":{"10":{"tf":1.0},"20":{"tf":1.0}}}}}},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"<":{"df":0,"docs":{},"t":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":4,"docs":{"39":{"tf":1.4142135623730951},"40":{"tf":1.0},"41":{"tf":1.0},"42":{"tf":1.0}}}}}}},"j":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"66":{"tf":1.7320508075688772}}}}}},"s":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"p":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"g":{"df":0,"docs":{},"n":{"df":1,"docs":{"17":{"tf":1.0}}}}}}},"p":{"b":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"l":{"d":{"(":{"\"":{"[":{"a":{"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":{}},"df":0,"docs":{}}}},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"s":{"df":0,"docs":{},"s":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},"v":{"df":1,"docs":{"35":{"tf":1.0}}},"w":{"(":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"33":{"tf":1.0},"35":{"tf":1.0}}}}}},"1":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"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":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":1,"docs":{"21":{"tf":1.0}}}},"r":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"1":{"df":1,"docs":{"10":{"tf":1.0}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}},"2":{"df":1,"docs":{"10":{"tf":1.0}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}},"3":{"df":1,"docs":{"10":{"tf":1.0}},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"10":{"tf":1.0}}}}}}}}},"df":0,"docs":{}}}},"s":{"df":27,"docs":{"14":{"tf":1.4142135623730951},"15":{"tf":1.7320508075688772},"18":{"tf":1.0},"21":{"tf":1.0},"22":{"tf":2.6457513110645907},"23":{"tf":1.0},"25":{"tf":1.4142135623730951},"26":{"tf":1.4142135623730951},"28":{"tf":1.0},"29":{"tf":2.0},"32":{"tf":1.0},"33":{"tf":1.0},"34":{"tf":1.0},"35":{"tf":1.0},"36":{"tf":1.0},"38":{"tf":1.4142135623730951},"40":{"tf":1.0},"48":{"tf":1.0},"50":{"tf":1.0},"55":{"tf":1.0},"59":{"tf":2.23606797749979},"60":{"tf":1.4142135623730951},"61":{"tf":1.0},"62":{"tf":3.7416573867739413},"65":{"tf":1.0},"69":{"tf":1.0},"72":{"tf":1.0}},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":1,"docs":{"23":{"tf":2.0}},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"23":{"tf":1.4142135623730951}}},"df":0,"docs":{}}}}}}}}}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"”":{"df":0,"docs":{},"参":{"df":0,"docs":{},"见":{"df":0,"docs":{},"条":{"df":0,"docs":{},"款":{"9":{"df":1,"docs":{"59":{"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":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"9":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"v":{".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}}}},"1":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"2":{"df":0,"docs":{},"{":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"[":{"0":{"df":1,"docs":{"11":{"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":{"10":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"i":{"df":1,"docs":{"69":{"tf":1.4142135623730951}}},"l":{"1":{"df":1,"docs":{"29":{"tf":2.449489742783178}}},"2":{"df":1,"docs":{"29":{"tf":2.449489742783178}}},"a":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"声":{"df":0,"docs":{},"明":{"df":0,"docs":{},"为":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":1.7320508075688772}}}}},"df":0,"docs":{}}},"df":4,"docs":{"23":{"tf":2.0},"54":{"tf":1.0},"58":{"tf":1.7320508075688772},"62":{"tf":2.449489742783178}},"i":{"d":{"df":1,"docs":{"60":{"tf":1.0}}},"df":0,"docs":{}},"s":{"1":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"2":{"df":1,"docs":{"25":{"tf":1.7320508075688772}}},"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"o":{"df":1,"docs":{"29":{"tf":1.0}}}}}}}}}}}}},"u":{"df":10,"docs":{"25":{"tf":2.0},"26":{"tf":1.7320508075688772},"30":{"tf":1.4142135623730951},"38":{"tf":1.0},"40":{"tf":1.4142135623730951},"47":{"tf":1.7320508075688772},"55":{"tf":1.4142135623730951},"59":{"tf":5.477225575051661},"7":{"tf":1.0},"71":{"tf":1.0}},"e":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"t":{"df":1,"docs":{"38":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{},"s":{".":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"26":{"tf":1.0}}},"df":0,"docs":{}}},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":1,"docs":{"26":{"tf":1.4142135623730951}}}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"_":{"c":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"t":{">":{"(":{"c":{"df":0,"docs":{},"i":{"df":1,"docs":{"26":{"tf":1.0}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"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":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"a":{"b":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"f":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"df":1,"docs":{"69":{"tf":1.4142135623730951}}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"r":{"1":{"df":1,"docs":{"39":{"tf":2.23606797749979}}},"2":{"df":1,"docs":{"39":{"tf":1.7320508075688772}}},"df":0,"docs":{},"i":{"a":{"b":{"df":0,"docs":{},"l":{"df":2,"docs":{"63":{"tf":1.0},"68":{"tf":1.0}},"e":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":1,"docs":{"14":{"tf":1.0}}}},"df":0,"docs":{}}}}},"d":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"67":{"tf":1.0}}}}},"c":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":1.4142135623730951}},"的":{"df":0,"docs":{},"最":{"df":0,"docs":{},"后":{"df":0,"docs":{},"结":{"df":0,"docs":{},"果":{"df":0,"docs":{},"是":{"1":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}}}}}}}},"df":8,"docs":{"10":{"tf":1.4142135623730951},"11":{"tf":1.0},"17":{"tf":1.0},"20":{"tf":1.4142135623730951},"26":{"tf":1.7320508075688772},"39":{"tf":1.4142135623730951},"52":{"tf":1.0},"62":{"tf":1.0}},"e":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"18":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"11":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"39":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":5,"docs":{"11":{"tf":1.0},"26":{"tf":1.4142135623730951},"36":{"tf":1.7320508075688772},"39":{"tf":1.4142135623730951},"72":{"tf":1.0}}}}}},"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"i":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{":":{"4":{"df":1,"docs":{"56":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"x":{"df":1,"docs":{"20":{"tf":1.0}}}},"i":{"(":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":1,"docs":{"69":{"tf":2.23606797749979}},"e":{"df":0,"docs":{},"w":{"df":2,"docs":{"12":{"tf":1.0},"68":{"tf":1.0}}}},"r":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"a":{"df":0,"docs":{},"l":{"df":3,"docs":{"25":{"tf":4.69041575982343},"30":{"tf":1.7320508075688772},"32":{"tf":1.0}}}},"df":0,"docs":{}}}},"为":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"到":{"1":{"0":{"df":1,"docs":{"69":{"tf":1.0}}},"1":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}},"m":{"1":{"df":1,"docs":{"50":{"tf":1.0}}},"2":{"df":1,"docs":{"50":{"tf":1.0}}},"df":0,"docs":{}},"o":{"df":0,"docs":{},"i":{"d":{"(":{"&":{")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"*":{")":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"9":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"9":{"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":{"24":{"tf":1.4142135623730951}}}}}}},"df":0,"docs":{}}},">":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":40,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":2.6457513110645907},"15":{"tf":1.7320508075688772},"17":{"tf":1.4142135623730951},"20":{"tf":1.0},"21":{"tf":1.7320508075688772},"22":{"tf":1.4142135623730951},"23":{"tf":1.0},"24":{"tf":3.1622776601683795},"25":{"tf":5.196152422706632},"26":{"tf":1.0},"27":{"tf":2.449489742783178},"28":{"tf":2.0},"32":{"tf":1.4142135623730951},"33":{"tf":2.23606797749979},"35":{"tf":1.7320508075688772},"37":{"tf":1.0},"38":{"tf":1.7320508075688772},"39":{"tf":3.4641016151377544},"4":{"tf":1.7320508075688772},"40":{"tf":2.23606797749979},"41":{"tf":1.7320508075688772},"46":{"tf":2.23606797749979},"49":{"tf":2.23606797749979},"5":{"tf":1.7320508075688772},"51":{"tf":1.4142135623730951},"52":{"tf":1.0},"54":{"tf":1.0},"55":{"tf":1.4142135623730951},"56":{"tf":1.0},"59":{"tf":3.605551275463989},"6":{"tf":1.0},"62":{"tf":1.7320508075688772},"65":{"tf":1.0},"68":{"tf":2.6457513110645907},"7":{"tf":1.4142135623730951},"71":{"tf":3.7416573867739413},"72":{"tf":1.7320508075688772},"8":{"tf":2.0},"9":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":4,"docs":{"24":{"tf":1.4142135623730951},"47":{"tf":1.4142135623730951},"69":{"tf":3.0},"9":{"tf":1.0}}}}}},"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"62":{"tf":1.4142135623730951}}}}}},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"33":{"tf":1.0}}}},"s":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{".":{"b":{"df":0,"docs":{},"e":{"df":0,"docs":{},"g":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"\"":{"df":0,"docs":{},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}}},"5":{"0":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}},"df":0,"docs":{}},"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"o":{"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":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"\"":{"df":0,"docs":{},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.4142135623730951}}}}}}}},"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"f":{"d":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"c":{"df":0,"docs":{},"o":{"df":1,"docs":{"72":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"(":{"\"":{"df":0,"docs":{},"x":{"df":0,"docs":{},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"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":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":1,"docs":{"72":{"tf":1.7320508075688772}}},"t":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"[":{"df":0,"docs":{},"s":{"df":0,"docs":{},"f":{"df":1,"docs":{"68":{"tf":1.0}}}}},"df":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":{"68":{"tf":1.4142135623730951}}},"w":{".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":1,"docs":{"15":{"tf":1.4142135623730951}}}}}}},"p":{"df":0,"docs":{},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"(":{"df":0,"docs":{},"w":{"df":1,"docs":{"27":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"1":{"df":1,"docs":{"50":{"tf":1.0}}},"df":2,"docs":{"15":{"tf":2.0},"27":{"tf":1.0}}},"初":{"df":0,"docs":{},"始":{"df":0,"docs":{},"内":{"df":0,"docs":{},"容":{"df":0,"docs":{},"为":{"1":{",":{"3":{",":{"5":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}},"w":{".":{"a":{"d":{"d":{"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":{"71":{"tf":2.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":1.0}}}}}}}},"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"n":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"e":{"(":{"\"":{"a":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"a":{"df":1,"docs":{"40":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{},"n":{"df":1,"docs":{"40":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"<":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{">":{"(":{"\"":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":0,"docs":{},"n":{"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":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"s":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"1":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}}},"1":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":2.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":3,"docs":{"20":{"tf":2.0},"36":{"tf":1.7320508075688772},"49":{"tf":2.0}}},"2":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"36":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":3,"docs":{"20":{"tf":2.0},"36":{"tf":1.0},"49":{"tf":1.7320508075688772}},"{":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"":{"df":0,"docs":{},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}},"3":{"(":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"20":{"tf":1.4142135623730951}}},"4":{"df":1,"docs":{"20":{"tf":1.0}},"{":{"1":{"0":{"df":1,"docs":{"20":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"转":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"u":{"b":{"df":0,"docs":{},"l":{"df":1,"docs":{"20":{"tf":1.0}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}}},"5":{"(":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":1,"docs":{"20":{"tf":1.0}}},"6":{"df":1,"docs":{"20":{"tf":1.0}},"{":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}}},"7":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"8":{"df":0,"docs":{},"{":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"o":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"(":{"df":0,"docs":{},"w":{"4":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"]":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"f":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"或":{"df":0,"docs":{},"w":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"65":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"df":1,"docs":{"68":{"tf":1.4142135623730951}}}},"k":{"df":0,"docs":{},"e":{"df":0,"docs":{},"u":{"df":0,"docs":{},"p":{"df":1,"docs":{"68":{"tf":1.0}}}}}},"r":{"df":0,"docs":{},"n":{"df":1,"docs":{"25":{"tf":1.0}}}}},"df":13,"docs":{"1":{"tf":1.7320508075688772},"11":{"tf":2.0},"18":{"tf":2.23606797749979},"25":{"tf":2.0},"27":{"tf":1.4142135623730951},"36":{"tf":1.0},"37":{"tf":1.0},"38":{"tf":1.0},"39":{"tf":1.0},"40":{"tf":4.242640687119285},"49":{"tf":2.449489742783178},"62":{"tf":2.23606797749979},"71":{"tf":2.0}},"e":{"a":{"df":0,"docs":{},"k":{"df":3,"docs":{"33":{"tf":1.0},"35":{"tf":2.449489742783178},"69":{"tf":1.0}}}},"df":0,"docs":{}},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"28":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"l":{"df":1,"docs":{"62":{"tf":1.0}}}}},"t":{"df":0,"docs":{},"e":{"df":2,"docs":{"22":{"tf":1.0},"23":{"tf":3.605551275463989}}}}}},"i":{"d":{"df":1,"docs":{"1":{"tf":1.0}},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":2,"docs":{"30":{"tf":1.4142135623730951},"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":3.1622776601683795}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"b":{"df":0,"docs":{},"o":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"20":{"tf":1.0}}}}},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"g":{"df":1,"docs":{"20":{"tf":1.4142135623730951}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"20":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":5,"docs":{"1":{"tf":1.0},"30":{"tf":1.0},"36":{"tf":1.4142135623730951},"38":{"tf":1.4142135623730951},"40":{"tf":1.4142135623730951}}}}}},"df":0,"docs":{}}}},".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":1,"docs":{"36":{"tf":2.23606797749979}}}}},"df":0,"docs":{},"h":{"df":1,"docs":{"36":{"tf":3.4641016151377544}}}},":":{":":{"a":{"d":{"d":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":3.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"d":{"a":{"df":0,"docs":{},"t":{"a":{"df":1,"docs":{"25":{"tf":1.4142135623730951}}},"df":0,"docs":{}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"v":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}},"o":{"df":0,"docs":{},"w":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"k":{"df":1,"docs":{"25":{"tf":2.0}}}}}}}},"df":0,"docs":{},"i":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"df":1,"docs":{"36":{"tf":3.0}}}}}},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}},"o":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"=":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"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":1,"docs":{"33":{"tf":1.7320508075688772}},"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":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{">":{"(":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"24":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}}}}}},"df":0,"docs":{}}}},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}}},"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"df":1,"docs":{"36":{"tf":2.0}}}}}},"df":0,"docs":{}}},"~":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"36":{"tf":2.23606797749979}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}}},"t":{"df":1,"docs":{"22":{"tf":1.0}}}},"d":{"a":{"df":0,"docs":{},"t":{"a":{".":{"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":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{":":{":":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"df":1,"docs":{"54":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}}}},"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.7320508075688772}}}}}}},"df":29,"docs":{"1":{"tf":2.449489742783178},"11":{"tf":2.6457513110645907},"15":{"tf":3.0},"17":{"tf":1.0},"18":{"tf":1.7320508075688772},"20":{"tf":5.916079783099616},"22":{"tf":1.4142135623730951},"24":{"tf":1.4142135623730951},"25":{"tf":3.4641016151377544},"27":{"tf":1.0},"29":{"tf":1.7320508075688772},"30":{"tf":3.3166247903554},"33":{"tf":4.123105625617661},"34":{"tf":2.0},"35":{"tf":3.4641016151377544},"36":{"tf":5.830951894845301},"37":{"tf":1.0},"38":{"tf":2.0},"39":{"tf":2.6457513110645907},"40":{"tf":4.242640687119285},"49":{"tf":3.872983346207417},"54":{"tf":1.0},"59":{"tf":1.7320508075688772},"60":{"tf":1.0},"61":{"tf":1.7320508075688772},"62":{"tf":2.0},"67":{"tf":1.4142135623730951},"71":{"tf":3.872983346207417},"72":{"tf":2.449489742783178}},"f":{"a":{"c":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"i":{"df":1,"docs":{"49":{"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":{},"":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"35":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}},"返":{"df":0,"docs":{},"回":{"df":0,"docs":{},"的":{"df":0,"docs":{},"原":{"df":0,"docs":{},"始":{"df":0,"docs":{},"指":{"df":0,"docs":{},"针":{"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":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"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":{},"针":{"df":0,"docs":{},"完":{"df":0,"docs":{},"美":{"df":0,"docs":{},"转":{"df":0,"docs":{},"发":{"df":0,"docs":{},"给":{"df":0,"docs":{},"e":{"df":0,"docs":{},"m":{"df":0,"docs":{},"p":{"df":0,"docs":{},"l":{"a":{"c":{"df":0,"docs":{},"e":{"_":{"b":{"a":{"c":{"df":0,"docs":{},"k":{"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":{}}}}}}}}}}}}}}}}},"模":{"df":0,"docs":{},"板":{"df":0,"docs":{},"中":{"df":0,"docs":{},"把":{"df":0,"docs":{},"t":{"df":0,"docs":{},"替":{"df":0,"docs":{},"换":{"df":0,"docs":{},"为":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"49":{"tf":1.0}}}}}}}}}}}}},"的":{".":{"c":{"df":0,"docs":{},"p":{"df":0,"docs":{},"p":{"df":1,"docs":{"54":{"tf":1.0}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"里":{"df":0,"docs":{},"面":{"df":0,"docs":{},"的":{"df":0,"docs":{},"值":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"s":{"2":{"df":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}}}}}}},"":{"df":0,"docs":{},"让":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"72":{"tf":1.0}}}}}}},"":{"df":0,"docs":{},"f":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"59":{"tf":1.0}}}}}}}},"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":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":1,"docs":{"60":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}},"是":{"df":0,"docs":{},"个":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"1":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}},"df":0,"docs":{},"l":{"d":{"df":1,"docs":{"27":{"tf":1.0}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"s":{"df":0,"docs":{},"的":{"df":0,"docs":{},"《":{"c":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}},"n":{"d":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"17":{"tf":1.4142135623730951}}}}},"df":0,"docs":{},"e":{"df":1,"docs":{"22":{"tf":1.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"22":{"tf":1.4142135623730951}}}}}}}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}},"r":{"d":{"df":3,"docs":{"18":{"tf":1.7320508075688772},"32":{"tf":1.0},"33":{"tf":1.4142135623730951}}},"df":0,"docs":{},"k":{"df":1,"docs":{"64":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"(":{"df":0,"docs":{},"t":{"df":1,"docs":{"55":{"tf":1.0}}}},"df":0,"docs":{}}},"df":1,"docs":{"55":{"tf":1.0}}}}},"w":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"h":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"(":{"c":{"df":0,"docs":{},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":1,"docs":{"59":{"tf":1.0}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}}}},"df":0,"docs":{}}}}},"df":0,"docs":{}}}}}}}},"p":{"df":0,"docs":{},"w":{"(":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":1,"docs":{"34":{"tf":1.0}}}}}},".":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":0,"docs":{},"r":{"df":1,"docs":{"34":{"tf":1.0}}}}}}},"l":{"df":0,"docs":{},"o":{"c":{"df":0,"docs":{},"k":{"df":1,"docs":{"34":{"tf":1.4142135623730951}}}},"df":0,"docs":{}}}},"df":1,"docs":{"34":{"tf":1.4142135623730951}},"指":{"df":0,"docs":{},"向":{"df":0,"docs":{},"与":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"df":0,"docs":{},"所":{"df":0,"docs":{},"指":{"df":0,"docs":{},"相":{"df":0,"docs":{},"同":{"df":0,"docs":{},"的":{"df":0,"docs":{},"w":{"df":0,"docs":{},"i":{"d":{"df":0,"docs":{},"g":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":0,"docs":{},"。":{"df":0,"docs":{},"r":{"c":{"df":0,"docs":{},"仍":{"df":0,"docs":{},"为":{"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":{},"s":{"df":0,"docs":{},"p":{"df":0,"docs":{},"w":{"1":{"df":1,"docs":{"34":{"tf":1.0}}},"df":0,"docs":{}}}},"抛":{"df":0,"docs":{},"出":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"b":{"a":{"d":{"_":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"即":{"df":0,"docs":{},"使":{"df":0,"docs":{},"它":{"df":0,"docs":{},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"一":{"df":0,"docs":{},"个":{"df":0,"docs":{},"r":{"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":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"v":{"df":1,"docs":{"62":{"tf":1.0}}}}}}}}}}},"添":{"df":0,"docs":{},"加":{"df":0,"docs":{},"进":{"df":0,"docs":{},"v":{"df":0,"docs":{},"w":{"df":1,"docs":{"27":{"tf":1.0}}}}}}},"的":{"df":0,"docs":{},"压":{"df":0,"docs":{},"缩":{"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":{"d":{":":{":":{"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}}}}}}}},"x":{"(":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{},"x":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},",":{"df":0,"docs":{},"i":{"df":1,"docs":{"11":{"tf":1.0}}}},".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"1":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"17":{"tf":1.0}}},"2":{"(":{"2":{"7":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":1,"docs":{"17":{"tf":1.0}}},"3":{"df":2,"docs":{"10":{"tf":1.7320508075688772},"17":{"tf":1.0}}},"4":{"df":1,"docs":{"10":{"tf":1.7320508075688772}}},"5":{"df":1,"docs":{"10":{"tf":1.0}}},"=":{"2":{"7":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"]":{"(":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"58":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":19,"docs":{"1":{"tf":1.4142135623730951},"10":{"tf":3.0},"11":{"tf":2.23606797749979},"13":{"tf":1.0},"17":{"tf":1.4142135623730951},"20":{"tf":2.0},"23":{"tf":1.0},"25":{"tf":2.23606797749979},"27":{"tf":1.4142135623730951},"28":{"tf":2.0},"29":{"tf":1.4142135623730951},"39":{"tf":1.4142135623730951},"4":{"tf":1.0},"49":{"tf":1.4142135623730951},"5":{"tf":2.23606797749979},"58":{"tf":1.7320508075688772},"61":{"tf":1.7320508075688772},"69":{"tf":7.615773105863909},"72":{"tf":2.0}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"14":{"tf":1.7320508075688772}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}},"u":{"df":1,"docs":{"28":{"tf":1.0}},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"u":{"df":1,"docs":{"28":{"tf":1.0}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"z":{"df":0,"docs":{},"z":{"df":0,"docs":{},"i":{"df":1,"docs":{"72":{"tf":1.0}}},"y":{"df":0,"docs":{},"”":{"df":0,"docs":{},"到":{"df":0,"docs":{},"v":{"df":1,"docs":{"72":{"tf":1.0}}}},"在":{"df":0,"docs":{},"v":{"df":0,"docs":{},"s":{"df":0,"docs":{},"内":{"df":0,"docs":{},"构":{"df":0,"docs":{},"造":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{},"为":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}}}}},"和":{"df":0,"docs":{},"i":{"df":3,"docs":{"14":{"tf":1.0},"15":{"tf":1.0},"28":{"tf":1.0}}}},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":2,"docs":{"10":{"tf":1.0},"5":{"tf":1.0}}}}},"左":{"df":0,"docs":{},"值":{"df":0,"docs":{},"":{"df":0,"docs":{},"所":{"df":0,"docs":{},"以":{"df":0,"docs":{},"t":{"df":0,"docs":{},"是":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"df":1,"docs":{"6":{"tf":1.0}}}}}}}}}}}}},"的":{"df":0,"docs":{},"类":{"df":0,"docs":{},"型":{"df":0,"docs":{},"是":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"a":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"z":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"_":{"df":0,"docs":{},"l":{"df":0,"docs":{},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"<":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"df":0,"docs":{},"t":{"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":{},"符":{"df":0,"docs":{},"是":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":1,"docs":{"10":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}},"y":{"(":{"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":{"69":{"tf":1.0}}}}}}}},"x":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}},"y":{"df":0,"docs":{},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}}}},"df":0,"docs":{}}}},".":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"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":{"69":{"tf":1.0}}}}}}}},"x":{".":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"a":{"d":{"df":1,"docs":{"69":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}}},"df":6,"docs":{"13":{"tf":1.0},"20":{"tf":2.449489742783178},"28":{"tf":2.0},"29":{"tf":1.7320508075688772},"58":{"tf":1.4142135623730951},"69":{"tf":4.242640687119285}},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"o":{"df":0,"docs":{},"w":{"df":1,"docs":{"1":{"tf":1.0}}}}}}},"o":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":0,"docs":{},"l":{"df":0,"docs":{},"f":{"df":2,"docs":{"42":{"tf":1.0},"51":{"tf":1.0}}}}}}}}},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":1,"docs":{"14":{"tf":1.7320508075688772}}}}}},"v":{"a":{"df":0,"docs":{},"l":{"df":1,"docs":{"28":{"tf":1.0}},"u":{"df":1,"docs":{"28":{"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":{},"n":{"df":0,"docs":{},"t":{"df":0,"docs":{},"还":{"df":0,"docs":{},"是":{"df":0,"docs":{},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}}}}},"z":{"(":{"0":{"df":1,"docs":{"20":{"tf":1.0}}},"df":0,"docs":{}},"df":2,"docs":{"20":{"tf":2.449489742783178},"72":{"tf":1.0}},"u":{"df":0,"docs":{},"s":{"df":0,"docs":{},"e":{"df":1,"docs":{"48":{"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":{"48":{"tf":1.0}}}}}}},"df":0,"docs":{}}}}}}}}},"title":{"root":{"0":{"df":0,"docs":{},"或":{"df":0,"docs":{},"者":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":1,"docs":{"53":{"tf":1.0}}}}}}}}},"1":{"df":1,"docs":{"3":{"tf":1.0}}},"2":{"df":1,"docs":{"16":{"tf":1.0}}},"3":{"df":1,"docs":{"19":{"tf":1.0}}},"4":{"df":1,"docs":{"31":{"tf":1.0}}},"5":{"df":1,"docs":{"37":{"tf":1.0}}},"6":{"df":1,"docs":{"58":{"tf":1.0}}},"7":{"df":1,"docs":{"63":{"tf":1.0}}},"8":{"df":1,"docs":{"70":{"tf":1.0}}},"a":{"df":0,"docs":{},"p":{"df":0,"docs":{},"i":{"df":1,"docs":{"63":{"tf":1.0}}}},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"&":{"&":{"df":0,"docs":{},"形":{"df":0,"docs":{},"参":{"df":0,"docs":{},"使":{"df":0,"docs":{},"用":{"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"df":0,"docs":{},"以":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"61":{"tf":1.0}}},"df":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":{"10":{"tf":1.0},"16":{"tf":1.0},"17":{"tf":1.0},"18":{"tf":1.0}}}}}},"b":{"df":0,"docs":{},"u":{"df":0,"docs":{},"g":{"df":1,"docs":{"2":{"tf":1.0}}}}},"c":{"df":1,"docs":{"19":{"tf":1.0}},"o":{"df":0,"docs":{},"n":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"_":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"r":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"i":{"df":0,"docs":{},"t":{"df":0,"docs":{},"e":{"df":0,"docs":{},"r":{"df":1,"docs":{"26":{"tf":1.0}}}}}}}}}}}},"df":0,"docs":{}}}}}},"df":3,"docs":{"29":{"tf":1.0},"44":{"tf":1.0},"54":{"tf":1.0}},"e":{"df":0,"docs":{},"x":{"df":0,"docs":{},"p":{"df":0,"docs":{},"r":{"df":1,"docs":{"28":{"tf":1.0}}}}}}}}}}},"d":{"df":0,"docs":{},"e":{"c":{"df":0,"docs":{},"l":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":1,"docs":{"11":{"tf":1.0}}}}}}},"df":0,"docs":{},"l":{"df":0,"docs":{},"e":{"df":0,"docs":{},"t":{"df":1,"docs":{"24":{"tf":1.0}}}}}},"i":{"df":0,"docs":{},"s":{"df":0,"docs":{},"p":{"a":{"df":0,"docs":{},"t":{"c":{"df":0,"docs":{},"h":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}},"df":0,"docs":{},"e":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"m":{"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":{},"u":{"df":0,"docs":{},"m":{"df":1,"docs":{"23":{"tf":1.0}}}}}}}}}}}}}}},"f":{"df":0,"docs":{},"u":{"df":0,"docs":{},"t":{"df":0,"docs":{},"u":{"df":0,"docs":{},"r":{"df":1,"docs":{"68":{"tf":1.0}}}}}}},"i":{"d":{"df":1,"docs":{"13":{"tf":1.0}}},"df":0,"docs":{}},"l":{"a":{"df":0,"docs":{},"m":{"b":{"d":{"a":{"df":2,"docs":{"58":{"tf":1.0},"62":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}},"n":{"df":0,"docs":{},"o":{"df":0,"docs":{},"e":{"df":0,"docs":{},"x":{"c":{"df":0,"docs":{},"e":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":1,"docs":{"27":{"tf":1.0}}}}}},"df":0,"docs":{}}}},"u":{"df":0,"docs":{},"l":{"df":0,"docs":{},"l":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"0":{"df":0,"docs":{},"和":{"df":0,"docs":{},"n":{"df":0,"docs":{},"u":{"df":0,"docs":{},"l":{"df":1,"docs":{"21":{"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":1,"docs":{"25":{"tf":1.0}}},"df":0,"docs":{}}}}}}},"p":{"a":{"df":0,"docs":{},"r":{"a":{"df":0,"docs":{},"m":{"df":0,"docs":{},"t":{"df":0,"docs":{},"y":{"df":0,"docs":{},"p":{"df":3,"docs":{"5":{"tf":1.0},"6":{"tf":1.0},"7":{"tf":1.0}}}}}}},"df":0,"docs":{}}},"df":0,"docs":{}},"s":{"df":0,"docs":{},"t":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"c":{"df":1,"docs":{"54":{"tf":1.0}}},"df":0,"docs":{}}}},"d":{":":{":":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"o":{"df":0,"docs":{},"m":{"df":0,"docs":{},"i":{"c":{"df":0,"docs":{},"":{"df":0,"docs":{},"对":{"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":{},"o":{"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"t":{"df":0,"docs":{},"i":{"df":0,"docs":{},"l":{"df":1,"docs":{"69":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}}}}}}}},"df":0,"docs":{}}}}}},"b":{"df":0,"docs":{},"i":{"df":0,"docs":{},"n":{"d":{"df":1,"docs":{"62":{"tf":1.0}}},"df":0,"docs":{}}}},"df":0,"docs":{},"l":{"a":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"c":{"df":0,"docs":{},"h":{":":{":":{"a":{"df":0,"docs":{},"s":{"df":0,"docs":{},"y":{"df":0,"docs":{},"n":{"c":{"df":1,"docs":{"65":{"tf":1.0}}},"df":0,"docs":{}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"df":0,"docs":{}}}},"df":0,"docs":{}},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"df":0,"docs":{},"m":{"a":{"df":0,"docs":{},"k":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"而":{"df":0,"docs":{},"非":{"df":0,"docs":{},"n":{"df":0,"docs":{},"e":{"df":0,"docs":{},"w":{"df":1,"docs":{"35":{"tf":1.0}}}}}}}},"df":0,"docs":{}}}},"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":{},"v":{"df":0,"docs":{},"e":{"df":0,"docs":{},"和":{"df":0,"docs":{},"s":{"df":0,"docs":{},"t":{"d":{":":{":":{"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":{"38":{"tf":1.0}}},"df":0,"docs":{}}},"df":0,"docs":{}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}}}}}}},"s":{"df":0,"docs":{},"h":{"a":{"df":0,"docs":{},"r":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{"d":{":":{":":{"df":0,"docs":{},"w":{"df":0,"docs":{},"e":{"a":{"df":0,"docs":{},"k":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"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":{},"e":{"d":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"33":{"tf":1.0}}}}}},"df":0,"docs":{}},"df":0,"docs":{}}}},"df":0,"docs":{}}},"t":{"df":0,"docs":{},"h":{"df":0,"docs":{},"r":{"df":0,"docs":{},"e":{"a":{"d":{"df":1,"docs":{"66":{"tf":1.0}}},"df":0,"docs":{}},"df":0,"docs":{}}}}},"u":{"df":0,"docs":{},"n":{"df":0,"docs":{},"i":{"df":0,"docs":{},"q":{"df":0,"docs":{},"u":{"df":0,"docs":{},"e":{"_":{"df":0,"docs":{},"p":{"df":0,"docs":{},"t":{"df":0,"docs":{},"r":{"df":1,"docs":{"32":{"tf":1.0}}}}}},"df":0,"docs":{}}}}}}}},"df":0,"docs":{}},"df":0,"docs":{}},"df":0,"docs":{}}},"t":{"a":{"df":0,"docs":{},"g":{"df":1,"docs":{"46":{"tf":1.0}}}},"df":1,"docs":{"44":{"tf":1.0}},"y":{"df":0,"docs":{},"p":{"df":0,"docs":{},"e":{"d":{"df":0,"docs":{},"e":{"df":0,"docs":{},"f":{"df":1,"docs":{"22":{"tf":1.0}}}}},"df":0,"docs":{}}}}},"v":{"df":0,"docs":{},"o":{"df":0,"docs":{},"i":{"d":{"df":1,"docs":{"68":{"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}}}});