From 38b40fe6fa5e1b0f7c61dde49e09b8a75ec8604f Mon Sep 17 00:00:00 2001 From: luxin Date: Sun, 25 Jul 2021 11:51:06 +0800 Subject: [PATCH] update node level --- .DS_Store | Bin 6148 -> 6148 bytes data/.DS_Store | Bin 0 -> 6148 bytes data/java_tree.txt | 6964 ++++++++++++++++----------------- data/python_tree.txt | 5108 ++++++++++++------------ data/tree_java_mapping.json | 6964 ++++++++++++++++----------------- data/tree_python_mapping.json | 5108 ++++++++++++------------ 6 files changed, 12072 insertions(+), 12072 deletions(-) create mode 100644 data/.DS_Store diff --git a/.DS_Store b/.DS_Store index 2674bb5a0172a2572e83352a87deda61a2c9271d..d7c19338fb3ecbddf6fff2bae9a4ad2c6ad86ffd 100644 GIT binary patch delta 97 zcmZoMXfc=|#>B`mu~2NHo+;yriG|B28;Gz>=4TRNJTX~?sewzpy4uu2N5RC{VDfq< zS;iTY&oap~&fNT#Ns4u210&;Rb`E|HpaGi&nZGkn<`=Q#U;qL}1_q|h0U}$N0Y&N= A3IG5A delta 96 zcmZoMXfc=|#>B)qu~2NHo+;zW&4NtJ87CWvuuSG>6k$9$S%tBITcWz!*u+Ff!PwYz y@;XLY#+j4PFv>H|+Wdx5ighzP2R{c;KTzLy=E?jbmK=->3_!%dusJ|v3o`)ZJQvOY diff --git a/data/.DS_Store b/data/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 ( 难度等级: 无 || 挂载数据: 无 ) ├── java初阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Java的历史和演变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的家世 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 现代编程语言的诞生:C语言 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── C++:下一个阶段 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── Java出现的时机已经成熟 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的诞生 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java改变Internet的方式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java applet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 可移植性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的魔力:字节码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── servlet:服务器端的Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的关键特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简单性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 面向对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向对象概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── Java中的类与对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 类的定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ │ ├── 对象的创建与使用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── 存储到什么地方 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ │ └── Java中的数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 访问控制符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── String类与StringBuffer类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── String类的初始化 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── String类的常见操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── StringBuffer类 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ │ ├── 声明字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ └── 创建字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── System类与Runtime类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── System类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ └── Runtime类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── Math类与Random类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Math类 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── Random类 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ │ ├── Math类概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 常用数学运算方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 包装类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Integer类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── Number类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── Integer --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ │ ├── Boolean --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── Character --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ └── Number --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 日期与时间类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Date类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── Calendar类 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ │ └── JDK 8的日期与时间类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 格式化类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── DateFormat类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── SimpleDateFormat类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ └── DateTimeFormatter类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 用引用操纵对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 永远不需要销毁对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 作用域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 对象的作用域 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 构建一个Java程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 名字可见性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 运用其他构件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 编码风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 访问对象的属性和行为 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 对象的引用 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ │ ├── 对象的销毁 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 打印对象和toString方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ └── ==和equals方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── 类的封装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 如何实现封装 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── 构造方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 构造方法的定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ └── 构造方法的重载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── static关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 静态变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 静态方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 静态代码块 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 类的继承 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 继承的概念 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ │ ├── 重写父类方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ ├── extends关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── 所有类的父类——Object类 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── super限定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 调用父类构造器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── final关键字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── final关键字修饰类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── final关键字修饰方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── final关键字修饰变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── final数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── final方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── final类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 有关final的忠告 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 多态 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 多态概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 对象的类型转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 转机 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 方法调用绑定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 产生正确的行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 可扩展性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 缺陷:“覆盖”私有方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 多态性 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ └── 引用变量的强制类型转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── JDK 8的Lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Lambda表达式入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 结构化程序设计简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 程序的三种基本结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向对象程序设计简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向对象的基本特征 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 方法详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 方法的所属性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 方法的参数传递机制 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 形参个数可变的方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ └── 递归方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 类成员 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 理解类成员 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ │ └── 单例(Singleton)类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── final修饰符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── final成员变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── final局部变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ │ ├── final修饰基本类型变量和引用类型变量的区别 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 可执行“宏替换”的final变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 不可变类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Java 9改进的接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 接口的概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Java 9中接口的定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 接口的继承 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ └── 面向接口编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Java 11增强的Lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Lambda表达式中使用var --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用Lambda表达式调用Arrays的类方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 枚举类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 手动实现枚举类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 枚举类入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 实现接口的枚举类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ └── 包含抽象方法的枚举类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修饰符的适用范围 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 多版本JAR包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── jar命令详解 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 创建可执行的JAR包 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 关于JAR包的技巧 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 健壮性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Java的历史和演变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的家世 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 现代编程语言的诞生:C语言 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── C++:下一个阶段 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── Java出现的时机已经成熟 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的诞生 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java改变Internet的方式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Java applet --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安全性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 可移植性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的魔力:字节码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── servlet:服务器端的Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的关键特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 简单性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 面向对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 面向对象概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ ├── Java中的类与对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 类的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ │ ├── 对象的创建与使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── 存储到什么地方 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ │ │ └── Java中的数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── 访问控制符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── String类与StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── String类的初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── String类的常见操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ │ │ ├── 声明字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ │ └── 创建字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── System类与Runtime类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── System类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ │ └── Runtime类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── Math类与Random类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Math类 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ │ ├── Random类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ │ ├── Math类概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ └── 常用数学运算方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 包装类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Integer类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── Number类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── Integer --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ │ │ ├── Boolean --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ │ ├── Character --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ │ └── Number --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 日期与时间类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Date类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── Calendar类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ │ └── JDK 8的日期与时间类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 格式化类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── DateFormat类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── SimpleDateFormat类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ │ └── DateTimeFormatter类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 用引用操纵对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 永远不需要销毁对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ └── 对象的作用域 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 构建一个Java程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 名字可见性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ └── 运用其他构件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 编码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 访问对象的属性和行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 对象的引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ │ ├── 对象的销毁 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 打印对象和toString方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ └── ==和equals方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ ├── 类的封装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 如何实现封装 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ ├── 构造方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 构造方法的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ └── 构造方法的重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── static关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 静态变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 静态方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 静态代码块 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ ├── 类的继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 继承的概念 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ │ ├── 重写父类方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ │ ├── extends关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── 所有类的父类——Object类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── super限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 调用父类构造器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── final关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── final关键字修饰类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── final关键字修饰方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── final关键字修饰变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── final数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── final方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── final类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 有关final的忠告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 多态 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 多态概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 对象的类型转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 转机 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 方法调用绑定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 产生正确的行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 可扩展性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ └── 缺陷:“覆盖”私有方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 多态性 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ └── 引用变量的强制类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── JDK 8的Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── Lambda表达式入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 结构化程序设计简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 程序的三种基本结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 面向对象程序设计简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 面向对象的基本特征 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 方法详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 方法的所属性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 方法的参数传递机制 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 形参个数可变的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ └── 递归方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 类成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 理解类成员 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ │ └── 单例(Singleton)类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── final修饰符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── final成员变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── final局部变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ │ ├── final修饰基本类型变量和引用类型变量的区别 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 可执行“宏替换”的final变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 不可变类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Java 9改进的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 接口的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── Java 9中接口的定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 接口的继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ │ └── 面向接口编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Java 11增强的Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Lambda表达式中使用var --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 使用Lambda表达式调用Arrays的类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 手动实现枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 枚举类入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 实现接口的枚举类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ │ └── 包含抽象方法的枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 修饰符的适用范围 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 多版本JAR包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── jar命令详解 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 创建可执行的JAR包 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ └── 关于JAR包的技巧 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 健壮性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 体系结构中立 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 解释执行和高性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 动态性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的演变历程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java SE 8 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ └── 文化革新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java综述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 面向对象编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 两种范式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 抽象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OOP三原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 面向对象基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Java核心类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StringJoiner --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包装类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 记录类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 第一个简单程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 输入程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 编译程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 深入分析第一个示例程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 第二个简短程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 两种控制语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── if语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── for循环 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用代码块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java类库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据类型、变量和数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java是强类型化的语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 整型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── byte --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── short --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── int --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── long --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── 浮点型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── float --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── double --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 字符型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 布尔型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入分析字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 整型字面值 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 浮点型字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔型字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符型字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字符串字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变量的声明 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 动态初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 变量的作用域和生存期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型转换和强制类型转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java的自动类型转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 强制转换不兼容的类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 表达式中的自动类型提升 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一维数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 多维数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 另一种数组声明语法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 关于字符串的一些说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串的连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 连接字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 连接其他数据类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 提取字符串信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取字符串长度 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 获取指定位置的字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 获取子字符串索引位置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 判断字符串首尾内容 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 获取字符数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 判断子字符串是否存在 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串的操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 截取字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 字符串替换 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 字符串分割 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 大小写转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 去除空白内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取子字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 去除空格 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 判断字符串的开始与结尾 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 按字典顺序比较两个字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 字母大小写转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可变字符串StringBuffer类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不可变String --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 重载"+"与StringBuilder --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 无意识的递归 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── String上的操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── printf() --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── System.out.format() --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Formatter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 格式化说明符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Formatter转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── String.format() --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 正则表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── 创建正则表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 限定符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pattern和Matcher --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── split() --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 替换操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── reset() --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 正则表达式与Java I/O --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 扫描输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scanner定界符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用正则表达式扫描 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StringTokenizer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 获取字符串信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字符串查找 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 获取指定索引位置的字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 格式化字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 常规类型格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 子串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 拼接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不可变字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 检测字符串是否相等 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 空串与Null串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 码点与代码单元 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── String API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 阅读联机API文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 构建字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向C/C++程序员提供指针方面的说明 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 数组的定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 数组的常见操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 整数类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 浮点类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 布尔类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数组的概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建一维数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 给一维数组赋值 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 获取数组长度 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 一维数组的使用场景 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 不规则数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数组的基本操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 遍历数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 填充和批量替换数组元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 填充替换数组元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 数组查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 数组是第一级对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 返回一个数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 创建测试数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Arrays.fill() --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 数据生成器(Generator) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 从Generator中创建数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── Arrays实用功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 复制数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数组元素的比较 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 数组排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 在已排序的数组中查找 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 数组排序算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 冒泡排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 直接选择排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 反转排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 数值中使用下画线分隔 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用var定义变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内存中的数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 基本类型数组的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 引用类型数组的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 操作数组的工具类:Arrays --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数组应用举例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── char类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── boolean类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 声明数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 访问数组元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── for each循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 数组拷贝 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 算术运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 基本算术运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 求模运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 算术与赋值复合运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 自增与自减运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 位运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 位逻辑运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 左移 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 右移 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无符号右移 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 位运算符与赋值的组合 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── 关系运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 布尔逻辑运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 赋值运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── “?”运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 运算符的优先级 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用圆括号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自增和自减运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 扩展后的赋值运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 三目运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 数值类型之间的转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 关系和boolean运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 括号与运算符级别 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── 控制语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的选择语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── if语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── switch语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 迭代语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── while语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── do-while语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── for语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── for循环的for-each版本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 嵌套的循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 跳转语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 使用break语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用continue语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── return语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ ├── 类 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 类的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类的一般形式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 一个简单的类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 声明对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 为对象引用变量赋值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为Box类添加方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 返回值 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 添加带参数的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构造函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── this关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 在构造器中调用构造器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── static的含义 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 垃圾回收 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── finalize方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 堆栈类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 基本成员默认值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 成员变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 成员方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 权限修饰符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 操作对象的Objects工具类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── ThreadLocalRandom与Random --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── BigDecimal类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 方法和类的深入分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 重载方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 区分重载方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 涉及基本类型的重载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 以返回值区分重载方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 将对象用作参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 参数传递的深入分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 返回对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 递归 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 访问控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Java类包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类名冲突 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 完整的类路径 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 创建包 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 理解static --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── final介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 重新审视数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 嵌套类和内部类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 成员内部类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 局部内部类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 静态内部类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 匿名内部类 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 再访工厂方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建内部类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 链接到外部类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 使用.this与.new --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 接口内部的类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 从多层嵌套类中访问外部类的成员 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内部类的继承 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 内部类可以被覆盖吗 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 内部类标识符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用内部类访问对象状态 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 内部类的特殊语法规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内部类是否有用、必要和 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 由外部方法访问变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── String类介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用命令行参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── varargs:可变长度参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 重载varargs方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── varargs方法与模糊性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 继承 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 继承的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 成员访问与继承 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个更实际的例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 超类变量可以引用子类对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用super关键字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用super调用超类的构造函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── super的另一种用法 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 创建多级继承层次 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构造函数的调用时机 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 方法重写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 动态方法调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 重写方法的目的 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 应用方法重写 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 使用抽象类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 抽象类的作用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 在继承中使用final关键字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用final关键字阻止重写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用final关键字阻止继承 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Object类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── “是一个”(is-a)与“像是一个”(is-like-a)关系 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Object:所有类的超类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Object类型的变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── hashCode方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 泛型数组列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 声明数组列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 访问数组列表元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 类型化与原始数组列表的 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 参数数量可变的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 继承的设计技巧 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 包和接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包查找与CLASSPATH --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 一个简短的包示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代码组织 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建独一无二的包名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定制工具库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用import改变行为 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 对使用包的忠告 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类的导入 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 在包中增加类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包访问 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ └── 设置类路径 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 访问保护 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 导入包 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 定义接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 实现接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 嵌套接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 应用接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接口中的变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接口可以扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 完全解耦 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── Java中的“多重继承” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过继承来扩展接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 组合接口时的名字冲突 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 适配接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 接口中的域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 初始化接口中的域 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 接口的属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 解决默认方法冲突 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Comparator接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 对象克隆 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 默认接口方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认方法的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 一个更加实用的例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在接口中使用静态方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 关于包和接口的最后说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 异常处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 异常处理的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 未捕获的异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── try块 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 异常处理程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 栈轨迹 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 重新抛出异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 异常链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── f?inally子句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── try-with-Resources语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 分析堆栈轨迹元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用try和catch --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 多条catch子句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 嵌套的try语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── throw --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── throws --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── finally --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的内置异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建自己的异常子类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 链式异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 3个近期添加的异常特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── throws关键字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── throw关键字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自定义异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 捕捉处理异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── try-catch代码块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在方法中抛出异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用throws关键字抛出异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 使用throw关键字抛出异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java常见异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 运行时异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 异常处理机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用try...catch捕获异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 异常类的继承体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 访问异常信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 使用finally回收资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 异常处理的嵌套 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── Java 9增强的自动关闭资源的try语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Checked异常和Runtime异常体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用throws声明抛出异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 方法重写时声明抛出异常的限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用throw抛出异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义异常类 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 使用throw语句抛出异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── Java的异常跟踪栈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常处理规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不要过度使用异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 避免使用Catch All语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Java的异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── NullPointerException --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 使用断言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JDK Logging --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Commons Logging --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用Log4j --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ └── 使用SLF4J和Logback --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── 多线程编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java线程模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程优先级 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 同步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 消息传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Thread类和Runnable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 主线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 实现Runnable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 扩展Thread类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 选择一种创建方式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Thread类实现多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Runnable接口实现多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Callable接口实现多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 三种实现多线程方式的对比分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 后台线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 创建多个线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用isAlive和join方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程优先级 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 同步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用同步方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── synchronized语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 竞态条件的一个例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 竞态条件详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 锁对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 条件对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── synchronized关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 监视器概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── volatile字段 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 线程局部变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 挂起、恢复与停止线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 获取线程的状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 建立一个进程 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 运行一个进程 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 进程句柄 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ └── 多线程的优势 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程的生命周期及状态转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 新建和就绪状态 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 运行和阻塞状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 线程死亡 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程的调度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程休眠 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 线程让步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 线程插队 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 多线程同步 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 同步锁 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 多线程通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Executor接口实现线程池管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CompletableFuture类实现线程池管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用线程池管理线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用ForkJoinPool利用多CPU --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 线程简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 实现线程的两种方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 继承Thread类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 操作线程的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的中断 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 线程的礼让 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程的同步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程同步机制 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 释放同步监视器的锁定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 同步锁(Lock) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 控制线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── join线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 线程睡眠:sleep --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 改变线程优先级 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 传统的线程通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Condition控制线程通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用阻塞队列(BlockingQueue)控制线程通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程组和未处理的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 线程相关类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ThreadLocal类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 包装线程不安全的集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 线程安全的集合类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── Java 9新增的发布-订阅框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 枚举、自动装箱与注解(元数据) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 枚举 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 枚举的基础知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── values和valueOf方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java枚举是类类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 枚举继承自Enum类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 另一个枚举示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型封装器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Character封装器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Boolean封装器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 数值类型封装器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自动装箱 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自动装箱与方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 表达式中发生的自动装箱/拆箱 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔型和字符型数值的自动装箱/拆箱 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自动装箱/拆箱有助于防止错误 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 一些警告 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 注解(元数据) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注解的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指定保留策略 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 体系结构中立 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 解释执行和高性能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 分布式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 动态性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的演变历程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java SE 8 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── 文化革新 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java综述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 面向对象编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 两种范式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 抽象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── OOP三原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 面向对象基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Java核心类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── StringJoiner --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 包装类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 记录类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 第一个简单程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 输入程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 编译程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 深入分析第一个示例程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 第二个简短程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 两种控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── if语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── for循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 使用代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Java类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据类型、变量和数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java是强类型化的语言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基本类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 整型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── byte --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── short --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── int --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── long --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ ├── 浮点型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── float --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── double --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── 字符型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 布尔型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 深入分析字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 整型字面值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 浮点型字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布尔型字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符型字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字符串字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 变量的声明 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 动态初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 变量的作用域和生存期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型转换和强制类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Java的自动类型转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 强制转换不兼容的类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 表达式中的自动类型提升 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一维数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 多维数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 另一种数组声明语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 关于字符串的一些说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串的连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 连接字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── 连接其他数据类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 提取字符串信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 获取字符串长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 获取指定位置的字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ ├── 获取子字符串索引位置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 判断字符串首尾内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ ├── 获取字符数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 判断子字符串是否存在 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 截取字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 字符串替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ ├── 字符串分割 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 大小写转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 去除空白内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 获取子字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 去除空格 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 判断字符串的开始与结尾 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 按字典顺序比较两个字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 字母大小写转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 可变字符串StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不可变String --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 重载"+"与StringBuilder --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 无意识的递归 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── String上的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 格式化输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── printf() --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── System.out.format() --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Formatter类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 格式化说明符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Formatter转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── String.format() --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ ├── 创建正则表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 限定符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Pattern和Matcher --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── split() --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 替换操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── reset() --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 正则表达式与Java I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 扫描输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Scanner定界符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 用正则表达式扫描 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── StringTokenizer --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 获取字符串信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 字符串查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 获取指定索引位置的字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 格式化字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 常规类型格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 子串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 拼接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不可变字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 检测字符串是否相等 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 空串与Null串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 码点与代码单元 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── String API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 阅读联机API文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 构建字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 向C/C++程序员提供指针方面的说明 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 数组的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 数组的常见操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 整数类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 浮点类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字符类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 布尔类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数组的概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建一维数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 给一维数组赋值 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 获取数组长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 一维数组的使用场景 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 不规则数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数组的基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 遍历数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 填充和批量替换数组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 填充替换数组元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 数组查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 数组是第一级对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 返回一个数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 创建测试数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Arrays.fill() --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 数据生成器(Generator) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 从Generator中创建数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── Arrays实用功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 复制数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数组元素的比较 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 数组排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 在已排序的数组中查找 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 数组排序算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 冒泡排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 直接选择排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 反转排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 数值中使用下画线分隔 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用var定义变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 内存中的数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 基本类型数组的初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 引用类型数组的初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 操作数组的工具类:Arrays --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数组应用举例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── char类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── boolean类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 声明数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 访问数组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── for each循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 数组拷贝 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 算术运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 基本算术运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 求模运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 算术与赋值复合运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 自增与自减运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 位运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 位逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 左移 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 右移 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 无符号右移 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 位运算符与赋值的组合 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ ├── 关系运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 布尔逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── “?”运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 运算符的优先级 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用圆括号 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 自增和自减运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 扩展后的赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 三目运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 数值类型之间的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 关系和boolean运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 括号与运算符级别 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── 控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的选择语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── if语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── switch语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 迭代语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── while语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── do-while语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── for语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── for循环的for-each版本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 嵌套的循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 跳转语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 使用break语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 使用continue语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── return语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ ├── 类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 类的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类的一般形式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 一个简单的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 声明对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 为对象引用变量赋值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 为Box类添加方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 添加带参数的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构造函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── this关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 在构造器中调用构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── static的含义 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── finalize方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 堆栈类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 基本成员默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 成员变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 成员方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 权限修饰符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 操作对象的Objects工具类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── ThreadLocalRandom与Random --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── BigDecimal类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 方法和类的深入分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 重载方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 区分重载方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 涉及基本类型的重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 以返回值区分重载方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 将对象用作参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 参数传递的深入分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 返回对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 递归 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 访问控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Java类包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类名冲突 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 完整的类路径 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 创建包 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 理解static --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── final介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 重新审视数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 嵌套类和内部类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 成员内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 局部内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 静态内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 匿名内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ └── 再访工厂方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 链接到外部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 使用.this与.new --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 接口内部的类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 从多层嵌套类中访问外部类的成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内部类的继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 内部类可以被覆盖吗 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 内部类标识符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用内部类访问对象状态 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 内部类的特殊语法规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内部类是否有用、必要和 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 由外部方法访问变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── String类介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用命令行参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── varargs:可变长度参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 重载varargs方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── varargs方法与模糊性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 继承的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 成员访问与继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一个更实际的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 超类变量可以引用子类对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用super关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用super调用超类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── super的另一种用法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 创建多级继承层次 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构造函数的调用时机 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 方法重写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 动态方法调度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 重写方法的目的 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 应用方法重写 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 使用抽象类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 抽象类的作用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 在继承中使用final关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用final关键字阻止重写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用final关键字阻止继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Object类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── “是一个”(is-a)与“像是一个”(is-like-a)关系 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Object:所有类的超类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Object类型的变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── hashCode方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 泛型数组列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 声明数组列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 访问数组列表元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 类型化与原始数组列表的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 参数数量可变的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 继承的设计技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 包和接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 包查找与CLASSPATH --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 一个简短的包示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 代码组织 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建独一无二的包名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定制工具库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用import改变行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 对使用包的忠告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 包名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类的导入 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 在包中增加类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 包访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ └── 设置类路径 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 访问保护 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 导入包 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 定义接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 实现接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 嵌套接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 应用接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 接口中的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 接口可以扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 完全解耦 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── Java中的“多重继承” --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通过继承来扩展接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 组合接口时的名字冲突 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 适配接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 接口中的域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 初始化接口中的域 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 接口的属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 默认方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 解决默认方法冲突 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Comparator接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 对象克隆 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 默认接口方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 默认方法的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 一个更加实用的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在接口中使用静态方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 关于包和接口的最后说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 异常处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 异常处理的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 未捕获的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── try块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 异常处理程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 栈轨迹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 重新抛出异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 异常链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── f?inally子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── try-with-Resources语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 分析堆栈轨迹元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用try和catch --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 多条catch子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 嵌套的try语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── throw --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── throws --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── finally --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的内置异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建自己的异常子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 链式异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 3个近期添加的异常特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── throws关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── throw关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 自定义异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 捕捉处理异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── try-catch代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在方法中抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用throws关键字抛出异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 使用throw关键字抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java常见异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 运行时异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 异常处理机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用try...catch捕获异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 异常类的继承体系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 访问异常信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 使用finally回收资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 异常处理的嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ └── Java 9增强的自动关闭资源的try语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Checked异常和Runtime异常体系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用throws声明抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 方法重写时声明抛出异常的限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用throw抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 自定义异常类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 使用throw语句抛出异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── Java的异常跟踪栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常处理规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不要过度使用异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 避免使用Catch All语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Java的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── NullPointerException --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── 使用断言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用JDK Logging --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Commons Logging --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用Log4j --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── 使用SLF4J和Logback --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── 多线程编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Java线程模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 消息传递 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── Thread类和Runnable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 主线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 创建线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 实现Runnable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 扩展Thread类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 选择一种创建方式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── Thread类实现多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Runnable接口实现多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Callable接口实现多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 三种实现多线程方式的对比分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 后台线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 创建多个线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用isAlive和join方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用同步方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── synchronized语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 竞态条件的一个例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 竞态条件详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 锁对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 条件对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── synchronized关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 监视器概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── volatile字段 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 线程局部变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 挂起、恢复与停止线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 获取线程的状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 建立一个进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) +│ │ │ │ ├── 运行一个进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ │ └── 进程句柄 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ │ │ └── 多线程的优势 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程的生命周期及状态转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 新建和就绪状态 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 运行和阻塞状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 线程死亡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程的调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程休眠 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 线程让步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 线程插队 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 多线程同步 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 同步锁 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) +│ │ ├── 多线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Executor接口实现线程池管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CompletableFuture类实现线程池管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用线程池管理线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 使用ForkJoinPool利用多CPU --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) +│ │ ├── 线程简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 实现线程的两种方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 继承Thread类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 操作线程的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程的中断 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 线程的礼让 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程的同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程同步机制 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 释放同步监视器的锁定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 同步锁(Lock) --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 控制线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── join线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 线程睡眠:sleep --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ └── 改变线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 传统的线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Condition控制线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 使用阻塞队列(BlockingQueue)控制线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程组和未处理的异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 线程相关类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── ThreadLocal类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 包装线程不安全的集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 线程安全的集合类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── Java 9新增的发布-订阅框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 枚举、自动装箱与注解(元数据) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 枚举 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 枚举的基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── values和valueOf方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Java枚举是类类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 枚举继承自Enum类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 另一个枚举示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Character封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Boolean封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 数值类型封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 自动装箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 自动装箱与方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 表达式中发生的自动装箱/拆箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布尔型和字符型数值的自动装箱/拆箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 自动装箱/拆箱有助于防止错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 一些警告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 注解(元数据) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 注解的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 指定保留策略 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 在运行时使用反射获取注解 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── AnnotatedElement接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用默认值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标记注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 单成员注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 内置注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 重复注解 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── AnnotatedElement接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 标记注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 单成员注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 内置注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 重复注解 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ ├── I/O、applet以及其他主题 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── I/O的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字节流和字符流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字节流概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字节流读写文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 文件的拷贝 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字节流的缓冲区 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 字节缓冲流 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字符流概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 字符流操作文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 转换流 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 字节流和字符流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 字节流概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字节流读写文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 文件的拷贝 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字节流的缓冲区 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 字节缓冲流 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字符流概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ │ │ │ ├── 字符流操作文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 转换流 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) │ │ │ └── 预定义流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 读取控制台输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 读取字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) @@ -684,216 +684,216 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── 缓冲器的细节 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 内存映射文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 文件加锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 泛型 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 什么是泛型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 一个简单的泛型示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型只使用引用类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于不同类型参数的泛型类型是不同的 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 泛型提升类型安全性的原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 带两个类型参数的泛型类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型类的一般形式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 有界类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用通配符参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建泛型方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 原始类型与遗留代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型类层次 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用泛型超类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型子类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 泛型层次中的运行时类型比较 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 强制转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 重写泛型类的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型的类型推断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 擦除 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模糊性错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用泛型的一些限制 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 对静态成员的一些限制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 对泛型数组的一些限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 对泛型异常的限制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 定义泛型类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型的用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一个元组类库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一个栈类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── RandomList --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 利用类型参数推断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可变参数与泛型方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 用于Generator的泛型方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个通用的Generator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简化元组的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个Set实用工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义泛型方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── “菱形”语法与泛型构造器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 类型推断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建复杂模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 擦除的神秘之处 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── C++的方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 迁移的可兼容性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 边界处的动作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 擦除的补偿 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 泛型数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 边界 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通配符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编译器有多聪明? --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 抗变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无界通配符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 捕获转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自限定的类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 离奇的循环泛型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自限定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 参数协变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 动态类型安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 混用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── C++中的混用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 与接口混用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用装饰器模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 与动态代理混用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 潜在类型机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 缺乏潜在类型机制的补偿 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将一个方法应用于序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 当你并未碰巧拥有正确的接口时 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 用适配器仿真潜在类型机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 将函数对象用作策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型的常规用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型的高级用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编译时不检查类型的异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Java 9增强的“菱形”语法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 从泛型类派生子类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型通配符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用类型通配符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设定类型通配符的上限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设定类型通配符的下限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设定泛型形参的上限 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 通配符概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通配符的超类型限定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无限定通配符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 通配符捕获 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写泛型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 擦拭法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── extends通配符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── super通配符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── lambda表达式的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数式接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 几个lambda表达式示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 块lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型函数式接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 作为参数传递lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式与异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式和变量捕获 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 方法引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 静态方法的方法引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 泛型中的方法引用 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 构造函数引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 预定义的函数式接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式的语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构造器引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 再谈Comparator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java开发入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Java语言的特点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDK的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是JDK --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 安装JDK --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── JDK目录介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 系统环境变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PATH环境变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── CLASSPATH环境变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── 第一个Java程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编辑Java源代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编译Java程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 根据CLASSPATH环境变量定位类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的运行机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Eclipse开发工具 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Eclipse概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Eclipse的安装与启动 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 使用Eclipse进行程序开发 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Java编程基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java的基本语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java的基本语法格式 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── Java中的注释 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java中的关键字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Java中的标识符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Java中的变量与常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变量的定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 变量的数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变量的类型转换32目录Java基础入门(第2版)2.2.4变量的作用域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java中的常量 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 指数记数法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java中的运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 逻辑运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 条件运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 选择结构语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── if条件语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── switch条件语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 循环结构语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── do…while循环语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ └── for循环语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── 集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 集合概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Collection接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── List接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── List接口简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ArrayList集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── LinkedList集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Collection集合遍历 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Iterator遍历集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── foreach遍历集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── JDK 8的forEach遍历集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Set接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Set接口简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HashSet集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── TreeSet集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Map接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Map接口简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── HashMap集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Map集合遍历 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── TreeMap集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── Properties集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 常用工具类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Collections工具类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── Arrays工具类 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 聚合操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 泛型 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 什么是泛型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 一个简单的泛型示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 泛型只使用引用类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 基于不同类型参数的泛型类型是不同的 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 泛型提升类型安全性的原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 带两个类型参数的泛型类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型类的一般形式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 有界类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用通配符参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建泛型方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 原始类型与遗留代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型类层次 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用泛型超类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 泛型子类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 泛型层次中的运行时类型比较 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 强制转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 重写泛型类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型的类型推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 擦除 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模糊性错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用泛型的一些限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 对静态成员的一些限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 对泛型数组的一些限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 对泛型异常的限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 定义泛型类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 一个元组类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 一个栈类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── RandomList --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 利用类型参数推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 可变参数与泛型方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 用于Generator的泛型方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一个通用的Generator --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 简化元组的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一个Set实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义泛型方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── “菱形”语法与泛型构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 类型推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构建复杂模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 擦除的神秘之处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── C++的方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 迁移的可兼容性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 边界处的动作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 擦除的补偿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 泛型数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 边界 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 编译器有多聪明? --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 抗变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 无界通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 捕获转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 自限定的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 离奇的循环泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 自限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 参数协变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 动态类型安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── C++中的混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 与接口混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用装饰器模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 与动态代理混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 潜在类型机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 缺乏潜在类型机制的补偿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 将一个方法应用于序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 当你并未碰巧拥有正确的接口时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 用适配器仿真潜在类型机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 将函数对象用作策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型的常规用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型的高级用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 编译时不检查类型的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Java 9增强的“菱形”语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 从泛型类派生子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用类型通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 设定类型通配符的上限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 设定类型通配符的下限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 设定泛型形参的上限 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 通配符概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通配符的超类型限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 无限定通配符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 通配符捕获 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 擦拭法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── extends通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── super通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── lambda表达式简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── lambda表达式的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 几个lambda表达式示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 块lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 作为参数传递lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── lambda表达式与异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── lambda表达式和变量捕获 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 方法引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 静态方法的方法引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 泛型中的方法引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 构造函数引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 预定义的函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── lambda表达式的语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构造器引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 再谈Comparator --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java开发入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 什么是Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Java语言的特点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JDK的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 什么是JDK --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 安装JDK --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── JDK目录介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 系统环境变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PATH环境变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── CLASSPATH环境变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ ├── 第一个Java程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 编辑Java源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 编译Java程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 根据CLASSPATH环境变量定位类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的运行机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Eclipse开发工具 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Eclipse概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Eclipse的安装与启动 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 使用Eclipse进行程序开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Java编程基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java的基本语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java的基本语法格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── Java中的注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java中的关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Java中的标识符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Java中的变量与常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 变量的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 变量的数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 变量的类型转换32目录Java基础入门(第2版)2.2.4变量的作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java中的常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 指数记数法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java中的运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 条件运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 选择结构语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── if条件语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── switch条件语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 循环结构语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── do…while循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ └── for循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── 集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 集合概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Collection接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── List接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── List接口简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ArrayList集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── LinkedList集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Collection集合遍历 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Iterator遍历集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── foreach遍历集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── JDK 8的forEach遍历集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Set接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Set接口简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── HashSet集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── TreeSet集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Map接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Map接口简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── HashMap集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── Map集合遍历 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── TreeMap集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── Properties集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 常用工具类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Collections工具类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── Arrays工具类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 聚合操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 聚合操作简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 创建Stream流对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Stream流的常用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── Parallel Stream(并行流) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java集合框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集合接口与实现分离 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 泛型实用方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集合框架中的接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 链表 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 数组列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 散列集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 树集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 优先队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本映射操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 更新映射条目 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 映射视图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 弱散列映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 链接散列集与映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 枚举集与映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 标识散列映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 算法 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 二分查找 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简单算法 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 批操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 编写自己的算法 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 遗留的集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 属性映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 栈 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 位集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java集合简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写equals方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写equals和hashCode --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 使用TreeMap --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 使用Properties --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用Deque --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Java集合框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集合接口与实现分离 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 泛型实用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集合框架中的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 链表 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 数组列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 散列集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 树集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 优先队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 基本映射操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 更新映射条目 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 映射视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 弱散列映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 链接散列集与映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 枚举集与映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 标识散列映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 算法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 二分查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 简单算法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 批操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 编写自己的算法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 遗留的集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 属性映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 栈 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 位集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java集合简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写equals方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写equals和hashCode --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 使用TreeMap --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 使用Properties --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用Deque --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── I/O流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── I/O流概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── File类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -911,7 +911,7 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── RandomAccessFile --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ ├── 对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 寻找类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列化的控制 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 序列化的控制 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) │ │ │ └── 使用“持久性” --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── NIO概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) @@ -925,224 +925,224 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ └── NIO. --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Path接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── Files工具类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── GUI(图形用户接口) --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Swing概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Swing特点 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Swing包 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 常用Swing组件概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing顶级容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JFrame --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ └── JDialog --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── BorderLayout --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FlowLayout --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── GridLayout --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── FlowLayout流布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── BorderLayout边界布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── GridLayout网格布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 边界布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 网格布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── GridBagLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── BoxLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── GUI(图形用户接口) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Swing概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Swing特点 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Swing包 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 常用Swing组件概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing顶级容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JFrame --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ └── JDialog --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── BorderLayout --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── FlowLayout --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── GridLayout --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── FlowLayout流布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── BorderLayout边界布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── GridLayout网格布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 流布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 边界布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 网格布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── GridBagLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── BoxLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件处理机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 事件处理机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── Swing常用事件处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java事件模型的流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件适配器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java事件模型的流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 事件适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 使用内部类实现监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用外部类实现监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类本身作为事件监听器类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用外部类实现监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 类本身作为事件监听器类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 匿名内部类实现监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 基本事件处理概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简洁地指定监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 简洁地指定监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 适配器类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── AWT事件继承层次 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing常用组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 面板组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文本组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── JTextField文本框组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── JPasswordField密码框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── AWT事件继承层次 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Swing常用组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 面板组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文本组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── JTextField文本框组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── JPasswordField密码框组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── JTextArea文本域组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文本框组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 密码框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 文本框组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 密码框组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ └── 文本域组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标签组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 按钮组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── JButton按钮组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── JRadioButton单选按钮组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 标签组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 按钮组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── JButton按钮组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── JRadioButton单选按钮组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ │ ├── JCheckBox复选框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 提交按钮组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 单选按钮组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 提交按钮组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 单选按钮组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ └── 复选框组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 下拉框组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 菜单组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing组件的整合使用——QQ登录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 案例分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 案例实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── JavaFX图形用户界面工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JavaFX概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JavaFX开发环境配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── JavaFX基础入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── JavaFX可视化管理工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JDBC --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 什么是JDBC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDBC常用API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Driver接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── DriverManager类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Connection接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Statement接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── PreparedStatement接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── ResultSet接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── JDBC编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC的编程步骤 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 实现第一个JDBC程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ └── 案例——使用JDBC实现QQ登录 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) +│ │ │ ├── 下拉框组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 菜单组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing组件的整合使用——QQ登录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 案例分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 案例实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── JavaFX图形用户界面工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JavaFX概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JavaFX开发环境配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── JavaFX基础入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── JavaFX可视化管理工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JDBC --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 什么是JDBC --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JDBC常用API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Driver接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── DriverManager类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Connection接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── Statement接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── PreparedStatement接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ └── ResultSet接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── JDBC编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JDBC的编程步骤 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 实现第一个JDBC程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ └── 案例——使用JDBC实现QQ登录 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) │ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络编程基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 网络通信协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── IP地址和端口号 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── InetAddress --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── UDP与TCP协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── UDP通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── UDP通信简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── DatagramPacket --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── DatagramSocket --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── UDP网络程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── UDP案例——聊天程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── TCP通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TCP通信简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── ServerSocket --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Socket --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 简单的TCP网络程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 多线程的TCP网络程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── TCP案例——文件上传 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 网络编程的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 网络基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── Java的基本网络支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用URLDecoder和URLEncoder --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── URL、URLConnection和URLPermission --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基于TCP协议的网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TCP协议基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用ServerSocket创建TCP服务器端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Socket进行通信 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 记录用户信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 半关闭的Socket --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NIO实现非阻塞Socket通信 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用AIO实现非阻塞通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基于UDP协议的网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── UDP协议基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用DatagramSocket发送、接收数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用MulticastSocket实现多点广播 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 网络编程基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 网络通信协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── IP地址和端口号 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── InetAddress --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── UDP与TCP协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── UDP通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── UDP通信简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── DatagramPacket --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── DatagramSocket --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── UDP网络程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── UDP案例——聊天程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ ├── TCP通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── TCP通信简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ │ │ ├── ServerSocket --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ ├── Socket --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 简单的TCP网络程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 多线程的TCP网络程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── TCP案例——文件上传 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 网络编程的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 网络基础知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── Java的基本网络支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用URLDecoder和URLEncoder --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── URL、URLConnection和URLPermission --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 基于TCP协议的网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── TCP协议基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用ServerSocket创建TCP服务器端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Socket进行通信 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 记录用户信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 半关闭的Socket --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用NIO实现非阻塞Socket通信 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用AIO实现非阻塞通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 基于UDP协议的网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── UDP协议基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用DatagramSocket发送、接收数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 使用MulticastSocket实现多点广播 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 使用代理服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 直接使用Proxy创建连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 使用ProxySelector自动选择代理服务器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── Java 11标准化的HTTP Client --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 发送同步GET请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 发送带请求体的请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 发送异步请求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WebSocket客户端支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 基于WebSocket的多人实时聊天 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 初识Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java的版本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JavaAPI文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java的应用领域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 怎样学好Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java API文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java代码助手 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用IDE --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用IDE练习插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 搭建Java环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDK的下载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置JDK --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 测试开发环境 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── Windows系统的JDK环境 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Eclipse开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Eclipse简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 下载Eclipse --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ └── Eclipse工作台 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Eclipse的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Java类文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用编辑器编写程序代码 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 运行Java程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 程序调试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 难点解答 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDK常用的基本组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置环境变量后,javac运行正常,但编译的时候仍找不到文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── Java中变量一定要初始化吗? --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── switch多分支语句后expression表达式的数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多维数组的长度 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── StringBuffer与String的不同之处 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 把数据抽象成类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 局部变量和全局变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 类的三大特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么情况下会使用匿名内部类? --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 异常的使用原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注意随机数的取值范围 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── “装箱”与“拆箱” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集合的使用场合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集合的元素数量是变化的 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Swing组件的层级关系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布局的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 输入/输出流的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的核心方法:run方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) +│ │ └── Java 11标准化的HTTP Client --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 发送同步GET请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ ├── 发送带请求体的请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 发送异步请求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── WebSocket客户端支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 基于WebSocket的多人实时聊天 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 初识Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java的版本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JavaAPI文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java的应用领域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 怎样学好Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java API文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java代码助手 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用IDE --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用IDE练习插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 搭建Java环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JDK的下载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 配置JDK --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 测试开发环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── Windows系统的JDK环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Eclipse开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Eclipse简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 下载Eclipse --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ └── Eclipse工作台 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Eclipse的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建Java类文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用编辑器编写程序代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 运行Java程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 程序调试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 难点解答 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JDK常用的基本组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 配置环境变量后,javac运行正常,但编译的时候仍找不到文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── Java中变量一定要初始化吗? --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── switch多分支语句后expression表达式的数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 多维数组的长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── StringBuffer与String的不同之处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 把数据抽象成类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 局部变量和全局变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 类的三大特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 什么情况下会使用匿名内部类? --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 异常的使用原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 注意随机数的取值范围 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── “装箱”与“拆箱” --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集合的使用场合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集合的元素数量是变化的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Swing组件的层级关系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布局的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 输入/输出流的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 线程的核心方法:run方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) │ │ │ ├── 线程的启动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无法连接数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SQL语句的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 无法连接数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SQL语句的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── AWT与Swing组件的区别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java语言的特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 简单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 分布性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 解释型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 动态 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── Java语言基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 代码注释 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 文档注释 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 注释的插入 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 类注释 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 方法注释 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 字段注释 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 通用注释 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包注释 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 注释抽取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据类型转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 隐式转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 显式转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 隐式类型转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 显式类型转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ └── Java主类结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 包声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写主方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 导入API类库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 流程控制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 程序结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 条件语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── switch多分支语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 循环语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── foreach语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 循环语句的嵌套 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 复合语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 循环控制 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── 循环 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 中断控制流程的语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── if判断 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── switch多重选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── while循环 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ ├── 面向对象编程基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 类的主方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 面向对象核心技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 类的多态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向上转型 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 忘记对象类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 向下转型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── instanceof关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Swing程序设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── Java语言的特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 简单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 分布性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 解释型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 动态 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── Java语言基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 代码注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 文档注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 注释的插入 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 类注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 方法注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 字段注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 通用注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 包注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 注释抽取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数据类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 隐式转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 显式转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 隐式类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 显式类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ └── Java主类结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 包声明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写主方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 导入API类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 流程控制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 程序结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 条件语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── switch多分支语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── foreach语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 循环语句的嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 复合语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 循环控制 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ ├── 循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 中断控制流程的语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── if判断 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── switch多重选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── while循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ ├── 面向对象编程基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 类的主方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 面向对象核心技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 类的多态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 向上转型 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 忘记对象类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 向下转型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── instanceof关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Swing程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 常用窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── JFrame窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── JDialog对话框窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -1151,55 +1151,55 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── JPanel面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ │ ├── JScrollPane滚动面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── JScrollPane面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 列表组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 列表组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── JComboBox下拉列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── JList列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 下拉列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 动作事件监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 键盘事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 鼠标事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 窗体事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 捕获窗体焦点变化事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 捕获窗体状态变化事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 捕获其他窗体事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 监听事件简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 焦点事件监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 动作事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 键盘事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 鼠标事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ ├── 窗体事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 捕获窗体焦点变化事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 捕获窗体状态变化事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 捕获其他窗体事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) +│ │ ├── 监听事件简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ └── 焦点事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ ├── I/O(输入/输出) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 流概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 输入流 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 输出流 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 文件输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FileInputStream类与FileOutputStream类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── FileReader类与FileWriter类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 带缓冲的输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── BufferedInputStream类与BufferedOutputStream类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── BufferedReader类与BufferedWriter类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 带缓存的输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── ZIP压缩输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 压缩文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 解压缩ZIP文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 流概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 输入流 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 输出流 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ ├── 文件输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── FileInputStream类与FileOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── FileReader类与FileWriter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 带缓冲的输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── BufferedInputStream类与BufferedOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── BufferedReader类与BufferedWriter类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 带缓存的输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 数据输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── ZIP压缩输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 压缩文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── 解压缩ZIP文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) │ ├── 使用JDBC操作数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDBC概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC-ODBC桥 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── JDBC概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── JDBC-ODBC桥 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── JDBC技术 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ │ └── JDBC驱动程序的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 数据库操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据库基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 动态查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 添加、修改、删除记录 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 数据库基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 数据库的种类及功能 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── SQL语言 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 向数据库发送SQL语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 处理查询结果集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 顺序查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模糊查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 数据库操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 数据库基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 数据查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 动态查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 添加、修改、删除记录 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 数据库基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 什么是数据库 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 数据库的种类及功能 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── SQL语言 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 向数据库发送SQL语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ ├── 处理查询结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 顺序查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 模糊查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ └── 预处理语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ ├── Java绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── Java绘图基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -1221,13 +1221,13 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ └── Graphics2D --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ ├── 坦克大战游戏 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) │ │ ├── 开发背景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 系统开发环境要求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 系统功能设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 系统功能结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 系统业务流程 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ ├── 系统开发环境要求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 系统功能设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 系统功能结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 系统业务流程 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) │ │ ├── 枚举设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 方向枚举 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 游戏模式枚举 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 游戏模式枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 坦克类型枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 墙块类型枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 公共类设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -1248,443 +1248,443 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 主窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 登录面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ │ ├── 显示关卡面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 游戏面板 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ └── 游戏核心功能设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 碰撞检测 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 刷新帧 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 对象导论 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 抽象过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 每个对象都有一个接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 每个对象都提供服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 被隐藏的具体实现 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 复用具体实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 伴随多态的可互换对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 单根继承结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 参数化类型(范型) --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 游戏面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) +│ │ └── 游戏核心功能设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 碰撞检测 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── 刷新帧 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ ├── 对象导论 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 抽象过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 每个对象都有一个接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 每个对象都提供服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 被隐藏的具体实现 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 复用具体实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 伴随多态的可互换对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 单根继承结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 参数化类型(范型) --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 并发编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 更简单的打印语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Java操作符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 优先级 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 赋值 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 算术操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 一元加、减操作符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 自动递增和递减 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 关系操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 测试对象的等价性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 逻辑操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 短路 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 按位操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 移位操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 三元操作符if-else --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符串操作符 + 和 += --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用操作符时常犯的错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型转换操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 截尾和舍入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 提升 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── Java没有“sizeof” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 控制执行流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── true和false --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── if-else --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── do-while --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 逗号操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Foreach语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── return --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── break和continue --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 臭名昭著的“goto” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── switch --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ ├── 初始化与清理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用构造器确保初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 缺省构造器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 成员初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 指定初始化 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 构造器初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 初始化顺序 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 静态数据的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 显式的静态初始化 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 数组初始化 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 可变参数列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 枚举类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本enum特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 将静态导入用于enum --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 向enum中添加新方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 覆盖enum的方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── switch语句中的enum --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── values()的神秘之处 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现但不继承随机选取 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 为组织而使用接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用EnumSet替代标志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用EnumMap --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 常数相关的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用enum的职责链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用enum的状态机 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多路分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用enum分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用EnumMap分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用枚举类型设置常量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用枚举类型的优势 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 类初始化块 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 访问权限控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java访问权限修饰词 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包访问权限 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── public:接口访问权限 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── private: 你无法访问 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ └── protected:继承访问权限 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 类的访问权限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 复用类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 组合语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 继承语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 初始化基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建代理对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 代理类的特性 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 在组合与继承之间选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── protected关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 持有对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 添加一组元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 容器的打印 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── List --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 迭代器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── ListIterator --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── LinkedList --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── Stack --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── Set --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Map --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Queue --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── PriorityQueue --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Collection和Iterator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Foreach与迭代器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 适配器方法惯用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 通过异常处理错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 概念 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 创建自定义异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java标准异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 特例: RuntimeException(运行时异常) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用finally进行清理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── finally用来做什么 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 在return中使用finally --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 缺憾:异常丢失 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构造器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用构造器执行初始化 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 构造器重载 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 异常匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 其他可选方式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 历史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 观点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 把异常传递给控制台 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 把“受检查异常”转换为“不受检查的异常” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 异常使用指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 类型信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Class对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类字面常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 泛化的Class引用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 新的转型语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型转换前先做检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用类字面常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 动态instanceof --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 递归计数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 注册工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── instanceof与Class的等价性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 反射:运行时类信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类方法抽取器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Class类与Java反射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问构造方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 访问成员变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 访问方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Annotation功能 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 定义Annotation类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 访问Annotation信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 声明异常入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 利用反射分析类的能力 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 使用反射在运行时分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用反射编写泛型数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 访问字段 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 调用方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 调用构造方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 获取继承关系 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 动态代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 空对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 模拟对象与桩 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 容器深入研究 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 完整的容器分类法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 填充容器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 一种Generator解决方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Map生成器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用Abstract类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Collection的功能方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可选操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 未获支持的操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── List的功能方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 优先级队列 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ └── 双向队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 理解Map --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 性能 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── SortedMap --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── LinkedHashMap --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 散列与散列码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 理解hashCode() --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 为速度而散列 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 覆盖hashCode() --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 选择接口的不同实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 性能测试框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对List的选择 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 微基准测试的危险 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对Set的选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 对Map的选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 实用方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── List的排序和查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设定Collection或Map为不可修改 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Collection或Map的同步控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 持有引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── WeakHashMap --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java 1.0/1.1 的容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Vector和Enumeration --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── Hashtable --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── BitSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java I/O系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 更简单的打印语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Java操作符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 优先级 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 赋值 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── 算术操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 一元加、减操作符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 自动递增和递减 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 关系操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 测试对象的等价性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 逻辑操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 短路 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 按位操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 移位操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 三元操作符if-else --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字符串操作符 + 和 += --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用操作符时常犯的错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型转换操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 截尾和舍入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 提升 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── Java没有“sizeof” --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 控制执行流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── true和false --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ ├── if-else --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── do-while --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 逗号操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Foreach语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── return --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── break和continue --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 臭名昭著的“goto” --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── switch --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ ├── 初始化与清理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用构造器确保初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 缺省构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 成员初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 指定初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ ├── 构造器初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 初始化顺序 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 静态数据的初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 显式的静态初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 数组初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 可变参数列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 枚举类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 基本enum特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 将静态导入用于enum --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 向enum中添加新方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 覆盖enum的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── switch语句中的enum --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── values()的神秘之处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 实现但不继承随机选取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 为组织而使用接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用EnumSet替代标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用EnumMap --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 常数相关的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用enum的职责链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用enum的状态机 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 多路分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用enum分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用EnumMap分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用枚举类型设置常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用枚举类型的优势 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 类初始化块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 访问权限控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java访问权限修饰词 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 包访问权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── public:接口访问权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── private: 你无法访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ └── protected:继承访问权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 类的访问权限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 复用类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 组合语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 继承语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 初始化基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建代理对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 代理类的特性 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 在组合与继承之间选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── protected关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 持有对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基本概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 添加一组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 容器的打印 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── List --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── ListIterator --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── LinkedList --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── Stack --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── Set --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Map --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Queue --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── PriorityQueue --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Collection和Iterator --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Foreach与迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 适配器方法惯用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 通过异常处理错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 概念 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 创建自定义异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java标准异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 特例: RuntimeException(运行时异常) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用finally进行清理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── finally用来做什么 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 在return中使用finally --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 缺憾:异常丢失 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用构造器执行初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── 构造器重载 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 异常匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 其他可选方式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 观点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 把异常传递给控制台 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 把“受检查异常”转换为“不受检查的异常” --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 异常使用指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 类型信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Class对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类字面常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 泛化的Class引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 新的转型语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型转换前先做检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用类字面常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 动态instanceof --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 递归计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 注册工厂 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── instanceof与Class的等价性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 反射:运行时类信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类方法抽取器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Class类与Java反射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 访问构造方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 访问成员变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── 访问方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Annotation功能 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 定义Annotation类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ └── 访问Annotation信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 声明异常入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 利用反射分析类的能力 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 使用反射在运行时分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用反射编写泛型数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 访问字段 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 调用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 调用构造方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 获取继承关系 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 动态代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 空对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 模拟对象与桩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 容器深入研究 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 完整的容器分类法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 填充容器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 一种Generator解决方案 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Map生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用Abstract类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Collection的功能方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 可选操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 未获支持的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── List的功能方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 优先级队列 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ └── 双向队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 理解Map --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 性能 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── SortedMap --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── LinkedHashMap --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 散列与散列码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 理解hashCode() --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 为速度而散列 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 覆盖hashCode() --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 选择接口的不同实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 性能测试框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 对List的选择 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 微基准测试的危险 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 对Set的选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 对Map的选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 实用方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── List的排序和查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 设定Collection或Map为不可修改 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Collection或Map的同步控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 持有引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── WeakHashMap --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Java 1.0/1.1 的容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Vector和Enumeration --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── Hashtable --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── BitSet --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java I/O系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 输入和输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── InputStream类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── OutputStream类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 读取输入 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 添加属性和有用的接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过FilterInputStream从InputStream读取 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 通过FilterOutPutStream向OutputStream写入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Reader和Writer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据的来源和去处 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 添加属性和有用的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通过FilterInputStream从InputStream读取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 通过FilterOutPutStream向OutputStream写入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Reader和Writer --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数据的来源和去处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 更改流的行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 未发生变化的类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 未发生变化的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── I/O流的典型使用方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 缓冲的输入文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 从内存中输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化的内存输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基本文件输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 缓冲的输入文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 从内存中输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 格式化的内存输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 基本文件输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 存储和恢复数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读取和写入随机访问文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 读取和写入随机访问文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ └── 管道流 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 文件读写的实用工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 文件读写的实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 读取二进制文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 标准I/O --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 标准I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 从标准输入中读取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将System.out转换成PrintWriter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 标准I/O重定向 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 进程控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 压缩 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用GZIP进行简单压缩 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 用Zip进行多文件存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Java档案文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── XML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Preferences --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 元注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写注解处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注解元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 缺省值限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 将System.out转换成PrintWriter --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 标准I/O重定向 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 进程控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 压缩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用GZIP进行简单压缩 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 用Zip进行多文件存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Java档案文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Preferences --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基本语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 元注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写注解处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 注解元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 缺省值限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 生成外部文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注解不支持继承 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 实现处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用apt处理注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 将观察者模式用于apt --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基于注解的单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将@Unit用于泛型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不需要任何“套件” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现@Unit --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 移除测试代码 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 限定重写父类方法:@Override --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java 9增强的@Deprecated --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 抑制编译器警告:@SuppressWarnings --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── “堆污染”警告与Java 9增强的@SafeVarargs --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 并发 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 并发的多面性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 更快的执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 改进代码设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基本的线程机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义任务让步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Executor --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 休眠 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 让步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 编码的变体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 术语 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 创建有响应的用户界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 共享受限资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不正确地访问资源 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 解决共享资源竞争 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 原子性与易变性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 原子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 临界资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在其他对象上同步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 线程局部存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 终结任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰性花园 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在阻塞时终结 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 中断 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 检查中断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程之间的协作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── wait()与notifyAll() --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── notify()与notifyAll() --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 生产者与消费者 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 任务间使用管道进行输入/输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 死锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 新类库中的构件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── CountDownLatch --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── DelayQueue --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PriorityBlockingQueue --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用ScheduledExecutor的温室控制器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Semaphore --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Exchange --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 仿真 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 银行出纳仿真 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 饭店仿真 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 分发工作 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 性能调优 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 比较各类互斥技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 免锁容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 乐观锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── ReadWriteLock --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 活动对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 进阶读物 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 新建线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 可运行线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 阻塞和等待线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 终止线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 守护线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 未捕获异常的处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程安全的集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 阻塞队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 映射条目的原子更新 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对并发散列映射的批操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 并发集视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 写数组的拷贝 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 并行数组算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 较早的线程安全集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 异步计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 可完成Future --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 组合可完成Future --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 用户界面回调中的长时间运行任务 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 图形化用户界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 一个显示框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建按钮 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 捕获事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 文本区域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 控制布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── GridBagLayout --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 绝对定位 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── BoxLayout --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing事件模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件与监听器的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 跟踪多个事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing组件一览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 按钮 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 图标 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 工具提示 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 文本域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 边框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 滚动面板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个迷你编辑器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 复选框 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 单选按钮 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 组合框(下拉列表) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 列表框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 页签面板 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 消息框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建菜单栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建弹出式菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定制个性化菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 菜单构建 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 菜单项中的图标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 弹出菜单 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 键盘助记符和加速器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启用和禁用菜单项 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 工具条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 弹出式菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 绘图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选项对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建对话框 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 数据交换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件对话框 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Swing组件上的HTML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 滑块与进度条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 选择外观 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 树、表格和剪贴板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 传递文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用系统剪贴板传递图像 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用本地剪贴板传递对象引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 通过系统剪贴板传递Java对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JNLP与Java Web Start --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 可视化编程与JavaBean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JavaBean是什么 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 使用Introspector抽取出BeanInfo --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个更复杂的Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 把Bean打包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对更复杂的Bean的支持 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 更多有关Bean的读物 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing的可替换选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用Flex构建Flash Web客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Hello, Flex --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 编译MXML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MXML与ActionScript --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 效果与风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 连接到Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据模型与数据绑定 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 构建和部署 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 创建SWT应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装SWT --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Hello, SWT --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 根除冗余代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 页签面板、按钮和事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 图形 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── SWT中的并发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── SWT还是Swing --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 熟悉Eclipse开发工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 熟悉Eclipse --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Eclipse的中文语言包 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 透视图与视图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 菜单栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 工具栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── “包资源管理器”视图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── “控制台”视图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 数字处理类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数字格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数学运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 随机数 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── Math.random方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 大数字运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── BigInteger --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── BigDecimal --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── 核心技术 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 类的高级特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── final变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集合类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集合类概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── List集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── List接口的实现类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 改进的List接口和ListIterator接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ArrayList和Vector实现类 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 固定长度的List --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Set集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── HashSet类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── LinkedHashSet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── TreeSet类 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── EnumSet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 各Set实现类的性能分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── Map集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Map接口的实现类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 注解不支持继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 实现处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用apt处理注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 将观察者模式用于apt --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基于注解的单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 将@Unit用于泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不需要任何“套件” --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 实现@Unit --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 移除测试代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 限定重写父类方法:@Override --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java 9增强的@Deprecated --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 抑制编译器警告:@SuppressWarnings --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── “堆污染”警告与Java 9增强的@SafeVarargs --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 并发 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 并发的多面性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 更快的执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 改进代码设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 基本的线程机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 定义任务让步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Executor --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 休眠 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 让步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 编码的变体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 创建有响应的用户界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 共享受限资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 不正确地访问资源 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 解决共享资源竞争 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 原子性与易变性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 原子类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 临界资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 在其他对象上同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 线程局部存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 终结任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 装饰性花园 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 在阻塞时终结 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 中断 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 检查中断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程之间的协作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── wait()与notifyAll() --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── notify()与notifyAll() --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) +│ │ │ ├── 生产者与消费者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 任务间使用管道进行输入/输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 新类库中的构件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── CountDownLatch --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── DelayQueue --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PriorityBlockingQueue --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用ScheduledExecutor的温室控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Semaphore --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── Exchange --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 仿真 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 银行出纳仿真 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 饭店仿真 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 分发工作 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 性能调优 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 比较各类互斥技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 免锁容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 乐观锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── ReadWriteLock --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 活动对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 进阶读物 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 新建线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 可运行线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 阻塞和等待线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 终止线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 守护线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程名 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 未捕获异常的处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程安全的集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 映射条目的原子更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 对并发散列映射的批操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 并发集视图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 写数组的拷贝 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 并行数组算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 较早的线程安全集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 异步计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 可完成Future --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 组合可完成Future --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 用户界面回调中的长时间运行任务 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── 图形化用户界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Swing基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 一个显示框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 创建按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 捕获事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 文本区域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 控制布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── GridBagLayout --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 绝对定位 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── BoxLayout --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Swing事件模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 事件与监听器的类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 跟踪多个事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Swing组件一览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 图标 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 工具提示 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) +│ │ │ ├── 文本域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 边框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 滚动面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 一个迷你编辑器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 复选框 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 单选按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 组合框(下拉列表) --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 列表框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 页签面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 消息框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建菜单栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建弹出式菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 定制个性化菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 菜单构建 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 菜单项中的图标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 弹出菜单 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 键盘助记符和加速器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 启用和禁用菜单项 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 工具条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 弹出式菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 选项对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建对话框 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 数据交换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 文件对话框 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Swing组件上的HTML --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 滑块与进度条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 选择外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 树、表格和剪贴板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 传递文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用系统剪贴板传递图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用本地剪贴板传递对象引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 通过系统剪贴板传递Java对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── JNLP与Java Web Start --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 可视化编程与JavaBean --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── JavaBean是什么 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 使用Introspector抽取出BeanInfo --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 一个更复杂的Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 把Bean打包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 对更复杂的Bean的支持 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 更多有关Bean的读物 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Swing的可替换选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 用Flex构建Flash Web客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Hello, Flex --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 编译MXML --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── MXML与ActionScript --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 效果与风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 连接到Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 数据模型与数据绑定 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 构建和部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 创建SWT应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 安装SWT --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Hello, SWT --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 根除冗余代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 页签面板、按钮和事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 图形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── SWT中的并发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── SWT还是Swing --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 熟悉Eclipse开发工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 熟悉Eclipse --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装Eclipse的中文语言包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 透视图与视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 菜单栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 工具栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── “包资源管理器”视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── “控制台”视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 数字处理类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数字格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数学运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 随机数 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── Math.random方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 大数字运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── BigInteger --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── BigDecimal --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── 核心技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 类的高级特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── final变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集合类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集合类概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── List集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── List接口的实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 改进的List接口和ListIterator接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── ArrayList和Vector实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ └── 固定长度的List --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Set集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── HashSet类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── LinkedHashSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── TreeSet类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ ├── EnumSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 各Set实现类的性能分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── Map集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Map接口的实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ └── 网络通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 网络程序设计基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 局域网与因特网 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) @@ -1696,8 +1696,8 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ └── UDP程序设计基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── DatagramPacket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── DatagramSocket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 高级应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing表格组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 高级应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing表格组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 利用JTable类直接创建表格 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ │ │ ├── 创建表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 定制表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -1709,121 +1709,121 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 定制树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 维护树模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 处理展开节点事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing其他高级组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Swing其他高级组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 高级组件面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 分割面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ │ ├── 选项卡面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 桌面面板和内部窗体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件选择器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 桌面面板和内部窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 文件选择器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 文件选择对话框 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ │ │ └── 使用文件过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 系统托盘 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 桌面集成控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 系统托盘 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 桌面集成控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 高级事件处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 选项事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 表格模型事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── AWT绘图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 绘制图形 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 绘图颜色与画笔属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 画笔属性 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 绘制文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设置字体 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 显示文字 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── 绘制图片 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 画图的实现原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用Graphics类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 理解面向对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── UML(统一建模语言)介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用例图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 组件图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 顺序图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 活动图 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ └── 状态机图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java的面向对象特征 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java基础类库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 与用户互动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 运行Java程序的参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用Scanner获取键盘输入 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 系统相关 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── Java 11改进的国际化与格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java国际化的思路 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── Java支持的国家和语言 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 完成程序国际化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用MessageFormat处理包含占位符的字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用类文件代替资源文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java 9新增的日志API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NumberFormat格式化数字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用DateFormat格式化日期、时间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用SimpleDateFormat格式化日期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java 8新增的日期、时间格式器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用DateTimeFormatter完成格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用DateTimeFormatter解析字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java集合概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java 11增强的Collection和Iterator接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Lambda表达式遍历集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Iterator遍历集合元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 使用Lambda表达式遍历Iterator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用foreach循环遍历集合元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Predicate操作集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用Stream操作集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Queue集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PriorityQueue实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Deque接口与ArrayDeque实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── LinkedList实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 各种线性表的性能分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 增强的Map集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java 8为Map新增的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 改进的HashMap和Hashtable实现类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── LinkedHashMap实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Properties读写属性文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SortedMap接口和TreeMap实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── WeakHashMap实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IdentityHashMap实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── EnumMap实现类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 各Map实现类的性能分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── HashSet和HashMap的性能选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 操作集合的工具类:Collections --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 排序操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 同步控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 设置不可变集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java 9新增的不可变集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── AWT绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 绘制图形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 绘图颜色与画笔属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 画笔属性 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 绘制文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 设置字体 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 显示文字 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ │ ├── 绘制图片 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 画图的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用Graphics类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── 理解面向对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── UML(统一建模语言)介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用例图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 组件图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 部署图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 顺序图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 活动图 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ └── 状态机图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Java的面向对象特征 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java基础类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 与用户互动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 运行Java程序的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用Scanner获取键盘输入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 系统相关 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── Java 11改进的国际化与格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java国际化的思路 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── Java支持的国家和语言 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 完成程序国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用MessageFormat处理包含占位符的字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用类文件代替资源文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java 9新增的日志API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用NumberFormat格式化数字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用DateFormat格式化日期、时间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用SimpleDateFormat格式化日期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Java 8新增的日期、时间格式器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用DateTimeFormatter完成格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用DateTimeFormatter解析字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java集合概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java 11增强的Collection和Iterator接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Lambda表达式遍历集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Iterator遍历集合元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 使用Lambda表达式遍历Iterator --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用foreach循环遍历集合元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Predicate操作集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用Stream操作集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Queue集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PriorityQueue实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Deque接口与ArrayDeque实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── LinkedList实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 各种线性表的性能分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 增强的Map集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java 8为Map新增的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 改进的HashMap和Hashtable实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── LinkedHashMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Properties读写属性文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SortedMap接口和TreeMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── WeakHashMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── IdentityHashMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── EnumMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 各Map实现类的性能分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── HashSet和HashMap的性能选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 操作集合的工具类:Collections --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 排序操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 同步控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 设置不可变集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Java 9新增的不可变集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── AWT编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── AWT容器 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) │ │ ├── AWT常用组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 基本组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 对话框(Dialog) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AWT菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 右键菜单 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── AWT菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 右键菜单 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ ├── 处理位图 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── Image抽象类和BufferedImage实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── Java 9增强的ImageIO --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ └── 拖放功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 拖放目标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 拖放源 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Swing编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing基本组件的用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Swing编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing基本组件的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── AWT组件的Swing实现 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 为组件设置边框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Swing组件的双缓冲和键盘驱动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JToolBar创建工具条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JFileChooser和JColorChooser --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用JOptionPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing中的特殊容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JSplitPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JTabbedPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用JLayeredPane、JDesktopPane和JInternalFrame --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing简化的拖放功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java 7新增的Swing功能 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用JLayer装饰组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 为组件设置边框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Swing组件的双缓冲和键盘驱动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用JToolBar创建工具条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用JFileChooser和JColorChooser --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用JOptionPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing中的特殊容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用JSplitPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用JTabbedPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用JLayeredPane、JDesktopPane和JInternalFrame --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing简化的拖放功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java 7新增的Swing功能 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用JLayer装饰组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 创建透明、不规则形状窗口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JProgressBar、ProgressMonitor和BoundedRangeModel创建进度条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建进度条 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用JProgressBar、ProgressMonitor和BoundedRangeModel创建进度条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建进度条 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ └── 创建进度对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JSlider和BoundedRangeModel创建滑动条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JSpinner和SpinnerModel创建微调控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用JSlider和BoundedRangeModel创建滑动条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用JSpinner和SpinnerModel创建微调控制器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 使用JList、JComboBox创建列表框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 不强制存储列表项的ListModel和ComboBoxModel --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 强制存储列表项的DefaultListModel和DefaultComboBoxModel --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -1835,115 +1835,115 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 使用DefaultTreeCellRenderer改变节点外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 扩展DefaultTreeCellRenderer改变节点外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 实现TreeCellRenderer改变节点外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JTable和TableModel创建表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用JTable和TableModel创建表格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── TableModel和监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── TableColumnModel和监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 实现排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 绘制单元格内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 编辑单元格内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 编辑单元格内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 使用JFormattedTextField和JTextPane创建格式文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 监听Document的变化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 使用JPasswordField --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 使用JFormattedTextField --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ ├── 使用JEditorPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 使用JTextPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 注解(Annotation) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDK的元注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用@Retention --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用@Target --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用@Documented --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用@Inherited --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自定义注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 提取注解信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用注解的示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ └── 编译时处理注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 注解(Annotation) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JDK的元注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用@Retention --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用@Target --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用@Documented --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用@Inherited --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 自定义注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 提取注解信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用注解的示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ └── 编译时处理注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 输入/输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 理解Java的IO流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流的分类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 流的概念模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 输入/输出流体系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理流的用法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 输入/输出流体系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 推回输入流 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 理解Java的IO流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 流的分类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ └── 流的概念模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 输入/输出流体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 处理流的用法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 输入/输出流体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 推回输入流 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ ├── 重定向标准输入/输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── Java虚拟机读写其他进程的数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java 9改进的对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列化的含义和意义 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用对象流实现序列化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 对象引用的序列化 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── Java 9改进的对象序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 序列化的含义和意义 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用对象流实现序列化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 对象引用的序列化 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ │ ├── Java 9增加的过滤功能 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 自定义序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 另一种自定义序列化机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 版本 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ └── NIO.2的功能和用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Path、Paths和Files核心API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用WatchService监控文件变化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 访问文件属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java程序设计概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 自定义序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 另一种自定义序列化机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 版本 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ └── NIO.2的功能和用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Path、Paths和Files核心API --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用WatchService监控文件变化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 访问文件属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Java程序设计概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Java程序设计平台 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── Java“白皮书”的关键术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 解释型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java发展简史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 关于Java的常见误解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java程序设计环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装Java开发工具包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设置JDK --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 安装库源文件和文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用命令行工具 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用集成开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── JShell --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java的基本程序设计结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一个简单的Java应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 大数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 泛型程序设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型变量的限定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 限制与局限性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 运行时类型查询只适用于原始类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不能创建参数化类型的数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Varargs警告 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不能构造泛型数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型类的静态上下文中类型变量无效 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 可以取消对检查型异常的检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 注意擦除后的冲突 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型类型的继承规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 反射和泛型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 泛型Class类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Class参数进行类型匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 虚拟机中的泛型类型信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 类型字面量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 图形用户界面程序设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java用户界面工具包简史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java“白皮书”的关键术语 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 解释型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java发展简史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 关于Java的常见误解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java程序设计环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装Java开发工具包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 设置JDK --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 安装库源文件和文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用命令行工具 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用集成开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── JShell --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java的基本程序设计结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 一个简单的Java应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 大数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 泛型程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型变量的限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 限制与局限性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 运行时类型查询只适用于原始类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不能创建参数化类型的数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Varargs警告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不能构造泛型数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 泛型类的静态上下文中类型变量无效 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 可以取消对检查型异常的检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 注意擦除后的冲突 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型类型的继承规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 反射和泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 泛型Class类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Class参数进行类型匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 虚拟机中的泛型类型信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 类型字面量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 图形用户界面程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java用户界面工具包简史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 显示窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 创建窗体 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ │ └── 窗体属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在组件中显示信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 在组件中显示信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 处理2D图形 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用颜色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用字体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用颜色 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用字体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 显示图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 首选项API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Swing用户界面组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 布局管理概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 边框布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 网格布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 文本输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 密码域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文本区 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 滚动窗格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 选择组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 组合框 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 滑动条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 复杂的布局管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 网格包布局 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 定制布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java快速入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java程序基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java程序基本结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 整数运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 浮点数运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 布尔运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 数组类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 数组操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 首选项API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Swing用户界面组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 布局管理概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 边框布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 网格布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 文本输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 密码域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 文本区 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 滚动窗格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 选择组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 组合框 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 滑动条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 复杂的布局管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 网格包布局 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── 定制布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Java快速入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java程序基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java程序基本结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 整数运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ ├── 浮点数运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 布尔运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 数组类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 数组操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── IO --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) │ │ ├── File对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── InputStream --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) @@ -1951,213 +1951,213 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── Filter模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 操作Zip --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── 读取classpath资源 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── PrintStream和PrintWriter --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 使用Files --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ └── 单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 编写JUnit测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 使用Fixture --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 参数化测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ └── 单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 编写JUnit测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 使用Fixture --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── 参数化测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) ├── java中阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 字符串处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── String类的构造函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符串的长度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 特殊的字符串操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串和其他数据类型的连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字符串转换和toString方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 提取字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── charAt --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── getChars --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── getBytes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── toCharArray --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 比较字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── equals和equalsIgnoreCase --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── regionMatches --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── startsWith和endsWith --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── equals与== --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── compareTo --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 查找字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 修改字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── substring --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── concat --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── replace --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── trim --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用valueOf转换数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 改变字符串中字符的大小写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 连接字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 其他String方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── StringBuffer类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StringBuffer类的构造函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── length与capacity --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── ensureCapacity --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── setLength --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── charAt与setCharAt --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── getChars --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── append --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── insert --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── reverse --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── delete与deleteCharAt --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── replace --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── substring --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 其他StringBuffer方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── StringBuilder类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 探究java.lang --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本类型封装器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Number --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Double与Float --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 理解isInfinite与isNaN --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Byte、Short、Integer和Long --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Character --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对Unicode代码点的附加支持 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── Boolean --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Void类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── Process类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Runtime类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内存管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 执行其他程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── ProcessBuilder类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── System类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用currentTimeMillis计时程序的执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用arraycopy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 环境属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Object类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用clone方法和Cloneable接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Class类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ClassLoader类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Math类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 三角函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指数函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 舍入函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 其他数学方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── StrictMath类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Compiler类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Thread类、ThreadGroup类和Runnable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Runnable接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── Thread类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── ThreadGroup类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ThreadLocal和InheritableThreadLocal类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Package类 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── RuntimePermission类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Throwable类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── SecurityManager类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── StackTraceElement类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Enum类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ClassValue类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CharSequence接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Comparable接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── Appendable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Iterable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Readable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AutoCloseable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Thread.UncaughtExceptionHandler接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── java.lang子包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── java.lang.annotation --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── java.lang.instrument --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── java.lang.invoke --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── java.lang.management --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── java.lang.ref --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── java.lang.reflect --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── java.util第1部分:集合框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集合概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDK 5对集合框架的修改 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型从根本上改变了集合框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自动装箱使得使用基本类型更加容易 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── for-each风格的for循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集合接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Collection接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── List接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Set接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SortedSet接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── NavigableSet接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Queue接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Deque接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集合类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ArrayList类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── LinkedList类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── HashSet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── LinkedHashSet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TreeSet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PriorityQueue类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ArrayDeque类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── EnumSet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过迭代器访问集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用迭代器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用for-each循环替代迭代器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Spliterator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 拆分过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在集合中存储用户定义的类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── RandomAccess接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 映射接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 映射类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对流中每一个元素应用函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 字符串处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── String类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字符串的长度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 特殊的字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串和其他数据类型的连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字符串转换和toString方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 提取字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── charAt --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── getChars --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── getBytes --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── toCharArray --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 比较字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── equals和equalsIgnoreCase --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── regionMatches --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── startsWith和endsWith --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── equals与== --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── compareTo --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 查找字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 修改字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── substring --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── concat --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── replace --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── trim --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用valueOf转换数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 改变字符串中字符的大小写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 连接字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 其他String方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── StringBuffer类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── length与capacity --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── ensureCapacity --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── setLength --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── charAt与setCharAt --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── getChars --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── append --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── insert --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── reverse --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── delete与deleteCharAt --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── replace --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── substring --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 其他StringBuffer方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── StringBuilder类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 探究java.lang --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基本类型封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Number --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Double与Float --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 理解isInfinite与isNaN --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Byte、Short、Integer和Long --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Character --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 对Unicode代码点的附加支持 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── Boolean --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Void类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── Process类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Runtime类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内存管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 执行其他程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── ProcessBuilder类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── System类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用currentTimeMillis计时程序的执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用arraycopy --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 环境属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Object类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用clone方法和Cloneable接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Class类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ClassLoader类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Math类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 三角函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 指数函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 舍入函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 其他数学方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── StrictMath类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Compiler类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Thread类、ThreadGroup类和Runnable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Runnable接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── Thread类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── ThreadGroup类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ThreadLocal和InheritableThreadLocal类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Package类 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ ├── RuntimePermission类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Throwable类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── SecurityManager类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── StackTraceElement类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Enum类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ClassValue类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── CharSequence接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Comparable接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── Appendable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Iterable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Readable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── AutoCloseable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Thread.UncaughtExceptionHandler接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── java.lang子包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── java.lang.annotation --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── java.lang.instrument --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── java.lang.invoke --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── java.lang.management --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── java.lang.ref --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── java.lang.reflect --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── java.util第1部分:集合框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集合概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JDK 5对集合框架的修改 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 泛型从根本上改变了集合框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 自动装箱使得使用基本类型更加容易 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── for-each风格的for循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集合接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Collection接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── List接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Set接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SortedSet接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── NavigableSet接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Queue接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Deque接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集合类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── ArrayList类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── LinkedList类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── HashSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── LinkedHashSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── TreeSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PriorityQueue类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ArrayDeque类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── EnumSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通过迭代器访问集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用迭代器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用for-each循环替代迭代器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Spliterator --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 拆分过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在集合中存储用户定义的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── RandomAccess接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 映射接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 映射类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 对流中每一个元素应用函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 流的扁平化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 比较器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集合算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Arrays类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 遗留的类和接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Enumeration接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Vector类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Stack类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Dictionary类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Hashtable类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Properties类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用store和load --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── java.util第2部分:更多实用工具类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── StringTokenizer类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── BitSet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Optional、OptionalDouble、OptionalInt和OptionalLong --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Date类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Calendar类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── GregorianCalendar类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── TimeZone类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── SimpleTimeZone类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Locale类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Random类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Observable类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Observer接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Observer示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Timer和TimerTask类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── Currency类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Formatter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Formatter类的构造函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Formatter类的方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 格式化的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化字符串和字符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化数字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化时间和日期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── %n和%%说明符 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 指定最小字段宽度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指定精度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用格式标志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对齐输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 空格、“+”、“0”以及“(”标志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 逗号标志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── “#”标志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 大写选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用参数索引 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关闭Formatter对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── printf方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Scanner类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Scanner类的构造函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 扫描的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一些Scanner示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 设置定界符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 其他Scanner特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ResourceBundle、ListResourceBundle和 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 其他实用工具类和接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── java.util子包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── java.util.concurrent、java.util.concurrent.atomic和java.util.concurrent.locks --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.function --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── java.util.jar --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.logging --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── java.util.prefs --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.regex --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── java.util.spi --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.stream --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── java.util.zip --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 比较器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集合算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Arrays类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 遗留的类和接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Enumeration接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Vector类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Stack类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Dictionary类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Hashtable类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Properties类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用store和load --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── java.util第2部分:更多实用工具类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── StringTokenizer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── BitSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Optional、OptionalDouble、OptionalInt和OptionalLong --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Date类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Calendar类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── GregorianCalendar类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── TimeZone类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── SimpleTimeZone类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Locale类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Random类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Observable类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Observer接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Observer示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Timer和TimerTask类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── Currency类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Formatter类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Formatter类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Formatter类的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 格式化的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 格式化字符串和字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 格式化数字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 格式化时间和日期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── %n和%%说明符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 指定最小字段宽度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 指定精度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用格式标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 对齐输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 空格、“+”、“0”以及“(”标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 逗号标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── “#”标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 大写选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用参数索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关闭Formatter对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── printf方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Scanner类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Scanner类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 扫描的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一些Scanner示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 设置定界符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 其他Scanner特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ResourceBundle、ListResourceBundle和 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 其他实用工具类和接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── java.util子包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── java.util.concurrent、java.util.concurrent.atomic和java.util.concurrent.locks --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── java.util.function --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── java.util.jar --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── java.util.logging --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── java.util.prefs --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── java.util.regex --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── java.util.spi --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── java.util.stream --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── java.util.zip --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 输入/输出:探究java.io --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── I/O类和接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── File类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -2167,32 +2167,32 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ └── 创建目录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── AutoCloseable、Closeable和Flushable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── I/O异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 关闭流的两种方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 关闭流的两种方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 流类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字节流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── InputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── OutputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FileInputStream类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── FileOutputStream类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ByteArrayInputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ByteArrayOutputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 过滤的字节流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 缓冲的字节流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SequenceInputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PrintStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── DataOutputStream和DataInputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── RandomAccessFile类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Reader类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Writer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FileReader类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── FileWriter类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CharArrayReader类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── CharArrayWriter类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── BufferedReader类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── BufferedWriter类 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── PushbackReader类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── PrintWriter类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 字节流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── InputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── OutputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── FileInputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── FileOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── ByteArrayInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ByteArrayOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 过滤的字节流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 缓冲的字节流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── SequenceInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PrintStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── DataOutputStream和DataInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── RandomAccessFile类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 字符流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Reader类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Writer类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── FileReader类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── FileWriter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CharArrayReader类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── CharArrayWriter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── BufferedReader类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── BufferedWriter类 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ ├── PushbackReader类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── PrintWriter类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ ├── Console类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ ├── 串行化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── Serializable接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) @@ -2202,8 +2202,8 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── ObjectInput接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── ObjectInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 串行化示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 流的优点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 探究NIO --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 流的优点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 探究NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── NIO类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── NIO的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 缓冲区 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -2219,9 +2219,9 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 为基于通道的I/O使用NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 为基于流的I/O使用NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 为路径和文件系统操作使用NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── JDK 7之前基于通道的例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读文件(JDK 7之前) --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 写文件(JDK 7之前) --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ └── JDK 7之前基于通道的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读文件(JDK 7之前) --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 写文件(JDK 7之前) --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) │ ├── 联网 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 联网的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 联网类和接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -2234,34 +2234,34 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── HttpURLConnection类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ ├── URI类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── cookie --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── TCP/IP服务器套接字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── TCP/IP服务器套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 数据报 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── DatagramSocket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── DatagramPacket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 数据报示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ ├── Applet类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── applet的两种类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── applet的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── applet的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── applet的骨架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── applet的初始化和终止 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── 重写update方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 简单的applet显示方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 请求重画 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用状态栏窗口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── HTML APPLET标记 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向applet传递参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── getDocumentBase和getCodeBase --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AppletContext接口和showDocument方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AudioClip接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AppletStub接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 向控制台输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 事件处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 两种事件处理机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Applet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── applet的两种类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── applet的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── applet的架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── applet的骨架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── applet的初始化和终止 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ └── 重写update方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 简单的applet显示方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 请求重画 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用状态栏窗口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── HTML APPLET标记 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 向applet传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── getDocumentBase和getCodeBase --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── AppletContext接口和showDocument方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── AudioClip接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── AppletStub接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 向控制台输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 两种事件处理机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 委托事件模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 事件源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 事件监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 事件源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 事件类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── ActionEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── AdjustmentEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -2276,88 +2276,88 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── TextEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── WindowEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 事件源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 事件监听器接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ActionListener接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── AdjustmentListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ComponentListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ContainerListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FocusListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ItemListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── KeyListener接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MouseListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MouseMotionListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MouseWheelListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TextListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── WindowFocusListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── WindowListener接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 事件监听器接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ActionListener接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── AdjustmentListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ComponentListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ContainerListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── FocusListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ItemListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── KeyListener接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── MouseListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── MouseMotionListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── MouseWheelListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── TextListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── WindowFocusListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── WindowListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 使用委托事件模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 处理鼠标事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 处理键盘事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 适配器类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 内部类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── AWT介绍:使用窗口、图形和文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AWT类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 窗口基本元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Component类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Container类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Panel类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Window类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Frame类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── Canvas类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用框架窗口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设置窗口的尺寸 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 隐藏和显示窗口 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 设置窗口的标题 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 关闭框架窗口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 在基于AWT的applet中创建框架窗口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建基于窗口的程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 在窗口中显示信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用图形 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 绘制直线 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制矩形 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制椭圆和圆 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制弧形 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制多边形 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 演示绘制方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 改变图形的大小 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 使用颜色 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 处理鼠标事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 处理键盘事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 适配器类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── AWT介绍:使用窗口、图形和文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── AWT类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 窗口基本元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Component类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── Container类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Panel类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── Window类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ ├── Frame类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ └── Canvas类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用框架窗口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 设置窗口的尺寸 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 隐藏和显示窗口 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 设置窗口的标题 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 关闭框架窗口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 在基于AWT的applet中创建框架窗口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 创建基于窗口的程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 在窗口中显示信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用图形 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 绘制直线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 绘制矩形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 绘制椭圆和圆 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 绘制弧形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 绘制多边形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 演示绘制方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 改变图形的大小 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) +│ │ ├── 使用颜色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── Color类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设置当前图形的颜色 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 一个演示颜色的applet --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 设置绘图模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用字体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 确定可用字体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建和选择字体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 获取字体信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用FontMetrics管理文本输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 显示多行文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 居中显示文本 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 对齐多行文本 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ ├── 使用AWT控件、布局管理器和菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AWT控件的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 添加和移除控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 响应控件 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── HeadlessException异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用标签 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── 使用命令按钮 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用复选框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用复选框组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用下拉列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用列表框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 管理滚动条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用TextField --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用TextArea --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 理解布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用Insets --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── GridBagLayout布局管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 菜单栏和菜单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── FileDialog类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 关于重写paint方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 设置当前图形的颜色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 一个演示颜色的applet --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 设置绘图模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用字体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 确定可用字体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 创建和选择字体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 获取字体信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用FontMetrics管理文本输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 显示多行文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 居中显示文本 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── 对齐多行文本 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ ├── 使用AWT控件、布局管理器和菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── AWT控件的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 添加和移除控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 响应控件 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ └── HeadlessException异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用标签 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ │ ├── 使用命令按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用复选框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用复选框组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用下拉列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用列表框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 管理滚动条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用TextField --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用TextArea --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 理解布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用Insets --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── GridBagLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 菜单栏和菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── FileDialog类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 关于重写paint方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) │ ├── 图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 文件格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 图像基础:创建、加载与显示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -2373,39 +2373,39 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── CropImageFilter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── RGBImageFilter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 其他图像类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 并发实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 并发API包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── java.util.concurrent包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── java.util.concurrent.atomic包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── java.util.concurrent.locks包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用同步对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Semaphore类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CountDownLatch类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Exchanger类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Phaser类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用执行器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个简单的执行器示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用Callable和Future接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 并发实用工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 并发API包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── java.util.concurrent包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── java.util.concurrent.atomic包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── java.util.concurrent.locks包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用同步对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Semaphore类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CountDownLatch类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Exchanger类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── Phaser类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用执行器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 一个简单的执行器示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 使用Callable和Future接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── Future接口的局限性 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 使用CompletableFuture构建异步应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── TimeUnit枚举 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 并发集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 原子操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通过Fork/Join框架进行并行编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 主要的Fork/Join类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分而治之的策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个简单的Fork/Join示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 理解并行级别带来的影响 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个使用RecursiveTask[V]的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 异步执行任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 取消任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 确定任务的完成状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 重新启动任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 深入研究 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 关于Fork/Join框架的一些提示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 并发实用工具与Java传统方式的比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用CompletableFuture构建异步应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── TimeUnit枚举 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 并发集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 原子操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 通过Fork/Join框架进行并行编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 主要的Fork/Join类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 分而治之的策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 一个简单的Fork/Join示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 理解并行级别带来的影响 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 一个使用RecursiveTask[V]的例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 异步执行任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 取消任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 确定任务的完成状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 重新启动任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 深入研究 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 关于Fork/Join框架的一些提示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 并发实用工具与Java传统方式的比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ ├── 流API --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 流的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 流接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -2451,8 +2451,8 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ │ └── 由函数生成流:创建无限流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 流API中更多值得探究的地方 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 正则表达式和其他包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 核心Java API包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 正则表达式和其他包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 核心Java API包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 正则表达式处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) │ │ │ ├── Pattern类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── Matcher类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -2461,71 +2461,71 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 模式匹配的两个选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 探究正则表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ ├── 反射 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 远程方法调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用java.text格式化日期和时间 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── DateFormat类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── SimpleDateFormat类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDK 8新增的时间和日期API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 时间和日期的基础知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 格式化日期和时间 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 解析日期和时间字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 探究java.time包的其他方面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 匹配字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 找出多个匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用分隔符来分割 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 替换匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 远程方法调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用java.text格式化日期和时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── DateFormat类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── SimpleDateFormat类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JDK 8新增的时间和日期API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 时间和日期的基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 格式化日期和时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 解析日期和时间字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 探究java.time包的其他方面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 匹配字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 找出多个匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用分隔符来分割 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 替换匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── 正则表达式简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 匹配规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 分组匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 非贪婪匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 搜索和替换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 并发编程的挑战 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 上下文切换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多线程一定快吗 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 多线程基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 创建新线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 中断线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 守护线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 线程同步 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 同步方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用wait和notify --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 使用ReentrantLock --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用Condition --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用ReadWriteLock --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用StampedLock --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Concurrent集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Atomic --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 使用ForkJoin --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 测试上下文切换次数和时长 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 如何减少上下文切换 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 死锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 资源限制的挑战 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java并发机制的底层实现原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── volatile的应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── synchronized的实现原理与应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Java对象头 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 锁的升级与对比 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 原子操作的实现原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java内存模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java内存模型的基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 匹配规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 分组匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 非贪婪匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 搜索和替换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 并发编程的挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 上下文切换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 多线程一定快吗 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 多线程基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 创建新线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 中断线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 守护线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 线程同步 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 同步方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用wait和notify --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 使用ReentrantLock --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用Condition --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用ReadWriteLock --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用StampedLock --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用Concurrent集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用Atomic --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 使用ForkJoin --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 测试上下文切换次数和时长 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 如何减少上下文切换 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 资源限制的挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Java并发机制的底层实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── volatile的应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── synchronized的实现原理与应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── Java对象头 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 锁的升级与对比 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ └── 原子操作的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Java内存模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java内存模型的基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Java内存模型的抽象结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 从源代码到指令序列的重排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 并发编程模型的分类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── happens-before简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 重排序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据依赖性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── as-if-serial语义 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 程序顺序规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 重排序对多线程的影响 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 顺序一致性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据竞争与顺序一致性 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 顺序一致性内存模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 从源代码到指令序列的重排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 并发编程模型的分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── happens-before简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 重排序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数据依赖性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── as-if-serial语义 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 程序顺序规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 重排序对多线程的影响 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 顺序一致性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数据竞争与顺序一致性 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 顺序一致性内存模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 同步程序的顺序一致性效果 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 未同步程序的执行特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── volatile的内存语义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── volatile的特性 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── volatile写-读建立的happens-before关系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── volatile的内存语义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── volatile的特性 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── volatile写-读建立的happens-before关系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── volatile写-读的内存语义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── volatile内存语义的实现 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ ├── 锁的内存语义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -2533,203 +2533,203 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 锁的释放和获取的内存语义 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) │ │ │ ├── 锁内存语义的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── concurrent包的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── final域的内存语义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── final域的内存语义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── final域的重排序规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 写final域的重排序规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 读final域的重排序规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── final域为引用类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── final域为引用类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── final语义在处理器中的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── happens-before --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JMM的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── happens-before的定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ └── happens-before规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 双重检查锁定与延迟初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 双重检查锁定的由来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于volatile的解决方案 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 基于类初始化的解决方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java内存模型综述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── happens-before --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JMM的设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── happens-before的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ └── happens-before规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 双重检查锁定与延迟初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 双重检查锁定的由来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 基于volatile的解决方案 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 基于类初始化的解决方案 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Java内存模型综述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 处理器的内存模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 各种内存模型之间的关系 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) │ │ ├── JMM的内存可见性保证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── JSR-133对旧内存模型的修补 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java并发编程基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 线程优先级 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Daemon线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 启动和终止线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 构造线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 启动线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 理解中断 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 过期的suspend、resume和stop --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 安全地终止线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ └── 线程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 等待/通知机制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 等待/通知的经典范式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 管道输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Thread.join的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java中的锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Lock接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 队列同步器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 队列同步器的接口与示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Windows注册表概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问注册表的Java平台接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 以本地方法实现注册表访问函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 队列同步器的实现分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── Java并发编程基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 什么是线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程的状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── Daemon线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 启动和终止线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 构造线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 启动线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 理解中断 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 过期的suspend、resume和stop --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 安全地终止线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ └── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 等待/通知机制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 等待/通知的经典范式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 管道输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── Thread.join的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Java中的锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Lock接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 队列同步器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 队列同步器的接口与示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Windows注册表概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 访问注册表的Java平台接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 以本地方法实现注册表访问函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 队列同步器的实现分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── 重入锁 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ ├── 读写锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 读写锁的接口与示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 读写锁的实现分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── LockSupport工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Condition接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Condition接口与示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Condition的实现分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Java并发容器和框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ConcurrentHashMap的实现原理与使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ConcurrentHashMap的结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ConcurrentHashMap的初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定位Segment --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── ConcurrentHashMap的操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── ConcurrentLinkedQueue --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ConcurrentLinkedQueue的结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 入队列 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 出队列 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── Java中的阻塞队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是阻塞队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java里的阻塞队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 阻塞队列的实现原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Fork/Join框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 什么是Fork/Join框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 工作窃取算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Fork/Join框架的设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Fork/Join框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── LockSupport工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Condition接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Condition接口与示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Condition的实现分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Java并发容器和框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── ConcurrentHashMap的实现原理与使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ConcurrentHashMap的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ConcurrentHashMap的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 定位Segment --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── ConcurrentHashMap的操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── ConcurrentLinkedQueue --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── ConcurrentLinkedQueue的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 入队列 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 出队列 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ ├── Java中的阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 什么是阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Java里的阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 阻塞队列的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── Fork/Join框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 什么是Fork/Join框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 工作窃取算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Fork/Join框架的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用Fork/Join框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── Fork/Join框架的异常处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── Fork/Join框架的实现原理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Java中的13个原子操作类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 原子更新基本类型类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 原子更新数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── Fork/Join框架的实现原理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── Java中的13个原子操作类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 原子更新基本类型类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 原子更新数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 原子更新引用类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 原子更新字段类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java中的并发工具类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 等待多线程完成的CountDownLatch --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 同步屏障CyclicBarrier --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier的应用场景 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── CyclicBarrier和CountDownLatch的区别 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 控制并发线程数的Semaphore --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 线程间交换数据的Exchanger --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Java中的并发工具类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 等待多线程完成的CountDownLatch --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 同步屏障CyclicBarrier --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier的应用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── CyclicBarrier和CountDownLatch的区别 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 控制并发线程数的Semaphore --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ └── 线程间交换数据的Exchanger --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ ├── Java中的线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程池的实现原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 线程池的使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 线程池的创建 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 向线程池提交任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 关闭线程池 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 合理地配置线程池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 线程池的监控 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Executor框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Executor框架简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Executor框架的两级调度模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Executor框架的结构与成员 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── ThreadPoolExecutor详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FixedThreadPool详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SingleThreadExecutor详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── CachedThreadPool详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ScheduledThreadPoolExecutor详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ScheduledThreadPoolExecutor的运行机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── ScheduledThreadPoolExecutor的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── FutureTask详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── FutureTask简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── FutureTask的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── FutureTask的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java并发编程实践 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 生产者和消费者模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 多生产者和多消费者场景 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── 性能测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 异步任务池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 基础知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Java 8、9、10以及11的变化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java怎么还在变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Java在编程语言生态系统中的位置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 用行为参数化把代码传递给方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 并行与共享的可变数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Java需要演变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java中的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 方法和Lambda作为一等值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 从Java程序中调用C函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 数值参数与返回值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 字符串参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 访问域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 访问静态域 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 编码签名 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── 调用Java方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 静态方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ │ ├── 构造器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 另一种方法调用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 访问数组元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 使用调用API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传递代码:一个例子 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 从传递方法到Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认方法及Java模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 不断演进的API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 初始版本的API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 第二版API --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 概述默认方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 默认方法的使用模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 行为的多继承 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 解决冲突的规则 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 选择提供了最具体实现的默认方法的接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 冲突及如何显式地消除歧义 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 来自函数式编程的其他好思想 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过行为参数化传递代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 应对不断变化的需求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初试牛刀:筛选绿苹果 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 再展身手:把颜色作为参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 第三次尝试:对你能想到的每个属性做筛选 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 行为参数化 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 对付啰唆 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 匿名类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 第五次尝试:使用匿名类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 第六次尝试:使用Lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 第七次尝试:将List类型抽象化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 真实的例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用Comparator来排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 用Runnable执行代码块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过Callable返回结果 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ ├── 线程池的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 线程池的使用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 线程池的创建 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 向线程池提交任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 关闭线程池 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 合理地配置线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 线程池的监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Executor框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Executor框架简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Executor框架的两级调度模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Executor框架的结构与成员 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── ThreadPoolExecutor详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── FixedThreadPool详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SingleThreadExecutor详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── CachedThreadPool详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ScheduledThreadPoolExecutor详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ScheduledThreadPoolExecutor的运行机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── ScheduledThreadPoolExecutor的实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── FutureTask详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── FutureTask简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── FutureTask的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── FutureTask的实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java并发编程实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 生产者和消费者模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 多生产者和多消费者场景 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ │ ├── 性能测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 异步任务池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Java 8、9、10以及11的变化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java怎么还在变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Java在编程语言生态系统中的位置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 用行为参数化把代码传递给方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 并行与共享的可变数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Java需要演变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java中的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 方法和Lambda作为一等值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 从Java程序中调用C函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── 数值参数与返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 字符串参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 访问域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ └── 访问静态域 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── 编码签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── 调用Java方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 静态方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ │ │ ├── 构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ └── 另一种方法调用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 访问数组元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 使用调用API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 传递代码:一个例子 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 从传递方法到Lambda --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 默认方法及Java模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 不断演进的API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 初始版本的API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 第二版API --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 概述默认方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ ├── 默认方法的使用模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 行为的多继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ └── 解决冲突的规则 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 选择提供了最具体实现的默认方法的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 冲突及如何显式地消除歧义 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 来自函数式编程的其他好思想 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通过行为参数化传递代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 应对不断变化的需求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 初试牛刀:筛选绿苹果 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 再展身手:把颜色作为参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 第三次尝试:对你能想到的每个属性做筛选 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 行为参数化 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 对付啰唆 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 匿名类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 第五次尝试:使用匿名类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 第六次尝试:使用Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 第七次尝试:将List类型抽象化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 真实的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用Comparator来排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 用Runnable执行代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通过Callable返回结果 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) │ │ │ └── GUI事件处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── Lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Lambda管中窥豹 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在哪里以及如何使用Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数式接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 函数描述符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把Lambda付诸实践:环绕执行模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 第 1 步:记得行为参数化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 第 2 步:使用函数式接口来传递行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 第 3 步:执行一个行为 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 第 4 步:传递Lambda --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── 使用函数式接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Predicate --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Consumer --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── Function --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 类型检查、类型推断以及限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类型检查 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 同样的Lambda,不同的函数式接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类型推断 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 使用局部变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 方法引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 管中窥豹 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 构造函数引用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 复合Lambda表达式的有用方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 比较器复合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 谓词复合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 函数复合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数学中的类似思想 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 积分 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 与Java 8的Lambda联系起来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 测试可见Lambda函数的行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 测试使用Lambda的方法的行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 将复杂的Lambda表达式分为不同的方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 高阶函数的测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Lambda管中窥豹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在哪里以及如何使用Lambda --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 函数描述符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把Lambda付诸实践:环绕执行模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 第 1 步:记得行为参数化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 第 2 步:使用函数式接口来传递行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 第 3 步:执行一个行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 第 4 步:传递Lambda --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ ├── 使用函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Predicate --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Consumer --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── Function --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 类型检查、类型推断以及限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类型检查 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 同样的Lambda,不同的函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类型推断 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 使用局部变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 方法引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 管中窥豹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 构造函数引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 复合Lambda表达式的有用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 比较器复合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 谓词复合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 函数复合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数学中的类似思想 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 积分 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 与Java 8的Lambda联系起来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 测试可见Lambda函数的行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 测试使用Lambda的方法的行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 将复杂的Lambda表达式分为不同的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 高阶函数的测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 使用流进行函数式数据处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 引入流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 流简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -2754,226 +2754,226 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ └── 开发你自己的收集器以获得更好的性能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 仅用质数做除数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 比较收集器的性能 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ ├── 无所不在的Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用Optional取代null --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何为缺失的值建模 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 采用防御式检查减少NullPointerException --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 其他语言中null的替代品 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Optional类入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 应用Optional的几种模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Optional对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用map从Optional对象中提取和转换值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用flatMap链接Optional对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 操纵由Optional对象构成的Stream --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认行为及解引用Optional对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 两个Optional对象的组合 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用filter剔除特定的值 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── Java模块系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块化的驱动力:软件的推理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关注点分离 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 信息隐藏 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── Java软件 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 使用Java模块系统开发应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从头开始搭建一个应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 细粒度和粗粒度的模块化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Java模块系统基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用多个模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── exports子句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── requires子句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 命名 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 编译及打包 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 自动模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 模块声明及子句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── requires --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── exports --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── requires的传递 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── exports to --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── open和opens --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ └── uses和provides --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 提升Java的并发性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── CompletableFuture及反应式编程背后的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为支持并发而不断演进的Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 其他的线程抽象:非嵌套方法调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 你希望线程为你带来什么 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 同步及异步API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Future风格的API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 反应式风格的API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 有害的睡眠及其他阻塞式操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 如何使用异步API进行异常处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── “线框–管道”模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── “发布–订阅”以及反应式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 背压 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 一种简单的真实背压 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 反应式系统和反应式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── CompletableFuture:组合式异步编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 实现异步API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将同步方法转换为异步方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 错误处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 让你的代码免受阻塞之苦 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用并行流对请求进行并行操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用CompletableFuture发起异步请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 寻找更好的方案 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 使用定制的执行器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对多个异步任务进行流水线操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实现折扣服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Discount服务 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 构造同步和异步操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 将两个CompletableFuture对象整合起来,无论它们是否存在依赖 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对Future和Completable-Future的回顾 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 高效地使用超时机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 响应CompletableFuture的completion事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 对最佳价格查询器应用的优化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 反应式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 反应式宣言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 应用层的反应式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 反应式系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 反应式流以及Flow API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flow类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建你的第一个反应式应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用Processor转换数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 使用反应式库RxJava --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 转换及整合多个Observable --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ ├── 函数式编程以及Java未来的演进 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数式的思考 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 实现和维护系统 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 声明式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是函数式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数式Java编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 引用透明性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 面向对象的编程和函数式编程的对比 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 递归和迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数式编程的技巧 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无处不在的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 柯里化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 持久化数据结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 破坏式更新和函数式更新的比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 另一个使用Tree的例子 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 采用函数式的方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Stream的延迟计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义的Stream --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ └── 创建你自己的延迟列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 模式匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问者模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用模式匹配力挽狂澜 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 杂项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 缓存或记忆表 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── “返回同样的对象”意味着什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 结论以及Java的未来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 回顾Java 8的语言特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java 10的局部变量类型推断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java的未来 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 声明处型变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模式匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 更加丰富的泛型形式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对不变性的更深层支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 值类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 让Java发展得更快 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 写在最后的话 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── Lambda基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用Stream --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 创建Stream --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 使用filter --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 使用reduce --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 输出集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── Java 8的流库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 从迭代到流的操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 流的创建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── f?ilter、map和f?latMap方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 抽取子流和组合流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 其他的流转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 简单约简 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Optional类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 获取Optional值 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 消费Optional值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 管道化Optional值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不适合使用Optional值的方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Optional值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用f?latMap构建Optional值的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 将Optional转换为流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 收集到映射表中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 下游收集器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 约简操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 基本类型流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 无所不在的Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用Optional取代null --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 如何为缺失的值建模 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 采用防御式检查减少NullPointerException --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 其他语言中null的替代品 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── Optional类入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 应用Optional的几种模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建Optional对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用map从Optional对象中提取和转换值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用flatMap链接Optional对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 操纵由Optional对象构成的Stream --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 默认行为及解引用Optional对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 两个Optional对象的组合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用filter剔除特定的值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── Java模块系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块化的驱动力:软件的推理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关注点分离 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 信息隐藏 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── Java软件 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ ├── 使用Java模块系统开发应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 从头开始搭建一个应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 细粒度和粗粒度的模块化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Java模块系统基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 使用多个模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── exports子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── requires子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 命名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 编译及打包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 自动模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 模块声明及子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── requires --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── exports --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── requires的传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── exports to --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── open和opens --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── uses和provides --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 提升Java的并发性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── CompletableFuture及反应式编程背后的概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 为支持并发而不断演进的Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 其他的线程抽象:非嵌套方法调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 你希望线程为你带来什么 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 同步及异步API --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── Future风格的API --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 反应式风格的API --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 有害的睡眠及其他阻塞式操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 如何使用异步API进行异常处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── “线框–管道”模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── “发布–订阅”以及反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 背压 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 一种简单的真实背压 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 反应式系统和反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── CompletableFuture:组合式异步编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 实现异步API --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 将同步方法转换为异步方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── 错误处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 让你的代码免受阻塞之苦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用并行流对请求进行并行操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用CompletableFuture发起异步请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 寻找更好的方案 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 使用定制的执行器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 对多个异步任务进行流水线操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 实现折扣服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用Discount服务 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 构造同步和异步操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 将两个CompletableFuture对象整合起来,无论它们是否存在依赖 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 对Future和Completable-Future的回顾 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 高效地使用超时机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 响应CompletableFuture的completion事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 对最佳价格查询器应用的优化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── 反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 反应式宣言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 应用层的反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 反应式系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 反应式流以及Flow API --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Flow类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 创建你的第一个反应式应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 使用Processor转换数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── 使用反应式库RxJava --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ └── 转换及整合多个Observable --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ ├── 函数式编程以及Java未来的演进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数式的思考 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 实现和维护系统 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 声明式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 什么是函数式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 函数式Java编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 引用透明性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 面向对象的编程和函数式编程的对比 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 递归和迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数式编程的技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 无处不在的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 柯里化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 持久化数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 破坏式更新和函数式更新的比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 另一个使用Tree的例子 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ └── 采用函数式的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Stream的延迟计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自定义的Stream --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ └── 创建你自己的延迟列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 访问者模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 用模式匹配力挽狂澜 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 杂项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 缓存或记忆表 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── “返回同样的对象”意味着什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 结论以及Java的未来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 回顾Java 8的语言特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java 10的局部变量类型推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java的未来 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 声明处型变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 更加丰富的泛型形式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 对不变性的更深层支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 值类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 让Java发展得更快 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 写在最后的话 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── Lambda基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用Stream --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 创建Stream --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 使用filter --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 使用reduce --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 输出集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── Java 8的流库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 从迭代到流的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 流的创建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── f?ilter、map和f?latMap方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 抽取子流和组合流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 其他的流转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 简单约简 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Optional类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 获取Optional值 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 消费Optional值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 管道化Optional值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不适合使用Optional值的方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建Optional值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用f?latMap构建Optional值的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 将Optional转换为流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 收集到映射表中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 下游收集器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 约简操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 基本类型流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 输入与输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 输入/输出流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读写字节 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 完整的流家族 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 组合输入/输出流过滤器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文本输入与输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 如何写出文本输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 如何读入文本输入 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 以文本格式存储对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符编码方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 读写字节 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 完整的流家族 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 组合输入/输出流过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 文本输入与输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 如何写出文本输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 如何读入文本输入 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 以文本格式存储对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 字符编码方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 读写二进制数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ ├── DataInput和DataOutput接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 随机访问文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ └── ZIP文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象输入/输出流与序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 保存和加载序列化对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 理解对象序列化的文件格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 修改默认的序列化机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列化单例和类型安全的枚举 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 版本管理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 为克隆使用序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对象输入/输出流与序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 保存和加载序列化对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 理解对象序列化的文件格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 修改默认的序列化机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 序列化单例和类型安全的枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 版本管理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 为克隆使用序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 操作文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ ├── Path --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ │ ├── 读写文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ │ ├── 复制、移动和删除文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ ├── 获取文件信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ │ ├── 访问目录中的项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用目录流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用目录流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── ZIP文件系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 内存映射文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 内存映射文件的性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 缓冲区数据结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 文件加锁机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── XML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── XML概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── XML文档的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 解析XML文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 验证XML文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文档类型定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── XML Schema --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 一个实践示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用XPath来定位信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用命名空间 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── XML概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── XML文档的结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 解析XML文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 验证XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文档类型定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── XML Schema --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 一个实践示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用XPath来定位信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用命名空间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── 流机制解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 使用SAX解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 使用StAX解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 生成XML文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不带命名空间的文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 带命名空间的文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 写出文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 使用StAX写出XML文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── XSL转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 生成XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不带命名空间的文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 带命名空间的文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 写出文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 使用StAX写出XML文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── XSL转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 连接到服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用telnet --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 用Java连接到服务器 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 套接字超时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 因特网地址 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 实现服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 服务器套接字 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 为多个客户端服务 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 半关闭 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 可中断套接字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 获取Web数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── URL和URI --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 使用URLConnection获取信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 提交表单数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── HTTP客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 发送E-mail --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 连接到服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用telnet --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 用Java连接到服务器 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 套接字超时 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 因特网地址 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 实现服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 服务器套接字 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 为多个客户端服务 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 半关闭 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 可中断套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 获取Web数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── URL和URI --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 使用URLConnection获取信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 提交表单数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── HTTP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 发送E-mail --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) │ ├── 数据库编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── JDBC的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── JDBC驱动程序类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── JDBC的典型用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 结构化查询语言 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ │ └── JDBC的典型用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 结构化查询语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── JDBC配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库URL --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数据库URL --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 驱动程序JAR文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 启动数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 启动数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 注册驱动器类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 连接到数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 连接到数据库 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) │ │ ├── 使用JDBC语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 执行SQL语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ ├── 管理连接、语句和结果集 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) @@ -2982,7 +2982,7 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── 执行查询操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ │ ├── 预备语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 读写LOB --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SQL转义 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── SQL转义 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) │ │ │ ├── 多结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 获取自动生成的键 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) │ │ ├── 可滚动和可更新的结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -2995,282 +2995,282 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── 事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 用JDBC对事务编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) │ │ │ ├── 批量更新 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 高级SQL类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── Web与企业应用中的连接管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 国际化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── locale --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指定locale --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 默认locale --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 显示名字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 数字格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化数字值 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 货币 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 排序和规范化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 消息格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 选择格式 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ └── 资源包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定位资源包 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 属性文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 包类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java平台模块系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块的概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对模块命名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块化的“Hello, World!”程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 对模块的需求 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 导出包 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 模块化的JAR --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 不具名模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用于迁移的命令行标识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 传递的需求和静态的需求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 限定导出和开放 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 服务加载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 操作模块的工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类加载器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类加载过程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 类加载器的层次结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 将类加载器用作命名空间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编写你自己的类加载器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字节码校验 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 安全管理器与访问权限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 权限检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java平台安全性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 安全策略文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定制权限 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 实现权限类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用户认证 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── JAAS框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── JAAS登录模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 数字签名 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 消息摘要 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 消息签名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 校验签名 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 证书签名 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 证书请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 代码签名 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ └── 高级SQL类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ └── Web与企业应用中的连接管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── locale --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 指定locale --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 默认locale --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 显示名字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 数字格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 格式化数字值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 货币 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 排序和规范化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 消息格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 选择格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── 资源包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定位资源包 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 属性文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 包类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java平台模块系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对模块命名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块化的“Hello, World!”程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 对模块的需求 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 导出包 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 模块化的JAR --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 不具名模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用于迁移的命令行标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 传递的需求和静态的需求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 限定导出和开放 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 服务加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 操作模块的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类加载器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类加载过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 类加载器的层次结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 将类加载器用作命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 编写你自己的类加载器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字节码校验 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 安全管理器与访问权限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 权限检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java平台安全性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 安全策略文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定制权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 实现权限类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用户认证 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── JAAS框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── JAAS登录模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 数字签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 消息摘要 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 消息签名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 校验签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 证书签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 证书请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 代码签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ │ └── 加密 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) │ │ ├── 对称密码 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 密钥生成 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 密码流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 密钥生成 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 密码流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 公共密钥密码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 高级Swing和图形化编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 表格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个简单表格 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 表格模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对行和列的操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 单元格的绘制和编辑 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简单的树 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 节点枚举 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制节点 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 监听树事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 定制树模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 高级AWT --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 绘图操作流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 形状 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 区域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 笔画 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 着色 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 坐标变换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 剪切 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 透明与组合 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 像素图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 图像的读取器和写入器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 图像处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 打印 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 图形打印 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 打印多页文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 打印服务程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 流打印服务程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 打印属性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Maven基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Maven介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 依赖管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用mvnw --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 发布Artifact --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 高级Swing和图形化编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 一个简单表格 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 表格模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 对行和列的操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 单元格的绘制和编辑 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 简单的树 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 节点枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 绘制节点 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 监听树事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ └── 定制树模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 高级AWT --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 绘图操作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 形状 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 区域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 笔画 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 着色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 坐标变换 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 剪切 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 透明与组合 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 像素图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 图像的读取器和写入器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 图像处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 打印 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 图形打印 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 打印多页文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 打印服务程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 流打印服务程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 打印属性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── Maven基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Maven介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 依赖管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构建流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用mvnw --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 发布Artifact --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 网络编程基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── TCP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── UDP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 发送Email --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 网络编程基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── TCP编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── UDP编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 发送Email --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ ├── 接收Email --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── HTTP编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── HTTP编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ └── RMI远程调用 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ └── JDBC编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JDBC简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JDBC查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JDBC更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JDBC事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JDBC Batch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── JDBC连接池 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ └── JDBC编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JDBC简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JDBC查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JDBC更新 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JDBC事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JDBC Batch --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── JDBC连接池 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) ├── java高阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Swing简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing的起源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Swing简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing的起源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Swing以AWT为基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 两个关键的Swing特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Swing组件是轻量级的 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Swing支持可插入外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MVC连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 组件与容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 顶级容器窗格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一个简单的Swing应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 事件处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建Swing applet --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 两个关键的Swing特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Swing组件是轻量级的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Swing支持可插入外观 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── MVC连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 组件与容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 容器 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 顶级容器窗格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 一个简单的Swing应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建Swing applet --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 在Swing中绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 绘图的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 计算可绘制区域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 一个绘图示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 探究Swing --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JLabel与ImageIcon --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── JTextField --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JButton --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── JToggleButton --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 复选框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 单选按钮 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── JTabbedPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JScrollPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JList --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JComboBox --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── JTable --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ ├── Swing菜单简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 探究Swing --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JLabel与ImageIcon --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── JTextField --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Swing按钮 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JButton --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── JToggleButton --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 复选框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 单选按钮 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── JTabbedPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JScrollPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JList --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JComboBox --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── JTable --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ ├── Swing菜单简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 菜单的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JMenuBar、JMenu和JMenuItem概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JMenuBar --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JMenu --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── JMenuItem --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── JMenuBar、JMenu和JMenuItem概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JMenuBar --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JMenu --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── JMenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建主菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加图片和工具提示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JRadioButtonMenuItem和JCheckBoxMenuItem --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 向菜单项添加图片和工具提示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用JRadioButtonMenuItem和JCheckBoxMenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建弹出菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建工具栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用动作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 完整演示MenuDemo程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 继续探究Swing --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JavaFX GUI编程简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JavaFX的基础概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JavaFX包 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Stage和Scene类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 节点和场景图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 创建工具栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 完整演示MenuDemo程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 继续探究Swing --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JavaFX GUI编程简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JavaFX的基础概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JavaFX包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── Stage和Scene类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 节点和场景图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Application类和生命周期方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 启动JavaFX应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JavaFX应用程序的骨架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编译和运行JavaFX程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 应用程序线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 一个简单的JavaFX控件:Label --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用按钮和事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件的基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 按钮控件简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 演示事件处理和按钮 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 直接在画布上绘制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 探究JavaFX控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Image和ImageView --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 向标签添加图片 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── Application类和生命周期方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 启动JavaFX应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JavaFX应用程序的骨架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编译和运行JavaFX程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 应用程序线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 一个简单的JavaFX控件:Label --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用按钮和事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 事件的基础知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 按钮控件简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 演示事件处理和按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 直接在画布上绘制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 探究JavaFX控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Image和ImageView --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 向标签添加图片 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ │ │ └── 在按钮中使用图片 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── ToggleButton --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── RadioButton --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── ToggleButton --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── RadioButton --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 处理开关组中的变化事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 处理单选按钮的另一种方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CheckBox --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── ListView --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ListView的滚动条 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 启用多项选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ComboBox --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── TextField --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ScrollPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── TreeView --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 效果和变换简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 效果 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 变换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 演示效果和变换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 添加工具提示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 禁用控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── JavaFX菜单简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 处理单选按钮的另一种方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── CheckBox --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── ListView --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ListView的滚动条 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── 启用多项选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ComboBox --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── TextField --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ScrollPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── TreeView --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 效果和变换简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 效果 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 变换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 演示效果和变换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 添加工具提示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 禁用控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── JavaFX菜单简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 菜单的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MenuBar、Menu和MenuItem概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MenuBar --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Menu --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── MenuItem --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── MenuBar、Menu和MenuItem概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── MenuBar --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Menu --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── MenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建主菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加图片 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用RadioMenuItem和CheckMenuItem --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 向菜单项添加图片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用RadioMenuItem和CheckMenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建上下文菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建工具栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 完整的MenuDemo程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 继续探究JavaFX --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java Bean是什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java Bean的优势 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内省 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 创建工具栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 完整的MenuDemo程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 继续探究JavaFX --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java Bean是什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java Bean的优势 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 内省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 属性的设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件的设计模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 事件的设计模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) │ │ │ ├── 方法与设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建型模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建型模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ │ ├── 工厂方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 抽象工厂 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 原型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 单例 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 结构型模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 适配器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 桥接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 外观 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 享元 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 行为型模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 责任链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命令 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 解释器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 中介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 备忘录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 观察者 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 状态 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 抽象工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 原型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 单例 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 结构型模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 桥接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 享元 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 行为型模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 责任链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 命令 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 解释器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 迭代器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 中介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 备忘录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 观察者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 状态 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 模板方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 访问者 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用BeanInfo接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 绑定属性与约束属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 持久性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java Bean API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Introspector类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PropertyDescriptor类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── EventSetDescriptor类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── MethodDescriptor类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 一个Bean示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── servlet --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 背景 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── servelet的生命周期 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── servlet开发选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Tomcat --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 一个简单的servlet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建和编译servlet源代码 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 启动Tomcat --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 访问者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 使用BeanInfo接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 绑定属性与约束属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 持久性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定制器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java Bean API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Introspector类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PropertyDescriptor类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── EventSetDescriptor类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── MethodDescriptor类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 一个Bean示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── servlet --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 背景 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── servelet的生命周期 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── servlet开发选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Tomcat --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 一个简单的servlet --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建和编译servlet源代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 启动Tomcat --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ └── 启动Web浏览器并请求servlet --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── Servlet API --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Servlet API --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── javax.servlet包 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Servlet接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ServletConfig接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ServletContext接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── ServletRequest接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ServletResponse接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── GenericServlet类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ServletInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ServletOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── servlet异常类 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 读取servlet参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Servlet接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── ServletConfig接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ServletContext接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── ServletRequest接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── ServletResponse接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── GenericServlet类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── ServletInputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ServletOutputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── servlet异常类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 读取servlet参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── javax.servlet.http包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── HttpServletRequest接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ ├── HttpServletResponse接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -3278,760 +3278,760 @@ java --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── Cookie类 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) │ │ │ └── HttpServlet类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ ├── 处理HTTP请求和响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理HTTP GET请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 处理HTTP POST请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用cookie --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 会话跟踪 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 入门和技术基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 认识SSM框架和Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring IoC简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring AOP --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MyBatis简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Hibernate简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── MyBatis --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── Hibernate和MyBatis的区别 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── Spring MVC简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 最流行的NoSQL——Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SSM+Redis结构框图及概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Redis概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis在Java Web中的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 高速读/写场合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis基本安装和使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Windows下安装Redis --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ └── 在Linux下安装Redis --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── Redis的Java API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Java程序中使用Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在Spring中使用Redis --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 简介Redis的6种数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Redis数据结构常用命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis数据结构——字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis数据结构——哈希 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── Redis数据结构——链表(linked-list) --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Redis数据结构——集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis数据结构——有序集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Redis基础命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── spring-data-redis对有序集合的封装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用Spring操作有序集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 基数——HyperLogLog --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Redis的一些常用技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis的基础事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 探索Redis事务回滚 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 使用watch命令监控事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 流水线(pipelined) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 发布订阅 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 超时命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用Lua语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 执行输入Lua程序代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 执行Lua文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Redis配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis基础配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis备份(持久化) --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Redis内存回收策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 复制 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 处理HTTP GET请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ └── 处理HTTP POST请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 使用cookie --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 会话跟踪 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 入门和技术基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 认识SSM框架和Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Spring IoC简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Spring AOP --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── MyBatis简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Hibernate简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ ├── MyBatis --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── Hibernate和MyBatis的区别 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── Spring MVC简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 最流行的NoSQL——Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SSM+Redis结构框图及概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── Redis概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis在Java Web中的应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 高速读/写场合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis基本安装和使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Windows下安装Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ │ └── 在Linux下安装Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── Redis的Java API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Java程序中使用Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 在Spring中使用Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 简介Redis的6种数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Redis数据结构常用命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis数据结构——字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis数据结构——哈希 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ ├── Redis数据结构——链表(linked-list) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── Redis数据结构——集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis数据结构——有序集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── Redis基础命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── spring-data-redis对有序集合的封装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 使用Spring操作有序集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 基数——HyperLogLog --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Redis的一些常用技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis的基础事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 探索Redis事务回滚 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 使用watch命令监控事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 流水线(pipelined) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 发布订阅 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 超时命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用Lua语言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 执行输入Lua程序代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 执行Lua文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── Redis配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis基础配置文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis备份(持久化) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── Redis内存回收策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 复制 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ │ │ │ │ ├── 主从同步基础概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ │ ├── Redis主从同步配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ │ └── Redis主从同步的过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 哨兵(Sentinel)模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 哨兵模式概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 搭建哨兵模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Java中使用哨兵模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 哨兵模式的其他配置项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用redis-cli --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安全设置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 基本操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── keys --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis List --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis Hash --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── Set --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pub/Sub --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot集成Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用StringRedisTemplate --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── opsFor --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 绑定Key的操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── RedisConnection --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 序列化策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 默认序列化策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 自定义序列化策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 哨兵(Sentinel)模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 哨兵模式概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 搭建哨兵模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 在Java中使用哨兵模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 哨兵模式的其他配置项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用redis-cli --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 安全设置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── keys --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis List --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Redis Hash --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── Set --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Pub/Sub --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring Boot集成Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用StringRedisTemplate --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── opsFor --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 绑定Key的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── RedisConnection --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 序列化策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 默认序列化策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 自定义序列化策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── Java设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java反射技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过反射构建对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 反射方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ ├── 动态代理模式和责任链模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JDK动态代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CGLIB动态代理 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 拦截器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 拦截器的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── Java反射技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 通过反射构建对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 反射方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) +│ │ ├── 动态代理模式和责任链模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── JDK动态代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CGLIB动态代理 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 拦截器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 拦截器的定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) │ │ │ │ ├── 拦截器的执行流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发拦截器 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 多个拦截器执行的顺序 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 责任链模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 开发拦截器 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ │ └── 多个拦截器执行的顺序 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ └── 责任链模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ ├── 观察者(Observer)模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ └── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 工厂模式和抽象工厂模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 普通工厂(Simple Factory)模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 抽象工厂(Abstract Factory)模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 工厂模式和抽象工厂模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 普通工厂(Simple Factory)模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 抽象工厂(Abstract Factory)模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) │ │ └── 建造者(Builder)模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 互联网持久框架——MyBatis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 认识MyBatis核心组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 准备MyBatis环境 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── MyBatis的核心组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSessionFactory(工厂接口) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用XML构建SqlSessionFactory --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用代码创建SqlSessionFactory --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── SqlSession --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 映射器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用XML实现映射器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 注解实现映射器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 互联网持久框架——MyBatis --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 认识MyBatis核心组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 准备MyBatis环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── MyBatis的核心组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SqlSessionFactory(工厂接口) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用XML构建SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用代码创建SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── SqlSession --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 用XML实现映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 注解实现映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── SqlSession发送SQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 用Mapper接口发送SQL --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ │ │ └── 对比两种发送SQL方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 生命周期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSessionFactoryBuilder --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSessionFactory --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSession --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Mapper --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── MyBatis配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── properties属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── property子元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用properties文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 使用程序传递方式传递参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── settings设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── typeAliases别名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系统定义别名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义别名 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── typeHandler类型转换器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系统定义的typeHandler --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义typeHandler --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 枚举typeHandler --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 文件操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ObjectFactory(对象工厂) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── environments(运行环境) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── transactionManager(事务管理器) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── environment数据源环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── databaseIdProvider数据库厂商标识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用系统默认的databaseIdProvider --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 不使用系统规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 引入映射器的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 映射器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── select元素——查询语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 简单的select元素的应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 自动映射和驼峰映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传递多个参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用resultMap映射结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 分页参数RowBounds --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── insert元素——插入语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 简单的insert语句的应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 主键回填 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 自定义主键 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── update元素和delete元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── sql元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 存储过程参数支持 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 特殊字符串的替换和处理(#和$) --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── resultMap元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── resultMap元素的构成 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 使用map存储结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用POJO存储结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 级联 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── MyBatis中的级联 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 建立POJO --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 配置映射文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 延迟加载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 另一种级联 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 多对多级联 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一级缓存和二级缓存 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 缓存配置项、自定义和引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 存储过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IN和OUT参数存储过程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 游标的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 动态SQL --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── if元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── choose、when、otherwise元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── trim、where、set元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── foreach元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用test的属性判断字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── bind元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MyBatis的解析和运行原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 构建SqlSessionFactory过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建Configuration --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 构建映射器的内部组成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 构建SqlSessionFactory --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── SqlSession运行过程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 映射器(Mapper)的动态代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── SqlSession下的四大对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 插件接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 插件的初始化 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 插件的代理和反射设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 常用的工具类——MetaObject --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Spring基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring IoC的概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring的概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring的简史 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Spring IoC概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 主动创建对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 被动创建对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring IoC阐述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring IoC容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring IoC容器的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring IoC容器的初始化和依赖注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Bean的生命周期 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 装配Spring Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 依赖注入的3种方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构造器注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用setter注入 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 接口注入 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 装配Bean概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过XML配置装配Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 装配简易值 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 装配集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 命名空间装配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过注解装配Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用@Component装配Bean --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 自动装配——@Autowired --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 自动装配的歧义性(@Primary和@Qualifier) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 装载带有参数的构造方法类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用@Bean装配Bean --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 注解自定义Bean的初始化和销毁方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 装配的混合使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Profile --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用注解@Profile配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用XML定义Profile --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启动Profile --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 点睛 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 演示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 加载属性(properties)文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用注解方式加载属性文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用XML方式加载属性文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 条件化装配Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Bean的作用域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用Spring表达式(Spring EL) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring EL相关的类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── Spring EL运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 面向切面编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 生命周期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SqlSessionFactoryBuilder --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SqlSession --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Mapper --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── MyBatis配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── properties属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── property子元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用properties文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 使用程序传递方式传递参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── settings设置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── typeAliases别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 系统定义别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 自定义别名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── typeHandler类型转换器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 系统定义的typeHandler --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自定义typeHandler --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 枚举typeHandler --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 文件操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ObjectFactory(对象工厂) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── environments(运行环境) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── transactionManager(事务管理器) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── environment数据源环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── databaseIdProvider数据库厂商标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用系统默认的databaseIdProvider --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 不使用系统规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 引入映射器的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── select元素——查询语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 简单的select元素的应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 自动映射和驼峰映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 传递多个参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用resultMap映射结果集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 分页参数RowBounds --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── insert元素——插入语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 简单的insert语句的应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ ├── 主键回填 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 自定义主键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── update元素和delete元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── sql元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 存储过程参数支持 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── 特殊字符串的替换和处理(#和$) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── resultMap元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── resultMap元素的构成 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ ├── 使用map存储结果集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用POJO存储结果集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 级联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── MyBatis中的级联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 建立POJO --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 配置映射文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 延迟加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 另一种级联 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 多对多级联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 一级缓存和二级缓存 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ └── 缓存配置项、自定义和引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 存储过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── IN和OUT参数存储过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 游标的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 动态SQL --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── if元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── choose、when、otherwise元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── trim、where、set元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── foreach元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用test的属性判断字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── bind元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── MyBatis的解析和运行原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 构建SqlSessionFactory过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 构建Configuration --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 构建映射器的内部组成 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 构建SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── SqlSession运行过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 映射器(Mapper)的动态代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── SqlSession下的四大对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 插件接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 插件的初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ ├── 插件的代理和反射设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 常用的工具类——MetaObject --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Spring基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring IoC的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring的概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Spring的简史 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── Spring IoC概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 主动创建对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 被动创建对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Spring IoC阐述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Spring IoC容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring IoC容器的设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring IoC容器的初始化和依赖注入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Spring Bean的生命周期 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 装配Spring Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 依赖注入的3种方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 构造器注入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用setter注入 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 接口注入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 装配Bean概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通过XML配置装配Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 装配简易值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 装配集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 命名空间装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通过注解装配Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用@Component装配Bean --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 自动装配——@Autowired --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ ├── 自动装配的歧义性(@Primary和@Qualifier) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 装载带有参数的构造方法类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用@Bean装配Bean --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 注解自定义Bean的初始化和销毁方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 装配的混合使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Profile --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用注解@Profile配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用XML定义Profile --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 启动Profile --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 点睛 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 演示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 加载属性(properties)文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用注解方式加载属性文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用XML方式加载属性文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 条件化装配Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Bean的作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用Spring表达式(Spring EL) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring EL相关的类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── Spring EL运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 面向切面编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 一个简单的约定游戏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 约定规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 读者的代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ └── 笔者的代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring AOP的基本概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── AOP的概念和使用原因 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 面向切面编程的术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring对AOP的支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用@AspectJ注解开发Spring AOP --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选择切点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建切面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 连接点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试AOP --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 装配AOP --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 使用注解装配AOP --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── AOP避坑指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 环绕通知 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 织入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 引入 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用XML配置开发Spring AOP --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 前置通知、后置通知、返回通知和异常通知 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 环绕通知 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 引入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 经典Spring AOP应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多个切面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Spring AOP的基本概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── AOP的概念和使用原因 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 面向切面编程的术语 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Spring对AOP的支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用@AspectJ注解开发Spring AOP --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 选择切点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建切面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 连接点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 测试AOP --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 装配AOP --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 使用注解装配AOP --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ └── AOP避坑指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 环绕通知 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 织入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 引入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用XML配置开发Spring AOP --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 前置通知、后置通知、返回通知和异常通知 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 环绕通知 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 引入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 经典Spring AOP应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 多个切面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Spring和数据库编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 传统的JDBC代码的弊端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 配置数据库资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用简单数据库配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 使用第三方数据库连接池 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 使用JNDI数据库连接池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用简单数据库配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ │ ├── 使用第三方数据库连接池 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 使用JNDI数据库连接池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── JDBC代码失控的解决方案——jdbcTemplate --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── jdbcTemplate的增、删、查、改 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) │ │ │ │ ├── 执行多条SQL --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ │ └── jdbcTemplate的源码分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) │ │ │ └── Spring的缺点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入Spring数据库事务管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring数据库事务管理器的设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置事务管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 用Java配置方式实现Spring数据库事务 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 深入Spring数据库事务管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring数据库事务管理器的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 配置事务管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 用Java配置方式实现Spring数据库事务 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ ├── 编程式事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 声明式事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Transactional的配置项 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 使用XML进行配置事务管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 事务定义器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 声明式事务的约定流程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 声明式事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Transactional的配置项 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 使用XML进行配置事务管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 事务定义器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 声明式事务的约定流程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 数据库的相关知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 数据库事务ACID特性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 数据库事务ACID特性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ │ ├── 丢失更新 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ │ └── 隔离级别 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选择隔离级别和传播行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选择隔离级别 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 传播行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Spring+MyBatis组合中使用事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 典型错误用法的剖析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 错误使用Service --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 过长时间占用事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 选择隔离级别和传播行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 选择隔离级别 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 传播行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 在Spring+MyBatis组合中使用事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 典型错误用法的剖析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 错误使用Service --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 过长时间占用事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 错误捕捉异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── Spring基础配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ └── Java配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Spring MVC框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC的初始化和流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MVC设计概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring MVC的架构 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── Spring MVC组件与流程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Spring MVC初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初始化Spring IoC上下文 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 初始化映射请求上下文 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用注解配置方式初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring MVC开发流程详解 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 配置@RequestMapping --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制器的开发 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 视图渲染 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入Spring MVC组件开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制器接收各类请求参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── Spring基础配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ └── Java配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Spring MVC框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring MVC的初始化和流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── MVC设计概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Spring MVC的架构 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── Spring MVC组件与流程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Spring MVC初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 初始化Spring IoC上下文 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 初始化映射请求上下文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用注解配置方式初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Spring MVC开发流程详解 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 配置@RequestMapping --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 控制器的开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 视图渲染 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 深入Spring MVC组件开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 控制器接收各类请求参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 接收普通请求参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 使用@RequestParam注解获取参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 使用URL传递参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传递JSON参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ └── 接收列表数据和表单序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 重定向 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 保存并获取属性参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 注解@RequestAttribute --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 注解@SessionAttribute和注解@SessionAttributes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 注解@CookieValue和注解@RequestHeader --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 验证表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用JSR 303注解验证输入内容 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 使用验证器 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 数据模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 视图和视图解析器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 视图 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 视图解析器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 上传文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MultipartResolver概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 提交上传文件表单 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ └── Spring MVC高级应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC的数据转换和格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HttpMessageConverter和JSON消息转换器 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 一对一转换器(Converter) --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 数组和集合转换器GenericConverter --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用格式化器(Formatter) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 为控制器添加通知 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 国际化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MessageSource接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CookieLocaleResolver和SessionLocaleResolver --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 国际化拦截器(LocaleChangeInterceptor) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 开发国际化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── SSM框架+Redis实践应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 高并发业务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 互联系统应用架构基础分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 高并发系统的分析和设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 有效请求和无效请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 系统设计 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 数据库设计 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 动静分离技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 锁和高并发 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 搭建抢红包开发环境和超发现象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 搭建Service层和DAO层 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 使用@RequestParam注解获取参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ ├── 使用URL传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 传递JSON参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ └── 接收列表数据和表单序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 重定向 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 保存并获取属性参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 注解@RequestAttribute --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 注解@SessionAttribute和注解@SessionAttributes --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 注解@CookieValue和注解@RequestHeader --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 验证表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用JSR 303注解验证输入内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 使用验证器 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 视图和视图解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 视图 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 视图解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 上传文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── MultipartResolver概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 提交上传文件表单 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ └── Spring MVC高级应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring MVC的数据转换和格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── HttpMessageConverter和JSON消息转换器 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 一对一转换器(Converter) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 数组和集合转换器GenericConverter --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用格式化器(Formatter) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 为控制器添加通知 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 处理异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── MessageSource接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── CookieLocaleResolver和SessionLocaleResolver --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 国际化拦截器(LocaleChangeInterceptor) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 开发国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── SSM框架+Redis实践应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 高并发业务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 互联系统应用架构基础分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 高并发系统的分析和设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 有效请求和无效请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 系统设计 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 数据库设计 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 动静分离技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 锁和高并发 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 搭建抢红包开发环境和超发现象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 搭建Service层和DAO层 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) │ │ │ └── 使用全注解搭建SSM开发环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 悲观锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 乐观锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CAS原理概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 乐观锁实现抢红包业务 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 乐观锁重入机制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用Redis实现抢红包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用注解方式配置Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据存储设计 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 使用Redis实现抢红包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 各类方式的优缺点 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 点睛Spring 4.x --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Spring常用配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Bean的Scope --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring EL和资源调用. --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Bean的初始化和销毁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 悲观锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 乐观锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── CAS原理概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 乐观锁实现抢红包业务 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 乐观锁重入机制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用Redis实现抢红包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用注解方式配置Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 数据存储设计 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 使用Redis实现抢红包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 各类方式的优缺点 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── 点睛Spring 4.x --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Spring常用配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Bean的Scope --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spring EL和资源调用. --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Bean的初始化和销毁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 事件(Application Event) --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Spring高级话题 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Spring Aware --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 计划任务 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 条件注解@Conditional --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 组合注解与元注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── @Enable*注解的工作原理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 第一类:直接导入配置类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 第二类:依据条件选择配置类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 第三类:动态注册Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 点睛Spring MVC 4.x --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Spring MVC基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC的常用注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC基本配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 静态资源映射 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 拦截器配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── @ControllerAdvice --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 其他配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── Spring MVC的高级配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件上传配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 自定义HttpMessageConverter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 服务器端推送技术 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── Spring MVC的测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java EE简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java EE --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java EE架构 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── Java EE的缺点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Hello,Spring Boot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建一个Maven工程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 增加Web支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Hello Spring Boot示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用热部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 添加REST支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Spring Boot基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 检查Java环境与安装Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装和配置Maven --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Maven介绍 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 安装Maven --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 设置Maven --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用IDE设置Maven --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Maven的常用命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Spring核心技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring的历史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring容器介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Spring AOP介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── MVC框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成MVC框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 引入依赖 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── Spring高级话题 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Spring Aware --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 计划任务 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 条件注解@Conditional --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 组合注解与元注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── @Enable*注解的工作原理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 第一类:直接导入配置类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 第二类:依据条件选择配置类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 第三类:动态注册Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 点睛Spring MVC 4.x --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Spring MVC基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring MVC概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring MVC的常用注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring MVC基本配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 静态资源映射 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 拦截器配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── @ControllerAdvice --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 其他配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ ├── Spring MVC的高级配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件上传配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 自定义HttpMessageConverter --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 服务器端推送技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── Spring MVC的测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Java EE简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Java EE --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Java EE架构 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── Java EE的缺点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring Boot --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Hello,Spring Boot --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建一个Maven工程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 增加Web支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Hello Spring Boot示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 使用热部署 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 添加REST支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Spring Boot基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 检查Java环境与安装Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装和配置Maven --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Maven介绍 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── 安装Maven --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 设置Maven --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用IDE设置Maven --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Maven的常用命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Spring核心技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring的历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring容器介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Spring AOP介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── MVC框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成MVC框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 引入依赖 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Web应用目录结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Java包名结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Controller --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── URL映射到方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── @RequestMapping --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── URL路径匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── HTTP method匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── consumes和produces --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── params和header匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 方法参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PathVariable --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Model&ModelAndView --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── JavaBean接受HTTP参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── @RequsetBody接受JSON --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MultipartFile --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── @ModelAttribute --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── @InitBinder --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 验证框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JSR- --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MVC中使用@Validated --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 自定义校验 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── WebMvcConfigurer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 跨域访问 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 注册Controller --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 视图技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Freemarker --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 使用Beetl --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Jackson --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Redirect和Forward --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Beetl模板引擎 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Beetl --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置定界符号和占位符 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 配置Beetl --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── groupTemplate --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 全局变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 局部变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 共享变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 模板变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 计算表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 逻辑表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 控制语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 循环语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 条件语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── try catch --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 函数调用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 格式化函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 直接调用Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标签函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HTML标签 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 安全输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 高级功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 自定义格式化函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义标签函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义HTML标签 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── AJAX局部渲染 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 脚本引擎 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── JSON技术 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 在Spring Boot中使用Jackson --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义ObjectMapper --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Jackson的三种使用方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Jackson树遍历 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 对象绑定 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 流式操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Jackson注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── Java包名结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Controller --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── URL映射到方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── @RequestMapping --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── URL路径匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── HTTP method匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── consumes和produces --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── params和header匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 方法参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PathVariable --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Model&ModelAndView --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── JavaBean接受HTTP参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── @RequsetBody接受JSON --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── MultipartFile --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── @ModelAttribute --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── @InitBinder --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 验证框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JSR- --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── MVC中使用@Validated --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 自定义校验 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── WebMvcConfigurer --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 跨域访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 注册Controller --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 视图技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Freemarker --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 使用Beetl --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Jackson --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Redirect和Forward --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Beetl模板引擎 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 安装Beetl --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 设置定界符号和占位符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 配置Beetl --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── groupTemplate --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 全局变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 局部变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 共享变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 模板变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 计算表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 逻辑表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 条件语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── try catch --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 函数调用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 格式化函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 直接调用Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 标签函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── HTML标签 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 安全输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 高级功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自定义函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 自定义格式化函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自定义标签函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自定义HTML标签 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── AJAX局部渲染 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 脚本引擎 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── JSON技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 在Spring Boot中使用Jackson --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自定义ObjectMapper --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Jackson的三种使用方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Jackson树遍历 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 对象绑定 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ ├── 流式操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── Jackson注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ └── 集合的反序列化 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── MVC分离开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集成WebSimulate --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 模拟JSON响应 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 模拟模板渲染 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通用错误处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── curl命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据库访问 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 配置数据源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring JDBC Template --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 修改 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── JdbcTemplate增强 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── BeetlSQL介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── MVC分离开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集成WebSimulate --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 模拟JSON响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 模拟模板渲染 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通用错误处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── curl命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据库访问 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 配置数据源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring JDBC Template --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 修改 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── JdbcTemplate增强 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── BeetlSQL介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── BeetlSQL功能概览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 添加Maven依赖 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置BeetlSQL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SQLManager --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用SQL文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用实体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── SQLManager内置CRUD --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 内置的插入API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内置的更新(删除)API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内置的查询API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 代码生成方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用sqlId --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 添加Maven依赖 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 配置BeetlSQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── SQLManager --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用SQL文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 使用实体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── SQLManager内置CRUD --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 内置的插入API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内置的更新(删除)API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内置的查询API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 代码生成方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用sqlId --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── md文件命名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── md文件构成 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 调用sqlId --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 翻页查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TailBean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ORM查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 其他API --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── Mapper详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 调用sqlId --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 翻页查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── TailBean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ORM查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 其他API --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── Mapper详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── BeetlSQL的其他功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 常用函数和标签 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 常用函数和标签 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 主键设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── BeetlSQL注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── NameConversion --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JDBC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用DAO --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 集成Hibernate --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成JPA --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成MyBatis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 设计ORM --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Spring Data JPA --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成Spring Data JPA --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集成数据源 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 配置JPA支持 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 创建Entity --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 简化Entity --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Repository --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CrudRepository --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── PagingAndSortingRepository --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JpaRepository --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 持久化Entity --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Sort --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── Pageable和Page --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 基于方法名字查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── @Query查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用JPA Query --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Example查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Spring Boot配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 配置Spring Boot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务器配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 使用JDBC --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用DAO --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 集成Hibernate --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成JPA --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成MyBatis --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 设计ORM --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Spring Data JPA --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成Spring Data JPA --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集成数据源 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 配置JPA支持 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 创建Entity --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 简化Entity --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Repository --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── CrudRepository --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── PagingAndSortingRepository --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JpaRepository --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 持久化Entity --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Sort --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── Pageable和Page --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 基于方法名字查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── @Query查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 使用JPA Query --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Example查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Spring Boot配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 配置Spring Boot --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 服务器配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ ├── 使用其他Web服务器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 配置启动信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 配置浏览器显示ico --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 日志配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读取应用配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Environment --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── @Value --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ └── @ConfigurationProperties --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Spring Boot自动装配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── @Configuration和@Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Bean条件装配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Class条件装配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Environment装配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 其他条件装配 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 联合多个条件 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── Condition接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 制作Starter --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ ├── 部署Spring Boot应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 以jar文件运行 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 以war方式部署 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 多环境部署 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ └── @Profile注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Testing单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JUnit介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JUnit的相关概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JUnit测试 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Assert --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Suite --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 测试范围依赖 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Spring Boot测试脚手架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 测试MVC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 完成MVC请求模拟 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 比较MVC的返回结果 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── JSON比较 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── Mockito --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 模拟对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 模拟方法参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 模拟方法返回值 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 面向数据库应用的单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── @Sql --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── XLSUnit --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 配置启动信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 配置浏览器显示ico --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 日志配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读取应用配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Environment --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── @Value --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ └── @ConfigurationProperties --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Spring Boot自动装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── @Configuration和@Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Bean条件装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Class条件装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Environment装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 其他条件装配 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 联合多个条件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Condition接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 制作Starter --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ ├── 部署Spring Boot应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 以jar文件运行 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 以war方式部署 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 多环境部署 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── @Profile注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Testing单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── JUnit介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JUnit的相关概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── JUnit测试 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── Assert --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Suite --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring Boot单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 测试范围依赖 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── Spring Boot测试脚手架 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 测试MVC --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 完成MVC请求模拟 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 比较MVC的返回结果 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── JSON比较 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── Mockito --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 模拟对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 模拟方法参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 模拟方法返回值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 面向数据库应用的单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── @Sql --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── XLSUnit --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── XLSUnit的基本用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── REST --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── REST简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── REST风格的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用“api”作为上下文 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 增加一个版本标识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标识资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 确定HTTP Method --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 确定HTTP Status --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── REST VS. WebService --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── Spring Boot集成REST --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集成REST --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── @RestController --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── REST Client --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── Swagger UI --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 集成Swagger --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Swagger规范 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 接口描述 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 查询参数描述 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── URI中的参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HTTP头参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 表单参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件上传参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 整个请求体作为参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 模拟REST服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── MongoDB --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装MongoDB --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 使用shell --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 指定数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 插入文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 查询文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 更新操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 删除操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot集成MongoDB --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 增删改查 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 增加API --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 根据主键查询API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 查询API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 修改API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 删除API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用MongoDatabase --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 打印日志 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ ├── Elasticsearch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Elasticsearch介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Elasticsearch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Elasticsearch的基本概念 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用REST访问Elasticsearch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 添加文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 根据主键查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 根据主键更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 根据主键删除 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 搜索文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 联合多个索引搜索 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用RestTemplate访问ES --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 创建Book --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 使用RestTemplate获取搜索结果 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── Spring Data Elastic --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装Spring Data --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── 编写Entity --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 编写Dao --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 编写Controller --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Cache --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 关于Cache --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cache的组件和概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cache的单体应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用专有的Cache服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用一二级缓存服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot Cache --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 注释驱动缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── @Cacheable --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Key生成器 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── @CachePut --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── @CacheEvict --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── @Caching --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── @CacheConfig --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Redis Cache --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集成Redis缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 禁止缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 定制缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Redis缓存原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 实现Redis两级缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 实现TwoLevelCacheManager --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建RedisAndLocalCache --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── REST --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── REST简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── REST风格的架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用“api”作为上下文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 增加一个版本标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 标识资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 确定HTTP Method --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 确定HTTP Status --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── REST VS. WebService --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── Spring Boot集成REST --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集成REST --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── @RestController --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── REST Client --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── Swagger UI --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 集成Swagger --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Swagger规范 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 接口描述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 查询参数描述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── URI中的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── HTTP头参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 表单参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件上传参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 整个请求体作为参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 模拟REST服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── MongoDB --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装MongoDB --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 使用shell --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 指定数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 插入文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 查询文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 更新操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 删除操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring Boot集成MongoDB --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 增删改查 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 增加API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 根据主键查询API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 查询API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 修改API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 删除API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用MongoDatabase --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 打印日志 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ ├── Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Elasticsearch介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Elasticsearch的基本概念 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 使用REST访问Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 添加文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 根据主键查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 根据主键更新 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 根据主键删除 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 搜索文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 联合多个索引搜索 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用RestTemplate访问ES --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 创建Book --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 使用RestTemplate获取搜索结果 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── Spring Data Elastic --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装Spring Data --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ ├── 编写Entity --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 编写Dao --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 编写Controller --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 关于Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Cache的组件和概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Cache的单体应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用专有的Cache服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用一二级缓存服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring Boot Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 注释驱动缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── @Cacheable --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Key生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── @CachePut --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── @CacheEvict --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── @Caching --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── @CacheConfig --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Redis Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集成Redis缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 禁止缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 定制缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Redis缓存原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 实现Redis两级缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 实现TwoLevelCacheManager --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建RedisAndLocalCache --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 缓存同步说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 将代码组合在一起 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Spring Session --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 水平扩展实现 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── Spring Session --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Session介绍 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ └── Nginx+Redis --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ ├── 监控Spring Boot应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装Acutator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── HTTP跟踪 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 日志查看 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ └── 将代码组合在一起 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Spring Session --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 水平扩展实现 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── Spring Session --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Spring Session介绍 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ └── Nginx+Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ ├── 监控Spring Boot应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装Acutator --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── HTTP跟踪 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 日志查看 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ │ ├── 线程栈信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内存信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 查看URL映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 查看Spring容器管理的Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 其他监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 编写自己的监控信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写HealthIndicator --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ └── 自定义监控 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── Web开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 内存信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 查看URL映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 查看Spring容器管理的Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 其他监控 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 编写自己的监控信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写HealthIndicator --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ └── 自定义监控 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── Web开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Web基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── Servlet入门 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── Servlet开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Servlet进阶 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── JSP开发 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── MVC开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MVC高级开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Filter --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 修改响应 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Listener --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成Filter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Interceptor --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理CORS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异步处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用WebSocket --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ ├── Spring开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── IoC容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IoC原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Annotation配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定制Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Resource --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 注入配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 集成第三方组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成JavaMail --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── 集成JMS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Scheduler --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 集成JMX --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成Open API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 访问Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成Artemis --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 集成RabbitMQ --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── 集成Kafka --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Spring Boot开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用开发者工具 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 打包Spring Boot应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Actuator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Profiles --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Conditional --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 加载配置文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 禁用自动配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 添加Filter --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ └── Spring Cloud开发 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── Servlet入门 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── Servlet开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Servlet进阶 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── JSP开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── MVC开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── MVC高级开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Filter --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 修改响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Listener --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 部署 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成Filter --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Interceptor --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 处理CORS --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异步处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用WebSocket --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ ├── Spring开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── IoC容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── IoC原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Annotation配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定制Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Resource --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 注入配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 集成第三方组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成JavaMail --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ ├── 集成JMS --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Scheduler --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 集成JMX --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成Open API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 访问Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集成Artemis --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 集成RabbitMQ --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── 集成Kafka --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Spring Boot开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用开发者工具 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 打包Spring Boot应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Actuator --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Profiles --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用Conditional --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 加载配置文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 禁用自动配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 添加Filter --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ └── Spring Cloud开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) └── 其他 --> ( 难度等级: 无 || 挂载数据: 无 ) ├── 其他类别标签问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) ├── 应用类问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) diff --git a/data/python_tree.txt b/data/python_tree.txt index c506e2a..976ee8b 100644 --- a/data/python_tree.txt +++ b/data/python_tree.txt @@ -1,786 +1,786 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) ├── Python初阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 预备知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Python都能做什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 程序设计思想 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Windows安装Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Linux安装Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── MacOS安装Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 运行方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 以交互方式运行 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 以脚本方式运行 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 常用开发工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── typing --- 类型提示支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── pydoc --- 文档生成器和在线帮助系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python Development Mode --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Effects of the Python Development Mode --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ResourceWarning Example --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Bad file descriptor error example --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── doctest --- 测试交互性的Python示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── unittest --- 单元测试框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── unittest.mock --- mock对象库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── unittest.mock上手指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 2to3 - 自动将Python 2 代码转为Python 3 代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── test --- Python回归测试包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── test.support --- Utilities for the Python test suite --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── test.support.socket_helper --- Utilities for socket tests --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── test.support.script_helper --- Utilities for the Python execution tests --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── test.support.bytecode_helper --- Support tools for testing correct bytecode generation --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编码规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 模块管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── pip --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ ├── 基础语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 缩进规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 建议使用4个空格 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注释 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 如何编写注释 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 变量的命名和使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 变量是标签 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 表达式语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 赋值语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── assert语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── return语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── yield语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── raise语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── break语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── continue语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── import语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── global语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── nonlocal语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标识符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 命名规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 运算与表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代码风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 交互式解释器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 算法是什么 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 获取用户输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 保存并执行程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从命令提示符运行Python脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 让脚本像普通程序一样 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 起步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 搭建编程环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Python版本 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ ├── 运行Python代码片段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── SublimeText简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在不同操作系统中搭建Python编程环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Windows系统中搭建Python编程环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在macOS系统中搭建Python编程环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在Linux系统中搭建Python编程环境 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 运行HelloWorld程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置SublimeText以使用正确的Python版本 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 运行程序hello_world.py --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 从终端运行Python程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在Windows系统中从终端运行Python程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 列表简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改、添加和删除元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 修改列表元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ │ ├── 在列表中添加元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ └── 从列表中删除元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 组织列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用方法sort对列表永久排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 使用函数sorted对列表临时排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 倒着打印列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 确定列表的长度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用列表时避免索引错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 测试代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 测试函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数定义def --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 参数var --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 返回值return --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 参数传递 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数调用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 函数递归 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数编写风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 调用函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数的参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 递归函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── None值 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 调用栈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 局部和全局作用域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 局部变量不能在全局作用域内使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 局部作用域不能使用其他局部作用域内的变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 全局变量可以在局部作用域中读取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 把函数视作对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可调用对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用户定义的可调用类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数内省 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从定位参数到仅限关键字参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 获取关于参数的信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 支持函数式编程的包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 传递实参 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 位置实参 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 关键字实参 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 默认值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 等效的函数调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 返回值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 返回简单值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 让实参变成可选的 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 返回字典 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 传递列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在函数中修改列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 禁止函数修改列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 传递任意数量的实参 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用任意数量的关键字实参 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 导入特定的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用as给函数指定别名 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 使用as给模块指定别名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 导入模块中的所有函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数编写指南 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 编写可接受任意数量参数的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编写只接受关键字参数的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将元数据信息附加到函数参数上 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从函数中返回多个值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义带有默认参数的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义匿名或内联函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在匿名函数中绑定变量的值 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 让带有N个参数的可调用对象以较少的参数形式调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用函数替代只有单个方法的类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 在回调函数中携带额外的状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内联回调函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 访问定义在闭包内的变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类定义class --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 作用域和命名空间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 属性和方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模拟数值类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字符串表示形式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义的布尔值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类编码风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 初探类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 类定义语法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 类对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 方法对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 补充说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 私有变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生成器表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建自定义类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 再谈隐藏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类的命名空间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指定超类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 深入探讨继承 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多个超类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接口和内省 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python文化中的接口和协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python喜欢序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用猴子补丁在运行时实现协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Alex Martelli的水禽 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义抽象基类的子类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 标准库中的抽象基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义并使用一个抽象基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Tombola子类的测试方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python使用register的方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 鹅的行为有可能像鸭子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 抽象基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 导入类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 导入单个类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在一个模块中存储多个类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从一个模块中导入多个类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 导入模块中的所有类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用别名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义工作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Python标准库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 顺序语句结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 条件和分支 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── if --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── if-else语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── if-elif-else结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 省略else代码块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用if语句处理列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 检查特殊元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 确定列表不是空的 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 设置if语句的格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── elif --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── else --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 条件判断 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 这正是布尔值的用武之地 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代码块嵌套 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字典列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 在字典中存储列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在字典中存储字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 检查是否相等 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 检查是否相等时忽略大小写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数值比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 检查多个条件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 检查特定值是否包含在列表中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 布尔表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── for --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── while --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── break --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── continue --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 循环判断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 迭代字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一些迭代工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 跳出循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 循环中的else子句 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 整型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 浮点型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单引号字符串以及对引号转义 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 拼接字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字符串表示str和repr --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 长字符串、原始字符串和字节 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字符串基本操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置字符串的格式:精简版 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ └── 替换字段名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用方法修改字符串的大小写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用制表符或换行符来添加空白 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 删除空白 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用字符串时避免语法错误 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 字符串编码转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 使用encode方法编码 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 使用decode方法解码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── datetime --- 基本的日期和时间类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── zoneinfo --- IANA时区支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── calendar --- 日历相关函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── collections --- 容器数据类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── collections.abc --- 容器的抽象基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── heapq --- 堆队列算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── bisect --- 数组二分查找算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── array --- 高效的数值数组 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── weakref --- 弱引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── types --- 动态类型创建和内置类型名称 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── copy --- 浅层 (shallow) 和深层 (deep) 复制操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── pprint --- 数据美化输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── reprlib --- 另一种repr实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── enum --- 对枚举的支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── graphlib --- Functionality to operate with graph-like structures --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 数据类型转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 内置类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 列表:list --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数list --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 基本的列表操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 遍历整个列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── 深入研究循环 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── 在for循环中执行更多操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ └── 在for循环结束后执行一些操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 避免缩进错误 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ ├── 忘记缩进 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 忘记缩进额外的代码行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 不必要的缩进 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ ├── 循环后不必要的缩进 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 遗漏了冒号 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 创建数值列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 使用range创建数字列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── 对数字列表执行简单的统计计算 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ │ └── 列表解析 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ └── 设置代码格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 格式设置指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 行长 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 空行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 其他格式设置指南 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 列表方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 列表数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 增强的赋值操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 序列数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 引用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 访问列表元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 索引从0而不是1开始 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用列表中的各个值 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 遍历切片 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 复制列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 列表的创建和删除 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对列表进行统计计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 对列表进行排序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字典:dict --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 访问字典中的值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加键值对 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 先创建一个空字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改字典中的值 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 删除键值对 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 由类似对象组成的字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用get来访问值 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 遍历字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 遍历所有键值对 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 遍历字典中的所有键 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 按特定顺序遍历字典中的所有键 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 遍历字典中的所有值 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 访问字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 字典推导式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 元组:tuple --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义元组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 遍历元组中的所有值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改元组变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 访问元组元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改元组 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 元组推导式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集合:set --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 创建集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 集合的交集、并集和差集运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 整型:int --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 字符串:str --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ └── 常用内置函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── help --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── input --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── print --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── range --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── format --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── len --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── sorted --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── open --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── dir --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── enumerate/zip --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── type/isinstance --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── min/max/sum --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── abs/round/pow/divmod --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 进阶语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 列表推导式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 三元表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 算术转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 原子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 原型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── await表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 幂运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一元算术和位运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 二元算术运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 移位运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 布尔运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 赋值表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 条件表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 表达式列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 求值顺序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 运算符优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 断言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── with-as --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常捕获预处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── try-catch-finally --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 异常捕获 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不用提供参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多个except子句 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 一箭双雕 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 捕获对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一网打尽 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 万事大吉时 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 最后 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符串方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── find --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── index --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── join --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── lower --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── replace --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── split --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── strip --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── translate --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── upper --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── center --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 判断字符串是否满足特定的条件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── lambda函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 迭代器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代器协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 从迭代器创建序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建生成器 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 递归式生成器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 通用生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成器的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 模拟生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 闭包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 打开文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 文件基本方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 读取和写入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用管道重定向输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 关闭文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ └── 文件内容迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 每次一个字符(或字节) --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 每次一行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读取所有内容 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 使用fileinput实现延迟行迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 文件迭代器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 常用标准库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── datetime --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── json --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── math --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── os --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── random --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ ├── re --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── sys --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── time --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── urllib --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── fileinput --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 其他有趣的标准模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 字符编码与解码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 理解内码和字节码的概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 面向对象编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类和对象的概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类成员 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 面向对象三要素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 封装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 继承 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 子类的方法__init__ --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重写父类的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 模拟实物 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 抽象类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 访问限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 获取对象信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 命令行与环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 命令行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接口选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通用选项 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 其他选项 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 不应当使用的选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 环境变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 调试模式变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 在Unix平台中使用Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 获取最新版本的Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Linux中 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 在FreeBSD和OpenBSD上 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 在OpenSolaris系统上 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 杂项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 在Windows上使用Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 完整安装程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装步骤 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 删除MAX_PATH限制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 无UI安装 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 免下载安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 修改安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Microsoft Store包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── nuget.org安装包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可嵌入的包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 嵌入Python --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 替代捆绑包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 配置Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 查找Python可执行文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── UTF-8 模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 适用于Windows的Python启动器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从虚拟环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 从文件关联 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Shebang Lines --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── shebang lines的参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过INI文件自定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义默认的Python版本 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 诊断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 查找模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 附加模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyWin32 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── cx_Freeze --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── WConio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在Windows上编译Python --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ └── 其他平台 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 在苹果系统上使用Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 获取和安装MacPython --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何运行Python脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 运行有图形界面的脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 提取常量 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ └── 配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── IDE --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 安装额外的Python包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Mac上的图形界面编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在Mac上分发Python应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 其他资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 编辑器和集成开发环境 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Python解释器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 调用解释器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 传入参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 交互模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 解释器的运行环境 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 源文件的字符编码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python速览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python用作计算器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 数字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 走向编程的第一步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 其他流程控制工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── range函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── pass语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 定义函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 向函数传递信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 实参和形参 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数定义详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认值参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 特殊参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 位置或关键字参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 仅位置参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 仅限关键字参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 函数示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 任意实参列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 解包实参列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Lambda表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 文档字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 函数注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 小插曲:编码风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 列表详解 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 用列表实现堆栈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用列表实现队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 嵌套的列表推导式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── del语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 循环的技巧 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入条件控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 序列和其他类型的比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 序列构成的数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内置序列类型概览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 元组不仅仅是不可变的列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列的增量赋值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── list.sort方法和内置函数sorted --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用bisect来管理已排序的序列 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 当列表不是首选时 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 文本和字节序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字节概要 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本的编解码器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理文本文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 为了正确比较而规范化Unicode字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Unicode文本排序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Unicode数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 支持字符串和字节序列的双模式API --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 以脚本方式执行模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 模块搜索路径 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── “已编译的” Python文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 标准模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── dir函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从包中导入 * --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 子包参考 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多目录中的包 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 安装第三方模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── Pillow --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── requests --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── chardet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── psutil --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── cmath和复数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 回到未来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块就是程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块是用来下定义的 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 让模块可用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 输入与输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 更复杂的输出格式 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 格式化字符串字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串format方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 手动格式化字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 旧式字符串格式化方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读写文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 文件对象的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用json保存结构化数据 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 文件读写过程 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 用shelve模块保存变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 用pprint.pformat函数保存变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用input函数输入 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ └── 使用print函数输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ ├── 错误和异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 句法错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 触发异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用户自定义异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定义清理操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 预定义的清理操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 让事情沿你指定的轨道出错 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ └── 自定义的异常类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 异常之禅 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 不那么异常的情况 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ ├── 标准库简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 操作系统接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 文件通配符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 命令行参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 错误输出重定向和程序终止 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符串模式匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数学 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 互联网访问 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 日期和时间 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 数据压缩 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 性能测量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 质量控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自带电池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 格式化输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 模板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用二进制数据记录格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 预备知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Python都能做什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 程序设计思想 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Windows安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Linux安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── MacOS安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 运行方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 以交互方式运行 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 以脚本方式运行 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 常用开发工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── typing --- 类型提示支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── pydoc --- 文档生成器和在线帮助系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python Development Mode --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Effects of the Python Development Mode --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── ResourceWarning Example --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Bad file descriptor error example --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── doctest --- 测试交互性的Python示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── unittest --- 单元测试框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── unittest.mock --- mock对象库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── unittest.mock上手指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 2to3 - 自动将Python 2 代码转为Python 3 代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── test --- Python回归测试包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── test.support --- Utilities for the Python test suite --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── test.support.socket_helper --- Utilities for socket tests --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── test.support.script_helper --- Utilities for the Python execution tests --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── test.support.bytecode_helper --- Support tools for testing correct bytecode generation --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编码规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 模块管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── pip --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ ├── 基础语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 缩进规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 建议使用4个空格 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 如何编写注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 变量的命名和使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 变量是标签 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── 语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 表达式语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 赋值语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── assert语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── return语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── yield语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── raise语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── break语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── continue语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── import语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ │ ├── global语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ └── nonlocal语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 标识符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 命名规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 运算与表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 代码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 交互式解释器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 算法是什么 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 获取用户输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 保存并执行程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 从命令提示符运行Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 让脚本像普通程序一样 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 起步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 搭建编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── Python版本 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ │ ├── 运行Python代码片段 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── SublimeText简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 在不同操作系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Windows系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在macOS系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 在Linux系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 运行HelloWorld程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置SublimeText以使用正确的Python版本 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 运行程序hello_world.py --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 从终端运行Python程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 在Windows系统中从终端运行Python程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 列表简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 修改、添加和删除元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 修改列表元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ │ ├── 在列表中添加元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ │ └── 从列表中删除元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 组织列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用方法sort对列表永久排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── 使用函数sorted对列表临时排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 倒着打印列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 确定列表的长度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用列表时避免索引错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 测试代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 测试函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数定义def --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 参数var --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 返回值return --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 参数传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数调用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 函数递归 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数编写风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 调用函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 递归函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── None值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 调用栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 局部和全局作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 局部变量不能在全局作用域内使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 局部作用域不能使用其他局部作用域内的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 全局变量可以在局部作用域中读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 把函数视作对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 可调用对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用户定义的可调用类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数内省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 从定位参数到仅限关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 获取关于参数的信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 支持函数式编程的包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 传递实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 位置实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 关键字实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 等效的函数调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 返回简单值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 让实参变成可选的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 返回字典 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 传递列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 在函数中修改列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 禁止函数修改列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 传递任意数量的实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用任意数量的关键字实参 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 导入特定的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用as给函数指定别名 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 使用as给模块指定别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 导入模块中的所有函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数编写指南 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 编写可接受任意数量参数的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 编写只接受关键字参数的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 将元数据信息附加到函数参数上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 从函数中返回多个值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义带有默认参数的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义匿名或内联函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 在匿名函数中绑定变量的值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 让带有N个参数的可调用对象以较少的参数形式调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用函数替代只有单个方法的类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 在回调函数中携带额外的状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内联回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 访问定义在闭包内的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类定义class --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 作用域和命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 属性和方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 模拟数值类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字符串表示形式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 自定义的布尔值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类编码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 初探类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 类定义语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 类对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 方法对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 补充说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 私有变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 生成器表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建自定义类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 再谈隐藏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类的命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 指定超类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 深入探讨继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 多个超类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 接口和内省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Python文化中的接口和协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Python喜欢序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用猴子补丁在运行时实现协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Alex Martelli的水禽 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 定义抽象基类的子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 标准库中的抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 定义并使用一个抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Tombola子类的测试方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Python使用register的方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 鹅的行为有可能像鸭子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 导入类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 导入单个类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 在一个模块中存储多个类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 从一个模块中导入多个类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 导入模块中的所有类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 自定义工作流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Python标准库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 顺序语句结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 条件和分支 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── if --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── if-else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── if-elif-else结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 省略else代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用if语句处理列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 检查特殊元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 确定列表不是空的 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ └── 设置if语句的格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── elif --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── else --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 条件判断 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 这正是布尔值的用武之地 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 代码块嵌套 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 字典列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 在字典中存储列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 在字典中存储字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 检查是否相等 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 检查是否相等时忽略大小写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数值比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 检查多个条件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 检查特定值是否包含在列表中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 布尔表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── for --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── while --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── break --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── continue --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 循环判断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 迭代字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一些迭代工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 跳出循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 循环中的else子句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 整型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 浮点型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布尔型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 单引号字符串以及对引号转义 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 拼接字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 字符串表示str和repr --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 长字符串、原始字符串和字节 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字符串基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 设置字符串的格式:精简版 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ └── 替换字段名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用方法修改字符串的大小写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用制表符或换行符来添加空白 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 删除空白 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用字符串时避免语法错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 字符串编码转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 使用encode方法编码 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── 使用decode方法解码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── datetime --- 基本的日期和时间类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── zoneinfo --- IANA时区支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── calendar --- 日历相关函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── collections --- 容器数据类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── collections.abc --- 容器的抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── heapq --- 堆队列算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── bisect --- 数组二分查找算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── array --- 高效的数值数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── weakref --- 弱引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── types --- 动态类型创建和内置类型名称 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── copy --- 浅层 (shallow) 和深层 (deep) 复制操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── pprint --- 数据美化输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── reprlib --- 另一种repr实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── enum --- 对枚举的支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── graphlib --- Functionality to operate with graph-like structures --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布尔类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 数据类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 内置类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 列表:list --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 函数list --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 基本的列表操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 遍历整个列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── 深入研究循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ │ ├── 在for循环中执行更多操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ │ └── 在for循环结束后执行一些操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 避免缩进错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ │ ├── 忘记缩进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 忘记缩进额外的代码行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 不必要的缩进 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ │ ├── 循环后不必要的缩进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ └── 遗漏了冒号 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 创建数值列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 使用range创建数字列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ │ │ ├── 对数字列表执行简单的统计计算 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ │ │ └── 列表解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ └── 设置代码格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 格式设置指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 行长 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 空行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 其他格式设置指南 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 列表方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 列表数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 增强的赋值操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 序列数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 访问列表元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 索引从0而不是1开始 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用列表中的各个值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 遍历切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 复制列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 列表的创建和删除 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 对列表进行统计计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 对列表进行排序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字典:dict --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 访问字典中的值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 添加键值对 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 先创建一个空字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 修改字典中的值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 删除键值对 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 由类似对象组成的字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用get来访问值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 遍历字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 遍历所有键值对 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 遍历字典中的所有键 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 按特定顺序遍历字典中的所有键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 遍历字典中的所有值 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 访问字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 字典推导式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 元组:tuple --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 定义元组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 遍历元组中的所有值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 修改元组变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 访问元组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 修改元组 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 元组推导式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集合:set --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 创建集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 集合的交集、并集和差集运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 整型:int --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 字符串:str --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ └── 常用内置函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── help --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── input --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── print --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── range --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── format --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── len --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── sorted --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── open --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── dir --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── enumerate/zip --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── type/isinstance --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── min/max/sum --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── abs/round/pow/divmod --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 进阶语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 列表推导式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 三元表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 算术转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 原子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 原型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── await表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 幂运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一元算术和位运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 二元算术运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 移位运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 布尔运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 赋值表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 条件表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 表达式列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 求值顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 运算符优先级 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 断言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── with-as --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常捕获预处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── try-catch-finally --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 异常捕获 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不用提供参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 多个except子句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 一箭双雕 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 捕获对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一网打尽 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 万事大吉时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 最后 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字符串方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── find --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── index --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── join --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── lower --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── replace --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── split --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── strip --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── translate --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── upper --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── center --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 判断字符串是否满足特定的条件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── lambda函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 迭代器协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 从迭代器创建序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 递归式生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 通用生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 生成器的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 模拟生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 闭包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 打开文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 文件基本方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 读取和写入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用管道重定向输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 关闭文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ └── 文件内容迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 每次一个字符(或字节) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 每次一行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 读取所有内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 使用fileinput实现延迟行迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 文件迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 常用标准库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── datetime --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── json --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── math --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── os --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── random --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ ├── re --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── sys --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── time --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── urllib --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── fileinput --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 其他有趣的标准模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 字符编码与解码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 理解内码和字节码的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 面向对象编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类和对象的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 面向对象三要素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 封装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 子类的方法__init__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 重写父类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 模拟实物 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 多态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 抽象类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 访问限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 获取对象信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 命令行与环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 命令行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 接口选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通用选项 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 其他选项 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 不应当使用的选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 环境变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 调试模式变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 在Unix平台中使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 获取最新版本的Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 在Linux中 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── 在FreeBSD和OpenBSD上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 在OpenSolaris系统上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构建Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 杂项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 在Windows上使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 完整安装程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装步骤 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 删除MAX_PATH限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 无UI安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 免下载安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 修改安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Microsoft Store包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── nuget.org安装包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 可嵌入的包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 嵌入Python --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 替代捆绑包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 配置Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 查找Python可执行文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── UTF-8 模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── 适用于Windows的Python启动器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 从虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 从脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 从文件关联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Shebang Lines --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── shebang lines的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 自定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 通过INI文件自定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 自定义默认的Python版本 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 诊断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 查找模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 附加模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PyWin32 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── cx_Freeze --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── WConio --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在Windows上编译Python --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ └── 其他平台 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 在苹果系统上使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 获取和安装MacPython --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 如何运行Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 运行有图形界面的脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 提取常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ └── 配置文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── IDE --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 安装额外的Python包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Mac上的图形界面编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在Mac上分发Python应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 其他资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 编辑器和集成开发环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Python解释器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 调用解释器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 传入参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 交互模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 解释器的运行环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 源文件的字符编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python速览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python用作计算器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 数字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 走向编程的第一步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 其他流程控制工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── range函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── pass语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 定义函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 向函数传递信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 实参和形参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数定义详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 默认值参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 特殊参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 位置或关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 仅位置参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 仅限关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 函数示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 任意实参列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 解包实参列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 文档字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 函数注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 小插曲:编码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 列表详解 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 用列表实现堆栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用列表实现队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 嵌套的列表推导式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── del语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 循环的技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 深入条件控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 序列和其他类型的比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 序列构成的数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内置序列类型概览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 元组不仅仅是不可变的列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 序列的增量赋值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── list.sort方法和内置函数sorted --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用bisect来管理已排序的序列 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 当列表不是首选时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 文本和字节序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字节概要 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基本的编解码器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 处理文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 为了正确比较而规范化Unicode字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Unicode文本排序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Unicode数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 支持字符串和字节序列的双模式API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 以脚本方式执行模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 模块搜索路径 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── “已编译的” Python文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 标准模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── dir函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 从包中导入 * --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 子包参考 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 多目录中的包 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 安装第三方模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── Pillow --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── requests --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── chardet --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── psutil --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── cmath和复数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 回到未来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块就是程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块是用来下定义的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 让模块可用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 输入与输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 更复杂的输出格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 格式化字符串字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串format方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 手动格式化字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 旧式字符串格式化方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读写文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 文件对象的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用json保存结构化数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件读写过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── 用shelve模块保存变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 用pprint.pformat函数保存变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用input函数输入 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── 使用print函数输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ ├── 错误和异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 句法错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 处理异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 触发异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用户自定义异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定义清理操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 预定义的清理操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 让事情沿你指定的轨道出错 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ └── 自定义的异常类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 异常之禅 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 不那么异常的情况 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ ├── 标准库简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 操作系统接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 文件通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 命令行参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 错误输出重定向和程序终止 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字符串模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数学 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 互联网访问 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 日期和时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 数据压缩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 性能测量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 质量控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 自带电池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 格式化输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用二进制数据记录格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 弱引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用于操作列表的工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 十进制浮点运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 交互式编辑和编辑历史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Tab补全和编辑历史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 默认交互式解释器的替代品 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 浮点算术:争议和限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 表示性错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 其他实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 标注 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 可用性注释 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 词法分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 行结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 其他形符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字面值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 赋值运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 比较(关系)运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 逻辑运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 位运算符 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── 分隔符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 标准类型层级结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 特殊方法名称 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 协程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 生成器如何进化成协程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用作协程的生成器的基本行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 预激协程的装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 让协程返回值 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用yield from --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── yield from的意义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用案例:使用协程做离散事件仿真 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 执行模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 程序的结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ └── 命名与绑定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 导入系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── importlib --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 搜索 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 加载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基于路径的查找器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 替换标准导入系统 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 包相对导入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 有关__main__的特殊事项 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── 参考文献 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 复合语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── while语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── try语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── with语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 类定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 顶级组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 完整的Python程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用文本编辑器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Python代码运行助手 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 文件输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 交互式输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 表达式输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 完整的语法规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 内置常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 由site模块添加的常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 内置类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 逻辑值检测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 布尔运算 --- and, or, not --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数字类型 --- int, float, complex --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 迭代器类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 序列类型 --- list, tuple, range --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 文本序列类型 --- str --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 二进制序列类型 --- bytes, bytearray, memoryview --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集合类型 --- set, frozenset --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 映射类型 --- dict --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 上下文管理器类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Generic Alias Type --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 其他内置类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── 内置异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 警告 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 异常层次结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 文本处理服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── string --- 常见的字符串操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── re --- 正则表达式操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── difflib --- 计算差异的辅助工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── textwrap --- 文本自动换行与填充 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── unicodedata --- Unicode数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── stringprep --- 因特网字符串预备 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── readline --- GNU readline接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── rlcompleter --- GNU readline的补全函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 二进制数据服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── struct --- 将字节串解读为打包的二进制数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── codecs --- 编解码器注册和相关基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 函数式编程模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── itertools --- 为高效循环而创建迭代器的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── functools --- 高阶函数和可调用对象上的操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── operator --- 标准运算符替代函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据持久化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 日志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 弱引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用于操作列表的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 十进制浮点运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 交互式编辑和编辑历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Tab补全和编辑历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 默认交互式解释器的替代品 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 浮点算术:争议和限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 表示性错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 其他实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 标注 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 可用性注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 词法分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 行结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 其他形符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 比较(关系)运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 位运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── 分隔符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 标准类型层级结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 特殊方法名称 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 协程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 生成器如何进化成协程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用作协程的生成器的基本行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 预激协程的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 让协程返回值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用yield from --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── yield from的意义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用案例:使用协程做离散事件仿真 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 执行模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 程序的结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── 命名与绑定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 导入系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── importlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 搜索 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基于路径的查找器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 替换标准导入系统 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 包相对导入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 有关__main__的特殊事项 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── 参考文献 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 复合语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── while语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── try语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── with语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 类定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 顶级组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 完整的Python程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用文本编辑器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Python代码运行助手 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 文件输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 交互式输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 表达式输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 完整的语法规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 内置常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 由site模块添加的常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 内置类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 逻辑值检测 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 布尔运算 --- and, or, not --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── 比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数字类型 --- int, float, complex --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 迭代器类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 序列类型 --- list, tuple, range --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 文本序列类型 --- str --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 二进制序列类型 --- bytes, bytearray, memoryview --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 集合类型 --- set, frozenset --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 映射类型 --- dict --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 上下文管理器类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Generic Alias Type --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 其他内置类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── 内置异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 警告 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 异常层次结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 文本处理服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── string --- 常见的字符串操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── re --- 正则表达式操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── difflib --- 计算差异的辅助工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── textwrap --- 文本自动换行与填充 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── unicodedata --- Unicode数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── stringprep --- 因特网字符串预备 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── readline --- GNU readline接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── rlcompleter --- GNU readline的补全函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 二进制数据服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── struct --- 将字节串解读为打包的二进制数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── codecs --- 编解码器注册和相关基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 函数式编程模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── itertools --- 为高效循环而创建迭代器的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── functools --- 高阶函数和可调用对象上的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── operator --- 标准运算符替代函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据持久化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── pickle --- Python对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── copyreg --- 注册配合pickle模块使用的函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── shelve --- Python对象持久化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── copyreg --- 注册配合pickle模块使用的函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── shelve --- Python对象持久化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── marshal --- 内部Python对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── dbm --- Unix "数据库" 接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── sqlite3 --- SQLite数据库DB-API 2.0 接口模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 文件格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── csv --- CSV文件读写 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── configparser --- 配置文件解析器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── netrc --- netrc文件处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── xdrlib --- 编码与解码XDR数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── plistlib --- 生成与解析Apple .plist文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 加密服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── hashlib --- 安全哈希与消息摘要 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── hmac --- 基于密钥的消息验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── dbm --- Unix "数据库" 接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── sqlite3 --- SQLite数据库DB-API 2.0 接口模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 文件格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── csv --- CSV文件读写 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── configparser --- 配置文件解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── netrc --- netrc文件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xdrlib --- 编码与解码XDR数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── plistlib --- 生成与解析Apple .plist文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 加密服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── hashlib --- 安全哈希与消息摘要 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── hmac --- 基于密钥的消息验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── secrets --- 生成管理密码的安全随机数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 通用操作系统服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── os --- 多种操作系统接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── io --- 处理流的核心工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── time --- 时间的访问和转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── argparse --- 命令行选项、参数和子命令解析器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── getopt --- C风格的命令行选项解析器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── logging --- Python的日志记录工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── logging.config --- 日志记录配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── logging.handlers --- 日志处理程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── getpass --- 便携式密码输入工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── curses --- 终端字符单元显示的处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── curses.textpad --- 用于curses程序的文本输入控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── curses.ascii --- 用于ASCII字符的工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── curses.panel --- curses的面板栈扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── platform --- 获取底层平台的标识数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── errno --- 标准errno系统符号 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── ctypes --- Python的外部函数库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 并发执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── threading --- 基于线程的并行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── multiprocessing --- 基于进程的并行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── multiprocessing.shared_memory --- 可从进程直接访问的共享内存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── concurrent包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── concurrent.futures --- 启动并行任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── subprocess --- 子进程管理 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── sched --- 事件调度器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── queue --- 一个同步的队列类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── contextvars --- 上下文变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── _thread --- 底层多线程API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 网络和进程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── asyncio --- 异步I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── socket --- 底层网络接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ssl --- 套接字对象的TLS/SSL包装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── select --- 等待I/O完成 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── selectors --- 高级I/O复用库 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── asyncore --- 异步套接字处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── asynchat --- 异步套接字指令/响应处理程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── signal --- 设置异步事件处理程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── mmap --- 内存映射文件支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 互联网数据处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── email --- 电子邮件与MIME处理包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── json --- JSON编码和解码器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── mailcap --- Mailcap文件处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── mailbox --- 操作多种格式的邮箱 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── mimetypes --- 映射文件名到MIME类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── base64 --- Base16, Base32, Base64, Base85 数据编码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── binascii --- 二进制和ASCII码互转 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── quopri --- 编码与解码经过MIME转码的可打印数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 结构化标记处理工具 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── html --- 超文本标记语言支持 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── html.parser --- 简单的HTML和XHTML解析器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── html.entities --- HTML一般实体的定义 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── XML处理模块 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.etree.ElementTree --- ElementTree XML API --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.dom --- 文档对象模型API --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.dom.minidom --- Minimal DOM implementation --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.dom.pulldom --- 支持构建部分DOM树 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.sax --- 支持SAX2 解析器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.sax.handler --- SAX处理程序的基类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.sax.saxutils --- SAX工具集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── xml.sax.xmlreader --- 用于XML解析器的接口 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── xml.parsers.expat --- Fast XML parsing using Expat --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ ├── 通用操作系统服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── os --- 多种操作系统接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── io --- 处理流的核心工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── time --- 时间的访问和转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── argparse --- 命令行选项、参数和子命令解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── getopt --- C风格的命令行选项解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── logging --- Python的日志记录工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── logging.config --- 日志记录配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── logging.handlers --- 日志处理程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── getpass --- 便携式密码输入工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── curses --- 终端字符单元显示的处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── curses.textpad --- 用于curses程序的文本输入控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── curses.ascii --- 用于ASCII字符的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── curses.panel --- curses的面板栈扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── platform --- 获取底层平台的标识数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── errno --- 标准errno系统符号 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── ctypes --- Python的外部函数库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 并发执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── threading --- 基于线程的并行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── multiprocessing --- 基于进程的并行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── multiprocessing.shared_memory --- 可从进程直接访问的共享内存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── concurrent包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── concurrent.futures --- 启动并行任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── subprocess --- 子进程管理 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ ├── sched --- 事件调度器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── queue --- 一个同步的队列类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── contextvars --- 上下文变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── _thread --- 底层多线程API --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── 网络和进程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── asyncio --- 异步I/O --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── socket --- 底层网络接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── ssl --- 套接字对象的TLS/SSL包装器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── select --- 等待I/O完成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── selectors --- 高级I/O复用库 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── asyncore --- 异步套接字处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── asynchat --- 异步套接字指令/响应处理程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── signal --- 设置异步事件处理程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── mmap --- 内存映射文件支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 互联网数据处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── email --- 电子邮件与MIME处理包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── json --- JSON编码和解码器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── mailcap --- Mailcap文件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── mailbox --- 操作多种格式的邮箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── mimetypes --- 映射文件名到MIME类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── base64 --- Base16, Base32, Base64, Base85 数据编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── binascii --- 二进制和ASCII码互转 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── quopri --- 编码与解码经过MIME转码的可打印数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 结构化标记处理工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── html --- 超文本标记语言支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── html.parser --- 简单的HTML和XHTML解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── html.entities --- HTML一般实体的定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── XML处理模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.etree.ElementTree --- ElementTree XML API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.dom --- 文档对象模型API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.dom.minidom --- Minimal DOM implementation --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.dom.pulldom --- 支持构建部分DOM树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.sax --- 支持SAX2 解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.sax.handler --- SAX处理程序的基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.sax.saxutils --- SAX工具集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── xml.sax.xmlreader --- 用于XML解析器的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── xml.parsers.expat --- Fast XML parsing using Expat --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 互联网协议和支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── webbrowser --- 方便的Web浏览器控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── cgi --- Common Gateway Interface support --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -793,7 +793,7 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── urllib.error --- urllib.request引发的异常类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) │ │ ├── urllib.robotparser --- robots.txt语法分析程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── http --- HTTP模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── http.client --- HTTP协议客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── http.client --- HTTP协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── ftplib --- FTP协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── poplib --- POP3 协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── imaplib --- IMAP4 协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -803,30 +803,30 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── telnetlib -- Telnet客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── uuid --- UUID objects according to RFC 4122 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── socketserver --- A framework for network servers --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── http.server --- HTTP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── http.server --- HTTP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── http.cookies --- HTTP状态管理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ ├── http.cookiejar —— HTTP客户端的Cookie处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── xmlrpc --- XMLRPC服务端与客户端模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── xmlrpc.client --- XML-RPC客户端访问 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── xmlrpc.server --- 基本XML-RPC服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── ipaddress --- IPv4/IPv6 操作库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 多媒体服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── audioop --- 处理原始音频数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── aifc --- 读写AIFF和AIFC文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── sunau --- 读写Sun AU文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── wave --- 读写WAV格式文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── chunk --- 读取IFF分块数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── colorsys --- 颜色系统间的转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── imghdr --- 推测图像类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── sndhdr --- 推测声音文件的类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── ossaudiodev --- Access to OSS-compatible audio devices --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 国际化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── gettext --- 多语种国际化服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── locale --- 国际化服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 程序框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── turtle --- 海龟绘图 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── cmd --- 支持面向行的命令解释器 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── shlex --- Simple lexical analysis --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 多媒体服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── audioop --- 处理原始音频数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── aifc --- 读写AIFF和AIFC文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── sunau --- 读写Sun AU文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── wave --- 读写WAV格式文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── chunk --- 读取IFF分块数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── colorsys --- 颜色系统间的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── imghdr --- 推测图像类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── sndhdr --- 推测声音文件的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── ossaudiodev --- Access to OSS-compatible audio devices --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── gettext --- 多语种国际化服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── locale --- 国际化服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 程序框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── turtle --- 海龟绘图 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── cmd --- 支持面向行的命令解释器 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── shlex --- Simple lexical analysis --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── Tk图形用户界面(GUI) --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── tkinter --- Tcl/Tk的Python接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ │ ├── tkinter.colorchooser --- 颜色选择对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -839,114 +839,114 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── tkinter.tix --- Extension widgets for Tk --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── IDLE --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) │ │ └── 其他图形用户界面(GUI)包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 调试和分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 审计事件表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── bdb --- Debugger framework --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── faulthandler --- Dump the Python traceback --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── pdb --- Python的调试器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python Profilers分析器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── timeit --- 测量小代码片段的执行时间 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── trace --- 跟踪Python语句执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── tracemalloc --- 跟踪内存分配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 抛出异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 取得回溯字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── Mu的调试器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 软件打包和分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── distutils --- 构建和安装Python模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ensurepip --- Bootstrapping the pip installer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── venv --- 创建虚拟环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── zipapp --- Manage executable Python zip archives --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python运行时服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── sysconfig --- Provide access to Python's configuration information --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── builtins --- 内建对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── __main__ --- 顶层脚本环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── warnings --- Warning control --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── dataclasses --- 数据类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── contextlib --- 为with语句上下文提供的工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── abc --- 抽象基类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── atexit --- 退出处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── traceback --- 打印或检索堆栈回溯 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── __future__ --- Future语句定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── gc --- 垃圾回收器接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── inspect --- 检查对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── site —— 指定域的配置钩子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 自定义Python解释器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── code --- 解释器基类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── codeop --- 编译Python代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 导入模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── zipimport --- 从Zip存档中导入模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── pkgutil --- 包扩展工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── modulefinder --- 查找脚本使用的模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── runpy --- Locating and executing Python modules --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── importlib --- import的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Using importlib.metadata --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Python语言服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── parser --- 访问Python解析树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ast --- 抽象语法树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── symtable --- Access to the compiler's symbol tables --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── symbol --- 与Python解析树一起使用的常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── token --- 与Python解析树一起使用的常量 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── keyword --- 检验Python关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── tokenize --- 对Python代码使用的标记解析器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── tabnanny --- 模糊缩进检测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── pyclbr --- Python模块浏览器支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── py_compile --- 编译Python源文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── compileall --- Byte-compile Python libraries --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── dis --- Python字节码反汇编器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── pickletools --- pickle开发者工具集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 杂项服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── formatter --- 通用格式化输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Windows系统相关模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── msilib --- Read and write Microsoft Installer files --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── msvcrt --- 来自MS VC++ 运行时的有用例程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── winreg --- Windows注册表访问 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── winsound --- Sound-playing interface for Windows --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Unix专有服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── posix --- 最常见的POSIX系统调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── pwd --- 用户密码数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── spwd --- The shadow password database --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── grp --- 组数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── crypt --- Function to check Unix passwords --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── termios --- POSIX风格的tty控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── tty --- 终端控制功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── pty --- 伪终端工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── fcntl --- The fcntl and ioctl system calls --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── pipes --- 终端管道接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── resource --- Resource usage information --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── nis --- Sun的NIS (黄页) 接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Unix syslog库例程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 被取代的模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── optparse --- 解析器的命令行选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── imp --- Access the import internals --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 未创建文档的模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 平台特定模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在交互式环境中输入表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符串连接和复制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在变量中保存值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 变量名 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 第一个程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ └── 程序剖析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── print函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── input函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 输出用户的名字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── len函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 高级特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 切片 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 列表生成式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 函数式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 高阶函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── map/reduce --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── filter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 返回函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 匿名函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 偏函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 面向对象高级编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用__slots__ --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用@property --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 定制类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用枚举类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 调试和分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 审计事件表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── bdb --- Debugger framework --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── faulthandler --- Dump the Python traceback --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── pdb --- Python的调试器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python Profilers分析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── timeit --- 测量小代码片段的执行时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── trace --- 跟踪Python语句执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── tracemalloc --- 跟踪内存分配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 取得回溯字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── Mu的调试器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 软件打包和分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── distutils --- 构建和安装Python模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ensurepip --- Bootstrapping the pip installer --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── venv --- 创建虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── zipapp --- Manage executable Python zip archives --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python运行时服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── sysconfig --- Provide access to Python's configuration information --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── builtins --- 内建对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── __main__ --- 顶层脚本环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── warnings --- Warning control --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── dataclasses --- 数据类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── contextlib --- 为with语句上下文提供的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── abc --- 抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── atexit --- 退出处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── traceback --- 打印或检索堆栈回溯 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── __future__ --- Future语句定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── gc --- 垃圾回收器接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── inspect --- 检查对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── site —— 指定域的配置钩子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 自定义Python解释器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── code --- 解释器基类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── codeop --- 编译Python代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 导入模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── zipimport --- 从Zip存档中导入模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── pkgutil --- 包扩展工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── modulefinder --- 查找脚本使用的模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── runpy --- Locating and executing Python modules --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── importlib --- import的实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Using importlib.metadata --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Python语言服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── parser --- 访问Python解析树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── ast --- 抽象语法树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── symtable --- Access to the compiler's symbol tables --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── symbol --- 与Python解析树一起使用的常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── token --- 与Python解析树一起使用的常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── keyword --- 检验Python关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── tokenize --- 对Python代码使用的标记解析器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── tabnanny --- 模糊缩进检测 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── pyclbr --- Python模块浏览器支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── py_compile --- 编译Python源文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── compileall --- Byte-compile Python libraries --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── dis --- Python字节码反汇编器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── pickletools --- pickle开发者工具集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 杂项服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── formatter --- 通用格式化输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Windows系统相关模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── msilib --- Read and write Microsoft Installer files --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── msvcrt --- 来自MS VC++ 运行时的有用例程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── winreg --- Windows注册表访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── winsound --- Sound-playing interface for Windows --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Unix专有服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── posix --- 最常见的POSIX系统调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── pwd --- 用户密码数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── spwd --- The shadow password database --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── grp --- 组数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── crypt --- Function to check Unix passwords --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── termios --- POSIX风格的tty控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── tty --- 终端控制功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── pty --- 伪终端工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── fcntl --- The fcntl and ioctl system calls --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── pipes --- 终端管道接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── resource --- Resource usage information --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── nis --- Sun的NIS (黄页) 接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Unix syslog库例程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 被取代的模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── optparse --- 解析器的命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── imp --- Access the import internals --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 未创建文档的模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 平台特定模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在交互式环境中输入表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字符串连接和复制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在变量中保存值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 变量名 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 第一个程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ └── 程序剖析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── print函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── input函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 输出用户的名字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── len函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 高级特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 列表生成式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 函数式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 高阶函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── map/reduce --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ └── filter --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 返回函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 匿名函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 偏函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 面向对象高级编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用__slots__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用@property --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 定制类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── IO编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── StringIO和BytesIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 操作文件和目录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -954,217 +954,217 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ ├── 进程和线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 多进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── ThreadLocal --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 进程vs. 线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 进程vs. 线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) │ │ └── 分布式进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 正则表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 常用内建模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── collections --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── base64 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── struct --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── hashlib --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── hmac --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── itertools --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── contextlib --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── XML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── HTMLParser --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── virtualenv --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 图形界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 海龟绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 常用内建模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── collections --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── base64 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── struct --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── hashlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── hmac --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── itertools --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── contextlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── HTMLParser --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── virtualenv --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 图形界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 海龟绘图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── TCP/IP简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── TCP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── UDP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 几个网络模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 模块socket --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ └── 模块urllib和urllib2 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── SocketServer及相关的类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Twisted --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 下载并安装Twisted --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ ├── SocketServer及相关的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Twisted --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 下载并安装Twisted --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ └── 编写Twisted服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── SMTP发送邮件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── POP3收取邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 访问数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用SQLite --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── SMTP发送邮件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── POP3收取邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 访问数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用SQLite --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 使用MySQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用SQLAlchemy --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Web开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用SQLAlchemy --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Web开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── HTTP协议简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── HTML简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── WSGI接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── HTML简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── WSGI接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 使用Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 异步IO --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── asyncio --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── async/await --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── aiohttp --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 使用MicroPython --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 搭建开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 控制小车 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 遥控小车 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 遥控转向 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 当索引行不通时 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 字典的用途 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 抽象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 懒惰是一种美德 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自定义函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 给函数编写文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 参数魔法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 值从哪里来 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 我能修改参数吗 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 收集参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 分配参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 递归 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 两个经典案例:阶乘和幂 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 另一个经典案例:二分查找 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 再谈抽象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象魔法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 关于面向对象设计的一些思考 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 开箱即用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 探索模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模块包含什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用help获取帮助 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用源代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 图形用户界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建GUI示例应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 初探 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 使用MicroPython --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 搭建开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 控制小车 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 遥控小车 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 遥控转向 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 当索引行不通时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 字典的用途 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 抽象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 懒惰是一种美德 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 自定义函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 给函数编写文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ ├── 参数魔法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 值从哪里来 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 我能修改参数吗 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 收集参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 分配参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 递归 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 两个经典案例:阶乘和幂 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 另一个经典案例:二分查找 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 再谈抽象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对象魔法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 关于面向对象设计的一些思考 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 开箱即用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 探索模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 模块包含什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用help获取帮助 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 图形用户界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建GUI示例应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 初探 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 最终的程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 使用其他GUI工具包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据库支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Python数据库API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 全局变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 连接和游标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 最终的程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 使用其他GUI工具包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据库支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Python数据库API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 全局变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 连接和游标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 使用SocketServer实现分叉和线程化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用select和poll实现异步I/O --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Python和Web --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 屏幕抓取 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Tidy和XHTML解析 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── Beautiful Soup --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用CGI创建动态网页 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用select和poll实现异步I/O --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Python和Web --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 屏幕抓取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Tidy和XHTML解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── Beautiful Soup --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用CGI创建动态网页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 第一步:准备Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 第二步:添加!#行 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 第三步:设置文件权限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CGI安全风险 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简单的CGI脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用cgitb进行调试 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用模块cgi --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 简单的表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 第二步:添加!#行 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 第三步:设置文件权限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── CGI安全风险 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 简单的CGI脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用cgitb进行调试 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用模块cgi --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 简单的表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── Web服务:更高级的抓取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── RSS和相关内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 使用XML-RPC进行远程过程调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── SOAP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 测试基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 先测试再编码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 准确的需求说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 做好应对变化的准备 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 测试四步曲 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 测试工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── doctest --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── unittest --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 超越单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用PyChecker和PyLint检查源代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 性能分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 扩展Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 鱼和熊掌兼得 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 简单易行的方式:Jython和IronPython --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 编写C语言扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── SWIG --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 手工编写扩展 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── 程序打包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Setuptools基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 打包 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 编译扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用py2exe创建可执行程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 趣味编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 为何要有趣 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编程柔术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 原型设计 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 如果你已不胜其烦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 测试基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 先测试再编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 准确的需求说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 做好应对变化的准备 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 测试四步曲 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 测试工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── doctest --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── unittest --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 超越单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用PyChecker和PyLint检查源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 性能分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 扩展Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 鱼和熊掌兼得 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 简单易行的方式:Jython和IronPython --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 编写C语言扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── SWIG --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 手工编写扩展 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ ├── 程序打包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Setuptools基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 打包 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 编译扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用py2exe创建可执行程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 趣味编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 为何要有趣 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编程柔术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 原型设计 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 如果你已不胜其烦 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 如果你想深入学习 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ ├── Python编程基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 控制流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔值 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 比较操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 二元布尔操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── not操作符 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 混合布尔和比较操作符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制流的元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 代码块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 程序执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制流语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── else语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── elif语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 恼人的循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 等价的while循环 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 用sys.exit函数提前结束程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 字符串操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 将字符串放入其他字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 有用的字符串方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用ord和chr函数的字符的数值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用pyperclip模块复制粘贴字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 计算字符串的长度 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 截取字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 分割、合并字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 检索字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字母的大小写转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 去除字符串中的空格和 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 格式化字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 自动化任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 输入验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── PyInputPlus模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数min、max、greaterThan和lessThan --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数blank --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数limit、timeout和default --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数allowRegexes和blockRegexes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 将自定义验证函数传递给inputCustom --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 组织文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── shutil模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 遍历目录树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 用zipfile模块压缩文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 从Web抓取信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── Python编程基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 控制流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布尔值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 比较操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 布尔操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 二元布尔操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── not操作符 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 混合布尔和比较操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 控制流的元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 程序执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 控制流语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── elif语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 恼人的循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 等价的while循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── 用sys.exit函数提前结束程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 将字符串放入其他字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 有用的字符串方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用ord和chr函数的字符的数值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用pyperclip模块复制粘贴字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 计算字符串的长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 截取字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 分割、合并字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 检索字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字母的大小写转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 去除字符串中的空格和 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 格式化字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 自动化任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 输入验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── PyInputPlus模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关键字参数min、max、greaterThan和lessThan --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关键字参数blank --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关键字参数limit、timeout和default --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关键字参数allowRegexes和blockRegexes --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 将自定义验证函数传递给inputCustom --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 组织文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── shutil模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 遍历目录树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 用zipfile模块压缩文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 从Web抓取信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 用requests模块从Web下载文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 将下载的文件保存到硬盘 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HTML --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 用bs4模块解析HTML --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 用selenium模块控制浏览器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理Excel电子表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Excel文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 安装openpyxl模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读取Excel文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 写入Excel文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 设置单元格的字体风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Font对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 公式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 调整行和列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理Google电子表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装和设置EZSheets --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spreadsheet对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 工作表对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 利用Google Sheets配额 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 处理PDF和Word文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PDF文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Word文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── 从Word文档中创建PDF --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理CSV文件和JSON数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── csv模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── json模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 发送电子邮件和短信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 将下载的文件保存到硬盘 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── HTML --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 用bs4模块解析HTML --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 用selenium模块控制浏览器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 处理Excel电子表格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Excel文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 安装openpyxl模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 读取Excel文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 写入Excel文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 设置单元格的字体风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Font对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 公式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 调整行和列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 处理Google电子表格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装和设置EZSheets --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Spreadsheet对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 工作表对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 利用Google Sheets配额 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 处理PDF和Word文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PDF文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── Word文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ └── 从Word文档中创建PDF --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 处理CSV文件和JSON数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── csv模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── json模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 发送电子邮件和短信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 使用Gmail API发送和接收电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SMTP --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── SMTP --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 发送电子邮件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── IMAP --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── IMAP --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 用IMAP获取和删除电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 使用短信电子邮件网关发送短信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 用Twilio发送短信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 操作图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 计算机图像基础 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 用pillow操作图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 在图像上绘画 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 绘制形状 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 绘制文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 操作图像 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 计算机图像基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 用pillow操作图像 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 在图像上绘画 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 绘制形状 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 绘制文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 用GUI自动化控制键盘和鼠标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 安装pyautogui模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 在macOS上设置无障碍应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) @@ -1176,350 +1176,350 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── 图像识别 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ ├── 获取窗口信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) │ │ ├── 控制键盘 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 设置GUI自动化脚本 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 设置GUI自动化脚本 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) │ │ ├── 复习PyAutoGUI的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── 显示消息框 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 序幕 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Python数据模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一摞Python风格的纸牌 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 特殊方法一览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 把函数视作对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 序幕 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Python数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 一摞Python风格的纸牌 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 特殊方法一览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 把函数视作对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 使用一等函数实现设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 案例分析:重构“策略”模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── “命令”模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 面向对象惯用法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 对象引用、可变性和垃圾回收 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变量不是盒子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认做浅复制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数的参数作为引用时 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── del和垃圾回收 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Python对不可变类型施加的把戏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 符合Python风格的对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 对象表示形式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 再谈向量类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 备选构造方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── classmethod与staticmethod --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化显示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可散列的Vector2d --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python的私有属性和“受保护的”属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用__slots__类属性节省空间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 覆盖类属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 继承的优缺点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 子类化内置类型很麻烦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多重继承的真实应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 一个现代示例:Django通用视图中的混入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 正确重载运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 运算符重载基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 重载向量加法运算符 + --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 重载标量乘法运算符 * --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 增量赋值运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 控制流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用期物处理并发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 阻塞型I/O和GIL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用concurrent.futures模块启动进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 实验Executor.map方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 显示下载进度并处理错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用asyncio包处理并发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 避免阻塞型调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 改进asyncio下载脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用asyncio包编写服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 元编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 动态属性和特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用动态属性转换数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用特性验证属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 特性全解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义一个特性工厂函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 处理属性删除操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 属性描述符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 描述符示例:验证属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 覆盖型与非覆盖型描述符对比 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 方法是描述符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 描述符用法建议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 描述符的文档字符串和覆盖删除操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类元编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类工厂函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定制描述符的类装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 导入时和运行时比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 面向对象惯用法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 对象引用、可变性和垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 变量不是盒子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 默认做浅复制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数的参数作为引用时 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── del和垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Python对不可变类型施加的把戏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 符合Python风格的对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 对象表示形式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 再谈向量类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 备选构造方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── classmethod与staticmethod --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 格式化显示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 可散列的Vector2d --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python的私有属性和“受保护的”属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用__slots__类属性节省空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 覆盖类属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 继承的优缺点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 子类化内置类型很麻烦 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 多重继承的真实应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 一个现代示例:Django通用视图中的混入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 正确重载运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 运算符重载基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 重载向量加法运算符 + --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 重载标量乘法运算符 * --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 增量赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 控制流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用期物处理并发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 阻塞型I/O和GIL --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 使用concurrent.futures模块启动进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 实验Executor.map方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ └── 显示下载进度并处理错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用asyncio包处理并发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 避免阻塞型调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 改进asyncio下载脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用asyncio包编写服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 元编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 动态属性和特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用动态属性转换数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用特性验证属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 特性全解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义一个特性工厂函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 处理属性删除操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 属性描述符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 描述符示例:验证属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 覆盖型与非覆盖型描述符对比 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 方法是描述符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 描述符用法建议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 描述符的文档字符串和覆盖删除操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类元编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类工厂函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定制描述符的类装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 导入时和运行时比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 元类基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定制描述符的元类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 元类的特殊方法__prepare__ --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 给函数添加一个包装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 定制描述符的元类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 元类的特殊方法__prepare__ --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 给函数添加一个包装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 编写装饰器时如何保存函数的元数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对装饰器进行解包装 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 定义一个可接受参数的装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定义一个属性可由用户修改的装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定义一个能接收可选参数的装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 利用装饰器对函数参数强制执行类型检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在类中定义装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把装饰器定义成类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把装饰器作用到类和静态方法上 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写装饰器为被包装的函数添加参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 利用装饰器给类定义打补丁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 获取类属性的定义顺序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定义一个能接受可选参数的元类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在*args和**kwargs上强制规定一种参数签名 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 在类中强制规定编码约定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过编程的方式来定义类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在定义的时候初始化类成员 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过函数注解来实现方法重载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 避免出现重复的属性方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 以简单的方式定义上下文管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 执行带有局部副作用的代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 解析并分析Python源代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 将Python源码分解为字节码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据编码与处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读写CSV数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读写JSON数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 解析简单的XML文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 以增量方式解析大型XML文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 将字典转换为XML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用命名空间来解析XML文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 同关系型数据库进行交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读写二进制结构的数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读取嵌套型和大小可变的二进制结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 数据汇总和统计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 并发 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 启动和停止线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 判断线程是否已经启动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对临界区加锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 避免死锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 保存线程专有状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建线程池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 实现简单的并行编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 如何规避GIL带来的限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定义一个Actor任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 实现发布者/订阅者消息模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用生成器作为线程的替代方案 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 轮询多个线程队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 在UNIX上加载守护进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 实用脚本和系统管理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 通过重定向、管道或输入文件来作为脚本的输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 终止程序并显示错误信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 解析命令行选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在运行时提供密码输入提示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 获取终端大小 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 执行外部命令并获取输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建和解包归档文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过名称来查找文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读取配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 给脚本添加日志记录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 给库添加日志记录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建一个秒表计时器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 给内存和CPU使用量设定限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 加载Web浏览器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── C语言扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 利用ctypes来访问C代码 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 编写简单的C语言扩展模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 编写一个可操作数组的扩展函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在C扩展模块中管理不透明指针 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在扩展模块中定义并导出C API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 从C中调用Python --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 在C扩展模块中释放GIL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 混合使用C和Python环境中的线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用Swig来包装C代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用Cython来包装C代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用Cython来高效操作数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把函数指针转换为可调用对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把以NULL结尾的字符串传给C库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把Unicode字符串传递给C库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把C字符串转换到Python中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 同编码方式不确定的C字符串打交道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把文件名传给C扩展模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 把打开的文件传给C扩展模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在C中读取文件型对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 从C中访问可迭代对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 排查段错误 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ ├── 初识Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 搭建Python开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 开发环境概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── 运行已经编写好的.py文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ └── Python开发工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用自带的IDLE --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python语言基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python语法特点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 注释规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Python中的变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 理解Python中的变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 定义变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ └── 流程控制语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 程序结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 选择语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── if…else语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── if…elif…else语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── if语句的嵌套 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ └── 循环语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 循环嵌套 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── 对装饰器进行解包装 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── 定义一个可接受参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定义一个属性可由用户修改的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定义一个能接收可选参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 利用装饰器对函数参数强制执行类型检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在类中定义装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把装饰器定义成类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把装饰器作用到类和静态方法上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写装饰器为被包装的函数添加参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 利用装饰器给类定义打补丁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 获取类属性的定义顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定义一个能接受可选参数的元类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在*args和**kwargs上强制规定一种参数签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 在类中强制规定编码约定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通过编程的方式来定义类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在定义的时候初始化类成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通过函数注解来实现方法重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 避免出现重复的属性方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 以简单的方式定义上下文管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 执行带有局部副作用的代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 解析并分析Python源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 将Python源码分解为字节码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据编码与处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读写CSV数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读写JSON数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 解析简单的XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 以增量方式解析大型XML文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 将字典转换为XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用命名空间来解析XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 同关系型数据库进行交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读写二进制结构的数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读取嵌套型和大小可变的二进制结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 数据汇总和统计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 并发 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 启动和停止线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 判断线程是否已经启动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 对临界区加锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 避免死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 保存线程专有状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 创建线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 实现简单的并行编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 如何规避GIL带来的限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 定义一个Actor任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 实现发布者/订阅者消息模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 使用生成器作为线程的替代方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 轮询多个线程队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 在UNIX上加载守护进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 实用脚本和系统管理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 通过重定向、管道或输入文件来作为脚本的输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 终止程序并显示错误信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 解析命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在运行时提供密码输入提示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 获取终端大小 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 执行外部命令并获取输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建和解包归档文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通过名称来查找文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读取配置文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 给脚本添加日志记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 给库添加日志记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建一个秒表计时器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 给内存和CPU使用量设定限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 加载Web浏览器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── C语言扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 利用ctypes来访问C代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 编写简单的C语言扩展模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 编写一个可操作数组的扩展函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在C扩展模块中管理不透明指针 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在扩展模块中定义并导出C API --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 从C中调用Python --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 在C扩展模块中释放GIL --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 混合使用C和Python环境中的线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用Swig来包装C代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用Cython来包装C代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 用Cython来高效操作数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把函数指针转换为可调用对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把以NULL结尾的字符串传给C库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把Unicode字符串传递给C库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把C字符串转换到Python中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 同编码方式不确定的C字符串打交道 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把文件名传给C扩展模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 把打开的文件传给C扩展模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在C中读取文件型对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 从C中访问可迭代对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 排查段错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ ├── 初识Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 搭建Python开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 开发环境概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ └── 运行已经编写好的.py文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ └── Python开发工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 使用自带的IDLE --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python语言基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python语法特点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 注释规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Python中的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 理解Python中的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 定义变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ └── 流程控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 程序结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 选择语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── if…else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── if…elif…else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── if语句的嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ └── 循环语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── 循环嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) ├── Python中阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 基本技能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 时间日期处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── time --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── datetime --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 数据文件读写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── excel/csv/hdf/netCDF --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据库操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 基本技能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 时间日期处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── time --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── datetime --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 数据文件读写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── excel/csv/hdf/netCDF --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 数据库操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 数据库概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 数据库安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── SQL语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── SQLite --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建数据库文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 操作SQLite --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── MySQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 下载安装MySQL --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 连接数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 创建数据表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 操作MySQL数据表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MongoDB --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 数据库编程接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 连接对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 游标对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 操作系统和环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── OS/Sys --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程进程和协程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基础概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 加锁和解锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── threading --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── multiprocessing --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── queue --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── gevent --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 源码打包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── pyinstaller --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── socket --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 与HTTP服务交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── TCP服务器 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── UDP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过CIDR地址生成对应的IP地址集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── REST接口创建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 远程调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 远程方法调用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 通过XML-RPC远程调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不同Python解释器之间的交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 客户端认证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Socket文件描述符传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件驱动的I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 大型数组发送与接收 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 客户端/服务端架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 持久化存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据库基本操作和SQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Web应用:客户端/服务器计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 因特网 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 客户端/服务器架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 硬件客户端/服务器架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 软件客户端/服务器架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 银行出纳员作为服务器吗 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 客户端/服务器网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 套接字:通信端点 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 套接字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 套接字地址:主机-端口对 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 面向连接的套接字与无连接的套接字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python中的网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── socket模块函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 套接字对象(内置)方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建TCP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建TCP客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 执行TCP服务器和客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建UDP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建UDP客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 执行UDP服务器和客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── socket模块属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── *SocketServer模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建SocketServer TCP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建SocketServer TCP客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── *Twisted框架介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建Twisted Reactor TCP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建Twisted Reactor TCP客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 相关模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 其他因特网客户端协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 发送邮件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── smtplib --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Web应用开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── SQLite --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建数据库文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 操作SQLite --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── MySQL --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 下载安装MySQL --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 连接数据库 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 创建数据表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 操作MySQL数据表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── MongoDB --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ └── 数据库编程接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 连接对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 游标对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 操作系统和环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── OS/Sys --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程进程和协程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 基础概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 加锁和解锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── threading --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── multiprocessing --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── queue --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── gevent --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 源码打包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── pyinstaller --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── socket --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 与HTTP服务交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 创建服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ │ └── UDP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 通过CIDR地址生成对应的IP地址集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── REST接口创建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 远程调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 远程方法调用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 通过XML-RPC远程调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 不同Python解释器之间的交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 客户端认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Socket文件描述符传递 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 事件驱动的I/O --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 大型数组发送与接收 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 客户端/服务端架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 持久化存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 数据库基本操作和SQL --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── Web应用:客户端/服务器计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 因特网 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 客户端/服务器架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 硬件客户端/服务器架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 软件客户端/服务器架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 银行出纳员作为服务器吗 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 客户端/服务器网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 套接字:通信端点 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 套接字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 套接字地址:主机-端口对 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 面向连接的套接字与无连接的套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Python中的网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── socket模块函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 套接字对象(内置)方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建TCP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 执行TCP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建UDP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建UDP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 执行UDP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── socket模块属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── *SocketServer模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建SocketServer TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 创建SocketServer TCP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── *Twisted框架介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建Twisted Reactor TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 创建Twisted Reactor TCP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 相关模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 其他因特网客户端协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 发送邮件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── smtplib --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Web应用开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Web开发基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── HTML/HTML5/CSS --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 前端数据库和后台 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── MVC架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── REST和Ajax --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Django --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Django简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ ├── Django安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DTL(Django Template Language) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Django路由定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Django --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Django简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ ├── Django安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── DTL(Django Template Language) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Django路由定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Django请求数据解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── Django数据库操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Django提交表单 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Django Rest Framework --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署日志与安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Django开发案例 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Django提交表单 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Django Rest Framework --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 部署日志与安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Django开发案例 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── “Hello World”应用(一个博客) --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ ├── “Hello World”应用(一个博客) --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ │ ├── 创建模型来添加数据库服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ └── 设置数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python应用shell --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Django中使用Python shell --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ └── 测试数据模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Django管理应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置admin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用admin --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Python应用shell --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 在Django中使用Python shell --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ └── 测试数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Django管理应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 设置admin --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 使用admin --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 创建博客的用户界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 创建模板 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) │ │ │ │ ├── 创建URL模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ └── 创建视图函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 改进输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 处理用户输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加URLconf项 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 视图:处理用户输入 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 改进输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 处理用户输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 添加URLconf项 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 视图:处理用户输入 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ │ └── 跨站点请求伪造 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 表单和模型表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Django表单简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模型表单示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用ModelForm来生成HTML表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 处理ModelForm数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 视图进阶 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── *改善外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── *中级Django应用:TweetApprover --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Twython库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── URL结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 数据模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 提交新推文以便审核 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 审核推文 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Tornado --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado提交表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 表单和模型表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── Django表单简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 模型表单示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用ModelForm来生成HTML表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 处理ModelForm数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 视图进阶 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── *改善外观 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── *中级Django应用:TweetApprover --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 安装Twython库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── URL结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ │ ├── 数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 提交新推文以便审核 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 审核推文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Tornado --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Tornado简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Tornado安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Tornado提交表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Tornado模板 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── Tornado数据库操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Tornado异步Web服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 外部服务认证(auth) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署日志与安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Tornado开发案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Flask --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Flask简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 外部服务认证(auth) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 部署日志与安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Tornado开发案例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Flask --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Flask简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ ├── 创建应用目录 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ │ ├── 虚拟环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Python 3中创建虚拟环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Python 2中创建虚拟环境 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 使用虚拟环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用pip安装Python包 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 应用的基本结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 路由和视图函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 一个完整的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Web开发服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 动态路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 调试模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 命令行选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 请求–响应循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Python 3中创建虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Python 2中创建虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 使用虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 使用pip安装Python包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 应用的基本结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 路由和视图函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 一个完整的应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── Web开发服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 动态路由 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 调试模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 请求–响应循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ │ ├── 应用和请求上下文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ │ ├── 请求分派 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ │ ├── 请求对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ │ │ ├── 对象显示 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ │ │ │ │ └── 由字符串调用对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ │ └── 请求钩子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Flask扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ └── Flask扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ ├── Jinja2模板引擎 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ │ ├── 渲染模板 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) @@ -1532,13 +1532,13 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ │ │ ├── 链接 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ │ │ │ │ ├── 静态文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ └── 使用Flask-Moment本地化日期和时间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Web表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 表单类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 把表单渲染成HTML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在视图函数中处理表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 重定向和用户会话 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 闪现消息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Web表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 表单类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 把表单渲染成HTML --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 在视图函数中处理表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 重定向和用户会话 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 闪现消息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ ├── SQL数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) │ │ │ │ │ ├── NoSQL数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -1560,67 +1560,67 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ │ │ ├── 创建迁移脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ ├── 更新数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ │ │ └── 添加几个迁移 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ ├── 电子邮件系统组件和协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ │ ├── 发送电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Python和SMTP --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── smtplib.SMTP类方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 交互式SMTP示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── SMTP的其他内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 接收电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── POP和IMAP --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 交互式POP3示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── poplib.POP3类方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 客户端程序SMTP和POP3示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 交互式IMAP4示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── imaplib.IMAP4类中的常用方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 大型应用的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 应用包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用应用工厂函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在蓝本中实现应用功能 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 应用脚本 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 需求文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── blog应用的代码审查 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 创建数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 运行应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ ├── Flask安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── Python和SMTP --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── smtplib.SMTP类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 交互式SMTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── SMTP的其他内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 接收电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── POP和IMAP --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 交互式POP3示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── poplib.POP3类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 客户端程序SMTP和POP3示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 交互式IMAP4示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── imaplib.IMAP4类中的常用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 大型应用的结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 配置选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 应用包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用应用工厂函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── 在蓝本中实现应用功能 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 应用脚本 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 需求文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ │ └── blog应用的代码审查 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 创建数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 运行应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ │ ├── Flask安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Flask实现HTTP请求与响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask cookie与session --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Flask cookie与session --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Flask模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask提交表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Flask提交表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Flask数据库操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Bootstrap-Flask --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Bootstrap-Flask --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Flask开发REST Web服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 部署日志与安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Flask开发案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网站可视化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── Echarts --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网站高并发处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Web客户端和服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python Web客户端工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 统一资源定位符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── urlparse模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── urllib模块/包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用urllib2 HTTP验证的示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 将HTTP验证示例移植到Python 3中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Web客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一个简单的Web爬虫/蜘蛛/机器人 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 解析Web页面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 可编程的Web浏览 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── Web(HTTP)服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 部署日志与安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Flask开发案例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 网站可视化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── Echarts --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 网站高并发处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Web客户端和服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Python Web客户端工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 统一资源定位符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── urlparse模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── urllib模块/包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用urllib2 HTTP验证的示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 将HTTP验证示例移植到Python 3中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Web客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 一个简单的Web爬虫/蜘蛛/机器人 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 解析Web页面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 可编程的Web浏览 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ └── Web(HTTP)服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── Web编程:CGI和WSGI --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 帮助Web服务器处理客户端数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── CGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── CGI应用程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── cgi模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── cgitb模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 帮助Web服务器处理客户端数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── CGI简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── CGI应用程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── cgi模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── cgitb模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 构建CGI应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 构建Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 建立表单页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 生成结果页面 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 生成表单和结果页面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 生成表单和结果页面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ └── 全面交互的Web站点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 在CGI中使用Unicode --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 高级CGI --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -1628,52 +1628,52 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ │ └── 多值字段 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── WSGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 动机(替代CGI) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务器集成 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 服务器集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 外部进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── WSGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── WSGI服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 参考服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── WSGI服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 参考服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── WSGI应用示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 中间件及封装WSGI应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ └── 在Python 3中使用WSGI --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 现实世界中的Web开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 云计算:Google App Engine --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 云计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 云计算服务的层次 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── App Engine --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 沙盒和App Engine SDK --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选择一个App Engine框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python 2.7支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一般差异 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 代码中的差异 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将“Hello World”改成一个简单的博客 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 快速发现改动:30秒内将纯文本转成HTML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加Datastore服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代改进 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 开发/SDK控制台 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 添加Memcache服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 添加用户服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Google账号验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 联合验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 远程API shell --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 问与答(Python实现) --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 云计算:Google App Engine --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 云计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 云计算服务的层次 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── App Engine --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 沙盒和App Engine SDK --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 选择一个App Engine框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python 2.7支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 一般差异 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 代码中的差异 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 将“Hello World”改成一个简单的博客 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 快速发现改动:30秒内将纯文本转成HTML --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 添加表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 添加Datastore服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 迭代改进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 开发/SDK控制台 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 添加Memcache服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 添加用户服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Google账号验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 联合验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 远程API shell --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 问与答(Python实现) --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 使用XMPP发送即时消息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理图片 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 任务队列(非定期任务) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置app.yaml --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 其他任务创建选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── deferred包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Appstats进行分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在app.yaml中添加标准处理程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加自定义Admin Console页面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 作为内置界面启用界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── URLfetch服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 问与答(无Python实现) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Cron服务(计划任务作业) --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 处理图片 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 任务队列(非定期任务) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 配置app.yaml --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 其他任务创建选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── deferred包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Appstats进行分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 在app.yaml中添加标准处理程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 添加自定义Admin Console页面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 作为内置界面启用界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── URLfetch服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 问与答(无Python实现) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Cron服务(计划任务作业) --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 预热请求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── DoS保护 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 厂商锁定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── DoS保护 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 厂商锁定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── Web服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Yahoo!金融股票报价服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── Twitter微博 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) @@ -1682,9 +1682,9 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ └── 额外在线资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 网络爬虫 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── 基础概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是网络爬虫 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 什么是网络爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── HTML与DOM树分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 常用网络爬虫工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 常用网络爬虫工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 相关法律及注意事项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── urllib --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 处理异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -1748,30 +1748,30 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ │ ├── 属性的代理访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ │ │ ├── 创建用于计算的属性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ │ └── 为属性添加安全保护机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 键盘和鼠标操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 键盘和鼠标操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── WebDriver API --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 表单交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 表单交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── Scrapy框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Scrapy简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy框架组成 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ ├── Scrapy框架组成 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) │ │ │ ├── Item Pipeline --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── Downloader --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Spiders --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Scheduler --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy框架介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Scrapy框架介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── Scrapy入门 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ ├── Selector的用法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── Spider的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Downloader Middleware的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Spider Middleware的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Item Pipeline的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy对接Selenium --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Scrapy对接Splash --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy通用爬虫 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── Scrapy对接Selenium --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── Scrapy对接Splash --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Scrapy通用爬虫 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) │ │ │ ├── Scrapyrt的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy对接Docker --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Scrapy爬取新浪微博 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── Scrapy对接Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── Scrapy爬取新浪微博 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) │ │ ├── 数据存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 文件存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── TXT文本存储 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) @@ -1784,13 +1784,13 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ └── Redis存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 渲染动态网页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── WebKit/Selenium/headless/PhantomJS --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 表单交互处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 表单交互处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 超时异常处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── timeout --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── 验证码处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 自动输入/OCR字符识别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 高并发处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 多线程爬虫 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 高并发处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 多线程爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 开发环境配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Python 3的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── Windows下的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -1820,15 +1820,15 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── Web库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── Flask的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ └── Tornado的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── App爬取相关库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Charles的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── mitmproxy的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Appium的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 爬虫框架的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── pyspider的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scrapy的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scrapy-Splash的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Scrapy-Redis的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── App爬取相关库的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── Charles的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── mitmproxy的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── Appium的安装 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 爬虫框架的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── pyspider的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── Scrapy的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── Scrapy-Splash的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── Scrapy-Redis的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 部署相关库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Docker的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Scrapyd的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -1836,33 +1836,33 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── Scrapyd API的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Scrapyrt的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── Gerapy的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 爬虫基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HTTP基本原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── URI和URL --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 超文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP和HTTPS --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP请求过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 请求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 网页基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 网页的组成 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 网页的结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 节点树及节点间的关系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 选择器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 爬虫的基本原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 爬虫概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 能抓怎样的数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── JavaScript渲染页面 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 会话和Cookies --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 静态网页和动态网页 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 无状态HTTP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 常见误区 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 代理的基本原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 爬虫基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── HTTP基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── URI和URL --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 超文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── HTTP和HTTPS --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── HTTP请求过程 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ │ │ ├── 请求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 响应 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 网页基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 网页的组成 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 网页的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 节点树及节点间的关系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 选择器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 爬虫的基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 爬虫概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 能抓怎样的数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ │ └── JavaScript渲染页面 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 会话和Cookies --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 静态网页和动态网页 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 无状态HTTP --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── 常见误区 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 代理的基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── 基本原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代理的作用 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 爬虫代理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 代理分类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 常见代理设置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 代理的作用 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 爬虫代理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 代理分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 常见代理设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 基本库的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 抓取猫眼电影排行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 解析库的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -1881,7 +1881,7 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 图形验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 极验滑动验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 点触验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 微博宫格验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 微博宫格验证码的识别 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 代理的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 代理的设置 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) │ │ │ ├── 代理池的维护 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -1899,321 +1899,321 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── Appium爬取微信朋友圈 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ └── Appium+mitmdump爬取京东商品 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ ├── pyspider框架的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── pyspider框架介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── pyspider框架介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ ├── pyspider的基本使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── pyspider用法详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分布式爬虫 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式爬虫原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy-Redis源码解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy分布式实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Bloom Filter的对接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 分布式爬虫的部署 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Scrapyd分布式部署 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Scrapyd-Client的使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Scrapyd对接Docker --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Scrapyd批量部署 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── Gerapy分布式管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 桌面应用开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Tkinter --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── Tkinter简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tkinter模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Tkinter控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标准属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 几何管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── PyQT --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT布局管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT菜单和工具栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件和信号 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── PyQT拖拽与绘图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── WxPython --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── WxPython简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WxPython常用类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WxPython布局管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WxPython事件处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── WxPython对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WxPython组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── WxPython拖拽处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── WxPython绘图API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python总览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python总体架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python源码组织 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Python对象初探 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python内的对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象的分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象机制的基石—PyObject --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定长对象和变长对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类型的类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象的创建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象的多态性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 引用计数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数字对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 整数对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyLongObject对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 小整数对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 大整数对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 数字格式化输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 进制转换 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 数字运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 四舍五入运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 浮点数运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 复数运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分数运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 大型数组运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 矩阵与线性代数运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字节到大整数的打包与解包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 无穷大与NaN --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 随机数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 字符串对象解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串对象的intern机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字符串操作效率 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 字符串操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串分割 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 删除不需要的字符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串清理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串对齐 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串拼接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串插入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字符串格式化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 字符串匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串开头或结尾匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 用Shell通配符匹配字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 最短匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多行匹配 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 字符串搜索 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串搜索替换 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 字符串忽略大小写的搜索替换 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 将Unicode文本标准化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在正则表达式中使用Unicode字符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 令牌解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 简单的递归下降分析器实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 字节字符串操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 数据结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列对象解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列解压 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 序列去重并保持顺序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 序列元素统计 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 过滤序列元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列元素名称映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 转换并计算数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字典对象解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字典映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字典排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 字典运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字典查找 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过关键字排序字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字典提取 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 字典合并 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 可迭代对象操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可迭代对象解压 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 保留最后N个元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 记录分组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 查找最大或最小的N个元素 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 实现一个优先级队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 命名切片 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 排序不支持原生比较的对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 迭代器与生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 迭代操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 手动遍历迭代器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代理迭代 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 实现迭代协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 反向迭代 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 迭代器切片 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 跳过可迭代对象的开始部分 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 排列组合的迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列上索引值迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多个序列迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集合元素的迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 顺序迭代合并后的排序迭代对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 迭代器代替while无限循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用生成器创建新的迭代模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 带有外部状态的生成器函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建数据处理管道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 展开嵌套的序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 文件与I/O --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读/写操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读/写文本数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 读/写字节数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 读/写压缩文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 文件操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件的写入 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 操作文件路径名 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 文件检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件列表获取 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 忽略文件名编码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 打印不合法的文件名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件编码变更 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 在文本文件中写入字节 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件描述符包装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建临时文件和文件夹 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 二进制文件映射 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 创建和解压归档文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件查找 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置文件读取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关闭文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 打开文件时使用with语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 写入文件内容 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 读取文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 使用分隔符或行终止符打印 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符串的I/O操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 可变缓冲区中二进制数据的读取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 串行端口的数据通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 分布式爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 分布式爬虫原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Scrapy-Redis源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Scrapy分布式实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── Bloom Filter的对接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 分布式爬虫的部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Scrapyd分布式部署 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── Scrapyd-Client的使用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── Scrapyd对接Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Scrapyd批量部署 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── Gerapy分布式管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 桌面应用开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Tkinter --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ ├── Tkinter简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── Tkinter模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Tkinter控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 标准属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 几何管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── PyQT --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PyQT简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PyQT模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PyQT布局管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PyQT菜单和工具栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 事件和信号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PyQT对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── PyQT控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── PyQT拖拽与绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── WxPython --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── WxPython简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── WxPython常用类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── WxPython布局管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── WxPython事件处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ ├── WxPython对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── WxPython组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── WxPython拖拽处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── WxPython绘图API --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python总览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python总体架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python源码组织 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Python对象初探 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python内的对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对象的分类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对象机制的基石—PyObject --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定长对象和变长对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类型的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对象的创建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对象的多态性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 引用计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数字对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 整数对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── PyLongObject对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 小整数对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 大整数对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ ├── 数字格式化输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 进制转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 数字运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 四舍五入运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 浮点数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 复数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 分数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 大型数组运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 矩阵与线性代数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字节到大整数的打包与解包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 无穷大与NaN --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 随机数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 字符串对象解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串对象的intern机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字符串操作效率 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串分割 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 删除不需要的字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串清理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串对齐 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串拼接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串插入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字符串格式化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 字符串匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串开头或结尾匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 用Shell通配符匹配字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 最短匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 多行匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 字符串搜索 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串搜索替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 字符串忽略大小写的搜索替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 将Unicode文本标准化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 在正则表达式中使用Unicode字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 令牌解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 简单的递归下降分析器实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 字节字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 序列对象解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 序列解压 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 序列去重并保持顺序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 序列元素统计 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 过滤序列元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 序列元素名称映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 转换并计算数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字典对象解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字典映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字典排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 字典运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字典查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通过关键字排序字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字典提取 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 字典合并 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 可迭代对象操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 可迭代对象解压 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 保留最后N个元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 记录分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 查找最大或最小的N个元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 实现一个优先级队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 命名切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 排序不支持原生比较的对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 迭代器与生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 迭代操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 手动遍历迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 代理迭代 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 实现迭代协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 反向迭代 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 迭代器切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 跳过可迭代对象的开始部分 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 排列组合的迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 序列上索引值迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 多个序列迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集合元素的迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 顺序迭代合并后的排序迭代对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 迭代器代替while无限循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 使用生成器创建新的迭代模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 带有外部状态的生成器函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建数据处理管道 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 展开嵌套的序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 文件与I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读/写操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 读/写文本数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 读/写字节数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 读/写压缩文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 文件操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件的写入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 操作文件路径名 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 文件检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件列表获取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 忽略文件名编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 打印不合法的文件名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件编码变更 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 在文本文件中写入字节 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件描述符包装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建临时文件和文件夹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 二进制文件映射 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 创建和解压归档文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文件查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 配置文件读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 关闭文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 打开文件时使用with语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ ├── 写入文件内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 读取文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) +│ │ ├── 使用分隔符或行终止符打印 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字符串的I/O操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ ├── 可变缓冲区中二进制数据的读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 串行端口的数据通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据编码及处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据读/写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CSV数据读/写 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── JSON数据读/写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 二进制数组数据读/写 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 嵌套和可变长二进制数据读取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── XML数据解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简单XML数据解析 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 解析XML文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 修改XML --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 字典转换为XML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 与关系型数据库的交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 编码/解码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 十六进制数编码和解码 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ └── 编码/解码Base64数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ ├── 函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 有默认参数的函数定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 匿名或内联函数定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数的参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接收任意数量参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接收关键字参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为参数增加元信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 减少参数个数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 返回多个值的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 类转换为函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 回调函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 有额外状态信息的回调函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 内联回调函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数的创建和调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建一个函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ └── 调用函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 参数传递 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 了解形式参数和实际参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 位置参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 关键字参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为参数设置默认值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 可变参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 返回值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 变量的作用域 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 局部变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 全局变量 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 匿名函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 元编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 装饰器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 函数添加装饰器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ ├── 数据编码及处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数据读/写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── CSV数据读/写 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── JSON数据读/写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 二进制数组数据读/写 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 嵌套和可变长二进制数据读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── XML数据解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 简单XML数据解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 解析XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 修改XML --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 字典转换为XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 与关系型数据库的交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 编码/解码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 十六进制数编码和解码 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ └── 编码/解码Base64数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 有默认参数的函数定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 匿名或内联函数定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 接收任意数量参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 接收关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 为参数增加元信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 减少参数个数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 返回多个值的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 类转换为函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 有额外状态信息的回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 内联回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数的创建和调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建一个函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ │ └── 调用函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 参数传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 了解形式参数和实际参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 位置参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 为参数设置默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 可变参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 变量的作用域 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 局部变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 全局变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 匿名函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 元编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 函数添加装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── 装饰器中保留函数元信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 解除装饰器 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 带参数的装饰器 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 装饰器自定义属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 带可选参数的装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数的类型检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类中定义装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰器定义为类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类和静态方法的装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 给函数增加参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 扩充类的功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 解除装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 带参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 装饰器自定义属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 带可选参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数的类型检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类中定义装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 装饰器定义为类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 类和静态方法的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 给函数增加参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 扩充类的功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 元类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ │ └── 元类定义可选参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 类的属性定义顺序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 强制参数签名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 强制使用编程规约 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 以编程方式定义类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 初始化类的成员 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 利用注解实现方法重载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 避免重复的属性方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定义上下文管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 局部变量域中执行代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Python字节码拆解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 并发编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的启动与停止 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 线程判断 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 线程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程加锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 防止死锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程状态信息保存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 创建线程池 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 并行编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Actor任务定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 消息发布/订阅模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 生成器代替线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 线程队列轮询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 守护进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 脚本编程与系统管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 脚本接收 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 终止程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 解析命令行选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 弹出密码输入提示 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 执行外部命令 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 添加日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 脚本增加日志功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 函数库增加日志功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 实现计时器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内存和CPU监测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 启动Web浏览器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python的内存管理机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python内存架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 小块空间的内存池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── block --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── pool --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── arena --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 内存池 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 循环引用的垃圾收集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 三色标记模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Python垃圾收集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可收集对象链表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 分代垃圾收集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Python中的标记—清除方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 性能优化与实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 优化的规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 先使程序可以正常工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从用户的角度进行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 保证代码易读 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 优化策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 寻找其他原因 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 度量硬件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 编写速度测试代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 查找瓶颈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 剖析CPU使用情况 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 剖析内存使用情况 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 降低复杂度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 测量回路复杂度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 测量大O记号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 简化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 通用应用主题 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 因特网客户端编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 类的属性定义顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 强制参数签名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 强制使用编程规约 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 以编程方式定义类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 初始化类的成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 利用注解实现方法重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 避免重复的属性方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 定义上下文管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 局部变量域中执行代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python源码解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Python字节码拆解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 并发编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程的启动与停止 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 线程判断 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程加锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 防止死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 线程状态信息保存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 创建线程池 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 并行编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Actor任务定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 消息发布/订阅模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 生成器代替线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 线程队列轮询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 守护进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 脚本编程与系统管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 脚本接收 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 终止程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 解析命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 弹出密码输入提示 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── 执行外部命令 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 添加日志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 脚本增加日志功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 函数库增加日志功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 实现计时器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 内存和CPU监测 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 启动Web浏览器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python的内存管理机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python内存架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 小块空间的内存池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── block --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── pool --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── arena --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 内存池 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 循环引用的垃圾收集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 三色标记模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Python垃圾收集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 可收集对象链表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 分代垃圾收集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── Python中的标记—清除方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 性能优化与实践 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 优化的规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 先使程序可以正常工作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 从用户的角度进行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 保证代码易读 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 优化策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 寻找其他原因 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ ├── 度量硬件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 编写速度测试代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 查找瓶颈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 剖析CPU使用情况 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 剖析内存使用情况 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 降低复杂度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 测量回路复杂度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 测量大O记号 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 简化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── 通用应用主题 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 因特网客户端编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 因特网客户端简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件传输 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 文件传输 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 文件传输因特网协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ ├── 文件传输协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ftplib.FTP类的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 交互式FTP示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── ftplib.FTP类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 交互式FTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 客户端FTP程序示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── FTP的其他内容 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 网络新闻 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Usenet与新闻组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ └── FTP的其他内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 网络新闻 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Usenet与新闻组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 网络新闻传输协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── nntplib.NNTP类方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 交互式NNTP示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 客户端程序NNTP示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── NNTP的其他内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── nntplib.NNTP类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 交互式NNTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 客户端程序NNTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── NNTP的其他内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 多线程编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── thread模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── threading模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -2229,98 +2229,98 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── subprocess模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── multiprocessing模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── concurrent.futures模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── GUI编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Tkinter示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── GUI编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Tkinter示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── Label控件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ │ ├── Button控件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ │ │ ├── Label和Button控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── Label、Button和Scale控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 偏函数应用示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 中级Tkinter示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 偏函数应用示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 中级Tkinter示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ └── 其他GUI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Tk接口扩展(Tix) --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Python MegaWidgets(PMW) --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── GTK+和PyGTK --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── Tile/Ttk --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据库编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python的DB-API --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 模块属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Connection对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Cursor对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 关系数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用数据库适配器的示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 数据库适配器示例应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ORM --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 数据库编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Python的DB-API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 模块属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Connection对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Cursor对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 关系数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用数据库适配器的示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 数据库适配器示例应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ORM --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 考虑对象,而不是SQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 员工角色数据库示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── SQLAlchemy --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── SQLObject --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 非关系数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── NoSQL介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 相关文献 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── *Microsoft Office编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用Python进行COM客户端编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ │ ├── 员工角色数据库示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── SQLAlchemy --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── SQLObject --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 非关系数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── NoSQL介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 相关文献 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── *Microsoft Office编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用Python进行COM客户端编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 客户端COM编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 入门 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 入门示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Excel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Word --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── PowerPoint --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Outlook --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 中级示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Excel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Outlook --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── PowerPoint --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 相关模块/包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 扩展Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编写Python扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 根据样板编写封装代码 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 编译 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 导入并测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 相关主题 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── SWIG --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Pyrex --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Cython --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Psyco --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── PyPy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 嵌入Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python中使用正则表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 正则表达式语法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 行定位符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 元字符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 重复 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 字符类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 排除字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 选择字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 转义字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 分组 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 在Python中使用正则 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── 使用re模块实现正则表达式操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 替换字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 使用正则表达式分割字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ ├── 面向对象程序设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 面向对象概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 类的定义和使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 创建__init__方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 创建类的成员并访问 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 访问限制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 继承 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 继承的基本语法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 方法重写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 派生类中调用基类的__init__方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ └── 模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 模块概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 自定义模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用import语句导入模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── 使用from…import语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 模块搜索目录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Python中的包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python程序的包结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 以主程序的形式执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 引用其他模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 入门 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ ├── 入门示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Excel --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Word --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── PowerPoint --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Outlook --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 中级示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Excel --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Outlook --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── PowerPoint --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 相关模块/包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 扩展Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 编写Python扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 根据样板编写封装代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 编译 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 导入并测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 相关主题 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ ├── SWIG --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Pyrex --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Cython --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Psyco --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── PyPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 嵌入Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python中使用正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 正则表达式语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 行定位符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 元字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 重复 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 字符类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 排除字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 选择字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 转义字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 分组 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 在Python中使用正则 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ └── 使用re模块实现正则表达式操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 替换字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 使用正则表达式分割字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ ├── 面向对象程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 面向对象概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ ├── 类的定义和使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 创建__init__方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 创建类的成员并访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 访问限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 继承的基本语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 方法重写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 派生类中调用基类的__init__方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ └── 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 模块概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 自定义模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 创建模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ ├── 使用import语句导入模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) +│ │ ├── 使用from…import语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ └── 模块搜索目录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Python中的包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python程序的包结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 以主程序的形式执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── 引用其他模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) ├── Python高阶 --> ( 难度等级: 无 || 挂载数据: 无 ) │ ├── 科学计算基础软件包NumPy --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ ├── NumPy概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) @@ -2361,30 +2361,30 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── 随机抽样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ ├── 正态分布 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ └── 伪随机数的深度思考 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ ├── 结构化数据分析工具Pandas --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── Pandas概览 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Panda的特点 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 安装和使用 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ ├── 数据结构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 索引数组Index --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 带标签的一维同构数组Series --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 带标签的二维异构表格DataFrame --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ ├── 基本操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 数据预览 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 数据选择 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 改变数据结构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 改变数据类型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 广播与矢量化运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 行列级广播函数 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ └── 高级应用 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 分组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 聚合 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 层次化索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 表级广播函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 日期时间索引对象 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 透视表 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 数据可视化 --> ( 难度等级: 高阶 || 挂载数据: qa: 4 ) -│ │ └── 数据I/O --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ ├── 结构化数据分析工具Pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Pandas概览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Panda的特点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 安装和使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 索引数组Index --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 带标签的一维同构数组Series --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 带标签的二维异构表格DataFrame --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数据预览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数据选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 改变数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 改变数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 广播与矢量化运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 行列级广播函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ └── 高级应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 聚合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 层次化索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 表级广播函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 日期时间索引对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 透视表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数据可视化 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ └── 数据I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── 绘图库Matplotlib --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ ├── 安装配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ ├── Matplotlib快速入门 --> ( 难度等级: 高阶 || 挂载数据: 无 ) @@ -2453,76 +2453,76 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ └── 空间计算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ ├── 空间旋转的表述 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) │ │ └── 三维旋转 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ ├── 数据分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Python脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 运行Python脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 与命令行进行交互的几项技巧 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python语言基础要素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数值 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 正则表达式与模式匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 日期 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 元组 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 控制流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读取文本文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建文本文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 脚本和输入文件在同一位置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 读取文件的新型语法 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 使用glob读取多个文本文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 写入文本文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 向first_script.py添加代码 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 写入CSV文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── print语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── CSV文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 筛选特定的行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 行中的值满足某个条件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 行中的值属于某个集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 行中的值匹配于某个模式/ 正则表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选取特定的列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 列索引值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 列标题 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 选取连续的行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 添加标题行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读取多个CSV文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 从多个文件中连接数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 计算每个文件中值的总和与均值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Excel文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内省Excel工作簿 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 处理单个工作表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 读写Excel文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 筛选特定行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读取工作簿中的所有工作表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 数据分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Python基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 运行Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 与命令行进行交互的几项技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python语言基础要素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 数值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 正则表达式与模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 日期 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 元组 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 控制流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 读取文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 创建文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 脚本和输入文件在同一位置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 读取文件的新型语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 使用glob读取多个文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 写入文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 向first_script.py添加代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 写入CSV文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── print语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── CSV文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 筛选特定的行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 行中的值满足某个条件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 行中的值属于某个集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ │ │ └── 行中的值匹配于某个模式/ 正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 选取特定的列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 列索引值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 列标题 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 选取连续的行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 添加标题行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 读取多个CSV文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 从多个文件中连接数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 计算每个文件中值的总和与均值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Excel文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内省Excel工作簿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 处理单个工作表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 读写Excel文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 筛选特定行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 读取工作簿中的所有工作表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 在所有工作表中筛选特定行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ │ └── 在所有工作表中选取特定列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Excel工作簿中读取一组工作表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 处理多个工作簿 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 在Excel工作簿中读取一组工作表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 处理多个工作簿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 工作表计数以及每个工作表中的行列计数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) │ │ │ └── 从多个工作簿中连接数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python内置的sqlite3 模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 向表中插入新记录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 更新表中记录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python内置的sqlite3 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 向表中插入新记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 更新表中记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── MySQL数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 向表中插入新记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 查询一个表并将输出写入CSV文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 更新表中记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为CSV文件中数据的任意数目分类计算统计量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 为文本文件中数据的任意数目分类计算统计量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 图与图表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── matplotlib --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 条形图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 直方图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 折线图 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 散点图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 箱线图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── pandas --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ggplot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── seaborn --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 描述性统计与建模 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ ├── 应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 为CSV文件中数据的任意数目分类计算统计量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 为文本文件中数据的任意数目分类计算统计量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 图与图表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── matplotlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 条形图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 直方图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 折线图 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ ├── 散点图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 箱线图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── ggplot --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── seaborn --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 描述性统计与建模 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 数据集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ ├── 葡萄酒质量 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ └── 客户流失 --> ( 难度等级: 高阶 || 挂载数据: 无 ) @@ -2537,124 +2537,124 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 逻辑斯蒂回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ ├── 系数解释 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ └── 预测 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 按计划自动运行脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 任务计划程序(Windows系统) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── cron工具(macOS系统和Unix系统) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── cron表文件:一次性设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 向cron表文件中添加cron任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 从这里启航 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 更多的标准库模块和内置函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python标准库(PSL):更多的标准模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 内置函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python包索引(PyPI):更多的扩展模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── NumPy --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── SciPy --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Scikit-Learn --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 更多的扩展包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 更多的数据结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 栈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 从这里启航 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 准备工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 本书内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 什么类型的数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 为何利用Python进行数据分析 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── Python作为胶水 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 解决“双语言”难题 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 为何不使用Python --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 重要的Python库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── IPython与Jupyter --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── statsmodels --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装与设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Windows --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Apple(OS X和macOS) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNU/Linux --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 安装及更新Python包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python 2和Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 集成开发环境和文本编辑器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 社区和会议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 快速浏览本书 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 代码示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 一次性模拟多次随机漫步 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 示例数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 导入约定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内建数据结构、函数及文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据结构和序列 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 内建序列函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命名空间、作用域和本地函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 返回多个值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数是对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 匿名(Lambda)函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 柯里化:部分参数应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 错误和异常处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 文件与操作系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字节与Unicode文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── NumPy基础:数组与向量化计算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── NumPy ndarray:多维数组对象 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成ndarray --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── ndarray的数据类型 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── NumPy数组算术 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 基础索引与切片 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 布尔索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神奇索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 数组转置和换轴 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 通用函数:快速的逐元素数组函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用数组进行面向数组编程 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将条件逻辑作为数组操作 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 数学和统计方法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 布尔值数组的方法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 排序 --> ( 难度等级: 高阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 唯一值与其他集合逻辑 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用数组进行文件输入和输出 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 线性代数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 伪随机数生成 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ ├── pandas入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── pandas数据结构介绍 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── Series --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── DataFrame --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 索引对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 基本功能 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重建索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 轴向上删除条目 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 索引、选择与过滤 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 整数索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 算术和数据对齐 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 含有重复标签的轴索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 描述性统计的概述与计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据载入、存储及文件格式 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 文本格式数据的读写 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分块读入文本文件 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ ├── 按计划自动运行脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 任务计划程序(Windows系统) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── cron工具(macOS系统和Unix系统) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── cron表文件:一次性设置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 向cron表文件中添加cron任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 从这里启航 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 更多的标准库模块和内置函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Python标准库(PSL):更多的标准模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 内置函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Python包索引(PyPI):更多的扩展模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── NumPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── SciPy --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── Scikit-Learn --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 更多的扩展包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 更多的数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 从这里启航 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 准备工作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 本书内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 什么类型的数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 为何利用Python进行数据分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── Python作为胶水 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 解决“双语言”难题 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 为何不使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 重要的Python库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── IPython与Jupyter --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── statsmodels --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装与设置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Windows --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Apple(OS X和macOS) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── GNU/Linux --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 安装及更新Python包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Python 2和Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 集成开发环境和文本编辑器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 社区和会议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 快速浏览本书 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 代码示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 一次性模拟多次随机漫步 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 示例数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 导入约定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 术语 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 内建数据结构、函数及文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数据结构和序列 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 内建序列函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 命名空间、作用域和本地函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 返回多个值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 函数是对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 匿名(Lambda)函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 柯里化:部分参数应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 错误和异常处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 文件与操作系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字节与Unicode文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── NumPy基础:数组与向量化计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── NumPy ndarray:多维数组对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 生成ndarray --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── ndarray的数据类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── NumPy数组算术 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 基础索引与切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 布尔索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 神奇索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 数组转置和换轴 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ ├── 通用函数:快速的逐元素数组函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用数组进行面向数组编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 将条件逻辑作为数组操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 数学和统计方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 布尔值数组的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ └── 唯一值与其他集合逻辑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用数组进行文件输入和输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 线性代数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 伪随机数生成 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── pandas入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── pandas数据结构介绍 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── Series --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── DataFrame --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 索引对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 基本功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 重建索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 轴向上删除条目 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 索引、选择与过滤 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 整数索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 算术和数据对齐 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 含有重复标签的轴索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 描述性统计的概述与计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数据载入、存储及文件格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文本格式数据的读写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 分块读入文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 将数据写入文本格式 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用分隔格式 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── JSON数据 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── XML和HTML:网络抓取 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 二进制格式 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用HDF5格式 --> ( 难度等级: 高阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 读取Microsoft Excel文件 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 与Web API交互 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ └── 与数据库交互 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 数据清洗与准备 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 处理缺失值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用分隔格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── JSON数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── XML和HTML:网络抓取 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 二进制格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用HDF5格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ └── 读取Microsoft Excel文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 与Web API交互 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 与数据库交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数据清洗与准备 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 处理缺失值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 过滤缺失值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ └── 补全缺失值 --> ( 难度等级: 高阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 数据转换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 删除重复值 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用函数或映射进行数据转换 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 替代值 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 重命名轴索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 离散化和分箱 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 检测和过滤异常值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 置换和随机抽样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 计算指标/虚拟变量 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 字符串操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串对象方法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ │ ├── 数据转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 删除重复值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用函数或映射进行数据转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 替代值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 重命名轴索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 离散化和分箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 检测和过滤异常值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 置换和随机抽样 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 计算指标/虚拟变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字符串对象方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── pandas中的向量化字符串函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 数据规整:连接、联合与重塑 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ ├── 数据规整:连接、联合与重塑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 分层索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ ├── 重排序和层级排序 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ ├── 按层级进行汇总统计 --> ( 难度等级: 高阶 || 挂载数据: 无 ) @@ -2668,81 +2668,81 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 使用多层索引进行重塑 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ ├── 将“长”透视为“宽” --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ └── 将“宽”透视为“长” --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 绘图与可视化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简明matplotlib API入门 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图片与子图 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 颜色、标记和线类型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 刻度、标签和图例 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 注释与子图加工 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将图片保存到文件 --> ( 难度等级: 高阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── matplotlib设置 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ └── 其他Python可视化工具 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 数据聚合与分组操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── GroupBy机制 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 遍历各分组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选择一列或所有列的子集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用函数分组 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 根据索引层级分组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ ├── 绘图与可视化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 简明matplotlib API入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 图片与子图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 颜色、标记和线类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 刻度、标签和图例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 注释与子图加工 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 将图片保存到文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ │ └── matplotlib设置 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 其他Python可视化工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 数据聚合与分组操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── GroupBy机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 遍历各分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 选择一列或所有列的子集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用函数分组 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 根据索引层级分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 数据聚合 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ └── 返回不含行索引的聚合数据 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 应用:通用拆分-应用-联合 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 压缩分组键 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 分位数与桶分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ │ ├── 应用:通用拆分-应用-联合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 压缩分组键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 分位数与桶分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 数据透视表与交叉表 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ └── 交叉表:crosstab --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 时间序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 时间序列基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 含有重复索引的时间序列 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 时区处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 时区的本地化和转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 时区感知时间戳对象的操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 不同时区间的操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 时间区间和区间算术 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ ├── 时间序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 时间序列基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 含有重复索引的时间序列 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 时区处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 时区的本地化和转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 时区感知时间戳对象的操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 不同时区间的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 时间区间和区间算术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 区间频率转换 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) │ │ │ │ ├── 季度区间频率 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ ├── 将时间戳转换为区间(以及逆转换) --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) │ │ │ │ └── 从数组生成PeriodIndex --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 重新采样与频率转换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ │ ├── 重新采样与频率转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ │ ├── 向下采样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ ├── 向上采样与插值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ └── 使用区间进行重新采样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 移动窗口函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指数加权函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 二元移动窗口函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 用户自定义的移动窗口函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 高阶pandas --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 分类数据 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 背景和目标 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── pandas中的Categorical类型 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 使用Categorical对象进行计算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 分类方法 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 高阶GroupBy应用 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分组转换和“展开”GroupBy --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 分组的时间重新采样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 方法链技术 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── pipe方法 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ ├── Python建模库介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Patsy创建模型描述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── Patsy公式中的数据转换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── statsmodels介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 评估线性模型 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 评估时间序列处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── scikit-learn介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 继续你的教育 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── 数据分析示例 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ ├── 从Bitly获取1.USA.gov数据 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 纯Python时区计数 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用pandas进行时区计数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── MovieLens 1M数据集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 测量评价分歧 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 美国1880~2010年的婴儿名字 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 分析名字趋势 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 美国农业部食品数据库 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── 2012年联邦选举委员会数据库 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 按职业和雇主的捐献统计 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 捐赠金额分桶 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── 按州进行捐赠统计 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ ├── 人工智能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 移动窗口函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 指数加权函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 二元移动窗口函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 用户自定义的移动窗口函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 高阶pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 分类数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 背景和目标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── pandas中的Categorical类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 使用Categorical对象进行计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 分类方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── 高阶GroupBy应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 分组转换和“展开”GroupBy --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ └── 分组的时间重新采样 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 方法链技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── pipe方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Python建模库介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Patsy创建模型描述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── Patsy公式中的数据转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── statsmodels介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 评估线性模型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 评估时间序列处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── scikit-learn介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 继续你的教育 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 数据分析示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ ├── 从Bitly获取1.USA.gov数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 纯Python时区计数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用pandas进行时区计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── MovieLens 1M数据集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 测量评价分歧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 美国1880~2010年的婴儿名字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 分析名字趋势 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 美国农业部食品数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 2012年联邦选举委员会数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 按职业和雇主的捐献统计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 捐赠金额分桶 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 按州进行捐赠统计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 人工智能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 机器学习工具包Scikit-learn --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ ├── Scikit-learn概览 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) │ │ │ ├── 安装配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) @@ -3175,41 +3175,41 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ ├── 知识计算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ ├── 知识存储 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) │ │ │ └── 知识服务与应用 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为何选择Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 何时避免使用Python --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python中的面向对象编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Python中调用其他语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将Python模型作为微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 高性能API和并发编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python结构化数据提取、转换和加载 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── MySQL --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 如何安装MySQLdb --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 数据库连接 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── INSERT操作 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── READ操作 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── DELETE操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── UPDATE操作 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── COMMIT操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── ROLL-BACK操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Elasticsearch --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Neo4j Python驱动 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── neo4j-rest-client --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 内存数据库 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Python版本MongoDB --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将数据导入集合 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用pymongo创建连接 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问数据库对象 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 插入数据 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 更新数据 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 删除数据 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Pandas --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Python非结构化数据提取、转换和加载 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 电子邮件解析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 主题爬取 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 稳定方差 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使周期效应累加 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 使数据呈正态分布 --> ( 难度等级: 高阶 || 挂载数据: 无 ) +│ │ ├── 简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 为何选择Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 何时避免使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python中的面向对象编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 在Python中调用其他语言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 将Python模型作为微服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 高性能API和并发编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Python结构化数据提取、转换和加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── MySQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 如何安装MySQLdb --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 数据库连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── INSERT操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── READ操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── DELETE操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── UPDATE操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── COMMIT操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── ROLL-BACK操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Neo4j Python驱动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── neo4j-rest-client --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 内存数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python版本MongoDB --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 将数据导入集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用pymongo创建连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 访问数据库对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 插入数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 更新数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 删除数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ ├── Pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Python非结构化数据提取、转换和加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 电子邮件解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 主题爬取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 稳定方差 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使周期效应累加 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使数据呈正态分布 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 基于Python的监督学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ ├── 使用Python实现降维 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ │ └── 相关性分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) @@ -3237,280 +3237,280 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ │ │ └── 字符串之间的编辑距离 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ ├── 文档上下文的相似性 --> ( 难度等级: 高阶 || 挂载数据: 无 ) │ │ │ └── 如何判断聚类结果是否良好 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 时间序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变化的分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包含趋势的序列分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 曲线拟合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 从时间序列中去除趋势 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 包含周期性的序列数据分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从时间序列中去除周期性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 滤波 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 差分 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 平稳时间序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 平稳过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自相关和相关图 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 自协方差和自相关函数的估计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Python进行时间序列分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 有用的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自回归过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 估计AR过程的参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 混合ARMA模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集成ARMA模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个特殊的场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 数据缺失 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 大数据分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Hadoop --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MapReduce编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── partitioning函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── combiner函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HDFS文件系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 时间序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 变化的分类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 包含趋势的序列分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 曲线拟合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 从时间序列中去除趋势 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 包含周期性的序列数据分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 从时间序列中去除周期性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 滤波 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 差分 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 平稳时间序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 平稳过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自相关和相关图 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ └── 自协方差和自相关函数的估计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Python进行时间序列分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 有用的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 自回归过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 估计AR过程的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 混合ARMA模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 集成ARMA模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 一个特殊的场景 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 数据缺失 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 大数据分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── Hadoop --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── MapReduce编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── partitioning函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── combiner函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── HDFS文件系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── MapReduce设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spark --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 云分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 物联网 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 高级教程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 原理与哲学 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python之禅 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 优美胜于丑陋 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 明了胜于晦涩 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 简洁胜于复杂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 复杂胜于难以理解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 扁平胜于嵌套 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 宽松胜于紧凑 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 可读性很重要 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 即便是特例,也不可违背这些规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实用性胜于纯粹性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 错误永远不应该悄无声息地过去 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 除非明确地沉默 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面对模棱两可的情况,拒绝猜测的诱惑 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 应该有一种(最好只有一种)显而易见的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 尽管这种方式起初可能并不明显,除非你是荷兰人 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 做比不做要好 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 不假思索就动手还不如不做 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 如果实现难以解释,那就是一个糟糕的想法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 如果实现容易解释,则可能是一个好主意 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 命名空间是一个很棒的想法,让我们做更多这样的事情吧 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不要重复自己 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 松耦合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 武士原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 帕累托原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 稳健性原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 向后兼容性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 总体概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 缓存 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 透明度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流程控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 捕获异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 异常链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 当一切顺利的时候 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 继续执行,无论异常如何 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 优化循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── with语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 条件表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 迭代 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 序列解包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 列表解析式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成器表达式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 集合解析式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字典解析式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将迭代器链接在一起 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 将迭代器压缩在一起 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命名元组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 有序字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 带有默认值的字典 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 导入代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 回退(备用)导入 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 从即将发布的版本中导入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用__all__进行自定义导入 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 相对导入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── __import__函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── importlib模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 令人兴奋的Python扩展:NIST的随机数信标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何安装NIST信标库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 示例:获取值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 示例:模拟抛硬币并记录每次正反面的结果 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Pandas和matplotlib --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建文本文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Pandas显示数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 进行一些数据分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用matplotlib进行绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图表的类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Scrapy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 运行Scrapy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Scrapy获取Web数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过Scrapy浏览网页 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── shell选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Beautiful Soup --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Beautiful Soup --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何安装feedparser库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何使用feedparser库 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 安装NumPy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NumPy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NumPy数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 统计度量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何安装Pillow库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图像显示:确定文件的大小和类型并显示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图像处理:裁剪图像的一部分 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 随机数 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 密码生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 规划时的灵活性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 可变位置参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 可变关键字参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 组合不同类型的参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 调用具有可变参数的函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 传递参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 自省 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 闭包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 包装器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 带参数的装饰器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 带参数或不带参数的装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 提取样板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用装饰器进行注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── lambda --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 自省 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标识对象类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 模块和软件包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 文档字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 描述函数的作用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 返回值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 包含预期的异常 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 继承 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 多重继承 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 方法解析顺序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用super函数将控制权传递给其他类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 自省 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何创建类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在运行时创建类 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 元类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 控制命名空间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 成员变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 描述器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 非绑定方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 绑定方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 魔术方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 处理成员变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字符串表示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字节字符串 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 借助chr和ord进行简单的转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 借助struct模块进行复杂的转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Unicode --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 编码 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 简单的替换 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在对象中查找值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 区分字符串类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标准格式规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为文本文档制作目录 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 自定义格式规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通用协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数学运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 按位运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 运算符的变体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 符号运算 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 比较运算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可迭代对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── _call_方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 上下文管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 命名空间字典 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 垃圾回收 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 引用计数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 循环引用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 弱引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Spark --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 云分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 物联网 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 高级教程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 原理与哲学 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Python之禅 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 优美胜于丑陋 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 明了胜于晦涩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 简洁胜于复杂 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 复杂胜于难以理解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 扁平胜于嵌套 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 宽松胜于紧凑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 可读性很重要 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 即便是特例,也不可违背这些规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 实用性胜于纯粹性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 错误永远不应该悄无声息地过去 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 除非明确地沉默 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 面对模棱两可的情况,拒绝猜测的诱惑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 应该有一种(最好只有一种)显而易见的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 尽管这种方式起初可能并不明显,除非你是荷兰人 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 做比不做要好 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 不假思索就动手还不如不做 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 如果实现难以解释,那就是一个糟糕的想法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 如果实现容易解释,则可能是一个好主意 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 命名空间是一个很棒的想法,让我们做更多这样的事情吧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 不要重复自己 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 松耦合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 武士原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 帕累托原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 稳健性原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 向后兼容性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 总体概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 缓存 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 透明度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 流程控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 捕获异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 异常链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 当一切顺利的时候 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 继续执行,无论异常如何 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 优化循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── with语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 条件表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 序列解包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 列表解析式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 生成器表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 集合解析式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 字典解析式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 将迭代器链接在一起 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 将迭代器压缩在一起 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 容器数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 命名元组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 有序字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 带有默认值的字典 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 导入代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 回退(备用)导入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 从即将发布的版本中导入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用__all__进行自定义导入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 相对导入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── __import__函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── importlib模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 令人兴奋的Python扩展:NIST的随机数信标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 如何安装NIST信标库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 示例:获取值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 示例:模拟抛硬币并记录每次正反面的结果 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装Pandas和matplotlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 创建文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Pandas显示数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 进行一些数据分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用matplotlib进行绘图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 图表的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装Scrapy --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 运行Scrapy --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Scrapy获取Web数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 通过Scrapy浏览网页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── shell选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装Beautiful Soup --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用Beautiful Soup --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 如何安装feedparser库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 如何使用feedparser库 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 安装NumPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用NumPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用NumPy数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 统计度量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 如何安装Pillow库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 图像显示:确定文件的大小和类型并显示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 图像处理:裁剪图像的一部分 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 随机数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 密码生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 规划时的灵活性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 可变位置参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 可变关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 组合不同类型的参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 调用具有可变参数的函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ ├── 传递参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 自省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 闭包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 包装器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 带参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 带参数或不带参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 函数注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 提取样板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 用装饰器进行注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── lambda --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) +│ │ │ └── 自省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 标识对象类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 模块和软件包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 文档字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 描述函数的作用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 包含预期的异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 多重继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ │ ├── 方法解析顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 使用super函数将控制权传递给其他类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 自省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 如何创建类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 在运行时创建类 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) +│ │ │ │ ├── 元类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ └── 控制命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 成员变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 描述器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 非绑定方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 绑定方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ └── 魔术方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 处理成员变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 字符串表示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 字节字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── 借助chr和ord进行简单的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 借助struct模块进行复杂的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Unicode --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ └── 编码 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 简单的替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 在对象中查找值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 区分字符串类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 标准格式规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 为文本文档制作目录 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ └── 自定义格式规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 通用协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 基本运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 数学运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 按位运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ │ └── 运算符的变体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 数字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 符号运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── 比较运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 可迭代对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── _call_方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 上下文管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 对象管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 命名空间字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 引用计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 循环引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── 弱引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Python对象的序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 复制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 浅层复制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 深层复制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 文档的编写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 恰当地命名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注释 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代码之外的文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装与配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 教程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 参考文档 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── 用于编写文档的实用工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 链接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Sphinx --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 测试驱动开发 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── doctest --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 呈现输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 与文档集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 运行测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── unittest模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初始化配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 编写测试 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 其他比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试对象标识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 释放资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 提供自定义的测试类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 许可证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNU通用公共许可证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Affero通用公共许可证 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── GNU宽通用公共许可证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 伯克利软件发行许可证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 其他许可证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 打包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── setup.py --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── MANIFEST.in --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── sdist命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 构建CSV框架sheets --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建声明性框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 声明性编程简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 复制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 浅层复制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ └── 深层复制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ ├── 文档的编写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 恰当地命名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 代码之外的文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 安装与配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 教程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) +│ │ │ │ └── 参考文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) +│ │ │ └── 用于编写文档的实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 链接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Sphinx --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 测试驱动开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ ├── doctest --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 呈现输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 与文档集成 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 运行测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── unittest模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 初始化配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 编写测试 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── 其他比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 测试异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 测试对象标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 释放资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 提供自定义的测试类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 发布 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── GNU通用公共许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── Affero通用公共许可证 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ ├── GNU宽通用公共许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── 伯克利软件发行许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ └── 其他许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 打包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ │ ├── setup.py --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) +│ │ │ │ ├── MANIFEST.in --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ │ │ │ └── sdist命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 发布 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 构建CSV框架sheets --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构建声明性框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 声明性编程简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 是否构建声明性框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 管理选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义字段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将字段附加到类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 添加元类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 整合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字段排序 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── DeclarativeMeta.__prepare__ --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Column.__init__ --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Column.__new__ --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CounterMeta.__call__ --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 挑选选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建字段库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StringField(字符串字段) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IntegerColumn(整数列) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FloatColumn(浮点数列) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DecimalColumn(小数列) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── DateColumn(日期列) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 回到CSV --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 检查参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 填充值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读取器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 写入器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 构建框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 管理选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义字段 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 将字段附加到类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 添加元类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 整合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 字段排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── DeclarativeMeta.__prepare__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── Column.__init__ --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ ├── Column.__new__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── CounterMeta.__call__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 挑选选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 构建字段库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── StringField(字符串字段) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── IntegerColumn(整数列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── FloatColumn(浮点数列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── DecimalColumn(小数列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── DateColumn(日期列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 回到CSV --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 检查参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 填充值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 读取器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 写入器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ ├── GUI界面编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 初识GUI --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 什么是GUI --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 常用的GUI框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 常用的GUI框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ │ └── 安装wxPython --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 创建一个wx.App的子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 直接使用wx.App --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用wx.Frame框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 使用wx.Frame框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 常用控件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) │ │ │ ├── StaticText文本类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── TextCtrl输入文本类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -3521,53 +3521,53 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ └── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 什么是事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── 绑定事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Pygame游戏编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 初识Pygame --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Pygame --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Pygame常用模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Pygame基本使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 开发Flappy Bird游戏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 游戏简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 游戏分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 搭建主框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 创建小鸟类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建管道类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 计算得分 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 碰撞检测 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Pygame游戏编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 初识Pygame --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 安装Pygame --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── Pygame常用模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── Pygame基本使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 开发Flappy Bird游戏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 游戏简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 游戏分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) +│ │ ├── 搭建主框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 创建小鸟类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 创建管道类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 计算得分 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── 碰撞检测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ ├── 网络爬虫开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 初识网络爬虫 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 网络爬虫概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 网络爬虫的分类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 网络爬虫的基本原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 网络爬虫的常用技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python的网络请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 请求headers处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 网络超时 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 代理服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── HTML解析之BeautifulSoup --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 网络爬虫开发常用框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Scrapy爬虫框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Crawley爬虫框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── PySpider爬虫框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 初识网络爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 网络爬虫概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) +│ │ │ ├── 网络爬虫的分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── 网络爬虫的基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 网络爬虫的常用技术 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── Python的网络请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) +│ │ │ ├── 请求headers处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 网络超时 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 代理服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ └── HTML解析之BeautifulSoup --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ └── 网络爬虫开发常用框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── Scrapy爬虫框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── Crawley爬虫框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ └── PySpider爬虫框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ ├── 使用进程和线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 什么是进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建进程的常用方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用multiprocessing模块创建进程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用Process子类创建进程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用进程池Pool创建进程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 进程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 队列简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多进程队列的使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 使用队列在进程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 使用multiprocessing模块创建进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ ├── 使用Process子类创建进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ │ └── 使用进程池Pool创建进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) +│ │ ├── 进程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 队列简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ │ ├── 多进程队列的使用 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) +│ │ │ └── 使用队列在进程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ ├── 什么是线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 使用threading模块创建线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ └── 使用Thread子类创建线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 线程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 什么是互斥锁 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用互斥锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用队列在线程间通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── 什么是互斥锁 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) +│ │ ├── 使用互斥锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 使用队列在线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 网络基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── TCP/IP简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) │ │ │ ├── UDP简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) @@ -3575,43 +3575,43 @@ python --> ( 难度等级: 无 || 挂载数据: 无 ) │ │ ├── TCP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 创建TCP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 创建TCP客户端 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 执行TCP服务器和客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ └── 执行TCP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) │ │ └── UDP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建UDP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 创建UDP客户端 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 执行UDP服务器和客户端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Web编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ └── 执行UDP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── Web编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── Web基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── HTTP协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ │ ├── 前端基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) │ │ │ └── 静态服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WSGI接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CGI简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── WSGI简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义WSGI接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 运行WSGI服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ │ ├── WSGI接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── CGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── WSGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ │ ├── 定义WSGI接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) +│ │ │ └── 运行WSGI服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ └── Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 什么是Web框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) │ │ └── Python中常用的Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── Flask框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Flask简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装虚拟环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装Flask --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ └── 第一个Flask程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Flask基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 开启调试模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 静态文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 蓝图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 模板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ └── Flask框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) +│ ├── Flask简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 安装Flask --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) +│ │ └── 第一个Flask程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── Flask基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 开启调试模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 路由 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 静态文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 蓝图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ ├── 模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) │ │ ├── 渲染模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 控制结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── Web表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── CSRF保护和验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 表单类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 把表单渲染成HTML --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ ├── 变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ │ └── 控制结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) +│ └── Web表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── CSRF保护和验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ ├── 表单类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) +│ └── 把表单渲染成HTML --> ( 难度等级: 中阶 || 挂载数据: 无 ) └── 其他 --> ( 难度等级: 无 || 挂载数据: 无 ) ├── 其他类别标签问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) ├── 应用类问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) diff --git a/data/tree_java_mapping.json b/data/tree_java_mapping.json index e5037ac..78ca115 100644 --- a/data/tree_java_mapping.json +++ b/data/tree_java_mapping.json @@ -27,7 +27,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63,7 +63,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -91,7 +91,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -107,7 +107,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -124,7 +124,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -144,7 +144,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -160,7 +160,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -176,7 +176,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -194,7 +194,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -223,7 +223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -245,7 +245,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -264,7 +264,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -293,7 +293,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -322,7 +322,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -342,7 +342,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -376,7 +376,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -401,7 +401,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -429,7 +429,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -461,7 +461,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -482,7 +482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -516,7 +516,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -533,7 +533,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -559,7 +559,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -582,7 +582,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -602,7 +602,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -622,7 +622,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -654,7 +654,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -681,7 +681,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -701,7 +701,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -729,7 +729,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -757,7 +757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -775,7 +775,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -795,7 +795,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -815,7 +815,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -847,7 +847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -869,7 +869,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -894,7 +894,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -921,7 +921,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -944,7 +944,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -967,7 +967,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -987,7 +987,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1019,7 +1019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1050,7 +1050,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1084,7 +1084,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1104,7 +1104,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1121,7 +1121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1145,7 +1145,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1167,7 +1167,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1185,7 +1185,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1204,7 +1204,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1221,7 +1221,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1253,7 +1253,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1273,7 +1273,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1289,7 +1289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1306,7 +1306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1323,7 +1323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1342,7 +1342,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1374,7 +1374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1404,7 +1404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1431,7 +1431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1464,7 +1464,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1496,7 +1496,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1515,7 +1515,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1544,7 +1544,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1564,7 +1564,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1591,7 +1591,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1606,7 +1606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1632,7 +1632,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1663,7 +1663,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1679,7 +1679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1705,7 +1705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1740,7 +1740,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1772,7 +1772,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1797,7 +1797,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1825,7 +1825,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1852,7 +1852,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1871,7 +1871,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1893,7 +1893,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1921,7 +1921,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1940,7 +1940,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1959,7 +1959,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1987,7 +1987,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2010,7 +2010,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2033,7 +2033,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2050,7 +2050,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2066,7 +2066,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2086,7 +2086,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2118,7 +2118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2139,7 +2139,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2153,7 +2153,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2169,7 +2169,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2192,7 +2192,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2207,7 +2207,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2223,7 +2223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2249,7 +2249,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2270,7 +2270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2298,7 +2298,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2315,7 +2315,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2333,7 +2333,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2350,7 +2350,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2368,7 +2368,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2385,7 +2385,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2405,7 +2405,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2429,7 +2429,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2455,7 +2455,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2479,7 +2479,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2503,7 +2503,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2524,7 +2524,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2555,7 +2555,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2571,7 +2571,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2592,7 +2592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2619,7 +2619,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2656,7 +2656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2683,7 +2683,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2705,7 +2705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2721,7 +2721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2747,7 +2747,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2765,7 +2765,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2782,7 +2782,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2809,7 +2809,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2826,7 +2826,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2847,7 +2847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2868,7 +2868,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2886,7 +2886,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2907,7 +2907,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2925,7 +2925,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2943,7 +2943,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2971,7 +2971,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2987,7 +2987,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3004,7 +3004,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3025,7 +3025,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3059,7 +3059,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3086,7 +3086,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3118,7 +3118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3133,7 +3133,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3149,7 +3149,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3182,7 +3182,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3201,7 +3201,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3217,7 +3217,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3239,7 +3239,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3256,7 +3256,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3274,7 +3274,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3291,7 +3291,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3317,7 +3317,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3336,7 +3336,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3358,7 +3358,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3374,7 +3374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3391,7 +3391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3410,7 +3410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3426,7 +3426,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3445,7 +3445,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3462,7 +3462,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3485,7 +3485,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3502,7 +3502,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3517,7 +3517,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3543,7 +3543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3574,7 +3574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3592,7 +3592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3613,7 +3613,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3637,7 +3637,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3656,7 +3656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3679,7 +3679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3710,7 +3710,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3724,7 +3724,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3741,7 +3741,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3757,7 +3757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3779,7 +3779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3795,7 +3795,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3814,7 +3814,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3845,7 +3845,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3867,7 +3867,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3898,7 +3898,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3925,7 +3925,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3944,7 +3944,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3960,7 +3960,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3986,7 +3986,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4002,7 +4002,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4024,7 +4024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4045,7 +4045,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4070,7 +4070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4088,7 +4088,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4106,7 +4106,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4124,7 +4124,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4141,7 +4141,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4161,7 +4161,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4184,7 +4184,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4204,7 +4204,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4219,7 +4219,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4240,7 +4240,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4259,7 +4259,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4287,7 +4287,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4312,7 +4312,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4331,7 +4331,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4362,7 +4362,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4380,7 +4380,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4401,7 +4401,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4424,7 +4424,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4448,7 +4448,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4479,7 +4479,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4500,7 +4500,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4526,7 +4526,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4555,7 +4555,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4579,7 +4579,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4611,7 +4611,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4637,7 +4637,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4654,7 +4654,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4674,7 +4674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4706,7 +4706,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4735,7 +4735,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4767,7 +4767,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4785,7 +4785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4803,7 +4803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4831,7 +4831,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4859,7 +4859,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4892,7 +4892,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4910,7 +4910,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4926,7 +4926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4945,7 +4945,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4962,7 +4962,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4981,7 +4981,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5004,7 +5004,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5021,7 +5021,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5040,7 +5040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5059,7 +5059,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5076,7 +5076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5093,7 +5093,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5110,7 +5110,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5128,7 +5128,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5150,7 +5150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5169,7 +5169,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5199,7 +5199,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5223,7 +5223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5242,7 +5242,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5264,7 +5264,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5296,7 +5296,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5312,7 +5312,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5339,7 +5339,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5354,7 +5354,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5374,7 +5374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5391,7 +5391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5407,7 +5407,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5423,7 +5423,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5443,7 +5443,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5463,7 +5463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5495,7 +5495,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5516,7 +5516,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5532,7 +5532,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5549,7 +5549,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5565,7 +5565,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5581,7 +5581,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5598,7 +5598,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5615,7 +5615,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5642,7 +5642,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5661,7 +5661,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5678,7 +5678,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5697,7 +5697,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5721,7 +5721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5736,7 +5736,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5756,7 +5756,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5783,7 +5783,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5809,7 +5809,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5826,7 +5826,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5843,7 +5843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5860,7 +5860,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5877,7 +5877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5894,7 +5894,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5911,7 +5911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5928,7 +5928,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5956,7 +5956,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5979,7 +5979,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6002,7 +6002,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6022,7 +6022,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6053,7 +6053,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6072,7 +6072,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6098,7 +6098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6121,7 +6121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6138,7 +6138,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6155,7 +6155,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6182,7 +6182,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6206,7 +6206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6224,7 +6224,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6250,7 +6250,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6270,7 +6270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6287,7 +6287,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6312,7 +6312,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6339,7 +6339,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6361,7 +6361,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6380,7 +6380,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6404,7 +6404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6430,7 +6430,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6455,7 +6455,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6473,7 +6473,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6491,7 +6491,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6508,7 +6508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6533,7 +6533,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6552,7 +6552,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6576,7 +6576,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6593,7 +6593,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6610,7 +6610,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6642,7 +6642,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6659,7 +6659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6677,7 +6677,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6695,7 +6695,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6712,7 +6712,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6733,7 +6733,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6756,7 +6756,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6779,7 +6779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6806,7 +6806,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6824,7 +6824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6840,7 +6840,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6867,7 +6867,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6883,7 +6883,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6899,7 +6899,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6916,7 +6916,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6946,7 +6946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6976,7 +6976,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6993,7 +6993,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7011,7 +7011,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7028,7 +7028,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7044,7 +7044,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7070,7 +7070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7092,7 +7092,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7112,7 +7112,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7130,7 +7130,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7147,7 +7147,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7173,7 +7173,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7193,7 +7193,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7213,7 +7213,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7235,7 +7235,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7257,7 +7257,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7274,7 +7274,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7301,7 +7301,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7321,7 +7321,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7345,7 +7345,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7361,7 +7361,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7386,7 +7386,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7403,7 +7403,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7419,7 +7419,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7439,7 +7439,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7463,7 +7463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7480,7 +7480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7511,7 +7511,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7537,7 +7537,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7560,7 +7560,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7582,7 +7582,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7598,7 +7598,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7615,7 +7615,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7634,7 +7634,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7656,7 +7656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7679,7 +7679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7705,7 +7705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7720,7 +7720,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7736,7 +7736,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7763,7 +7763,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7780,7 +7780,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7803,7 +7803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7828,7 +7828,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7851,7 +7851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7868,7 +7868,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7892,7 +7892,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7909,7 +7909,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7933,7 +7933,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7956,7 +7956,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7982,7 +7982,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8007,7 +8007,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8024,7 +8024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8039,7 +8039,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8072,7 +8072,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8102,7 +8102,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8121,7 +8121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8143,7 +8143,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8161,7 +8161,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8178,7 +8178,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8195,7 +8195,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8211,7 +8211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8243,7 +8243,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8260,7 +8260,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8285,7 +8285,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8308,7 +8308,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8323,7 +8323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8340,7 +8340,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8363,7 +8363,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8380,7 +8380,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8401,7 +8401,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8425,7 +8425,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8449,7 +8449,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8476,7 +8476,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8493,7 +8493,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8523,7 +8523,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8547,7 +8547,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8574,7 +8574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8607,7 +8607,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8634,7 +8634,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8652,7 +8652,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8677,7 +8677,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8706,7 +8706,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8726,7 +8726,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8752,7 +8752,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8772,7 +8772,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8791,7 +8791,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8817,7 +8817,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8835,7 +8835,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8852,7 +8852,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8873,7 +8873,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8893,7 +8893,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8915,7 +8915,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8932,7 +8932,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8958,7 +8958,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8974,7 +8974,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8994,7 +8994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9010,7 +9010,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9032,7 +9032,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9059,7 +9059,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9090,7 +9090,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9108,7 +9108,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9126,7 +9126,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9143,7 +9143,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9164,7 +9164,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9187,7 +9187,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9212,7 +9212,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9232,7 +9232,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9262,7 +9262,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9290,7 +9290,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9309,7 +9309,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9326,7 +9326,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9343,7 +9343,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9367,7 +9367,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9394,7 +9394,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9426,7 +9426,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9456,7 +9456,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9483,7 +9483,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9502,7 +9502,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9523,7 +9523,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9540,7 +9540,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9559,7 +9559,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9577,7 +9577,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9592,7 +9592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9615,7 +9615,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9635,7 +9635,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9659,7 +9659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9675,7 +9675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9692,7 +9692,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9710,7 +9710,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9727,7 +9727,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9756,7 +9756,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9772,7 +9772,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9789,7 +9789,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9817,7 +9817,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9834,7 +9834,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9865,7 +9865,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9886,7 +9886,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9903,7 +9903,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9920,7 +9920,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9950,7 +9950,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9977,7 +9977,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10009,7 +10009,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10033,7 +10033,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10050,7 +10050,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10067,7 +10067,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10084,7 +10084,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10112,7 +10112,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10134,7 +10134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10158,7 +10158,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10175,7 +10175,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10202,7 +10202,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10233,7 +10233,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10250,7 +10250,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10267,7 +10267,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10285,7 +10285,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10302,7 +10302,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10319,7 +10319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10334,7 +10334,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10361,7 +10361,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10378,7 +10378,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10395,7 +10395,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10412,7 +10412,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10429,7 +10429,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10445,7 +10445,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10465,7 +10465,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10482,7 +10482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10508,7 +10508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10531,7 +10531,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10547,7 +10547,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10570,7 +10570,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10587,7 +10587,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10619,7 +10619,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10637,7 +10637,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10656,7 +10656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10675,7 +10675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10691,7 +10691,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10710,7 +10710,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10733,7 +10733,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10751,7 +10751,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10767,7 +10767,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10783,7 +10783,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10805,7 +10805,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10823,7 +10823,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10841,7 +10841,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10858,7 +10858,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10876,7 +10876,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10892,7 +10892,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10915,7 +10915,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10932,7 +10932,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10949,7 +10949,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10966,7 +10966,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10986,7 +10986,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11002,7 +11002,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11024,7 +11024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11050,7 +11050,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11067,7 +11067,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11084,7 +11084,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11102,7 +11102,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11119,7 +11119,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11148,7 +11148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11174,7 +11174,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11192,7 +11192,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11218,7 +11218,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11235,7 +11235,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11268,7 +11268,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11284,7 +11284,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11306,7 +11306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11326,7 +11326,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11347,7 +11347,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11368,7 +11368,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11396,7 +11396,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11423,7 +11423,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11442,7 +11442,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11462,7 +11462,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11480,7 +11480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11502,7 +11502,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11519,7 +11519,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11535,7 +11535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11562,7 +11562,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11579,7 +11579,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11596,7 +11596,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11618,7 +11618,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11646,7 +11646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11668,7 +11668,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11697,7 +11697,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11713,7 +11713,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11729,7 +11729,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11750,7 +11750,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11767,7 +11767,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11784,7 +11784,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11804,7 +11804,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11822,7 +11822,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11840,7 +11840,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -11865,7 +11865,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11883,7 +11883,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11901,7 +11901,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11919,7 +11919,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11936,7 +11936,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -11959,7 +11959,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11976,7 +11976,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -11996,7 +11996,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12013,7 +12013,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12033,7 +12033,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12056,7 +12056,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12074,7 +12074,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12092,7 +12092,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12109,7 +12109,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12133,7 +12133,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12150,7 +12150,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12178,7 +12178,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12195,7 +12195,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12218,7 +12218,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12233,7 +12233,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12250,7 +12250,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12273,7 +12273,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12297,7 +12297,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12323,7 +12323,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12354,7 +12354,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12382,7 +12382,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12397,7 +12397,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12413,7 +12413,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12442,7 +12442,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12458,7 +12458,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12481,7 +12481,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12509,7 +12509,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12526,7 +12526,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12546,7 +12546,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12566,7 +12566,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12589,7 +12589,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12606,7 +12606,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12622,7 +12622,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12642,7 +12642,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12671,7 +12671,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12696,7 +12696,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12719,7 +12719,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12739,7 +12739,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12757,7 +12757,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12775,7 +12775,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12804,7 +12804,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12821,7 +12821,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12842,7 +12842,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12864,7 +12864,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12884,7 +12884,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12907,7 +12907,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12924,7 +12924,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12945,7 +12945,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -12974,7 +12974,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -12992,7 +12992,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13008,7 +13008,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13028,7 +13028,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -13056,7 +13056,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -13084,7 +13084,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13100,7 +13100,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -13127,7 +13127,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13146,7 +13146,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13167,7 +13167,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13183,7 +13183,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13204,7 +13204,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13224,7 +13224,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -13249,7 +13249,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -13273,7 +13273,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -13299,7 +13299,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13316,7 +13316,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13331,7 +13331,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13347,7 +13347,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13370,7 +13370,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13396,7 +13396,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13421,7 +13421,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13440,7 +13440,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13457,7 +13457,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13472,7 +13472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13500,7 +13500,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13518,7 +13518,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13537,7 +13537,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13554,7 +13554,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13577,7 +13577,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13612,7 +13612,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13635,7 +13635,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13654,7 +13654,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13677,7 +13677,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13693,7 +13693,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13713,7 +13713,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13731,7 +13731,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13779,7 +13779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13795,7 +13795,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13812,7 +13812,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13830,7 +13830,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13847,7 +13847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13863,7 +13863,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13880,7 +13880,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13897,7 +13897,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13927,7 +13927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13949,7 +13949,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -13970,7 +13970,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -13995,7 +13995,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -14018,7 +14018,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -14042,7 +14042,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -14067,7 +14067,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -14091,7 +14091,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -14122,7 +14122,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -14147,7 +14147,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -14179,7 +14179,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -14697,7 +14697,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14724,7 +14724,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14742,7 +14742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14770,7 +14770,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14786,7 +14786,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14806,7 +14806,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14824,7 +14824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14848,7 +14848,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14865,7 +14865,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14883,7 +14883,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14900,7 +14900,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14926,7 +14926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14946,7 +14946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14963,7 +14963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14989,7 +14989,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15012,7 +15012,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15037,7 +15037,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15053,7 +15053,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15077,7 +15077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15093,7 +15093,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15109,7 +15109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15129,7 +15129,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15152,7 +15152,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15169,7 +15169,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15190,7 +15190,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15220,7 +15220,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15237,7 +15237,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15254,7 +15254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15270,7 +15270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15286,7 +15286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15308,7 +15308,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15329,7 +15329,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15356,7 +15356,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15373,7 +15373,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15390,7 +15390,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15407,7 +15407,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15425,7 +15425,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15453,7 +15453,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15470,7 +15470,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15486,7 +15486,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15503,7 +15503,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15523,7 +15523,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15540,7 +15540,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15564,7 +15564,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15586,7 +15586,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15606,7 +15606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15631,7 +15631,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15647,7 +15647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15667,7 +15667,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15689,7 +15689,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15706,7 +15706,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15723,7 +15723,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15738,7 +15738,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15758,7 +15758,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15774,7 +15774,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15791,7 +15791,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15807,7 +15807,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15824,7 +15824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15844,7 +15844,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15862,7 +15862,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15880,7 +15880,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15899,7 +15899,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15914,7 +15914,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15932,7 +15932,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15952,7 +15952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15970,7 +15970,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15990,7 +15990,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16009,7 +16009,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16028,7 +16028,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16046,7 +16046,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16064,7 +16064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16086,7 +16086,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16105,7 +16105,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16127,7 +16127,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16146,7 +16146,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16166,7 +16166,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16185,7 +16185,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16204,7 +16204,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16223,7 +16223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16246,7 +16246,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16265,7 +16265,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16283,7 +16283,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16306,7 +16306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16322,7 +16322,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16339,7 +16339,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16355,7 +16355,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16372,7 +16372,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16389,7 +16389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16404,7 +16404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16438,7 +16438,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16455,7 +16455,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16473,7 +16473,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16490,7 +16490,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16508,7 +16508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16526,7 +16526,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16544,7 +16544,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16564,7 +16564,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16585,7 +16585,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16606,7 +16606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16624,7 +16624,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16649,7 +16649,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16666,7 +16666,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16685,7 +16685,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16703,7 +16703,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16721,7 +16721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16738,7 +16738,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16754,7 +16754,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16779,7 +16779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16796,7 +16796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16812,7 +16812,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16831,7 +16831,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16863,7 +16863,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16888,7 +16888,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16903,7 +16903,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16923,7 +16923,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16946,7 +16946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16976,7 +16976,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16996,7 +16996,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17014,7 +17014,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17048,7 +17048,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17064,7 +17064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17081,7 +17081,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17101,7 +17101,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17121,7 +17121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17144,7 +17144,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17166,7 +17166,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17189,7 +17189,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17213,7 +17213,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17239,7 +17239,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17256,7 +17256,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17273,7 +17273,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17295,7 +17295,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17315,7 +17315,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17342,7 +17342,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17365,7 +17365,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17382,7 +17382,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17407,7 +17407,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17426,7 +17426,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17446,7 +17446,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17470,7 +17470,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17492,7 +17492,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17512,7 +17512,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17544,7 +17544,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17561,7 +17561,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17583,7 +17583,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17610,7 +17610,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17634,7 +17634,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17651,7 +17651,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17671,7 +17671,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17688,7 +17688,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17709,7 +17709,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17726,7 +17726,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17758,7 +17758,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17780,7 +17780,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17801,7 +17801,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17835,7 +17835,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17862,7 +17862,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17879,7 +17879,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17900,7 +17900,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17917,7 +17917,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17934,7 +17934,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17950,7 +17950,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17971,7 +17971,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17994,7 +17994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18027,7 +18027,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18054,7 +18054,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18077,7 +18077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18093,7 +18093,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18114,7 +18114,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18140,7 +18140,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18165,7 +18165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18258,7 +18258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18281,7 +18281,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18308,7 +18308,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18325,7 +18325,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18343,7 +18343,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18359,7 +18359,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18383,7 +18383,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18400,7 +18400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18416,7 +18416,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18433,7 +18433,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18453,7 +18453,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18471,7 +18471,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18488,7 +18488,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18506,7 +18506,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18527,7 +18527,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18545,7 +18545,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18563,7 +18563,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18578,7 +18578,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18597,7 +18597,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18613,7 +18613,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18645,7 +18645,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18662,7 +18662,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18684,7 +18684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18713,7 +18713,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18729,7 +18729,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18752,7 +18752,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18768,7 +18768,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18786,7 +18786,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18804,7 +18804,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18824,7 +18824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18849,7 +18849,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18874,7 +18874,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18890,7 +18890,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18905,7 +18905,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19266,7 +19266,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -19591,7 +19591,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19614,7 +19614,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19638,7 +19638,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19654,7 +19654,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19673,7 +19673,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19703,7 +19703,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19727,7 +19727,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19746,7 +19746,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19762,7 +19762,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19778,7 +19778,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -19803,7 +19803,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19822,7 +19822,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19841,7 +19841,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19859,7 +19859,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19877,7 +19877,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19895,7 +19895,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19913,7 +19913,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -19937,7 +19937,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -19962,7 +19962,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19980,7 +19980,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -19998,7 +19998,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20016,7 +20016,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20032,7 +20032,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20052,7 +20052,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20094,7 +20094,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20111,7 +20111,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20146,7 +20146,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20164,7 +20164,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20218,7 +20218,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20269,7 +20269,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20304,7 +20304,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20325,7 +20325,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20351,7 +20351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20387,7 +20387,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20412,7 +20412,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20446,7 +20446,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20463,7 +20463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20484,7 +20484,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -20511,7 +20511,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -20553,7 +20553,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -20579,7 +20579,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -20625,7 +20625,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20642,7 +20642,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20665,7 +20665,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20681,7 +20681,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20701,7 +20701,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20717,7 +20717,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20736,7 +20736,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20756,7 +20756,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20775,7 +20775,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20799,7 +20799,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20817,7 +20817,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20834,7 +20834,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20852,7 +20852,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20877,7 +20877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20897,7 +20897,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20921,7 +20921,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20938,7 +20938,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20970,7 +20970,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20994,7 +20994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21022,7 +21022,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21048,7 +21048,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21069,7 +21069,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21093,7 +21093,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21124,7 +21124,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21143,7 +21143,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21172,7 +21172,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21201,7 +21201,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21220,7 +21220,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21251,7 +21251,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21271,7 +21271,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21288,7 +21288,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21309,7 +21309,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21332,7 +21332,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21348,7 +21348,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21372,7 +21372,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21391,7 +21391,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21416,7 +21416,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21437,7 +21437,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21465,7 +21465,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21489,7 +21489,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21522,7 +21522,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21547,7 +21547,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21566,7 +21566,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21588,7 +21588,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21608,7 +21608,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21640,7 +21640,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21662,7 +21662,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21690,7 +21690,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21707,7 +21707,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21728,7 +21728,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21753,7 +21753,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21770,7 +21770,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21797,7 +21797,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21824,7 +21824,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21843,7 +21843,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -21867,7 +21867,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21885,7 +21885,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21906,7 +21906,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21926,7 +21926,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21943,7 +21943,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -21961,7 +21961,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -22043,7 +22043,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -22069,7 +22069,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -22092,7 +22092,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -22110,7 +22110,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -22128,7 +22128,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -22146,7 +22146,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -22185,7 +22185,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22202,7 +22202,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22219,7 +22219,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22236,7 +22236,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22254,7 +22254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22271,7 +22271,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22287,7 +22287,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22310,7 +22310,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22326,7 +22326,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22346,7 +22346,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22363,7 +22363,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22380,7 +22380,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22409,7 +22409,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22432,7 +22432,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22452,7 +22452,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22469,7 +22469,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22500,7 +22500,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22517,7 +22517,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22539,7 +22539,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22557,7 +22557,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22581,7 +22581,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22611,7 +22611,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22627,7 +22627,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22647,7 +22647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22668,7 +22668,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22700,7 +22700,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22721,7 +22721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22738,7 +22738,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22764,7 +22764,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22781,7 +22781,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22800,7 +22800,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22823,7 +22823,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22843,7 +22843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22871,7 +22871,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22888,7 +22888,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22917,7 +22917,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22934,7 +22934,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22953,7 +22953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22972,7 +22972,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22988,7 +22988,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23006,7 +23006,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23030,7 +23030,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23077,7 +23077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23094,7 +23094,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23130,7 +23130,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23147,7 +23147,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23164,7 +23164,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23178,7 +23178,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23194,7 +23194,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23218,7 +23218,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23234,7 +23234,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23260,7 +23260,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23287,7 +23287,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23304,7 +23304,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23329,7 +23329,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23361,7 +23361,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23378,7 +23378,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23410,7 +23410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23426,7 +23426,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23447,7 +23447,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23467,7 +23467,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23484,7 +23484,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23501,7 +23501,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23524,7 +23524,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23551,7 +23551,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23578,7 +23578,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23596,7 +23596,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23614,7 +23614,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23631,7 +23631,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23654,7 +23654,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23673,7 +23673,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23694,7 +23694,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23709,7 +23709,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23730,7 +23730,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23757,7 +23757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23788,7 +23788,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23811,7 +23811,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23834,7 +23834,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23862,7 +23862,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23887,7 +23887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23904,7 +23904,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23936,7 +23936,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23952,7 +23952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23978,7 +23978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24005,7 +24005,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24021,7 +24021,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24048,7 +24048,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24070,7 +24070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24095,7 +24095,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24118,7 +24118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24140,7 +24140,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24156,7 +24156,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24420,7 +24420,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24441,7 +24441,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24458,7 +24458,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24482,7 +24482,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24513,7 +24513,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24533,7 +24533,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24551,7 +24551,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24580,7 +24580,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24598,7 +24598,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24624,7 +24624,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24656,7 +24656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24676,7 +24676,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24696,7 +24696,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24721,7 +24721,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24749,7 +24749,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24773,7 +24773,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24802,7 +24802,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24820,7 +24820,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24844,7 +24844,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24871,7 +24871,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24896,7 +24896,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24916,7 +24916,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24935,7 +24935,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24954,7 +24954,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24978,7 +24978,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25006,7 +25006,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25048,7 +25048,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25065,7 +25065,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25114,7 +25114,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25134,7 +25134,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25151,7 +25151,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25183,7 +25183,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25212,7 +25212,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25238,7 +25238,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25273,7 +25273,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25296,7 +25296,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25327,7 +25327,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25346,7 +25346,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25374,7 +25374,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25391,7 +25391,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25408,7 +25408,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25448,7 +25448,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25863,7 +25863,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25884,7 +25884,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25907,7 +25907,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -25936,7 +25936,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25980,7 +25980,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26405,7 +26405,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -26454,7 +26454,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -26477,7 +26477,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -26501,7 +26501,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26548,7 +26548,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26565,7 +26565,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26589,7 +26589,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26605,7 +26605,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26628,7 +26628,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26647,7 +26647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26665,7 +26665,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26687,7 +26687,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26702,7 +26702,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26742,7 +26742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26762,7 +26762,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26779,7 +26779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26801,7 +26801,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26824,7 +26824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26856,7 +26856,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26877,7 +26877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26897,7 +26897,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26924,7 +26924,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26940,7 +26940,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26959,7 +26959,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26975,7 +26975,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26992,7 +26992,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27009,7 +27009,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27027,7 +27027,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27045,7 +27045,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27063,7 +27063,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27085,7 +27085,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27101,7 +27101,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27123,7 +27123,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27140,7 +27140,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27155,7 +27155,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27177,7 +27177,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27208,7 +27208,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27243,7 +27243,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27275,7 +27275,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27290,7 +27290,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27307,7 +27307,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27323,7 +27323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27357,7 +27357,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27384,7 +27384,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27400,7 +27400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27429,7 +27429,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27451,7 +27451,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27469,7 +27469,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27489,7 +27489,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27518,7 +27518,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27538,7 +27538,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27562,7 +27562,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27580,7 +27580,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27604,7 +27604,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27625,7 +27625,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27651,7 +27651,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27683,7 +27683,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27699,7 +27699,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27720,7 +27720,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27751,7 +27751,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27769,7 +27769,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27786,7 +27786,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27804,7 +27804,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27827,7 +27827,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27844,7 +27844,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27860,7 +27860,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27881,7 +27881,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27898,7 +27898,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27915,7 +27915,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27935,7 +27935,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27952,7 +27952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27967,7 +27967,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27986,7 +27986,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28010,7 +28010,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28032,7 +28032,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28049,7 +28049,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28073,7 +28073,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28097,7 +28097,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28131,7 +28131,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28162,7 +28162,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28199,7 +28199,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28224,7 +28224,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28242,7 +28242,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28259,7 +28259,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28279,7 +28279,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28299,7 +28299,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28315,7 +28315,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28336,7 +28336,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28354,7 +28354,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28376,7 +28376,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28396,7 +28396,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28413,7 +28413,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28435,7 +28435,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28454,7 +28454,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28471,7 +28471,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28488,7 +28488,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28504,7 +28504,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28523,7 +28523,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28545,7 +28545,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28561,7 +28561,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28587,7 +28587,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28611,7 +28611,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28627,7 +28627,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28646,7 +28646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28661,7 +28661,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28680,7 +28680,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28702,7 +28702,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28721,7 +28721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28737,7 +28737,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28756,7 +28756,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28780,7 +28780,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28802,7 +28802,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28819,7 +28819,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28839,7 +28839,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28871,7 +28871,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28899,7 +28899,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28915,7 +28915,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -28937,7 +28937,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28965,7 +28965,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -28988,7 +28988,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29005,7 +29005,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29030,7 +29030,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29046,7 +29046,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29064,7 +29064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29083,7 +29083,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29098,7 +29098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29122,7 +29122,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29138,7 +29138,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29162,7 +29162,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29180,7 +29180,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29212,7 +29212,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29228,7 +29228,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29249,7 +29249,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29266,7 +29266,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29289,7 +29289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29306,7 +29306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29323,7 +29323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29344,7 +29344,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29366,7 +29366,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29386,7 +29386,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29410,7 +29410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29434,7 +29434,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29454,7 +29454,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29475,7 +29475,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29503,7 +29503,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29534,7 +29534,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29567,7 +29567,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29583,7 +29583,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29603,7 +29603,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29628,7 +29628,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29647,7 +29647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29665,7 +29665,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29688,7 +29688,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29705,7 +29705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29731,7 +29731,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29760,7 +29760,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29777,7 +29777,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29800,7 +29800,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29816,7 +29816,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29837,7 +29837,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29857,7 +29857,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29877,7 +29877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29894,7 +29894,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29917,7 +29917,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29939,7 +29939,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29963,7 +29963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29984,7 +29984,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29999,7 +29999,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30017,7 +30017,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30037,7 +30037,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30067,7 +30067,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30082,7 +30082,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30101,7 +30101,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30123,7 +30123,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30139,7 +30139,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30163,7 +30163,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30183,7 +30183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30210,7 +30210,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30233,7 +30233,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30251,7 +30251,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30271,7 +30271,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30288,7 +30288,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30318,7 +30318,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30335,7 +30335,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30352,7 +30352,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30368,7 +30368,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30391,7 +30391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30410,7 +30410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30428,7 +30428,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30444,7 +30444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30469,7 +30469,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30485,7 +30485,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30507,7 +30507,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30531,7 +30531,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30547,7 +30547,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30563,7 +30563,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30579,7 +30579,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30682,7 +30682,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30706,7 +30706,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30726,7 +30726,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30749,7 +30749,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30789,7 +30789,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30807,7 +30807,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30828,7 +30828,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -30851,7 +30851,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -30869,7 +30869,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -30886,7 +30886,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -30928,7 +30928,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -31029,7 +31029,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31068,7 +31068,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31087,7 +31087,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -31119,7 +31119,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31136,7 +31136,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31156,7 +31156,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -31183,7 +31183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31200,7 +31200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31215,7 +31215,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31231,7 +31231,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31247,7 +31247,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31265,7 +31265,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31288,7 +31288,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31304,7 +31304,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31319,7 +31319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31339,7 +31339,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31355,7 +31355,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31391,7 +31391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31407,7 +31407,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31424,7 +31424,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31441,7 +31441,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31460,7 +31460,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31481,7 +31481,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31497,7 +31497,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31513,7 +31513,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31530,7 +31530,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -31553,7 +31553,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31577,7 +31577,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31595,7 +31595,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31618,7 +31618,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31641,7 +31641,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31656,7 +31656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31679,7 +31679,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31696,7 +31696,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31712,7 +31712,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -31738,7 +31738,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31754,7 +31754,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31770,7 +31770,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31786,7 +31786,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31803,7 +31803,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31819,7 +31819,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31837,7 +31837,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31853,7 +31853,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31873,7 +31873,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -31897,7 +31897,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31917,7 +31917,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -31940,7 +31940,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31957,7 +31957,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31974,7 +31974,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31992,7 +31992,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32009,7 +32009,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32029,7 +32029,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32046,7 +32046,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32062,7 +32062,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32085,7 +32085,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32100,7 +32100,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32124,7 +32124,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32154,7 +32154,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32187,7 +32187,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32205,7 +32205,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32221,7 +32221,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32237,7 +32237,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32256,7 +32256,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32272,7 +32272,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32288,7 +32288,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32304,7 +32304,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32322,7 +32322,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32338,7 +32338,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32354,7 +32354,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32370,7 +32370,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32397,7 +32397,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32414,7 +32414,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32431,7 +32431,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32453,7 +32453,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32473,7 +32473,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32490,7 +32490,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32507,7 +32507,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32523,7 +32523,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32539,7 +32539,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32556,7 +32556,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32573,7 +32573,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32593,7 +32593,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32617,7 +32617,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32647,7 +32647,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32672,7 +32672,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32688,7 +32688,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32708,7 +32708,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32725,7 +32725,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32749,7 +32749,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32765,7 +32765,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32785,7 +32785,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32805,7 +32805,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32825,7 +32825,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32843,7 +32843,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32861,7 +32861,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32879,7 +32879,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32897,7 +32897,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32913,7 +32913,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32932,7 +32932,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32949,7 +32949,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32968,7 +32968,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32990,7 +32990,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33005,7 +33005,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33034,7 +33034,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33050,7 +33050,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33067,7 +33067,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33084,7 +33084,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33107,7 +33107,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33126,7 +33126,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33148,7 +33148,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33164,7 +33164,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33180,7 +33180,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33203,7 +33203,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33220,7 +33220,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33237,7 +33237,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33256,7 +33256,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33272,7 +33272,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33295,7 +33295,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33326,7 +33326,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33342,7 +33342,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33359,7 +33359,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33376,7 +33376,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33392,7 +33392,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33416,7 +33416,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33435,7 +33435,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33451,7 +33451,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33468,7 +33468,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33491,7 +33491,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33511,7 +33511,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33529,7 +33529,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33547,7 +33547,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33564,7 +33564,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33592,7 +33592,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33610,7 +33610,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33638,7 +33638,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33658,7 +33658,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33680,7 +33680,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33695,7 +33695,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33712,7 +33712,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33728,7 +33728,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33748,7 +33748,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33765,7 +33765,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33789,7 +33789,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33804,7 +33804,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33821,7 +33821,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -33845,7 +33845,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33864,7 +33864,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33881,7 +33881,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33901,7 +33901,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33920,7 +33920,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33939,7 +33939,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33959,7 +33959,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33980,7 +33980,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33997,7 +33997,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34018,7 +34018,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34037,7 +34037,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -34071,7 +34071,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34087,7 +34087,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34104,7 +34104,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34121,7 +34121,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -34146,7 +34146,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34165,7 +34165,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34183,7 +34183,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34203,7 +34203,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -34229,7 +34229,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34248,7 +34248,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34267,7 +34267,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34283,7 +34283,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34300,7 +34300,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34320,7 +34320,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -34345,7 +34345,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34364,7 +34364,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34384,7 +34384,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34401,7 +34401,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -34425,7 +34425,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34441,7 +34441,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34464,7 +34464,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34480,7 +34480,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34497,7 +34497,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34514,7 +34514,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34530,7 +34530,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34546,7 +34546,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34574,7 +34574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -34608,7 +34608,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34624,7 +34624,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34640,7 +34640,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34659,7 +34659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34676,7 +34676,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34692,7 +34692,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34709,7 +34709,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34729,7 +34729,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34746,7 +34746,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -34773,7 +34773,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34788,7 +34788,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -34817,7 +34817,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34833,7 +34833,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -34856,7 +34856,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -34887,7 +34887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34902,7 +34902,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34925,7 +34925,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34942,7 +34942,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34963,7 +34963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -34990,7 +34990,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35027,7 +35027,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35047,7 +35047,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35076,7 +35076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35092,7 +35092,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35118,7 +35118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35143,7 +35143,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35160,7 +35160,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35187,7 +35187,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35206,7 +35206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35237,7 +35237,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35258,7 +35258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35289,7 +35289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35305,7 +35305,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35533,7 +35533,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -35666,7 +35666,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35849,7 +35849,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35927,7 +35927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35943,7 +35943,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -35961,7 +35961,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35978,7 +35978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36052,7 +36052,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36072,7 +36072,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36099,7 +36099,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36119,7 +36119,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36142,7 +36142,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36170,7 +36170,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36187,7 +36187,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36210,7 +36210,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36227,7 +36227,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36249,7 +36249,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36264,7 +36264,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36286,7 +36286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36302,7 +36302,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36319,7 +36319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36336,7 +36336,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36353,7 +36353,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36370,7 +36370,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -36399,7 +36399,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36417,7 +36417,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36435,7 +36435,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36451,7 +36451,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36476,7 +36476,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36494,7 +36494,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -36517,7 +36517,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36534,7 +36534,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -36565,7 +36565,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -36598,7 +36598,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -36621,7 +36621,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36641,7 +36641,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36659,7 +36659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36678,7 +36678,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36696,7 +36696,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36717,7 +36717,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36735,7 +36735,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36755,7 +36755,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36775,7 +36775,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36793,7 +36793,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36815,7 +36815,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -36838,7 +36838,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36859,7 +36859,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36881,7 +36881,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36900,7 +36900,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -36931,7 +36931,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36952,7 +36952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36970,7 +36970,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -36988,7 +36988,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37009,7 +37009,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37029,7 +37029,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37050,7 +37050,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37067,7 +37067,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37085,7 +37085,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37101,7 +37101,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37123,7 +37123,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37144,7 +37144,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -37167,7 +37167,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37186,7 +37186,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37207,7 +37207,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37224,7 +37224,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37241,7 +37241,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37258,7 +37258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37277,7 +37277,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37294,7 +37294,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37315,7 +37315,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37335,7 +37335,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37351,7 +37351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37369,7 +37369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37388,7 +37388,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37411,7 +37411,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37427,7 +37427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37531,7 +37531,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37553,7 +37553,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37755,7 +37755,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37778,7 +37778,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37796,7 +37796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37815,7 +37815,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -37837,7 +37837,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37854,7 +37854,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37873,7 +37873,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37889,7 +37889,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37911,7 +37911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37927,7 +37927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37946,7 +37946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -37967,7 +37967,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38007,7 +38007,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -38033,7 +38033,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -38080,7 +38080,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38102,7 +38102,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38124,7 +38124,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38417,7 +38417,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -38459,7 +38459,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38478,7 +38478,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38606,7 +38606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38628,7 +38628,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -38650,7 +38650,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38666,7 +38666,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38682,7 +38682,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38699,7 +38699,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38720,7 +38720,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -38743,7 +38743,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -38774,7 +38774,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38791,7 +38791,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38807,7 +38807,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38830,7 +38830,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38862,7 +38862,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38880,7 +38880,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38900,7 +38900,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38927,7 +38927,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38945,7 +38945,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38970,7 +38970,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39032,7 +39032,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -39056,7 +39056,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -39080,7 +39080,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -39129,7 +39129,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39147,7 +39147,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39163,7 +39163,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -39191,7 +39191,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39218,7 +39218,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39237,7 +39237,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39254,7 +39254,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39273,7 +39273,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39341,7 +39341,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39359,7 +39359,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39377,7 +39377,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39395,7 +39395,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39412,7 +39412,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39435,7 +39435,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39456,7 +39456,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39474,7 +39474,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39491,7 +39491,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39515,7 +39515,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39531,7 +39531,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39548,7 +39548,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39568,7 +39568,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39584,7 +39584,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39601,7 +39601,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39622,7 +39622,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39644,7 +39644,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39664,7 +39664,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39681,7 +39681,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39699,7 +39699,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39721,7 +39721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39745,7 +39745,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39762,7 +39762,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39778,7 +39778,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39797,7 +39797,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39818,7 +39818,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39838,7 +39838,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39862,7 +39862,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39887,7 +39887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39909,7 +39909,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39925,7 +39925,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39947,7 +39947,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40049,7 +40049,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40065,7 +40065,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40098,7 +40098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40115,7 +40115,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40131,7 +40131,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40154,7 +40154,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40171,7 +40171,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40188,7 +40188,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40208,7 +40208,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40225,7 +40225,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -40250,7 +40250,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40266,7 +40266,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40286,7 +40286,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -40309,7 +40309,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40325,7 +40325,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40346,7 +40346,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -40370,7 +40370,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40386,7 +40386,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40403,7 +40403,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40427,7 +40427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40444,7 +40444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40474,7 +40474,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40498,7 +40498,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40515,7 +40515,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40539,7 +40539,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40556,7 +40556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40573,7 +40573,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40717,7 +40717,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -40803,7 +40803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40819,7 +40819,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40836,7 +40836,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40851,7 +40851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40864,7 +40864,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40903,7 +40903,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40920,7 +40920,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40941,7 +40941,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40958,7 +40958,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40978,7 +40978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40999,7 +40999,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41025,7 +41025,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41044,7 +41044,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41066,7 +41066,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41082,7 +41082,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41098,7 +41098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41120,7 +41120,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41148,7 +41148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41164,7 +41164,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41183,7 +41183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41200,7 +41200,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41226,7 +41226,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41250,7 +41250,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41267,7 +41267,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41286,7 +41286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41302,7 +41302,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41318,7 +41318,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41334,7 +41334,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41356,7 +41356,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41374,7 +41374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41393,7 +41393,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41410,7 +41410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41427,7 +41427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41448,7 +41448,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41467,7 +41467,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41492,7 +41492,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41508,7 +41508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41527,7 +41527,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41543,7 +41543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41559,7 +41559,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41583,7 +41583,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41599,7 +41599,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41618,7 +41618,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41634,7 +41634,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41650,7 +41650,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41675,7 +41675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41691,7 +41691,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41708,7 +41708,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41723,7 +41723,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41751,7 +41751,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41770,7 +41770,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41800,7 +41800,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41825,7 +41825,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41847,7 +41847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41865,7 +41865,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41887,7 +41887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41910,7 +41910,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41927,7 +41927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41952,7 +41952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41972,7 +41972,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41989,7 +41989,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42013,7 +42013,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42030,7 +42030,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42052,7 +42052,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42068,7 +42068,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42085,7 +42085,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42101,7 +42101,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42118,7 +42118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42139,7 +42139,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42162,7 +42162,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42179,7 +42179,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42198,7 +42198,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42214,7 +42214,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42231,7 +42231,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42247,7 +42247,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42269,7 +42269,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42286,7 +42286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42303,7 +42303,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42329,7 +42329,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42360,7 +42360,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42392,7 +42392,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42416,7 +42416,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42436,7 +42436,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42453,7 +42453,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42482,7 +42482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42499,7 +42499,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42516,7 +42516,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42533,7 +42533,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42556,7 +42556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42573,7 +42573,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42590,7 +42590,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42607,7 +42607,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42632,7 +42632,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42649,7 +42649,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42666,7 +42666,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42683,7 +42683,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42701,7 +42701,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42722,7 +42722,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42755,7 +42755,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42773,7 +42773,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42801,7 +42801,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42825,7 +42825,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42843,7 +42843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42867,7 +42867,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42884,7 +42884,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42904,7 +42904,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42926,7 +42926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42944,7 +42944,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42963,7 +42963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42981,7 +42981,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43001,7 +43001,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43026,7 +43026,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43043,7 +43043,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43060,7 +43060,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43077,7 +43077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43094,7 +43094,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43111,7 +43111,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43127,7 +43127,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43147,7 +43147,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43171,7 +43171,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43194,7 +43194,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43211,7 +43211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43228,7 +43228,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43245,7 +43245,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43262,7 +43262,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43279,7 +43279,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43295,7 +43295,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43321,7 +43321,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43347,7 +43347,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43371,7 +43371,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43391,7 +43391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43406,7 +43406,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43425,7 +43425,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43442,7 +43442,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43462,7 +43462,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43479,7 +43479,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43497,7 +43497,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43529,7 +43529,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43545,7 +43545,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43562,7 +43562,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43579,7 +43579,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43599,7 +43599,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43616,7 +43616,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43633,7 +43633,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43656,7 +43656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43673,7 +43673,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43690,7 +43690,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43709,7 +43709,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43734,7 +43734,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43756,7 +43756,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43776,7 +43776,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43793,7 +43793,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43818,7 +43818,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43835,7 +43835,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43852,7 +43852,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43875,7 +43875,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43892,7 +43892,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43909,7 +43909,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43926,7 +43926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43943,7 +43943,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43963,7 +43963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43980,7 +43980,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43996,7 +43996,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44016,7 +44016,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44040,7 +44040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44061,7 +44061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44079,7 +44079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44106,7 +44106,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44126,7 +44126,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44143,7 +44143,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44163,7 +44163,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44184,7 +44184,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44209,7 +44209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44226,7 +44226,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44243,7 +44243,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44260,7 +44260,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44281,7 +44281,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44298,7 +44298,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44314,7 +44314,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44331,7 +44331,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44348,7 +44348,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44366,7 +44366,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44383,7 +44383,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44399,7 +44399,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44420,7 +44420,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44444,7 +44444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44461,7 +44461,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44493,7 +44493,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44510,7 +44510,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44526,7 +44526,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44546,7 +44546,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44566,7 +44566,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44599,7 +44599,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44623,7 +44623,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44651,7 +44651,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44675,7 +44675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44693,7 +44693,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44717,7 +44717,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44735,7 +44735,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44759,7 +44759,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44777,7 +44777,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44795,7 +44795,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44817,7 +44817,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44999,7 +44999,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45035,7 +45035,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45052,7 +45052,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45069,7 +45069,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -45093,7 +45093,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -45116,7 +45116,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45133,7 +45133,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45151,7 +45151,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45169,7 +45169,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45186,7 +45186,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45203,7 +45203,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45223,7 +45223,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45240,7 +45240,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45256,7 +45256,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45276,7 +45276,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45293,7 +45293,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45310,7 +45310,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -45334,7 +45334,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45351,7 +45351,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -45374,7 +45374,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45391,7 +45391,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -45414,7 +45414,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -45442,7 +45442,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45459,7 +45459,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -45482,7 +45482,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45673,7 +45673,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -45996,7 +45996,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46021,7 +46021,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46047,7 +46047,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46063,7 +46063,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46299,7 +46299,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -46418,7 +46418,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46435,7 +46435,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46452,7 +46452,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46475,7 +46475,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46504,7 +46504,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46520,7 +46520,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46538,7 +46538,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46554,7 +46554,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46571,7 +46571,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46589,7 +46589,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46607,7 +46607,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46626,7 +46626,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46647,7 +46647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46664,7 +46664,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46681,7 +46681,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46698,7 +46698,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46720,7 +46720,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46740,7 +46740,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -46759,7 +46759,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -46782,7 +46782,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -46799,7 +46799,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47082,7 +47082,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47106,7 +47106,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47123,7 +47123,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47140,7 +47140,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47157,7 +47157,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47174,7 +47174,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47191,7 +47191,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47214,7 +47214,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47231,7 +47231,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47248,7 +47248,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47265,7 +47265,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47282,7 +47282,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47299,7 +47299,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47316,7 +47316,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47336,7 +47336,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47353,7 +47353,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47387,7 +47387,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47404,7 +47404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -47425,7 +47425,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47445,7 +47445,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47465,7 +47465,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47489,7 +47489,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47506,7 +47506,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47530,7 +47530,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47555,7 +47555,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47579,7 +47579,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47595,7 +47595,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47616,7 +47616,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47646,7 +47646,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47675,7 +47675,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47693,7 +47693,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47715,7 +47715,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47735,7 +47735,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47753,7 +47753,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47776,7 +47776,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47796,7 +47796,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47813,7 +47813,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47833,7 +47833,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47850,7 +47850,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47867,7 +47867,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47885,7 +47885,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47903,7 +47903,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47931,7 +47931,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -47976,7 +47976,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -47994,7 +47994,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48015,7 +48015,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48033,7 +48033,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48053,7 +48053,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48073,7 +48073,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48091,7 +48091,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48106,7 +48106,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48126,7 +48126,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48144,7 +48144,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48167,7 +48167,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48197,7 +48197,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48224,7 +48224,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48250,7 +48250,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48267,7 +48267,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48293,7 +48293,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48310,7 +48310,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48326,7 +48326,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48355,7 +48355,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48371,7 +48371,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48387,7 +48387,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48404,7 +48404,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48426,7 +48426,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48443,7 +48443,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48459,7 +48459,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48481,7 +48481,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48502,7 +48502,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48520,7 +48520,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48542,7 +48542,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48560,7 +48560,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48578,7 +48578,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48596,7 +48596,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48613,7 +48613,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48632,7 +48632,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48648,7 +48648,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48665,7 +48665,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -48683,7 +48683,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -48714,7 +48714,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49041,7 +49041,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49061,7 +49061,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49081,7 +49081,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49098,7 +49098,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49118,7 +49118,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49135,7 +49135,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49152,7 +49152,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49169,7 +49169,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49186,7 +49186,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49202,7 +49202,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49222,7 +49222,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49268,7 +49268,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49287,7 +49287,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49302,7 +49302,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49319,7 +49319,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -49342,7 +49342,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49358,7 +49358,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49375,7 +49375,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49396,7 +49396,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49413,7 +49413,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49431,7 +49431,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49451,7 +49451,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49469,7 +49469,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49486,7 +49486,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49502,7 +49502,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49518,7 +49518,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49534,7 +49534,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49550,7 +49550,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49569,7 +49569,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49588,7 +49588,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49610,7 +49610,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -49626,7 +49626,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -50562,7 +50562,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50748,7 +50748,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50768,7 +50768,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50785,7 +50785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50806,7 +50806,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50835,7 +50835,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50861,7 +50861,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50888,7 +50888,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50909,7 +50909,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50928,7 +50928,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50945,7 +50945,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50962,7 +50962,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50979,7 +50979,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50996,7 +50996,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51036,7 +51036,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51053,7 +51053,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51070,7 +51070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51089,7 +51089,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51107,7 +51107,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51136,7 +51136,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51168,7 +51168,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51191,7 +51191,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51208,7 +51208,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51225,7 +51225,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51250,7 +51250,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51271,7 +51271,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51298,7 +51298,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51320,7 +51320,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51336,7 +51336,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51352,7 +51352,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51369,7 +51369,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51385,7 +51385,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51407,7 +51407,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51422,7 +51422,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51458,7 +51458,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51476,7 +51476,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51499,7 +51499,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51515,7 +51515,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51532,7 +51532,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51549,7 +51549,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51568,7 +51568,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51595,7 +51595,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51619,7 +51619,7 @@ [] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51643,7 +51643,7 @@ [] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51676,7 +51676,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51695,7 +51695,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51746,7 +51746,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51771,7 +51771,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -51791,7 +51791,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51809,7 +51809,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51829,7 +51829,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51854,7 +51854,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51878,7 +51878,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51897,7 +51897,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -51928,7 +51928,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51952,7 +51952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51981,7 +51981,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52036,7 +52036,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52056,7 +52056,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52095,7 +52095,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52165,7 +52165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52353,7 +52353,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52389,7 +52389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52409,7 +52409,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52429,7 +52429,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52463,7 +52463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52481,7 +52481,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52502,7 +52502,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52519,7 +52519,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52543,7 +52543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52564,7 +52564,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52671,7 +52671,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52688,7 +52688,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52710,7 +52710,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -52742,7 +52742,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -52759,7 +52759,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -52776,7 +52776,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -52792,7 +52792,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -52812,7 +52812,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -52829,7 +52829,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -52861,7 +52861,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -52894,7 +52894,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -52911,7 +52911,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -52941,7 +52941,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -52962,7 +52962,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -52987,7 +52987,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53006,7 +53006,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53023,7 +53023,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53039,7 +53039,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53057,7 +53057,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53077,7 +53077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53109,7 +53109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53129,7 +53129,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53148,7 +53148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53168,7 +53168,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53186,7 +53186,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53208,7 +53208,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53313,7 +53313,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53336,7 +53336,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53353,7 +53353,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53375,7 +53375,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53391,7 +53391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53414,7 +53414,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53431,7 +53431,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53448,7 +53448,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -53471,7 +53471,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -53494,7 +53494,7 @@ [] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53514,7 +53514,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53531,7 +53531,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -53554,7 +53554,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -53579,7 +53579,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53599,7 +53599,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53617,7 +53617,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53635,7 +53635,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53652,7 +53652,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53673,7 +53673,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -53706,7 +53706,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53725,7 +53725,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53743,7 +53743,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53788,7 +53788,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -53811,7 +53811,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53831,7 +53831,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53853,7 +53853,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53871,7 +53871,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53927,7 +53927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53948,7 +53948,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53968,7 +53968,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -53985,7 +53985,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54005,7 +54005,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -54028,7 +54028,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54047,7 +54047,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -54073,7 +54073,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -54097,7 +54097,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54118,7 +54118,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54139,7 +54139,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -54164,7 +54164,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54182,7 +54182,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -54215,7 +54215,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54233,7 +54233,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54249,7 +54249,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -54297,7 +54297,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54318,7 +54318,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54350,7 +54350,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54370,7 +54370,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54387,7 +54387,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54404,7 +54404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54420,7 +54420,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54440,7 +54440,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54456,7 +54456,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54472,7 +54472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54492,7 +54492,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54508,7 +54508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54524,7 +54524,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54540,7 +54540,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54556,7 +54556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54582,7 +54582,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -54613,7 +54613,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54629,7 +54629,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54646,7 +54646,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54664,7 +54664,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -54692,7 +54692,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54717,7 +54717,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54745,7 +54745,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54762,7 +54762,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54778,7 +54778,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54804,7 +54804,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54835,7 +54835,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54852,7 +54852,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54873,7 +54873,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54900,7 +54900,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54917,7 +54917,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54946,7 +54946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54973,7 +54973,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54990,7 +54990,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55022,7 +55022,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55040,7 +55040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55063,7 +55063,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55082,7 +55082,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55103,7 +55103,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55127,7 +55127,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55143,7 +55143,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55167,7 +55167,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55184,7 +55184,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55215,7 +55215,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55233,7 +55233,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55262,7 +55262,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55291,7 +55291,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55314,7 +55314,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55335,7 +55335,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55357,7 +55357,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55385,7 +55385,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55403,7 +55403,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55423,7 +55423,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55453,7 +55453,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55482,7 +55482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55506,7 +55506,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55529,7 +55529,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55546,7 +55546,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55574,7 +55574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55603,7 +55603,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55625,7 +55625,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55648,7 +55648,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55664,7 +55664,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55684,7 +55684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55710,7 +55710,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55727,7 +55727,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55786,7 +55786,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55803,7 +55803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55823,7 +55823,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55843,7 +55843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55860,7 +55860,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55876,7 +55876,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55902,7 +55902,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55931,7 +55931,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55952,7 +55952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55989,7 +55989,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56026,7 +56026,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56045,7 +56045,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56061,7 +56061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56083,7 +56083,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56107,7 +56107,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56127,7 +56127,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56152,7 +56152,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56169,7 +56169,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56200,7 +56200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56229,7 +56229,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56248,7 +56248,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56265,7 +56265,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56296,7 +56296,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56316,7 +56316,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56333,7 +56333,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56350,7 +56350,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56369,7 +56369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56388,7 +56388,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56406,7 +56406,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56423,7 +56423,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56446,7 +56446,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56463,7 +56463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56482,7 +56482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -56505,7 +56505,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56521,7 +56521,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -56536,7 +56536,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57064,7 +57064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57082,7 +57082,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57114,7 +57114,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57132,7 +57132,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57153,7 +57153,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57176,7 +57176,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57195,7 +57195,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57214,7 +57214,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57236,7 +57236,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57254,7 +57254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57279,7 +57279,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57301,7 +57301,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57318,7 +57318,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57341,7 +57341,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57365,7 +57365,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57388,7 +57388,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57423,7 +57423,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57443,7 +57443,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57463,7 +57463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57482,7 +57482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57515,7 +57515,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57535,7 +57535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57552,7 +57552,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57568,7 +57568,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57589,7 +57589,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57614,7 +57614,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57646,7 +57646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57671,7 +57671,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57687,7 +57687,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57704,7 +57704,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57721,7 +57721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57749,7 +57749,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -57777,7 +57777,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57796,7 +57796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57813,7 +57813,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57829,7 +57829,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -57862,7 +57862,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -57880,7 +57880,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -57913,7 +57913,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -57934,7 +57934,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -57958,7 +57958,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -57977,7 +57977,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -57995,7 +57995,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58014,7 +58014,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58033,7 +58033,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58052,7 +58052,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58069,7 +58069,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58090,7 +58090,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58111,7 +58111,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58132,7 +58132,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58157,7 +58157,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58180,7 +58180,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58196,7 +58196,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58217,7 +58217,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58235,7 +58235,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58259,7 +58259,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58284,7 +58284,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58301,7 +58301,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58321,7 +58321,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58338,7 +58338,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58370,7 +58370,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58397,7 +58397,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58418,7 +58418,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58436,7 +58436,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58453,7 +58453,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58474,7 +58474,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58498,7 +58498,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58520,7 +58520,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58544,7 +58544,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58561,7 +58561,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58577,7 +58577,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58597,7 +58597,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58614,7 +58614,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58632,7 +58632,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58658,7 +58658,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58681,7 +58681,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58706,7 +58706,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -58730,7 +58730,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58748,7 +58748,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -58774,7 +58774,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -58791,7 +58791,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -58818,7 +58818,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -58850,7 +58850,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -58877,7 +58877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -58899,7 +58899,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -58918,7 +58918,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -58934,7 +58934,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -58962,7 +58962,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -58978,7 +58978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59002,7 +59002,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59019,7 +59019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59047,7 +59047,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59070,7 +59070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59090,7 +59090,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59121,7 +59121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59138,7 +59138,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59158,7 +59158,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59175,7 +59175,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59190,7 +59190,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59211,7 +59211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59238,7 +59238,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59253,7 +59253,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59270,7 +59270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59292,7 +59292,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59311,7 +59311,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59332,7 +59332,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59348,7 +59348,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59365,7 +59365,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59383,7 +59383,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59400,7 +59400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59431,7 +59431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59456,7 +59456,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59472,7 +59472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59506,7 +59506,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59523,7 +59523,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59543,7 +59543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59567,7 +59567,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59592,7 +59592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59609,7 +59609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59631,7 +59631,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59658,7 +59658,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59679,7 +59679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59696,7 +59696,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59721,7 +59721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59742,7 +59742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59759,7 +59759,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59775,7 +59775,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59796,7 +59796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -59825,7 +59825,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59843,7 +59843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59862,7 +59862,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59880,7 +59880,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59901,7 +59901,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59919,7 +59919,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59935,7 +59935,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59953,7 +59953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59970,7 +59970,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -59987,7 +59987,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60004,7 +60004,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60020,7 +60020,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60043,7 +60043,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60060,7 +60060,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60080,7 +60080,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60100,7 +60100,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -60133,7 +60133,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -60166,7 +60166,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -60199,7 +60199,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60216,7 +60216,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60233,7 +60233,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60344,7 +60344,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -60370,7 +60370,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60389,7 +60389,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60410,7 +60410,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60427,7 +60427,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -60450,7 +60450,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60471,7 +60471,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60624,7 +60624,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -60781,7 +60781,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60799,7 +60799,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60817,7 +60817,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -60846,7 +60846,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60863,7 +60863,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -60895,7 +60895,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60912,7 +60912,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -60930,7 +60930,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -60953,7 +60953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -61035,7 +61035,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -61054,7 +61054,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -61071,7 +61071,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -61105,7 +61105,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -61129,7 +61129,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -61146,7 +61146,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -61161,7 +61161,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -61183,7 +61183,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61207,7 +61207,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61235,7 +61235,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61252,7 +61252,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61274,7 +61274,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61295,7 +61295,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61327,7 +61327,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61351,7 +61351,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61377,7 +61377,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61392,7 +61392,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61414,7 +61414,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61438,7 +61438,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61462,7 +61462,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61494,7 +61494,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61511,7 +61511,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61529,7 +61529,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61596,7 +61596,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61629,7 +61629,7 @@ ] ] ], - "level": "3", + "level": "2", "related_data": {} } } @@ -61649,7 +61649,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61684,7 +61684,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -61719,7 +61719,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -61926,7 +61926,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -62224,7 +62224,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -62267,7 +62267,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -62306,7 +62306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62330,7 +62330,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62347,7 +62347,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62368,7 +62368,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62389,7 +62389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62411,7 +62411,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62427,7 +62427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62446,7 +62446,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62466,7 +62466,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62491,7 +62491,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62512,7 +62512,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62535,7 +62535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62551,7 +62551,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62567,7 +62567,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62582,7 +62582,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62602,7 +62602,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62619,7 +62619,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62639,7 +62639,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62664,7 +62664,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62688,7 +62688,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62713,7 +62713,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62736,7 +62736,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62755,7 +62755,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62776,7 +62776,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62796,7 +62796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62813,7 +62813,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62831,7 +62831,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62849,7 +62849,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62873,7 +62873,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62907,7 +62907,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62934,7 +62934,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62953,7 +62953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -62971,7 +62971,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -62994,7 +62994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63014,7 +63014,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63032,7 +63032,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63055,7 +63055,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63072,7 +63072,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63095,7 +63095,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63114,7 +63114,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63134,7 +63134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63152,7 +63152,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63178,7 +63178,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63208,7 +63208,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63237,7 +63237,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63254,7 +63254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63280,7 +63280,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63302,7 +63302,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63324,7 +63324,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63346,7 +63346,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -63396,7 +63396,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63428,7 +63428,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63487,7 +63487,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63509,7 +63509,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63541,7 +63541,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63561,7 +63561,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63587,7 +63587,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63609,7 +63609,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63628,7 +63628,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63652,7 +63652,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63669,7 +63669,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63694,7 +63694,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63719,7 +63719,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63734,7 +63734,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63755,7 +63755,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63771,7 +63771,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63787,7 +63787,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63803,7 +63803,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63819,7 +63819,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63836,7 +63836,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63858,7 +63858,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63877,7 +63877,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -63900,7 +63900,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63924,7 +63924,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63940,7 +63940,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63956,7 +63956,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -63976,7 +63976,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -64008,7 +64008,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -64031,7 +64031,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -64049,7 +64049,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -64066,7 +64066,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -64087,7 +64087,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -64113,7 +64113,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -64133,7 +64133,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64150,7 +64150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64167,7 +64167,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64183,7 +64183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64200,7 +64200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64216,7 +64216,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64235,7 +64235,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64251,7 +64251,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64272,7 +64272,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -64296,7 +64296,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -64313,7 +64313,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -64330,7 +64330,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -64371,7 +64371,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -64447,7 +64447,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64464,7 +64464,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64481,7 +64481,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64498,7 +64498,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64515,7 +64515,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64532,7 +64532,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64556,7 +64556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64569,7 +64569,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64607,7 +64607,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64646,7 +64646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64665,7 +64665,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64682,7 +64682,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64699,7 +64699,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64718,7 +64718,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64734,7 +64734,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64761,7 +64761,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64779,7 +64779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64796,7 +64796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64813,7 +64813,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64829,7 +64829,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64847,7 +64847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64934,7 +64934,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64956,7 +64956,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64979,7 +64979,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64998,7 +64998,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65022,7 +65022,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65038,7 +65038,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65055,7 +65055,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65086,7 +65086,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65102,7 +65102,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65118,7 +65118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65134,7 +65134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65150,7 +65150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65172,7 +65172,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65188,7 +65188,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65215,7 +65215,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65254,7 +65254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65270,7 +65270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65286,7 +65286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65308,7 +65308,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65348,7 +65348,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65370,7 +65370,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65389,7 +65389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65425,7 +65425,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65441,7 +65441,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65459,7 +65459,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65476,7 +65476,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65493,7 +65493,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65516,7 +65516,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65551,7 +65551,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65571,7 +65571,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65608,7 +65608,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65634,7 +65634,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65651,7 +65651,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65669,7 +65669,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65690,7 +65690,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65713,7 +65713,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -65735,7 +65735,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -65755,7 +65755,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -65780,7 +65780,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -65806,7 +65806,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -65824,7 +65824,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -65841,7 +65841,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65859,7 +65859,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65883,7 +65883,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65940,7 +65940,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65963,7 +65963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66003,7 +66003,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66018,7 +66018,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66034,7 +66034,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66061,7 +66061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66088,7 +66088,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66103,7 +66103,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66119,7 +66119,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66142,7 +66142,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66158,7 +66158,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66174,7 +66174,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66193,7 +66193,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66216,7 +66216,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66236,7 +66236,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66255,7 +66255,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66273,7 +66273,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66290,7 +66290,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66307,7 +66307,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66346,7 +66346,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66362,7 +66362,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66385,7 +66385,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66407,7 +66407,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66447,7 +66447,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66465,7 +66465,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66484,7 +66484,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66519,7 +66519,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66536,7 +66536,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66553,7 +66553,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66570,7 +66570,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66590,7 +66590,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66608,7 +66608,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66645,7 +66645,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -66701,7 +66701,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66717,7 +66717,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66733,7 +66733,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66749,7 +66749,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -66776,7 +66776,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66795,7 +66795,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66811,7 +66811,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66828,7 +66828,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66844,7 +66844,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66860,7 +66860,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66876,7 +66876,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66892,7 +66892,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66912,7 +66912,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66928,7 +66928,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -66950,7 +66950,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66967,7 +66967,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66983,7 +66983,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -66999,7 +66999,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -67015,7 +67015,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -67031,7 +67031,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -67053,7 +67053,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -67092,7 +67092,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -67107,7 +67107,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -67148,7 +67148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67169,7 +67169,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67190,7 +67190,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67206,7 +67206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67223,7 +67223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67243,7 +67243,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67260,7 +67260,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67277,7 +67277,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67294,7 +67294,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67311,7 +67311,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67328,7 +67328,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67344,7 +67344,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67363,7 +67363,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67386,7 +67386,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67410,7 +67410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67426,7 +67426,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67455,7 +67455,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67487,7 +67487,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67549,7 +67549,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67566,7 +67566,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67586,7 +67586,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67609,7 +67609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67626,7 +67626,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67650,7 +67650,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67673,7 +67673,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67696,7 +67696,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67719,7 +67719,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67736,7 +67736,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67754,7 +67754,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67804,7 +67804,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67954,7 +67954,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -67986,7 +67986,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -68035,7 +68035,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68052,7 +68052,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68075,7 +68075,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68111,7 +68111,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68128,7 +68128,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68150,7 +68150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68170,7 +68170,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68200,7 +68200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68226,7 +68226,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68253,7 +68253,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68271,7 +68271,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68289,7 +68289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68311,7 +68311,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68351,7 +68351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68368,7 +68368,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68389,7 +68389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68415,7 +68415,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68447,7 +68447,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68468,7 +68468,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68485,7 +68485,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68517,7 +68517,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68535,7 +68535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68551,7 +68551,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68572,7 +68572,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68590,7 +68590,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68620,7 +68620,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68644,7 +68644,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68665,7 +68665,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68686,7 +68686,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68705,7 +68705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68729,7 +68729,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68746,7 +68746,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68763,7 +68763,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68784,7 +68784,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68803,7 +68803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68829,7 +68829,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68846,7 +68846,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68863,7 +68863,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68887,7 +68887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68909,7 +68909,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68927,7 +68927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68951,7 +68951,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68967,7 +68967,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68988,7 +68988,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69007,7 +69007,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69032,7 +69032,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69107,7 +69107,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69135,7 +69135,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69159,7 +69159,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69177,7 +69177,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69196,7 +69196,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69213,7 +69213,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69229,7 +69229,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69248,7 +69248,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69270,7 +69270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69286,7 +69286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69303,7 +69303,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69320,7 +69320,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69343,7 +69343,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69360,7 +69360,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69376,7 +69376,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69395,7 +69395,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69414,7 +69414,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69432,7 +69432,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69448,7 +69448,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69463,7 +69463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69490,7 +69490,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69508,7 +69508,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69524,7 +69524,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69543,7 +69543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69567,7 +69567,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69584,7 +69584,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -69615,7 +69615,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69636,7 +69636,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69654,7 +69654,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -69685,7 +69685,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -69729,7 +69729,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -69757,7 +69757,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -69782,7 +69782,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69800,7 +69800,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -69829,7 +69829,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69893,7 +69893,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -69913,7 +69913,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -69942,7 +69942,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70013,7 +70013,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70036,7 +70036,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70069,7 +70069,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70090,7 +70090,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70107,7 +70107,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70130,7 +70130,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70146,7 +70146,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70166,7 +70166,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70183,7 +70183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70261,7 +70261,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70280,7 +70280,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70296,7 +70296,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70312,7 +70312,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70328,7 +70328,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70352,7 +70352,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70369,7 +70369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70393,7 +70393,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70410,7 +70410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70444,7 +70444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70466,7 +70466,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70483,7 +70483,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70504,7 +70504,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70521,7 +70521,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70543,7 +70543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70564,7 +70564,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70581,7 +70581,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70604,7 +70604,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70621,7 +70621,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70638,7 +70638,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70656,7 +70656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70672,7 +70672,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70693,7 +70693,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70711,7 +70711,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70728,7 +70728,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70749,7 +70749,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70766,7 +70766,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70784,7 +70784,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70802,7 +70802,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70818,7 +70818,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70841,7 +70841,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70877,7 +70877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70894,7 +70894,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70912,7 +70912,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70929,7 +70929,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70947,7 +70947,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70967,7 +70967,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -70996,7 +70996,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71019,7 +71019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71037,7 +71037,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71058,7 +71058,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71081,7 +71081,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71103,7 +71103,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71129,7 +71129,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71150,7 +71150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71170,7 +71170,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71202,7 +71202,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71220,7 +71220,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71236,7 +71236,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71256,7 +71256,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71273,7 +71273,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71297,7 +71297,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71314,7 +71314,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71330,7 +71330,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71352,7 +71352,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71367,7 +71367,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71389,7 +71389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71422,7 +71422,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71437,7 +71437,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71462,7 +71462,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71493,7 +71493,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71509,7 +71509,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71524,7 +71524,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71544,7 +71544,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71573,7 +71573,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71596,7 +71596,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71624,7 +71624,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71643,7 +71643,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71668,7 +71668,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71684,7 +71684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71713,7 +71713,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71737,7 +71737,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71754,7 +71754,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71771,7 +71771,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71793,7 +71793,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71811,7 +71811,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71828,7 +71828,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71863,7 +71863,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71882,7 +71882,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71899,7 +71899,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71933,7 +71933,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71951,7 +71951,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71966,7 +71966,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71984,7 +71984,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72010,7 +72010,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72041,7 +72041,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72061,7 +72061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72085,7 +72085,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72103,7 +72103,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72120,7 +72120,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72142,7 +72142,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72165,7 +72165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72183,7 +72183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72206,7 +72206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72223,7 +72223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72247,7 +72247,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72264,7 +72264,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72289,7 +72289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72312,7 +72312,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72330,7 +72330,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72351,7 +72351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72376,7 +72376,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72394,7 +72394,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72412,7 +72412,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72433,7 +72433,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72457,7 +72457,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72491,7 +72491,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72511,7 +72511,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72534,7 +72534,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72572,7 +72572,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72589,7 +72589,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72606,7 +72606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72627,7 +72627,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72645,7 +72645,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72662,7 +72662,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72678,7 +72678,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72694,7 +72694,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72709,7 +72709,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72732,7 +72732,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72752,7 +72752,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72779,7 +72779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72798,7 +72798,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72815,7 +72815,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72837,7 +72837,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72862,7 +72862,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72894,7 +72894,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72911,7 +72911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73005,7 +73005,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -73039,7 +73039,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73057,7 +73057,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73074,7 +73074,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73094,7 +73094,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73111,7 +73111,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73127,7 +73127,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73147,7 +73147,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -73180,7 +73180,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -73204,7 +73204,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73219,7 +73219,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73236,7 +73236,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -73258,7 +73258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73276,7 +73276,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73292,7 +73292,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -73317,7 +73317,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73349,7 +73349,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73366,7 +73366,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73384,7 +73384,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73400,7 +73400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73419,7 +73419,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73438,7 +73438,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73454,7 +73454,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73471,7 +73471,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73512,7 +73512,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -73538,7 +73538,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -73564,7 +73564,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -73750,7 +73750,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -73771,7 +73771,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -73796,7 +73796,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -73834,7 +73834,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -73860,7 +73860,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73878,7 +73878,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73897,7 +73897,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -73919,7 +73919,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -73941,7 +73941,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -74032,7 +74032,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74054,7 +74054,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74074,7 +74074,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74093,7 +74093,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74112,7 +74112,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -74145,7 +74145,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -74185,7 +74185,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -74202,7 +74202,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74222,7 +74222,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74239,7 +74239,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74270,7 +74270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74297,7 +74297,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74333,7 +74333,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74356,7 +74356,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74378,7 +74378,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74402,7 +74402,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74421,7 +74421,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74438,7 +74438,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74458,7 +74458,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74475,7 +74475,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74507,7 +74507,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74526,7 +74526,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74552,7 +74552,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74609,7 +74609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74636,7 +74636,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74654,7 +74654,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74689,7 +74689,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -74705,7 +74705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74721,7 +74721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74748,7 +74748,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74769,7 +74769,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74790,7 +74790,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74808,7 +74808,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74837,7 +74837,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74860,7 +74860,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74891,7 +74891,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74907,7 +74907,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74926,7 +74926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -74951,7 +74951,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74970,7 +74970,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -74990,7 +74990,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75009,7 +75009,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -75040,7 +75040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -75064,7 +75064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75091,7 +75091,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -75119,7 +75119,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -75146,7 +75146,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -75170,7 +75170,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75191,7 +75191,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75209,7 +75209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75225,7 +75225,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75245,7 +75245,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75264,7 +75264,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75282,7 +75282,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75299,7 +75299,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75314,7 +75314,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75331,7 +75331,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75348,7 +75348,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75374,7 +75374,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75394,7 +75394,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75422,7 +75422,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75445,7 +75445,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75478,7 +75478,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75498,7 +75498,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75534,7 +75534,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75559,7 +75559,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75620,7 +75620,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75637,7 +75637,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75658,7 +75658,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75684,7 +75684,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75711,7 +75711,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75733,7 +75733,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75755,7 +75755,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75773,7 +75773,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75798,7 +75798,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75814,7 +75814,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75831,7 +75831,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -75854,7 +75854,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -75872,7 +75872,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75897,7 +75897,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75913,7 +75913,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75932,7 +75932,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75952,7 +75952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -75972,7 +75972,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76024,7 +76024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76046,7 +76046,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76062,7 +76062,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76081,7 +76081,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -76102,7 +76102,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -76121,7 +76121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76136,7 +76136,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76161,7 +76161,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76178,7 +76178,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76197,7 +76197,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76216,7 +76216,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76240,7 +76240,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76262,7 +76262,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76283,7 +76283,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76301,7 +76301,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76326,7 +76326,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76339,7 +76339,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76356,7 +76356,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76379,7 +76379,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76409,7 +76409,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76427,7 +76427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76448,7 +76448,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76473,7 +76473,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76489,7 +76489,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76505,7 +76505,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76535,7 +76535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76556,7 +76556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76579,7 +76579,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76597,7 +76597,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76622,7 +76622,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76639,7 +76639,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76656,7 +76656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76674,7 +76674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76698,7 +76698,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76725,7 +76725,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76741,7 +76741,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76758,7 +76758,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76779,7 +76779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76804,7 +76804,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76823,7 +76823,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76847,7 +76847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76865,7 +76865,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76882,7 +76882,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76899,7 +76899,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76924,7 +76924,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76944,7 +76944,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76975,7 +76975,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -76999,7 +76999,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77017,7 +77017,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77034,7 +77034,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77053,7 +77053,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77073,7 +77073,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77091,7 +77091,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77109,7 +77109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77125,7 +77125,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77142,7 +77142,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77165,7 +77165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77207,7 +77207,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77224,7 +77224,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77240,7 +77240,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77274,7 +77274,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77299,7 +77299,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77332,7 +77332,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77358,7 +77358,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77378,7 +77378,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77402,7 +77402,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77421,7 +77421,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77438,7 +77438,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77465,7 +77465,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77494,7 +77494,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77516,7 +77516,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77538,7 +77538,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77554,7 +77554,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77570,7 +77570,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77589,7 +77589,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77606,7 +77606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77623,7 +77623,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77639,7 +77639,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77659,7 +77659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77683,7 +77683,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77698,7 +77698,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77717,7 +77717,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77745,7 +77745,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77761,7 +77761,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77786,7 +77786,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77806,7 +77806,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77827,7 +77827,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77851,7 +77851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77867,7 +77867,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77884,7 +77884,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77903,7 +77903,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77926,7 +77926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -77943,7 +77943,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77975,7 +77975,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -77999,7 +77999,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78019,7 +78019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78051,7 +78051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78073,7 +78073,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78099,7 +78099,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78121,7 +78121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78138,7 +78138,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78165,7 +78165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78181,7 +78181,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78204,7 +78204,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78221,7 +78221,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78238,7 +78238,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78255,7 +78255,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78286,7 +78286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78315,7 +78315,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78340,7 +78340,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78358,7 +78358,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78376,7 +78376,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78400,7 +78400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78431,7 +78431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78448,7 +78448,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78475,7 +78475,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78492,7 +78492,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78509,7 +78509,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78527,7 +78527,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78552,7 +78552,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78583,7 +78583,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78606,7 +78606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78647,7 +78647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78682,7 +78682,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78700,7 +78700,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78718,7 +78718,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78735,7 +78735,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78751,7 +78751,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78768,7 +78768,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78785,7 +78785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78801,7 +78801,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78821,7 +78821,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78840,7 +78840,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78863,7 +78863,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -78895,7 +78895,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78912,7 +78912,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78951,7 +78951,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78968,7 +78968,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -78984,7 +78984,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79001,7 +79001,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -79017,7 +79017,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79033,7 +79033,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79054,7 +79054,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79073,7 +79073,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79091,7 +79091,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79108,7 +79108,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79125,7 +79125,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79192,7 +79192,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79209,7 +79209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79225,7 +79225,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79242,7 +79242,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79264,7 +79264,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79288,7 +79288,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79303,7 +79303,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79325,7 +79325,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79407,7 +79407,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79423,7 +79423,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79450,7 +79450,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79467,7 +79467,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79484,7 +79484,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79501,7 +79501,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79517,7 +79517,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79540,7 +79540,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79564,7 +79564,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79593,7 +79593,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79610,7 +79610,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79628,7 +79628,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79647,7 +79647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79663,7 +79663,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79679,7 +79679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79697,7 +79697,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79713,7 +79713,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79740,7 +79740,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79765,7 +79765,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79782,7 +79782,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79806,7 +79806,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79823,7 +79823,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79838,7 +79838,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79855,7 +79855,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -79878,7 +79878,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79934,7 +79934,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79960,7 +79960,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -79983,7 +79983,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80000,7 +80000,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80019,7 +80019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80035,7 +80035,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80064,7 +80064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80080,7 +80080,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80102,7 +80102,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80120,7 +80120,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80138,7 +80138,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80155,7 +80155,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80172,7 +80172,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80197,7 +80197,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -80214,7 +80214,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80231,7 +80231,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80261,7 +80261,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80278,7 +80278,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80299,7 +80299,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80325,7 +80325,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80351,7 +80351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80377,7 +80377,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80394,7 +80394,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80418,7 +80418,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80434,7 +80434,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80458,7 +80458,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80474,7 +80474,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80490,7 +80490,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80509,7 +80509,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80534,7 +80534,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80556,7 +80556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80573,7 +80573,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80590,7 +80590,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80606,7 +80606,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80638,7 +80638,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80658,7 +80658,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80684,7 +80684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80702,7 +80702,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80724,7 +80724,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80743,7 +80743,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80774,7 +80774,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80808,7 +80808,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80824,7 +80824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80848,7 +80848,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80865,7 +80865,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80883,7 +80883,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80900,7 +80900,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -80917,7 +80917,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80943,7 +80943,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80967,7 +80967,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -80998,7 +80998,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81018,7 +81018,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81034,7 +81034,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81051,7 +81051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81079,7 +81079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81099,7 +81099,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81116,7 +81116,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81141,7 +81141,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81165,7 +81165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81188,7 +81188,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81206,7 +81206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81223,7 +81223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81241,7 +81241,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81258,7 +81258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81274,7 +81274,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81301,7 +81301,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81316,7 +81316,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81336,7 +81336,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81364,7 +81364,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81381,7 +81381,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81404,7 +81404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81421,7 +81421,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81438,7 +81438,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81453,7 +81453,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81480,7 +81480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81500,7 +81500,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81524,7 +81524,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81541,7 +81541,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81558,7 +81558,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81575,7 +81575,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81591,7 +81591,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81608,7 +81608,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81638,7 +81638,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81660,7 +81660,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81683,7 +81683,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81700,7 +81700,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81723,7 +81723,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81743,7 +81743,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81769,7 +81769,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81786,7 +81786,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81803,7 +81803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81827,7 +81827,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81851,7 +81851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81868,7 +81868,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -81888,7 +81888,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81913,7 +81913,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81938,7 +81938,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81965,7 +81965,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -81994,7 +81994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82018,7 +82018,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82035,7 +82035,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82058,7 +82058,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82073,7 +82073,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82099,7 +82099,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82116,7 +82116,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82140,7 +82140,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82157,7 +82157,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82172,7 +82172,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82190,7 +82190,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82209,7 +82209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82232,7 +82232,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82258,7 +82258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82274,7 +82274,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82290,7 +82290,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82306,7 +82306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82323,7 +82323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82344,7 +82344,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82361,7 +82361,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82378,7 +82378,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82394,7 +82394,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82412,7 +82412,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82431,7 +82431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82448,7 +82448,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82481,7 +82481,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82497,7 +82497,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82512,7 +82512,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82532,7 +82532,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82560,7 +82560,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82592,7 +82592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82622,7 +82622,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82638,7 +82638,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82658,7 +82658,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82675,7 +82675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82692,7 +82692,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82734,7 +82734,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82752,7 +82752,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82772,7 +82772,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82788,7 +82788,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82808,7 +82808,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82840,7 +82840,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82864,7 +82864,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82881,7 +82881,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82933,7 +82933,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -82961,7 +82961,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -82978,7 +82978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83001,7 +83001,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83033,7 +83033,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83051,7 +83051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83071,7 +83071,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83086,7 +83086,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83109,7 +83109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83125,7 +83125,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83142,7 +83142,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83158,7 +83158,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83174,7 +83174,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83190,7 +83190,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83206,7 +83206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83230,7 +83230,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83253,7 +83253,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83270,7 +83270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83287,7 +83287,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83303,7 +83303,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83327,7 +83327,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83343,7 +83343,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83363,7 +83363,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83392,7 +83392,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83408,7 +83408,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83431,7 +83431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83449,7 +83449,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83466,7 +83466,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83483,7 +83483,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83508,7 +83508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83533,7 +83533,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83549,7 +83549,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83565,7 +83565,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83585,7 +83585,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83609,7 +83609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83625,7 +83625,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83641,7 +83641,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83657,7 +83657,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83674,7 +83674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83698,7 +83698,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83715,7 +83715,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83739,7 +83739,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -83757,7 +83757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -83777,7 +83777,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } diff --git a/data/tree_python_mapping.json b/data/tree_python_mapping.json index 46d4c4b..6564ed7 100644 --- a/data/tree_python_mapping.json +++ b/data/tree_python_mapping.json @@ -22,7 +22,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -38,7 +38,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55,7 +55,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -76,7 +76,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -94,7 +94,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -112,7 +112,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -128,7 +128,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -148,7 +148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -181,7 +181,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -207,7 +207,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -229,7 +229,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -250,7 +250,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -268,7 +268,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -289,7 +289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -312,7 +312,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -332,7 +332,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -366,7 +366,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -384,7 +384,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -403,7 +403,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -422,7 +422,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -441,7 +441,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -460,7 +460,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -482,7 +482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -504,7 +504,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -529,7 +529,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -553,7 +553,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -568,7 +568,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -585,7 +585,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -604,7 +604,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -635,7 +635,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -651,7 +651,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -674,7 +674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -696,7 +696,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -719,7 +719,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -745,7 +745,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -766,7 +766,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -783,7 +783,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -812,7 +812,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -832,7 +832,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -849,7 +849,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -866,7 +866,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -894,7 +894,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -919,7 +919,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -936,7 +936,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -953,7 +953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -970,7 +970,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -987,7 +987,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1017,7 +1017,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1044,7 +1044,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1059,7 +1059,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1082,7 +1082,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1099,7 +1099,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1118,7 +1118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1134,7 +1134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1151,7 +1151,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1167,7 +1167,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1193,7 +1193,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1215,7 +1215,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1232,7 +1232,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1248,7 +1248,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1271,7 +1271,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1297,7 +1297,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1314,7 +1314,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1331,7 +1331,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1355,7 +1355,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1376,7 +1376,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1397,7 +1397,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1422,7 +1422,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1444,7 +1444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1470,7 +1470,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1502,7 +1502,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1526,7 +1526,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1550,7 +1550,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1565,7 +1565,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1589,7 +1589,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1619,7 +1619,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1645,7 +1645,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1682,7 +1682,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1705,7 +1705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1736,7 +1736,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1760,7 +1760,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1783,7 +1783,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1799,7 +1799,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1816,7 +1816,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1832,7 +1832,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1851,7 +1851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1866,7 +1866,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1881,7 +1881,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1902,7 +1902,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -1928,7 +1928,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1945,7 +1945,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1961,7 +1961,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -1977,7 +1977,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2000,7 +2000,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2018,7 +2018,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2034,7 +2034,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2051,7 +2051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2067,7 +2067,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2090,7 +2090,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2115,7 +2115,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2136,7 +2136,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2154,7 +2154,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2173,7 +2173,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2192,7 +2192,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2210,7 +2210,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2227,7 +2227,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2246,7 +2246,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2263,7 +2263,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2282,7 +2282,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2300,7 +2300,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2319,7 +2319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2339,7 +2339,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2356,7 +2356,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2372,7 +2372,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2389,7 +2389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2405,7 +2405,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2425,7 +2425,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2442,7 +2442,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2459,7 +2459,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2483,7 +2483,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2504,7 +2504,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2531,7 +2531,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2547,7 +2547,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2569,7 +2569,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2594,7 +2594,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2613,7 +2613,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2640,7 +2640,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2658,7 +2658,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2676,7 +2676,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2694,7 +2694,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2721,7 +2721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2741,7 +2741,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2761,7 +2761,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2779,7 +2779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2799,7 +2799,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2818,7 +2818,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2838,7 +2838,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2866,7 +2866,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2885,7 +2885,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -2911,7 +2911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2929,7 +2929,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2948,7 +2948,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2963,7 +2963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -2984,7 +2984,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3014,7 +3014,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3030,7 +3030,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3051,7 +3051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3074,7 +3074,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3091,7 +3091,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3109,7 +3109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3127,7 +3127,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3148,7 +3148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3171,7 +3171,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3194,7 +3194,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3210,7 +3210,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3226,7 +3226,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3243,7 +3243,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3260,7 +3260,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3278,7 +3278,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3301,7 +3301,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3319,7 +3319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3336,7 +3336,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3353,7 +3353,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3369,7 +3369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3393,7 +3393,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3411,7 +3411,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3430,7 +3430,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3448,7 +3448,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3467,7 +3467,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3486,7 +3486,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3504,7 +3504,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3522,7 +3522,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3540,7 +3540,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3557,7 +3557,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3575,7 +3575,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3592,7 +3592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3613,7 +3613,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3631,7 +3631,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3649,7 +3649,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3673,7 +3673,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3689,7 +3689,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3707,7 +3707,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3723,7 +3723,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3741,7 +3741,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3756,7 +3756,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3774,7 +3774,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3798,7 +3798,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3832,7 +3832,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3855,7 +3855,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3875,7 +3875,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3892,7 +3892,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -3919,7 +3919,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3937,7 +3937,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3952,7 +3952,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3968,7 +3968,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -3984,7 +3984,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4001,7 +4001,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4026,7 +4026,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4046,7 +4046,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4070,7 +4070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4087,7 +4087,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4102,7 +4102,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4118,7 +4118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4141,7 +4141,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4157,7 +4157,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4174,7 +4174,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4194,7 +4194,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4211,7 +4211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4229,7 +4229,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4248,7 +4248,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4276,7 +4276,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4300,7 +4300,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4323,7 +4323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4346,7 +4346,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4363,7 +4363,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4380,7 +4380,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4397,7 +4397,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4414,7 +4414,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4437,7 +4437,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4456,7 +4456,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4472,7 +4472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4488,7 +4488,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4512,7 +4512,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4535,7 +4535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4555,7 +4555,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4587,7 +4587,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4610,7 +4610,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4630,7 +4630,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4652,7 +4652,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4678,7 +4678,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4697,7 +4697,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4714,7 +4714,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4731,7 +4731,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4760,7 +4760,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4785,7 +4785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4802,7 +4802,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4824,7 +4824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4845,7 +4845,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4864,7 +4864,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4883,7 +4883,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4901,7 +4901,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -4927,7 +4927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4946,7 +4946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4965,7 +4965,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -4984,7 +4984,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5008,7 +5008,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5032,7 +5032,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5056,7 +5056,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5081,7 +5081,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5098,7 +5098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5116,7 +5116,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5139,7 +5139,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5156,7 +5156,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5173,7 +5173,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5195,7 +5195,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5218,7 +5218,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5256,7 +5256,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5285,7 +5285,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5319,7 +5319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5341,7 +5341,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5367,7 +5367,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5385,7 +5385,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5402,7 +5402,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5427,7 +5427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5444,7 +5444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5465,7 +5465,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5494,7 +5494,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5525,7 +5525,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5550,7 +5550,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5582,7 +5582,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5603,7 +5603,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5619,7 +5619,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5635,7 +5635,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5653,7 +5653,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5684,7 +5684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5700,7 +5700,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5717,7 +5717,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5734,7 +5734,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5752,7 +5752,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5769,7 +5769,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5785,7 +5785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5809,7 +5809,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5825,7 +5825,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5842,7 +5842,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5865,7 +5865,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5882,7 +5882,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -5908,7 +5908,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5926,7 +5926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5943,7 +5943,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5963,7 +5963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -5984,7 +5984,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6001,7 +6001,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6019,7 +6019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6037,7 +6037,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6061,7 +6061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6079,7 +6079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6097,7 +6097,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6125,7 +6125,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6158,7 +6158,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6185,7 +6185,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6203,7 +6203,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6234,7 +6234,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6251,7 +6251,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6268,7 +6268,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6294,7 +6294,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6322,7 +6322,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6340,7 +6340,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6358,7 +6358,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6382,7 +6382,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6399,7 +6399,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6424,7 +6424,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6444,7 +6444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6464,7 +6464,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6496,7 +6496,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6516,7 +6516,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6543,7 +6543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6572,7 +6572,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6599,7 +6599,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6618,7 +6618,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6634,7 +6634,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6657,7 +6657,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6688,7 +6688,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6715,7 +6715,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6741,7 +6741,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6763,7 +6763,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6789,7 +6789,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6811,7 +6811,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6828,7 +6828,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6853,7 +6853,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6871,7 +6871,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -6898,7 +6898,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6914,7 +6914,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6930,7 +6930,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6950,7 +6950,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6970,7 +6970,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -6986,7 +6986,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7002,7 +7002,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7019,7 +7019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7044,7 +7044,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7064,7 +7064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7081,7 +7081,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7098,7 +7098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7120,7 +7120,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7137,7 +7137,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7160,7 +7160,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7177,7 +7177,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7194,7 +7194,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7211,7 +7211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7226,7 +7226,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7248,7 +7248,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7265,7 +7265,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7286,7 +7286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7307,7 +7307,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7324,7 +7324,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7348,7 +7348,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7365,7 +7365,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7381,7 +7381,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7397,7 +7397,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7411,7 +7411,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7427,7 +7427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7444,7 +7444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7463,7 +7463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7490,7 +7490,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7515,7 +7515,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7538,7 +7538,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7561,7 +7561,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7584,7 +7584,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7607,7 +7607,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7623,7 +7623,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7639,7 +7639,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7655,7 +7655,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7674,7 +7674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7696,7 +7696,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7720,7 +7720,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7739,7 +7739,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7755,7 +7755,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7775,7 +7775,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7803,7 +7803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7826,7 +7826,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7843,7 +7843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7860,7 +7860,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7875,7 +7875,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7892,7 +7892,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7909,7 +7909,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -7925,7 +7925,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7951,7 +7951,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -7988,7 +7988,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8006,7 +8006,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8023,7 +8023,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8051,7 +8051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8071,7 +8071,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8091,7 +8091,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8108,7 +8108,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8137,7 +8137,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8155,7 +8155,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8172,7 +8172,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8187,7 +8187,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8206,7 +8206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8222,7 +8222,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8238,7 +8238,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8254,7 +8254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8280,7 +8280,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8309,7 +8309,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8325,7 +8325,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8351,7 +8351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8367,7 +8367,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8390,7 +8390,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8408,7 +8408,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8424,7 +8424,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8449,7 +8449,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8468,7 +8468,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8484,7 +8484,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8507,7 +8507,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8524,7 +8524,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8543,7 +8543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8564,7 +8564,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8582,7 +8582,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8599,7 +8599,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8614,7 +8614,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8630,7 +8630,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8646,7 +8646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8663,7 +8663,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8679,7 +8679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8695,7 +8695,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8713,7 +8713,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8728,7 +8728,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8754,7 +8754,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8771,7 +8771,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8793,7 +8793,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8816,7 +8816,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8831,7 +8831,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8851,7 +8851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8866,7 +8866,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8884,7 +8884,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8906,7 +8906,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -8939,7 +8939,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8956,7 +8956,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8974,7 +8974,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -8991,7 +8991,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9007,7 +9007,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9024,7 +9024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9047,7 +9047,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9072,7 +9072,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9095,7 +9095,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9118,7 +9118,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9135,7 +9135,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9150,7 +9150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9168,7 +9168,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9186,7 +9186,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9206,7 +9206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9223,7 +9223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9246,7 +9246,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9263,7 +9263,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9284,7 +9284,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9300,7 +9300,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9317,7 +9317,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9350,7 +9350,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9366,7 +9366,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9383,7 +9383,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9398,7 +9398,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9415,7 +9415,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9433,7 +9433,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9454,7 +9454,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9473,7 +9473,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9494,7 +9494,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9510,7 +9510,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9527,7 +9527,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9544,7 +9544,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9563,7 +9563,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9580,7 +9580,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9596,7 +9596,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9612,7 +9612,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9630,7 +9630,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9658,7 +9658,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9680,7 +9680,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9704,7 +9704,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9722,7 +9722,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9742,7 +9742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9770,7 +9770,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9785,7 +9785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9810,7 +9810,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9826,7 +9826,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9853,7 +9853,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9871,7 +9871,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9890,7 +9890,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9906,7 +9906,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9923,7 +9923,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9944,7 +9944,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -9973,7 +9973,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -9990,7 +9990,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10013,7 +10013,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10040,7 +10040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10057,7 +10057,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10079,7 +10079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10101,7 +10101,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10124,7 +10124,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10147,7 +10147,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10163,7 +10163,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10183,7 +10183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10206,7 +10206,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10232,7 +10232,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10251,7 +10251,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10267,7 +10267,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10295,7 +10295,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10312,7 +10312,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10333,7 +10333,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10351,7 +10351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10369,7 +10369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10386,7 +10386,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10401,7 +10401,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10419,7 +10419,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10437,7 +10437,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10454,7 +10454,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10478,7 +10478,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10495,7 +10495,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10512,7 +10512,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10534,7 +10534,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10551,7 +10551,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10574,7 +10574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10591,7 +10591,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10609,7 +10609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10625,7 +10625,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10649,7 +10649,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10666,7 +10666,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10683,7 +10683,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10702,7 +10702,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10724,7 +10724,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10742,7 +10742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10760,7 +10760,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10783,7 +10783,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10802,7 +10802,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10825,7 +10825,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10841,7 +10841,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10861,7 +10861,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10877,7 +10877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10893,7 +10893,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10911,7 +10911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10929,7 +10929,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10946,7 +10946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -10969,7 +10969,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -10994,7 +10994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11009,7 +11009,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11034,7 +11034,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11052,7 +11052,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11076,7 +11076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11092,7 +11092,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11109,7 +11109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11126,7 +11126,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11146,7 +11146,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11170,7 +11170,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11187,7 +11187,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11211,7 +11211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11228,7 +11228,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11252,7 +11252,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11268,7 +11268,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11299,7 +11299,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11315,7 +11315,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11334,7 +11334,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11350,7 +11350,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11367,7 +11367,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11384,7 +11384,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11401,7 +11401,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11416,7 +11416,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11441,7 +11441,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11460,7 +11460,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11486,7 +11486,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11505,7 +11505,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11521,7 +11521,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11557,7 +11557,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11576,7 +11576,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -11594,7 +11594,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11623,7 +11623,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11645,7 +11645,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11661,7 +11661,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11687,7 +11687,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11714,7 +11714,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11745,7 +11745,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11764,7 +11764,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11780,7 +11780,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11796,7 +11796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11819,7 +11819,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11836,7 +11836,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11854,7 +11854,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11872,7 +11872,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11891,7 +11891,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11912,7 +11912,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11930,7 +11930,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -11961,7 +11961,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -11978,7 +11978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -12004,7 +12004,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12024,7 +12024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12041,7 +12041,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12058,7 +12058,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12079,7 +12079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12096,7 +12096,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12112,7 +12112,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12129,7 +12129,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12148,7 +12148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -12170,7 +12170,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12187,7 +12187,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12204,7 +12204,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12221,7 +12221,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12238,7 +12238,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -12260,7 +12260,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12279,7 +12279,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12311,7 +12311,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12328,7 +12328,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12347,7 +12347,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12364,7 +12364,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12381,7 +12381,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12405,7 +12405,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12424,7 +12424,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12444,7 +12444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12463,7 +12463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12485,7 +12485,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12502,7 +12502,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12518,7 +12518,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12535,7 +12535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12550,7 +12550,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12569,7 +12569,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12585,7 +12585,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12602,7 +12602,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12622,7 +12622,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -12646,7 +12646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12663,7 +12663,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12680,7 +12680,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -12703,7 +12703,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12719,7 +12719,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12735,7 +12735,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12757,7 +12757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12774,7 +12774,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12796,7 +12796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12814,7 +12814,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12833,7 +12833,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12850,7 +12850,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -12873,7 +12873,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12891,7 +12891,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12916,7 +12916,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12931,7 +12931,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12946,7 +12946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -12966,7 +12966,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -12994,7 +12994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13010,7 +13010,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13029,7 +13029,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13045,7 +13045,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13061,7 +13061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13079,7 +13079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13098,7 +13098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13125,7 +13125,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13142,7 +13142,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13166,7 +13166,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13182,7 +13182,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13202,7 +13202,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13219,7 +13219,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13242,7 +13242,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13265,7 +13265,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13281,7 +13281,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13304,7 +13304,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13322,7 +13322,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13338,7 +13338,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13355,7 +13355,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13372,7 +13372,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13389,7 +13389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13405,7 +13405,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13422,7 +13422,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13444,7 +13444,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13460,7 +13460,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13480,7 +13480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13499,7 +13499,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13524,7 +13524,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13544,7 +13544,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13571,7 +13571,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13591,7 +13591,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13617,7 +13617,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13644,7 +13644,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13663,7 +13663,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13681,7 +13681,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13699,7 +13699,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13717,7 +13717,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13734,7 +13734,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13757,7 +13757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13776,7 +13776,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13792,7 +13792,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13815,7 +13815,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13831,7 +13831,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13853,7 +13853,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -13881,7 +13881,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13902,7 +13902,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13924,7 +13924,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13942,7 +13942,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13961,7 +13961,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -13979,7 +13979,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14007,7 +14007,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14023,7 +14023,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14048,7 +14048,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14076,7 +14076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14092,7 +14092,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14117,7 +14117,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14140,7 +14140,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14159,7 +14159,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14176,7 +14176,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14219,7 +14219,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14245,7 +14245,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14284,7 +14284,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14306,7 +14306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14323,7 +14323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14344,7 +14344,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14368,7 +14368,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14385,7 +14385,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14407,7 +14407,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14430,7 +14430,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14445,7 +14445,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14469,7 +14469,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14488,7 +14488,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14524,7 +14524,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14545,7 +14545,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14564,7 +14564,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -14585,7 +14585,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14609,7 +14609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14630,7 +14630,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14650,7 +14650,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14670,7 +14670,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14689,7 +14689,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14709,7 +14709,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14729,7 +14729,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14751,7 +14751,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14771,7 +14771,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14791,7 +14791,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14814,7 +14814,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14833,7 +14833,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -14859,7 +14859,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14876,7 +14876,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -14897,7 +14897,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -14915,7 +14915,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -14936,7 +14936,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -14953,7 +14953,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -14972,7 +14972,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -14991,7 +14991,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -15018,7 +15018,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15037,7 +15037,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15055,7 +15055,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15074,7 +15074,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -15096,7 +15096,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15118,7 +15118,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15136,7 +15136,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15158,7 +15158,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15177,7 +15177,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15198,7 +15198,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -15224,7 +15224,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15246,7 +15246,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15266,7 +15266,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15286,7 +15286,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15305,7 +15305,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -15329,7 +15329,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15349,7 +15349,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15366,7 +15366,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15385,7 +15385,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15405,7 +15405,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15425,7 +15425,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15447,7 +15447,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15478,7 +15478,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -15494,7 +15494,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -15523,7 +15523,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15544,7 +15544,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15563,7 +15563,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15580,7 +15580,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15599,7 +15599,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15620,7 +15620,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15640,7 +15640,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15661,7 +15661,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15681,7 +15681,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15701,7 +15701,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15720,7 +15720,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15741,7 +15741,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15762,7 +15762,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -15779,7 +15779,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -16039,7 +16039,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -16241,7 +16241,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -16407,7 +16407,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16431,7 +16431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16451,7 +16451,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16470,7 +16470,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16491,7 +16491,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16510,7 +16510,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16529,7 +16529,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16548,7 +16548,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16570,7 +16570,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16592,7 +16592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16614,7 +16614,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16632,7 +16632,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16647,7 +16647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16668,7 +16668,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16700,7 +16700,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -16727,7 +16727,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -16743,7 +16743,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17026,7 +17026,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17044,7 +17044,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17064,7 +17064,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17082,7 +17082,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17100,7 +17100,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17119,7 +17119,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17147,7 +17147,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17166,7 +17166,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17183,7 +17183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17200,7 +17200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17223,7 +17223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17241,7 +17241,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17266,7 +17266,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17286,7 +17286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17304,7 +17304,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17325,7 +17325,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17344,7 +17344,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17372,7 +17372,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17390,7 +17390,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17409,7 +17409,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17427,7 +17427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17451,7 +17451,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17472,7 +17472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17490,7 +17490,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17508,7 +17508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17528,7 +17528,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17554,7 +17554,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17574,7 +17574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17592,7 +17592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17612,7 +17612,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17629,7 +17629,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17650,7 +17650,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17676,7 +17676,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17693,7 +17693,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17716,7 +17716,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17735,7 +17735,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17754,7 +17754,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17775,7 +17775,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17792,7 +17792,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17810,7 +17810,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17832,7 +17832,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17855,7 +17855,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17874,7 +17874,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17897,7 +17897,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17919,7 +17919,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -17941,7 +17941,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17966,7 +17966,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -17991,7 +17991,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18016,7 +18016,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18036,7 +18036,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18056,7 +18056,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18076,7 +18076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18103,7 +18103,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18122,7 +18122,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18139,7 +18139,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18162,7 +18162,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18178,7 +18178,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18203,7 +18203,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18233,7 +18233,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18252,7 +18252,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18281,7 +18281,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18299,7 +18299,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18321,7 +18321,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18340,7 +18340,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18360,7 +18360,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18383,7 +18383,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18404,7 +18404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18434,7 +18434,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18453,7 +18453,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18472,7 +18472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18493,7 +18493,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18518,7 +18518,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18538,7 +18538,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18567,7 +18567,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18586,7 +18586,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18603,7 +18603,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18625,7 +18625,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18645,7 +18645,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18661,7 +18661,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18682,7 +18682,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18699,7 +18699,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18721,7 +18721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18741,7 +18741,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18760,7 +18760,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18784,7 +18784,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18800,7 +18800,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18833,7 +18833,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18858,7 +18858,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18882,7 +18882,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18905,7 +18905,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -18927,7 +18927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18943,7 +18943,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18962,7 +18962,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18978,7 +18978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -18995,7 +18995,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19011,7 +19011,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19034,7 +19034,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19061,7 +19061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19077,7 +19077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19094,7 +19094,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19117,7 +19117,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19134,7 +19134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19150,7 +19150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19169,7 +19169,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19185,7 +19185,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19209,7 +19209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19226,7 +19226,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19243,7 +19243,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19370,7 +19370,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -19431,7 +19431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19450,7 +19450,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19466,7 +19466,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19482,7 +19482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19498,7 +19498,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19514,7 +19514,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19530,7 +19530,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19546,7 +19546,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19562,7 +19562,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19578,7 +19578,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19594,7 +19594,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19610,7 +19610,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19630,7 +19630,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19645,7 +19645,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19788,7 +19788,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19809,7 +19809,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19850,7 +19850,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19866,7 +19866,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19887,7 +19887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19911,7 +19911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19926,7 +19926,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19945,7 +19945,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -19977,7 +19977,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -19999,7 +19999,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20037,7 +20037,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20054,7 +20054,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20087,7 +20087,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20176,7 +20176,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20193,7 +20193,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20210,7 +20210,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20227,7 +20227,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20242,7 +20242,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20262,7 +20262,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20278,7 +20278,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20298,7 +20298,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20319,7 +20319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20348,7 +20348,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20373,7 +20373,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20396,7 +20396,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20419,7 +20419,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20436,7 +20436,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20458,7 +20458,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20486,7 +20486,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20514,7 +20514,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20535,7 +20535,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20558,7 +20558,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20578,7 +20578,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20596,7 +20596,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20612,7 +20612,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20635,7 +20635,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20652,7 +20652,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20676,7 +20676,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20690,7 +20690,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20706,7 +20706,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20721,7 +20721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20743,7 +20743,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20759,7 +20759,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20792,7 +20792,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20816,7 +20816,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20833,7 +20833,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20848,7 +20848,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20870,7 +20870,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20916,7 +20916,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -20940,7 +20940,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20957,7 +20957,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20973,7 +20973,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -20999,7 +20999,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21024,7 +21024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21040,7 +21040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21090,7 +21090,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21117,7 +21117,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21134,7 +21134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21151,7 +21151,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21168,7 +21168,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21191,7 +21191,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21207,7 +21207,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21225,7 +21225,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21324,7 +21324,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21347,7 +21347,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21365,7 +21365,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21385,7 +21385,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21400,7 +21400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21419,7 +21419,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21435,7 +21435,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21457,7 +21457,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21480,7 +21480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21497,7 +21497,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21513,7 +21513,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21528,7 +21528,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21558,7 +21558,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21583,7 +21583,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21608,7 +21608,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21626,7 +21626,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21650,7 +21650,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21666,7 +21666,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21686,7 +21686,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21702,7 +21702,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21726,7 +21726,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21744,7 +21744,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21760,7 +21760,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21779,7 +21779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21796,7 +21796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21813,7 +21813,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21836,7 +21836,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21884,7 +21884,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21906,7 +21906,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21928,7 +21928,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21948,7 +21948,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -21965,7 +21965,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -21996,7 +21996,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22016,7 +22016,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22033,7 +22033,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22049,7 +22049,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22065,7 +22065,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22085,7 +22085,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22110,7 +22110,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22133,7 +22133,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22150,7 +22150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22176,7 +22176,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22196,7 +22196,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22217,7 +22217,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22237,7 +22237,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22262,7 +22262,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22284,7 +22284,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22303,7 +22303,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22327,7 +22327,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22352,7 +22352,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22380,7 +22380,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22397,7 +22397,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22415,7 +22415,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22442,7 +22442,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22466,7 +22466,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22482,7 +22482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22499,7 +22499,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22541,7 +22541,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22559,7 +22559,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22583,7 +22583,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22604,7 +22604,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22624,7 +22624,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22640,7 +22640,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22656,7 +22656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22676,7 +22676,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22694,7 +22694,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22712,7 +22712,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22728,7 +22728,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22776,7 +22776,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22792,7 +22792,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22826,7 +22826,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22851,7 +22851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22868,7 +22868,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22894,7 +22894,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22927,7 +22927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -22945,7 +22945,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -22974,7 +22974,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23004,7 +23004,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23021,7 +23021,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23037,7 +23037,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23060,7 +23060,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23076,7 +23076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23099,7 +23099,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23116,7 +23116,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23134,7 +23134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23153,7 +23153,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23175,7 +23175,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23195,7 +23195,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23220,7 +23220,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23250,7 +23250,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23269,7 +23269,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23289,7 +23289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23321,7 +23321,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23356,7 +23356,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23397,7 +23397,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23436,7 +23436,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23513,7 +23513,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23534,7 +23534,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -23552,7 +23552,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23572,7 +23572,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23589,7 +23589,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23605,7 +23605,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -23629,7 +23629,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23863,7 +23863,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -23948,7 +23948,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23972,7 +23972,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -23989,7 +23989,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24005,7 +24005,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24020,7 +24020,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24107,7 +24107,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24130,7 +24130,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24149,7 +24149,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24167,7 +24167,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24194,7 +24194,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24214,7 +24214,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24237,7 +24237,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24257,7 +24257,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24281,7 +24281,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24298,7 +24298,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24317,7 +24317,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24334,7 +24334,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24351,7 +24351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24374,7 +24374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24394,7 +24394,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24412,7 +24412,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24430,7 +24430,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24458,7 +24458,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24475,7 +24475,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24499,7 +24499,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24515,7 +24515,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24536,7 +24536,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24555,7 +24555,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24574,7 +24574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24592,7 +24592,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24608,7 +24608,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24625,7 +24625,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -24658,7 +24658,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24678,7 +24678,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24697,7 +24697,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -24724,7 +24724,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24740,7 +24740,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24760,7 +24760,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24779,7 +24779,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24798,7 +24798,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24815,7 +24815,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -24831,7 +24831,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24856,7 +24856,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24874,7 +24874,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24892,7 +24892,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24911,7 +24911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24929,7 +24929,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24948,7 +24948,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24974,7 +24974,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -24991,7 +24991,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25008,7 +25008,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25026,7 +25026,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25049,7 +25049,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25065,7 +25065,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25086,7 +25086,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25106,7 +25106,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25125,7 +25125,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25160,7 +25160,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25178,7 +25178,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -25200,7 +25200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25218,7 +25218,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25259,7 +25259,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -25290,7 +25290,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25311,7 +25311,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25331,7 +25331,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25353,7 +25353,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25372,7 +25372,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25391,7 +25391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25413,7 +25413,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25435,7 +25435,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25456,7 +25456,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25476,7 +25476,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25495,7 +25495,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25517,7 +25517,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -25542,7 +25542,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25561,7 +25561,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25580,7 +25580,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25599,7 +25599,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25618,7 +25618,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25637,7 +25637,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25656,7 +25656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25674,7 +25674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25693,7 +25693,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25708,7 +25708,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25729,7 +25729,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25747,7 +25747,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25765,7 +25765,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25786,7 +25786,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25804,7 +25804,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25824,7 +25824,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25842,7 +25842,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25861,7 +25861,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25884,7 +25884,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25904,7 +25904,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25920,7 +25920,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -25943,7 +25943,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25961,7 +25961,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25978,7 +25978,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -25996,7 +25996,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26012,7 +26012,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26031,7 +26031,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26049,7 +26049,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26066,7 +26066,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26084,7 +26084,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26101,7 +26101,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26120,7 +26120,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26138,7 +26138,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26156,7 +26156,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26175,7 +26175,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -26190,7 +26190,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -26221,7 +26221,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26240,7 +26240,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26258,7 +26258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26278,7 +26278,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26296,7 +26296,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26321,7 +26321,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26340,7 +26340,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26357,7 +26357,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26374,7 +26374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26393,7 +26393,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26412,7 +26412,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26430,7 +26430,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26451,7 +26451,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26469,7 +26469,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26488,7 +26488,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26516,7 +26516,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26542,7 +26542,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26577,7 +26577,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26598,7 +26598,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26619,7 +26619,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26637,7 +26637,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26665,7 +26665,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26687,7 +26687,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26705,7 +26705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26723,7 +26723,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26742,7 +26742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26761,7 +26761,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26782,7 +26782,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26802,7 +26802,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26821,7 +26821,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26840,7 +26840,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26860,7 +26860,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26881,7 +26881,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26900,7 +26900,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26919,7 +26919,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26936,7 +26936,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -26966,7 +26966,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -26990,7 +26990,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27020,7 +27020,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27048,7 +27048,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27068,7 +27068,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27084,7 +27084,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27100,7 +27100,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27123,7 +27123,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27139,7 +27139,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27160,7 +27160,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27177,7 +27177,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27200,7 +27200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27217,7 +27217,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27236,7 +27236,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27258,7 +27258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27286,7 +27286,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27309,7 +27309,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27331,7 +27331,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27351,7 +27351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -27382,7 +27382,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27399,7 +27399,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27412,7 +27412,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -27452,7 +27452,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27474,7 +27474,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27497,7 +27497,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27519,7 +27519,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27535,7 +27535,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27555,7 +27555,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27573,7 +27573,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27620,7 +27620,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27637,7 +27637,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27659,7 +27659,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27679,7 +27679,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27711,7 +27711,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27735,7 +27735,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27753,7 +27753,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27774,7 +27774,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27790,7 +27790,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27817,7 +27817,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27834,7 +27834,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27851,7 +27851,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27867,7 +27867,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27887,7 +27887,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27905,7 +27905,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27925,7 +27925,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27944,7 +27944,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27960,7 +27960,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -27976,7 +27976,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -27998,7 +27998,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -28020,7 +28020,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28039,7 +28039,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28058,7 +28058,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28073,7 +28073,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28092,7 +28092,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -28123,7 +28123,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28143,7 +28143,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -28171,7 +28171,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28187,7 +28187,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28207,7 +28207,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28225,7 +28225,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28246,7 +28246,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -28280,7 +28280,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28296,7 +28296,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28314,7 +28314,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28331,7 +28331,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28350,7 +28350,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28368,7 +28368,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28389,7 +28389,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28410,7 +28410,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28428,7 +28428,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28448,7 +28448,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28471,7 +28471,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28487,7 +28487,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28502,7 +28502,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28524,7 +28524,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28543,7 +28543,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28561,7 +28561,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28580,7 +28580,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28597,7 +28597,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28617,7 +28617,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -28647,7 +28647,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -28677,7 +28677,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28699,7 +28699,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -28726,7 +28726,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28746,7 +28746,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28764,7 +28764,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28782,7 +28782,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28803,7 +28803,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28821,7 +28821,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28839,7 +28839,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28860,7 +28860,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28878,7 +28878,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28895,7 +28895,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28917,7 +28917,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28936,7 +28936,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28952,7 +28952,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28975,7 +28975,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -28995,7 +28995,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29012,7 +29012,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29033,7 +29033,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29049,7 +29049,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29065,7 +29065,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29084,7 +29084,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29100,7 +29100,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -29121,7 +29121,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29238,7 +29238,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29269,7 +29269,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29288,7 +29288,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29306,7 +29306,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29372,7 +29372,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29396,7 +29396,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29414,7 +29414,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29432,7 +29432,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29473,7 +29473,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29541,7 +29541,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29572,7 +29572,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29588,7 +29588,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29608,7 +29608,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29624,7 +29624,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29646,7 +29646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29747,7 +29747,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29768,7 +29768,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29796,7 +29796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -29845,7 +29845,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29866,7 +29866,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29884,7 +29884,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29903,7 +29903,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29920,7 +29920,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -29945,7 +29945,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -29962,7 +29962,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -29979,7 +29979,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30000,7 +30000,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30017,7 +30017,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30047,7 +30047,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30065,7 +30065,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30082,7 +30082,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30103,7 +30103,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30119,7 +30119,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30134,7 +30134,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30154,7 +30154,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30172,7 +30172,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30190,7 +30190,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30269,7 +30269,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30287,7 +30287,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30305,7 +30305,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30320,7 +30320,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30375,7 +30375,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30393,7 +30393,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30411,7 +30411,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30433,7 +30433,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30452,7 +30452,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -30482,7 +30482,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30501,7 +30501,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30521,7 +30521,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30535,7 +30535,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30553,7 +30553,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -30570,7 +30570,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30586,7 +30586,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30603,7 +30603,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30740,7 +30740,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30757,7 +30757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -30772,7 +30772,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31042,7 +31042,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -31065,7 +31065,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31084,7 +31084,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31102,7 +31102,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31122,7 +31122,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -31145,7 +31145,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31161,7 +31161,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -31675,7 +31675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31694,7 +31694,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31712,7 +31712,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31729,7 +31729,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31746,7 +31746,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31765,7 +31765,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -31789,7 +31789,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31808,7 +31808,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31829,7 +31829,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31847,7 +31847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31866,7 +31866,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31881,7 +31881,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31901,7 +31901,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31921,7 +31921,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31938,7 +31938,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -31959,7 +31959,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -31975,7 +31975,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -31998,7 +31998,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -32024,7 +32024,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -32046,7 +32046,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32063,7 +32063,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32079,7 +32079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -32108,7 +32108,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32124,7 +32124,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32142,7 +32142,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32182,7 +32182,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32217,7 +32217,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32252,7 +32252,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32290,7 +32290,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32308,7 +32308,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32323,7 +32323,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32342,7 +32342,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -32358,7 +32358,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -32382,7 +32382,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32407,7 +32407,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32424,7 +32424,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32442,7 +32442,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32461,7 +32461,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32481,7 +32481,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32499,7 +32499,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32521,7 +32521,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32539,7 +32539,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32557,7 +32557,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32584,7 +32584,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32602,7 +32602,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32621,7 +32621,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32644,7 +32644,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32661,7 +32661,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -32684,7 +32684,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32701,7 +32701,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32719,7 +32719,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32801,7 +32801,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -32954,7 +32954,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33005,7 +33005,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33022,7 +33022,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33159,7 +33159,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -33191,7 +33191,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33207,7 +33207,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33228,7 +33228,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33247,7 +33247,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33266,7 +33266,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33282,7 +33282,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33298,7 +33298,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33327,7 +33327,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33344,7 +33344,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33362,7 +33362,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33379,7 +33379,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33397,7 +33397,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -33422,7 +33422,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33440,7 +33440,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33461,7 +33461,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33478,7 +33478,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33494,7 +33494,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33512,7 +33512,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33529,7 +33529,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33563,7 +33563,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -33599,7 +33599,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -33622,7 +33622,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33639,7 +33639,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33655,7 +33655,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33678,7 +33678,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33698,7 +33698,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33716,7 +33716,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -33732,7 +33732,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33749,7 +33749,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33770,7 +33770,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33803,7 +33803,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33819,7 +33819,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33836,7 +33836,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -33859,7 +33859,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34001,7 +34001,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -34024,7 +34024,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -34063,7 +34063,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35425,7 +35425,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35474,7 +35474,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35516,7 +35516,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35550,7 +35550,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -35649,7 +35649,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35793,7 +35793,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -35818,7 +35818,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35836,7 +35836,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -35881,7 +35881,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -35901,7 +35901,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36199,7 +36199,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36294,7 +36294,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36317,7 +36317,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36894,7 +36894,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36911,7 +36911,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36928,7 +36928,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -36953,7 +36953,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36973,7 +36973,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -36990,7 +36990,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37008,7 +37008,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37026,7 +37026,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37043,7 +37043,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37210,7 +37210,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37234,7 +37234,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37253,7 +37253,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37270,7 +37270,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37295,7 +37295,7 @@ [] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37311,7 +37311,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37327,7 +37327,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37346,7 +37346,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37378,7 +37378,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37396,7 +37396,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37412,7 +37412,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37428,7 +37428,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37448,7 +37448,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37480,7 +37480,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37507,7 +37507,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37529,7 +37529,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37553,7 +37553,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37577,7 +37577,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37594,7 +37594,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37612,7 +37612,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37655,7 +37655,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37679,7 +37679,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -37702,7 +37702,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37720,7 +37720,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37736,7 +37736,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -37752,7 +37752,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38130,7 +38130,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38517,7 +38517,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38588,7 +38588,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38606,7 +38606,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38623,7 +38623,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38641,7 +38641,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38657,7 +38657,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38678,7 +38678,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38701,7 +38701,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38725,7 +38725,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38743,7 +38743,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38767,7 +38767,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38784,7 +38784,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38829,7 +38829,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38846,7 +38846,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38863,7 +38863,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38886,7 +38886,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38903,7 +38903,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38919,7 +38919,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38934,7 +38934,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -38963,7 +38963,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38980,7 +38980,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -38997,7 +38997,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39015,7 +39015,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39035,7 +39035,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39054,7 +39054,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39071,7 +39071,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39088,7 +39088,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39108,7 +39108,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39123,7 +39123,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39143,7 +39143,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39160,7 +39160,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39177,7 +39177,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39195,7 +39195,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39212,7 +39212,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -39244,7 +39244,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39261,7 +39261,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -39284,7 +39284,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39302,7 +39302,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39317,7 +39317,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -39339,7 +39339,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -39363,7 +39363,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39380,7 +39380,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39400,7 +39400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39417,7 +39417,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39436,7 +39436,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39458,7 +39458,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39475,7 +39475,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39491,7 +39491,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39508,7 +39508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39525,7 +39525,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39542,7 +39542,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39559,7 +39559,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39575,7 +39575,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39598,7 +39598,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39615,7 +39615,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39632,7 +39632,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39657,7 +39657,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39675,7 +39675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39702,7 +39702,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39730,7 +39730,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39747,7 +39747,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39764,7 +39764,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39781,7 +39781,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39799,7 +39799,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39825,7 +39825,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39841,7 +39841,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39877,7 +39877,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39896,7 +39896,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -39919,7 +39919,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39935,7 +39935,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39960,7 +39960,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -39978,7 +39978,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40001,7 +40001,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40021,7 +40021,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40053,7 +40053,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40070,7 +40070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40087,7 +40087,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40104,7 +40104,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40121,7 +40121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40138,7 +40138,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40160,7 +40160,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40182,7 +40182,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40210,7 +40210,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40233,7 +40233,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40249,7 +40249,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40280,7 +40280,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40301,7 +40301,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40329,7 +40329,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40351,7 +40351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40369,7 +40369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40387,7 +40387,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40404,7 +40404,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40422,7 +40422,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40440,7 +40440,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40455,7 +40455,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40486,7 +40486,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40503,7 +40503,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40530,7 +40530,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40554,7 +40554,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40578,7 +40578,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40597,7 +40597,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40615,7 +40615,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40636,7 +40636,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40657,7 +40657,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40674,7 +40674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40691,7 +40691,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40716,7 +40716,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40733,7 +40733,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40751,7 +40751,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40768,7 +40768,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40793,7 +40793,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40814,7 +40814,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40835,7 +40835,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40853,7 +40853,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40870,7 +40870,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40887,7 +40887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40906,7 +40906,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40930,7 +40930,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40947,7 +40947,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -40966,7 +40966,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -40987,7 +40987,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41012,7 +41012,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41029,7 +41029,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41053,7 +41053,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41070,7 +41070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41094,7 +41094,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41112,7 +41112,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41135,7 +41135,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41154,7 +41154,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41171,7 +41171,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41189,7 +41189,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41209,7 +41209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41235,7 +41235,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41251,7 +41251,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41270,7 +41270,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41296,7 +41296,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41314,7 +41314,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41332,7 +41332,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41351,7 +41351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41376,7 +41376,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41401,7 +41401,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41419,7 +41419,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41451,7 +41451,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41471,7 +41471,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41495,7 +41495,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41519,7 +41519,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41537,7 +41537,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41560,7 +41560,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41578,7 +41578,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41596,7 +41596,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41621,7 +41621,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41639,7 +41639,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41659,7 +41659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41676,7 +41676,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41694,7 +41694,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41721,7 +41721,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41738,7 +41738,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41755,7 +41755,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41772,7 +41772,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41806,7 +41806,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41838,7 +41838,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41864,7 +41864,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41893,7 +41893,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41912,7 +41912,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41931,7 +41931,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -41961,7 +41961,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -41979,7 +41979,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42015,7 +42015,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42040,7 +42040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42066,7 +42066,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42086,7 +42086,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42115,7 +42115,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42132,7 +42132,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42153,7 +42153,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42183,7 +42183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42200,7 +42200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42224,7 +42224,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42242,7 +42242,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42261,7 +42261,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42285,7 +42285,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42314,7 +42314,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42340,7 +42340,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42356,7 +42356,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42381,7 +42381,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42415,7 +42415,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42431,7 +42431,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42460,7 +42460,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42478,7 +42478,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42496,7 +42496,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42521,7 +42521,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42537,7 +42537,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42555,7 +42555,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42573,7 +42573,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42602,7 +42602,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42620,7 +42620,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42636,7 +42636,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42656,7 +42656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42686,7 +42686,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42705,7 +42705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42727,7 +42727,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42744,7 +42744,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42768,7 +42768,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42785,7 +42785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42802,7 +42802,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42817,7 +42817,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42833,7 +42833,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42852,7 +42852,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42868,7 +42868,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42891,7 +42891,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42915,7 +42915,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42930,7 +42930,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -42955,7 +42955,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -42999,7 +42999,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43026,7 +43026,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43054,7 +43054,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43074,7 +43074,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43092,7 +43092,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43111,7 +43111,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43129,7 +43129,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43150,7 +43150,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43168,7 +43168,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43192,7 +43192,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43208,7 +43208,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43283,7 +43283,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43301,7 +43301,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43319,7 +43319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43338,7 +43338,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43356,7 +43356,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43375,7 +43375,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43393,7 +43393,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43411,7 +43411,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43429,7 +43429,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43446,7 +43446,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43465,7 +43465,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43480,7 +43480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43514,7 +43514,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -43537,7 +43537,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -43563,7 +43563,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43580,7 +43580,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43596,7 +43596,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43615,7 +43615,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43633,7 +43633,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -43654,7 +43654,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43671,7 +43671,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43688,7 +43688,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43707,7 +43707,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43724,7 +43724,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43742,7 +43742,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43759,7 +43759,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43775,7 +43775,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -43795,7 +43795,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43819,7 +43819,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43837,7 +43837,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43857,7 +43857,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43882,7 +43882,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -43911,7 +43911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43930,7 +43930,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43946,7 +43946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43962,7 +43962,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -43982,7 +43982,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44000,7 +44000,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44019,7 +44019,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44040,7 +44040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44059,7 +44059,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44075,7 +44075,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44091,7 +44091,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44108,7 +44108,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44131,7 +44131,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44152,7 +44152,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44170,7 +44170,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44191,7 +44191,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44209,7 +44209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44228,7 +44228,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44245,7 +44245,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44262,7 +44262,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44285,7 +44285,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44302,7 +44302,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44319,7 +44319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44335,7 +44335,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44355,7 +44355,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44384,7 +44384,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44402,7 +44402,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44418,7 +44418,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44439,7 +44439,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44463,7 +44463,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44479,7 +44479,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44500,7 +44500,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44518,7 +44518,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44534,7 +44534,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44556,7 +44556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44575,7 +44575,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44656,7 +44656,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44674,7 +44674,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44710,7 +44710,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -44731,7 +44731,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44753,7 +44753,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44790,7 +44790,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44808,7 +44808,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44826,7 +44826,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44843,7 +44843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44858,7 +44858,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -44875,7 +44875,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45300,7 +45300,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45318,7 +45318,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -45349,7 +45349,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45457,7 +45457,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45480,7 +45480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45497,7 +45497,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45514,7 +45514,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -45538,7 +45538,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45556,7 +45556,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45574,7 +45574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45591,7 +45591,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -45636,7 +45636,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45652,7 +45652,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -45675,7 +45675,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45690,7 +45690,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45710,7 +45710,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45725,7 +45725,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45742,7 +45742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45758,7 +45758,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -45819,7 +45819,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -45848,7 +45848,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45867,7 +45867,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45883,7 +45883,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45899,7 +45899,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45915,7 +45915,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45931,7 +45931,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45950,7 +45950,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -45966,7 +45966,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -45988,7 +45988,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46004,7 +46004,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46022,7 +46022,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46039,7 +46039,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46069,7 +46069,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46100,7 +46100,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46123,7 +46123,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46140,7 +46140,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46159,7 +46159,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46175,7 +46175,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46191,7 +46191,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46207,7 +46207,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46223,7 +46223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46240,7 +46240,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46256,7 +46256,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46280,7 +46280,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46296,7 +46296,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46319,7 +46319,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46335,7 +46335,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46351,7 +46351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46374,7 +46374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46391,7 +46391,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46415,7 +46415,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46439,7 +46439,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46462,7 +46462,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46486,7 +46486,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46510,7 +46510,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46536,7 +46536,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46560,7 +46560,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46593,7 +46593,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46609,7 +46609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46632,7 +46632,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46659,7 +46659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46679,7 +46679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46712,7 +46712,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46740,7 +46740,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46762,7 +46762,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46785,7 +46785,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46805,7 +46805,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46828,7 +46828,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46848,7 +46848,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46869,7 +46869,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46891,7 +46891,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46911,7 +46911,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -46931,7 +46931,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46965,7 +46965,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -46998,7 +46998,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -47023,7 +47023,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47039,7 +47039,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47061,7 +47061,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47079,7 +47079,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47095,7 +47095,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47112,7 +47112,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -47133,7 +47133,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47146,7 +47146,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -47928,7 +47928,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -47945,7 +47945,7 @@ [] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -47967,7 +47967,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -47988,7 +47988,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48008,7 +48008,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48028,7 +48028,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -48050,7 +48050,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48070,7 +48070,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48087,7 +48087,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48104,7 +48104,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48121,7 +48121,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48141,7 +48141,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48160,7 +48160,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -48181,7 +48181,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48200,7 +48200,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48216,7 +48216,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48233,7 +48233,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48251,7 +48251,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48270,7 +48270,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48287,7 +48287,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48304,7 +48304,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -48331,7 +48331,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48346,7 +48346,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -48364,7 +48364,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -49677,7 +49677,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49695,7 +49695,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49714,7 +49714,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49733,7 +49733,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -49757,7 +49757,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49776,7 +49776,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49792,7 +49792,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -49815,7 +49815,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49831,7 +49831,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -49853,7 +49853,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49869,7 +49869,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49887,7 +49887,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49907,7 +49907,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49928,7 +49928,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49947,7 +49947,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -49972,7 +49972,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -49990,7 +49990,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50012,7 +50012,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50036,7 +50036,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50060,7 +50060,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50077,7 +50077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50100,7 +50100,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50124,7 +50124,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50142,7 +50142,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50173,7 +50173,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50190,7 +50190,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50211,7 +50211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50228,7 +50228,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50254,7 +50254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50272,7 +50272,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50289,7 +50289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50307,7 +50307,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50340,7 +50340,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50370,7 +50370,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50386,7 +50386,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50408,7 +50408,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50429,7 +50429,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50461,7 +50461,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50478,7 +50478,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50538,7 +50538,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50558,7 +50558,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50626,7 +50626,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50642,7 +50642,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50666,7 +50666,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50684,7 +50684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50702,7 +50702,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50793,7 +50793,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50820,7 +50820,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50843,7 +50843,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50858,7 +50858,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50880,7 +50880,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50896,7 +50896,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50912,7 +50912,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -50937,7 +50937,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50954,7 +50954,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50969,7 +50969,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -50985,7 +50985,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51001,7 +51001,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51017,7 +51017,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51035,7 +51035,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51315,7 +51315,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -51337,7 +51337,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51364,7 +51364,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51383,7 +51383,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51405,7 +51405,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51423,7 +51423,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51455,7 +51455,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51472,7 +51472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51500,7 +51500,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51519,7 +51519,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -51535,7 +51535,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51558,7 +51558,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51576,7 +51576,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51601,7 +51601,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51620,7 +51620,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51636,7 +51636,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51652,7 +51652,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51668,7 +51668,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51684,7 +51684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51699,7 +51699,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51722,7 +51722,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51743,7 +51743,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51763,7 +51763,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -51781,7 +51781,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51805,7 +51805,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -51822,7 +51822,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51851,7 +51851,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51873,7 +51873,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51889,7 +51889,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51908,7 +51908,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51929,7 +51929,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51946,7 +51946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -51973,7 +51973,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -51992,7 +51992,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52014,7 +52014,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52032,7 +52032,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52051,7 +52051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52076,7 +52076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52098,7 +52098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52115,7 +52115,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52132,7 +52132,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52148,7 +52148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52164,7 +52164,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52185,7 +52185,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52209,7 +52209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52225,7 +52225,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52243,7 +52243,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52275,7 +52275,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52298,7 +52298,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52315,7 +52315,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52348,7 +52348,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52369,7 +52369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52385,7 +52385,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52402,7 +52402,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52417,7 +52417,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52440,7 +52440,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52458,7 +52458,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52480,7 +52480,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -52503,7 +52503,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52528,7 +52528,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52552,7 +52552,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52587,7 +52587,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52604,7 +52604,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52621,7 +52621,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52641,7 +52641,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52678,7 +52678,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52704,7 +52704,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52725,7 +52725,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52751,7 +52751,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52769,7 +52769,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52785,7 +52785,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52816,7 +52816,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52833,7 +52833,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52854,7 +52854,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52877,7 +52877,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52895,7 +52895,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52926,7 +52926,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -52948,7 +52948,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -52971,7 +52971,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53003,7 +53003,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53026,7 +53026,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53061,7 +53061,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53080,7 +53080,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53102,7 +53102,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53119,7 +53119,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53139,7 +53139,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53159,7 +53159,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53174,7 +53174,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53195,7 +53195,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53211,7 +53211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -53235,7 +53235,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53276,7 +53276,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53293,7 +53293,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53318,7 +53318,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53343,7 +53343,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53363,7 +53363,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53394,7 +53394,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53410,7 +53410,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53429,7 +53429,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53453,7 +53453,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53475,7 +53475,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53546,7 +53546,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53567,7 +53567,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53592,7 +53592,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53623,7 +53623,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -53647,7 +53647,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53667,7 +53667,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53688,7 +53688,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53707,7 +53707,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53726,7 +53726,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53742,7 +53742,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53763,7 +53763,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53798,7 +53798,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -53815,7 +53815,7 @@ [] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54118,7 +54118,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54143,7 +54143,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54164,7 +54164,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54186,7 +54186,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54206,7 +54206,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54224,7 +54224,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54251,7 +54251,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54284,7 +54284,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54302,7 +54302,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54320,7 +54320,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54343,7 +54343,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54361,7 +54361,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54378,7 +54378,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54402,7 +54402,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54418,7 +54418,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54485,7 +54485,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54506,7 +54506,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54526,7 +54526,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54590,7 +54590,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54616,7 +54616,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54640,7 +54640,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54663,7 +54663,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54684,7 +54684,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54707,7 +54707,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54722,7 +54722,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54849,7 +54849,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54925,7 +54925,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -54946,7 +54946,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -54963,7 +54963,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -54991,7 +54991,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55007,7 +55007,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55023,7 +55023,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -55048,7 +55048,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55066,7 +55066,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55099,7 +55099,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55116,7 +55116,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55139,7 +55139,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55163,7 +55163,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55189,7 +55189,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55205,7 +55205,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55225,7 +55225,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55248,7 +55248,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55264,7 +55264,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55289,7 +55289,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55307,7 +55307,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55328,7 +55328,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55352,7 +55352,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55368,7 +55368,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55386,7 +55386,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55402,7 +55402,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55420,7 +55420,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55445,7 +55445,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55469,7 +55469,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55488,7 +55488,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55509,7 +55509,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55527,7 +55527,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55548,7 +55548,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55565,7 +55565,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55583,7 +55583,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55607,7 +55607,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55624,7 +55624,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55642,7 +55642,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55660,7 +55660,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -55676,7 +55676,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -55698,7 +55698,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63909,7 +63909,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63925,7 +63925,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63942,7 +63942,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63960,7 +63960,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -63979,7 +63979,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64000,7 +64000,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -64015,7 +64015,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -64038,7 +64038,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64061,7 +64061,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64078,7 +64078,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64101,7 +64101,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64125,7 +64125,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64142,7 +64142,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64166,7 +64166,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64184,7 +64184,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64199,7 +64199,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64215,7 +64215,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64233,7 +64233,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64251,7 +64251,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64268,7 +64268,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64289,7 +64289,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64307,7 +64307,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64325,7 +64325,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64348,7 +64348,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64371,7 +64371,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64388,7 +64388,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -64412,7 +64412,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64428,7 +64428,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64448,7 +64448,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64465,7 +64465,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64490,7 +64490,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64507,7 +64507,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64525,7 +64525,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64543,7 +64543,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -64567,7 +64567,7 @@ ] ] ], - "level": "3", + "level": "1", "related_data": {} } } @@ -65102,7 +65102,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65121,7 +65121,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65140,7 +65140,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65164,7 +65164,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65183,7 +65183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65202,7 +65202,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65218,7 +65218,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65236,7 +65236,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65256,7 +65256,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65276,7 +65276,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65309,7 +65309,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65326,7 +65326,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65346,7 +65346,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65363,7 +65363,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65382,7 +65382,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65400,7 +65400,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65418,7 +65418,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65436,7 +65436,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65452,7 +65452,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65469,7 +65469,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65485,7 +65485,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65508,7 +65508,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65531,7 +65531,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65548,7 +65548,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65565,7 +65565,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65597,7 +65597,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65613,7 +65613,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65630,7 +65630,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65646,7 +65646,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65661,7 +65661,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65682,7 +65682,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65709,7 +65709,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65727,7 +65727,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65744,7 +65744,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65762,7 +65762,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65780,7 +65780,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65798,7 +65798,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65814,7 +65814,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65832,7 +65832,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65850,7 +65850,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65867,7 +65867,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65889,7 +65889,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65910,7 +65910,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65927,7 +65927,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65944,7 +65944,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -65961,7 +65961,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -65994,7 +65994,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66012,7 +66012,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66028,7 +66028,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66049,7 +66049,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66065,7 +66065,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66081,7 +66081,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66098,7 +66098,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66115,7 +66115,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66132,7 +66132,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66149,7 +66149,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66165,7 +66165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66183,7 +66183,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66211,7 +66211,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66227,7 +66227,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66249,7 +66249,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66265,7 +66265,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66285,7 +66285,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66302,7 +66302,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66318,7 +66318,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66335,7 +66335,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66352,7 +66352,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66369,7 +66369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66392,7 +66392,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66408,7 +66408,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66428,7 +66428,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66445,7 +66445,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66462,7 +66462,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66479,7 +66479,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66496,7 +66496,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66514,7 +66514,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66532,7 +66532,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66547,7 +66547,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66566,7 +66566,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66583,7 +66583,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66600,7 +66600,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66618,7 +66618,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66640,7 +66640,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66661,7 +66661,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66685,7 +66685,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66703,7 +66703,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -66725,7 +66725,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66742,7 +66742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66759,7 +66759,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66774,7 +66774,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66796,7 +66796,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66818,7 +66818,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66842,7 +66842,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66862,7 +66862,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66879,7 +66879,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66897,7 +66897,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66913,7 +66913,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66930,7 +66930,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66947,7 +66947,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66964,7 +66964,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -66981,7 +66981,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67000,7 +67000,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67018,7 +67018,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67035,7 +67035,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67055,7 +67055,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67074,7 +67074,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67092,7 +67092,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67109,7 +67109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67132,7 +67132,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67148,7 +67148,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67165,7 +67165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67182,7 +67182,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67200,7 +67200,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67227,7 +67227,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67249,7 +67249,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67265,7 +67265,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67289,7 +67289,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67313,7 +67313,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67328,7 +67328,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67351,7 +67351,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67369,7 +67369,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67395,7 +67395,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67413,7 +67413,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67438,7 +67438,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67462,7 +67462,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67491,7 +67491,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67506,7 +67506,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67526,7 +67526,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67543,7 +67543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67568,7 +67568,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67593,7 +67593,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67609,7 +67609,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67629,7 +67629,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67647,7 +67647,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67663,7 +67663,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67679,7 +67679,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67695,7 +67695,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67726,7 +67726,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67745,7 +67745,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67766,7 +67766,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67782,7 +67782,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67800,7 +67800,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67822,7 +67822,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67835,7 +67835,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67850,7 +67850,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67872,7 +67872,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67898,7 +67898,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67918,7 +67918,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -67938,7 +67938,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67953,7 +67953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -67974,7 +67974,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68002,7 +68002,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68035,7 +68035,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68051,7 +68051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68070,7 +68070,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68087,7 +68087,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68109,7 +68109,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68129,7 +68129,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68146,7 +68146,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68176,7 +68176,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68196,7 +68196,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68223,7 +68223,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68242,7 +68242,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68258,7 +68258,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68283,7 +68283,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68308,7 +68308,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68329,7 +68329,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68345,7 +68345,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68374,7 +68374,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68392,7 +68392,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68410,7 +68410,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68428,7 +68428,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68453,7 +68453,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68468,7 +68468,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68483,7 +68483,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68499,7 +68499,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68520,7 +68520,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68543,7 +68543,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68560,7 +68560,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68586,7 +68586,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68601,7 +68601,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68621,7 +68621,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68644,7 +68644,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68659,7 +68659,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68676,7 +68676,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68692,7 +68692,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68708,7 +68708,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68725,7 +68725,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68742,7 +68742,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68758,7 +68758,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68779,7 +68779,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68799,7 +68799,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68816,7 +68816,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68839,7 +68839,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68855,7 +68855,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68893,7 +68893,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68916,7 +68916,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -68937,7 +68937,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68953,7 +68953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68973,7 +68973,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -68989,7 +68989,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69011,7 +69011,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69027,7 +69027,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69051,7 +69051,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69076,7 +69076,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69095,7 +69095,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69111,7 +69111,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69129,7 +69129,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69145,7 +69145,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69165,7 +69165,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69191,7 +69191,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69209,7 +69209,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69225,7 +69225,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69240,7 +69240,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69260,7 +69260,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69276,7 +69276,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69305,7 +69305,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69321,7 +69321,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69338,7 +69338,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69355,7 +69355,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69371,7 +69371,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69389,7 +69389,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69402,7 +69402,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69427,7 +69427,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69446,7 +69446,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69472,7 +69472,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69491,7 +69491,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69507,7 +69507,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69522,7 +69522,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69542,7 +69542,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69574,7 +69574,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69597,7 +69597,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69612,7 +69612,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69628,7 +69628,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69643,7 +69643,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69668,7 +69668,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69705,7 +69705,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69725,7 +69725,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69743,7 +69743,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69761,7 +69761,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69778,7 +69778,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69794,7 +69794,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69810,7 +69810,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69830,7 +69830,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69847,7 +69847,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69872,7 +69872,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69889,7 +69889,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69906,7 +69906,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69923,7 +69923,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -69953,7 +69953,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69971,7 +69971,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -69989,7 +69989,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70005,7 +70005,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70023,7 +70023,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70040,7 +70040,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70060,7 +70060,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70077,7 +70077,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70093,7 +70093,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70110,7 +70110,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70126,7 +70126,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70144,7 +70144,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70160,7 +70160,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70215,7 +70215,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70305,7 +70305,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70555,7 +70555,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70572,7 +70572,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70588,7 +70588,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70604,7 +70604,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70624,7 +70624,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70641,7 +70641,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -70670,7 +70670,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -70693,7 +70693,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70711,7 +70711,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70728,7 +70728,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -70750,7 +70750,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70768,7 +70768,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70785,7 +70785,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -70809,7 +70809,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -70835,7 +70835,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70853,7 +70853,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70870,7 +70870,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70890,7 +70890,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -70915,7 +70915,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -70938,7 +70938,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -70960,7 +70960,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -70980,7 +70980,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71004,7 +71004,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71031,7 +71031,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71055,7 +71055,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71079,7 +71079,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71097,7 +71097,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71155,7 +71155,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71180,7 +71180,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71205,7 +71205,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71249,7 +71249,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71266,7 +71266,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71294,7 +71294,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71310,7 +71310,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71409,7 +71409,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": { "qa": { "data_id": [ @@ -71432,7 +71432,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71450,7 +71450,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71466,7 +71466,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71637,7 +71637,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71721,7 +71721,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -71753,7 +71753,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71878,7 +71878,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71895,7 +71895,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71913,7 +71913,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -71939,7 +71939,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -71955,7 +71955,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72033,7 +72033,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72056,7 +72056,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72073,7 +72073,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72101,7 +72101,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72117,7 +72117,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72137,7 +72137,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72153,7 +72153,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72170,7 +72170,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72186,7 +72186,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72202,7 +72202,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72238,7 +72238,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72254,7 +72254,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72269,7 +72269,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": {} } } @@ -72292,7 +72292,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -72309,7 +72309,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -72328,7 +72328,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -72344,7 +72344,7 @@ ] ] ], - "level": "1", + "level": "2", "related_data": {} } } @@ -72360,7 +72360,7 @@ ] ] ], - "level": "2", + "level": "1", "related_data": { "qa": { "data_id": [ @@ -72379,7 +72379,7 @@ [] ] ], - "level": "2", + "level": "1", "related_data": {} } } -- GitLab