From d6d617bf77ef6465d58eaf269a4f146f85181721 Mon Sep 17 00:00:00 2001 From: qianguyihao Date: Mon, 20 Apr 2020 10:16:01 +0800 Subject: [PATCH] =?UTF-8?q?add:=20=E6=95=B0=E6=8D=AE=E5=BA=93=E7=9A=84?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E7=9F=A5=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 04-JavaScript基础/02-变量.md | 2 +- .../01-Node.js介绍和环境配置.md | 2 +- .../02-Node.js模块化规范:CommonJS.md | 0 .../03-Node.js内置模块:fs文件模块.md | 0 .../04-Node.js内置模块:path路径模块.md | 0 .../05-Node.js操作MySQL数据库.md | 0 .../CommonJS.md | 0 .../ES6.md | 0 .../JavaScript模块化:AMD.md | 0 .../JavaScript模块化:CMD.md | 0 .../JavaScript模块化:ES6.md | 0 .../MySQL数据库/01-数据库的基础知识.md | 105 ++++++++++++++++++ .../MySQL数据库/MySQL数据库的安装和Navicat使用.md | 0 .../MySQL数据库/MySQL数据库的常用命令.md | 0 .../MySQL数据库/MySQL设计三大范式.md | 0 10-Node.js和数据库/MySQL数据库/事务.md | 11 ++ .../Node.js代码举例.md | 0 .../WebSocket.md | 0 .../事件驱动和非阻塞机制.md | 0 .../01-2019年Web前端入门自学路线.md | 0 .../03-前端学习分享(微信群).md | 0 15-前端综合/06-Express.md | 31 ++++++ .../2018年-前端日记.md | 0 .../2019年-前端日记.md | 0 {17-前端综合 => 15-前端综合}/CSS开发总结.md | 0 {17-前端综合 => 15-前端综合}/ajax相关.md | 0 {17-前端综合 => 15-前端综合}/html相关.md | 0 .../json字符串的解析和遍历.md | 0 {17-前端综合 => 15-前端综合}/json相关.md | 0 {17-前端综合 => 15-前端综合}/前端博客推荐.md | 0 {17-前端综合 => 15-前端综合}/前端开发积累.md | 0 15-前端综合/前端语录.md | 4 + .../网友对本项目提的建议.md | 0 15-前端综合/网络抓包和代理工具:Whistle.md | 17 +++ .../01-2020年Web前端最新导航.md | 0 .../02-GitHub项目推荐.md | 0 {18-推荐链接 => 16-推荐链接}/03-网站推荐.md | 0 .../04-前端文章推荐.md | 0 {18-推荐链接 => 16-推荐链接}/2018-推荐文章.md | 0 {18-推荐链接 => 16-推荐链接}/2019-推荐文章.md | 0 .../上海有哪些IT互联网大厂.md | 0 .../北京有哪些IT互联网大厂.md | 0 .../深圳有哪些IT互联网大厂.md | 0 img/20200420_0922.png | Bin 0 -> 49430 bytes 44 files changed, 170 insertions(+), 2 deletions(-) rename {10-Node.js和模块化 => 10-Node.js和数据库}/01-Node.js介绍和环境配置.md (99%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/02-Node.js模块化规范:CommonJS.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/03-Node.js内置模块:fs文件模块.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/04-Node.js内置模块:path路径模块.md (100%) rename 10-Node.js和模块化/06-Node.js操作MySQL数据库.md => 10-Node.js和数据库/05-Node.js操作MySQL数据库.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/CommonJS.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/ES6.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/JavaScript模块化:AMD.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/JavaScript模块化:CMD.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/JavaScript模块化:ES6.md (100%) create mode 100644 10-Node.js和数据库/MySQL数据库/01-数据库的基础知识.md rename 15-MySQL/01-MySQL数据库的安装和Navicat使用.md => 10-Node.js和数据库/MySQL数据库/MySQL数据库的安装和Navicat使用.md (100%) rename 15-MySQL/02-MySQL数据库的常用命令.md => 10-Node.js和数据库/MySQL数据库/MySQL数据库的常用命令.md (100%) rename 15-MySQL/03-MySQL设计三大范式.md => 10-Node.js和数据库/MySQL数据库/MySQL设计三大范式.md (100%) create mode 100644 10-Node.js和数据库/MySQL数据库/事务.md rename {10-Node.js和模块化 => 10-Node.js和数据库}/Node.js代码举例.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/WebSocket.md (100%) rename {10-Node.js和模块化 => 10-Node.js和数据库}/事件驱动和非阻塞机制.md (100%) rename {17-前端综合 => 15-前端综合}/01-2019年Web前端入门自学路线.md (100%) rename {17-前端综合 => 15-前端综合}/03-前端学习分享(微信群).md (100%) create mode 100644 15-前端综合/06-Express.md rename {17-前端综合 => 15-前端综合}/2018年-前端日记.md (100%) rename {17-前端综合 => 15-前端综合}/2019年-前端日记.md (100%) rename {17-前端综合 => 15-前端综合}/CSS开发总结.md (100%) rename {17-前端综合 => 15-前端综合}/ajax相关.md (100%) rename {17-前端综合 => 15-前端综合}/html相关.md (100%) rename {17-前端综合 => 15-前端综合}/json字符串的解析和遍历.md (100%) rename {17-前端综合 => 15-前端综合}/json相关.md (100%) rename {17-前端综合 => 15-前端综合}/前端博客推荐.md (100%) rename {17-前端综合 => 15-前端综合}/前端开发积累.md (100%) create mode 100644 15-前端综合/前端语录.md rename {17-前端综合 => 15-前端综合}/网友对本项目提的建议.md (100%) create mode 100644 15-前端综合/网络抓包和代理工具:Whistle.md rename {18-推荐链接 => 16-推荐链接}/01-2020年Web前端最新导航.md (100%) rename {18-推荐链接 => 16-推荐链接}/02-GitHub项目推荐.md (100%) rename {18-推荐链接 => 16-推荐链接}/03-网站推荐.md (100%) rename {18-推荐链接 => 16-推荐链接}/04-前端文章推荐.md (100%) rename {18-推荐链接 => 16-推荐链接}/2018-推荐文章.md (100%) rename {18-推荐链接 => 16-推荐链接}/2019-推荐文章.md (100%) rename {18-推荐链接 => 16-推荐链接}/上海有哪些IT互联网大厂.md (100%) rename {18-推荐链接 => 16-推荐链接}/北京有哪些IT互联网大厂.md (100%) rename {18-推荐链接 => 16-推荐链接}/深圳有哪些IT互联网大厂.md (100%) create mode 100644 img/20200420_0922.png diff --git a/04-JavaScript基础/02-变量.md b/04-JavaScript基础/02-变量.md index 00f5935..f5cada0 100644 --- a/04-JavaScript基础/02-变量.md +++ b/04-JavaScript基础/02-变量.md @@ -11,7 +11,7 @@ - 布尔字面量 -(1)数值的字面量非常简单,写上去就行了,不需要任何的符号。例如: +(1)数值的字面量非常简单,写上去就行,不需要任何的符号。例如: ```javascript alert(886); //886是数字,所以不需要加引号。 diff --git a/10-Node.js和模块化/01-Node.js介绍和环境配置.md b/10-Node.js和数据库/01-Node.js介绍和环境配置.md similarity index 99% rename from 10-Node.js和模块化/01-Node.js介绍和环境配置.md rename to 10-Node.js和数据库/01-Node.js介绍和环境配置.md index 2a68c0c..aeca7df 100644 --- a/10-Node.js和模块化/01-Node.js介绍和环境配置.md +++ b/10-Node.js和数据库/01-Node.js介绍和环境配置.md @@ -312,7 +312,7 @@ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | b 编辑器打开`~/.bash_profile`文件,如果不会就输入`open ~/.bash_profile`。 -(补充:如果你的Mac电脑里找不到`~/.bash_profile`文件,那就找找有没有`~/.profile`文件,或者`~/.bashrc`文件,或者`~/.zshrc`文件)。 +(补充:如果你的Mac电脑里找不到`~/.bash_profile`文件,那就找找有没有`~/.profile`文件,或者`~/.bashrc`文件,或者`~/.zshrc`文件。如果还是没有,那你就手动创建一个`~/.bash_profile`文件)。 在最后一行输入: diff --git a/10-Node.js和模块化/02-Node.js模块化规范:CommonJS.md b/10-Node.js和数据库/02-Node.js模块化规范:CommonJS.md similarity index 100% rename from 10-Node.js和模块化/02-Node.js模块化规范:CommonJS.md rename to 10-Node.js和数据库/02-Node.js模块化规范:CommonJS.md diff --git a/10-Node.js和模块化/03-Node.js内置模块:fs文件模块.md b/10-Node.js和数据库/03-Node.js内置模块:fs文件模块.md similarity index 100% rename from 10-Node.js和模块化/03-Node.js内置模块:fs文件模块.md rename to 10-Node.js和数据库/03-Node.js内置模块:fs文件模块.md diff --git a/10-Node.js和模块化/04-Node.js内置模块:path路径模块.md b/10-Node.js和数据库/04-Node.js内置模块:path路径模块.md similarity index 100% rename from 10-Node.js和模块化/04-Node.js内置模块:path路径模块.md rename to 10-Node.js和数据库/04-Node.js内置模块:path路径模块.md diff --git a/10-Node.js和模块化/06-Node.js操作MySQL数据库.md b/10-Node.js和数据库/05-Node.js操作MySQL数据库.md similarity index 100% rename from 10-Node.js和模块化/06-Node.js操作MySQL数据库.md rename to 10-Node.js和数据库/05-Node.js操作MySQL数据库.md diff --git a/10-Node.js和模块化/CommonJS.md b/10-Node.js和数据库/CommonJS.md similarity index 100% rename from 10-Node.js和模块化/CommonJS.md rename to 10-Node.js和数据库/CommonJS.md diff --git a/10-Node.js和模块化/ES6.md b/10-Node.js和数据库/ES6.md similarity index 100% rename from 10-Node.js和模块化/ES6.md rename to 10-Node.js和数据库/ES6.md diff --git a/10-Node.js和模块化/JavaScript模块化:AMD.md b/10-Node.js和数据库/JavaScript模块化:AMD.md similarity index 100% rename from 10-Node.js和模块化/JavaScript模块化:AMD.md rename to 10-Node.js和数据库/JavaScript模块化:AMD.md diff --git a/10-Node.js和模块化/JavaScript模块化:CMD.md b/10-Node.js和数据库/JavaScript模块化:CMD.md similarity index 100% rename from 10-Node.js和模块化/JavaScript模块化:CMD.md rename to 10-Node.js和数据库/JavaScript模块化:CMD.md diff --git a/10-Node.js和模块化/JavaScript模块化:ES6.md b/10-Node.js和数据库/JavaScript模块化:ES6.md similarity index 100% rename from 10-Node.js和模块化/JavaScript模块化:ES6.md rename to 10-Node.js和数据库/JavaScript模块化:ES6.md diff --git a/10-Node.js和数据库/MySQL数据库/01-数据库的基础知识.md b/10-Node.js和数据库/MySQL数据库/01-数据库的基础知识.md new file mode 100644 index 0000000..3528597 --- /dev/null +++ b/10-Node.js和数据库/MySQL数据库/01-数据库的基础知识.md @@ -0,0 +1,105 @@ + +## 数据库的概念 + +**数据库**:database(DB),是一种存储数据的仓库。具有如下特性: + +- 数据库是根据数据结构组织、存储和管理数据。 +- 数据库能够长期、高效的管理和存储数据。 +- 数据库的目的就是能够存储(写)和提供(读)数据。 + +## 数据库分类 + +数据库分为两类: + +- **关系型数据库**:把复杂的数据结构归结为简单的二元关系,即二维表格形式(二维表)。注重数据存储的持久性。 + +- **非关系型数据库**:没有具体模型的数据结构。英文简称 NoSQL(Not Only SQL ),意为"不仅仅是SQL"。注重数据读取的效率。 + +我们具体来看看。 + +### 1、关系型数据库 + +**关系型数据库**:把复杂的数据结构归结为简单的二元关系,即二维表格形式(二维表)。 + +关系型数据库有四层结构: + +- 数据库管理系统(DBMS):DataBase Management System。 + +- 数据库(DB):数据存储的管理者。 + +- 数据表(Table):数据关系管理者。 + +- 数据字段(Field):实际数据存储者。 + +常见的关系型数据库产品: + +- 大型:Oracle + +- 中型:MySQL、SQL Server + +- 小型:Sybase、Access + + +### 2、非关系型数据库 + +**非关系型数据库**:没有具体模型的数据结构。英文简称 NoSQL(Not Only SQL ),意为"不仅仅是SQL"。 + +常见的非关系型数据库产品:MongoDB、Redis、Memcached。 + + + +## SQL 的介绍 + +**SQL**:全称 **Structured Query Language**,译为**结构化查询语言**。 + +**SQL**:是一种针对关系型数据库的标准化编程语言,能够实现用户数据库的查询和程序设计。 + +通俗来讲,**SQL 是关系型数据库的操作指令**。 + +根据操作类型不同,SQL 可分为几类: + + +* DQL:Data Query Language,数据查询语言,用于查询和检索数据 +* DML:Data Manipulation Language,数据操作语言,用于数据的写操作(增删改) +* DDL:Data Definition Language,数据定义语言,用于创建数据结构 +* DCL:Data Control Language,数据控制语言,用于用户权限管理 +* TPL:Transaction Process Language,事务处理语言,辅助DML进行事务操作(因此也归属于DML) + + +补充: + +- SQL 虽然是编程语言,但通常只用来进行数据管理,逻辑部分交给其他编程语言。 + +- SQL 是针对关系型数据库的**通用语言**,所有关系型数据库都是基于SQL进行数据操作;而不同的数据库产品,在 SQL 操作指令上略有差异。 + + + +## MySQL 的介绍 + +### MySQL 数据库介绍 + +MySQL 是很有名的 关系型数据库产品,由瑞典MySQL AB 公司开发,现在属于 Oracle 旗下产品。 + +MySQL 在 2008 年被 Sun 公司以10亿美金所收购,而 Sun 公司在2009年被 Oracle 甲骨文公司收购。 + +MySQL 开源免费。 + +### MySQL 访问原理 + +MySQL是一种C/S结构的软件,因此我们需要安装 MySQL 的客户端来访问远程的服务端。也就是说,数据是存放在服务器上的,客户端通过执行 sql 指令来操作服务端的数据。 + +具体步骤是: + +(1)客户端通过 主机(host) + 端口号(port) 服务端。 + +(2)输入 username 和 password 验证身份。 + +(3)客户端和服务端连接成功,通过 sql 指令开始操作数据库。 + + + + + + + + diff --git a/15-MySQL/01-MySQL数据库的安装和Navicat使用.md b/10-Node.js和数据库/MySQL数据库/MySQL数据库的安装和Navicat使用.md similarity index 100% rename from 15-MySQL/01-MySQL数据库的安装和Navicat使用.md rename to 10-Node.js和数据库/MySQL数据库/MySQL数据库的安装和Navicat使用.md diff --git a/15-MySQL/02-MySQL数据库的常用命令.md b/10-Node.js和数据库/MySQL数据库/MySQL数据库的常用命令.md similarity index 100% rename from 15-MySQL/02-MySQL数据库的常用命令.md rename to 10-Node.js和数据库/MySQL数据库/MySQL数据库的常用命令.md diff --git a/15-MySQL/03-MySQL设计三大范式.md b/10-Node.js和数据库/MySQL数据库/MySQL设计三大范式.md similarity index 100% rename from 15-MySQL/03-MySQL设计三大范式.md rename to 10-Node.js和数据库/MySQL数据库/MySQL设计三大范式.md diff --git a/10-Node.js和数据库/MySQL数据库/事务.md b/10-Node.js和数据库/MySQL数据库/事务.md new file mode 100644 index 0000000..9c884a8 --- /dev/null +++ b/10-Node.js和数据库/MySQL数据库/事务.md @@ -0,0 +1,11 @@ + +## 事务语句 + +- 开启:begin + +- 提交:commit + +- 回滚:rollback + + + diff --git a/10-Node.js和模块化/Node.js代码举例.md b/10-Node.js和数据库/Node.js代码举例.md similarity index 100% rename from 10-Node.js和模块化/Node.js代码举例.md rename to 10-Node.js和数据库/Node.js代码举例.md diff --git a/10-Node.js和模块化/WebSocket.md b/10-Node.js和数据库/WebSocket.md similarity index 100% rename from 10-Node.js和模块化/WebSocket.md rename to 10-Node.js和数据库/WebSocket.md diff --git a/10-Node.js和模块化/事件驱动和非阻塞机制.md b/10-Node.js和数据库/事件驱动和非阻塞机制.md similarity index 100% rename from 10-Node.js和模块化/事件驱动和非阻塞机制.md rename to 10-Node.js和数据库/事件驱动和非阻塞机制.md diff --git a/17-前端综合/01-2019年Web前端入门自学路线.md b/15-前端综合/01-2019年Web前端入门自学路线.md similarity index 100% rename from 17-前端综合/01-2019年Web前端入门自学路线.md rename to 15-前端综合/01-2019年Web前端入门自学路线.md diff --git a/17-前端综合/03-前端学习分享(微信群).md b/15-前端综合/03-前端学习分享(微信群).md similarity index 100% rename from 17-前端综合/03-前端学习分享(微信群).md rename to 15-前端综合/03-前端学习分享(微信群).md diff --git a/15-前端综合/06-Express.md b/15-前端综合/06-Express.md new file mode 100644 index 0000000..0021ad1 --- /dev/null +++ b/15-前端综合/06-Express.md @@ -0,0 +1,31 @@ + + +## Express介绍 + +- Express 官方网站: + +- Express 官方网站(中文): + + +## Express 安装 + +安装 express: + +```bash +npm install express -g +``` + +安装 express-generator,安装之后,可使用应用程序生成器工具 (express) 快速创建应用程序框架。 + +```bash +npm install express-generator -g + +``` + + +查看安装的 express 版本: + +```bash +express --version + +``` \ No newline at end of file diff --git a/17-前端综合/2018年-前端日记.md b/15-前端综合/2018年-前端日记.md similarity index 100% rename from 17-前端综合/2018年-前端日记.md rename to 15-前端综合/2018年-前端日记.md diff --git a/17-前端综合/2019年-前端日记.md b/15-前端综合/2019年-前端日记.md similarity index 100% rename from 17-前端综合/2019年-前端日记.md rename to 15-前端综合/2019年-前端日记.md diff --git a/17-前端综合/CSS开发总结.md b/15-前端综合/CSS开发总结.md similarity index 100% rename from 17-前端综合/CSS开发总结.md rename to 15-前端综合/CSS开发总结.md diff --git a/17-前端综合/ajax相关.md b/15-前端综合/ajax相关.md similarity index 100% rename from 17-前端综合/ajax相关.md rename to 15-前端综合/ajax相关.md diff --git a/17-前端综合/html相关.md b/15-前端综合/html相关.md similarity index 100% rename from 17-前端综合/html相关.md rename to 15-前端综合/html相关.md diff --git a/17-前端综合/json字符串的解析和遍历.md b/15-前端综合/json字符串的解析和遍历.md similarity index 100% rename from 17-前端综合/json字符串的解析和遍历.md rename to 15-前端综合/json字符串的解析和遍历.md diff --git a/17-前端综合/json相关.md b/15-前端综合/json相关.md similarity index 100% rename from 17-前端综合/json相关.md rename to 15-前端综合/json相关.md diff --git a/17-前端综合/前端博客推荐.md b/15-前端综合/前端博客推荐.md similarity index 100% rename from 17-前端综合/前端博客推荐.md rename to 15-前端综合/前端博客推荐.md diff --git a/17-前端综合/前端开发积累.md b/15-前端综合/前端开发积累.md similarity index 100% rename from 17-前端综合/前端开发积累.md rename to 15-前端综合/前端开发积累.md diff --git a/15-前端综合/前端语录.md b/15-前端综合/前端语录.md new file mode 100644 index 0000000..a99c345 --- /dev/null +++ b/15-前端综合/前端语录.md @@ -0,0 +1,4 @@ +### 2020-04-19 + +语言的强大在于它的生态。如果是站在巨人的肩膀上,就不用做太多重复的事情。 + diff --git a/17-前端综合/网友对本项目提的建议.md b/15-前端综合/网友对本项目提的建议.md similarity index 100% rename from 17-前端综合/网友对本项目提的建议.md rename to 15-前端综合/网友对本项目提的建议.md diff --git a/15-前端综合/网络抓包和代理工具:Whistle.md b/15-前端综合/网络抓包和代理工具:Whistle.md new file mode 100644 index 0000000..27ccac1 --- /dev/null +++ b/15-前端综合/网络抓包和代理工具:Whistle.md @@ -0,0 +1,17 @@ + + +## Whistle 官网 + +- Whistle 官网: + +- Whistle 的 GitHub: + + +## Whistle 安装 + + +(1)通过 npm 安装 Whistle + +(2)安装证书并添加信任: + +![](../img/20200420_0922.png) diff --git a/18-推荐链接/01-2020年Web前端最新导航.md b/16-推荐链接/01-2020年Web前端最新导航.md similarity index 100% rename from 18-推荐链接/01-2020年Web前端最新导航.md rename to 16-推荐链接/01-2020年Web前端最新导航.md diff --git a/18-推荐链接/02-GitHub项目推荐.md b/16-推荐链接/02-GitHub项目推荐.md similarity index 100% rename from 18-推荐链接/02-GitHub项目推荐.md rename to 16-推荐链接/02-GitHub项目推荐.md diff --git a/18-推荐链接/03-网站推荐.md b/16-推荐链接/03-网站推荐.md similarity index 100% rename from 18-推荐链接/03-网站推荐.md rename to 16-推荐链接/03-网站推荐.md diff --git a/18-推荐链接/04-前端文章推荐.md b/16-推荐链接/04-前端文章推荐.md similarity index 100% rename from 18-推荐链接/04-前端文章推荐.md rename to 16-推荐链接/04-前端文章推荐.md diff --git a/18-推荐链接/2018-推荐文章.md b/16-推荐链接/2018-推荐文章.md similarity index 100% rename from 18-推荐链接/2018-推荐文章.md rename to 16-推荐链接/2018-推荐文章.md diff --git a/18-推荐链接/2019-推荐文章.md b/16-推荐链接/2019-推荐文章.md similarity index 100% rename from 18-推荐链接/2019-推荐文章.md rename to 16-推荐链接/2019-推荐文章.md diff --git a/18-推荐链接/上海有哪些IT互联网大厂.md b/16-推荐链接/上海有哪些IT互联网大厂.md similarity index 100% rename from 18-推荐链接/上海有哪些IT互联网大厂.md rename to 16-推荐链接/上海有哪些IT互联网大厂.md diff --git a/18-推荐链接/北京有哪些IT互联网大厂.md b/16-推荐链接/北京有哪些IT互联网大厂.md similarity index 100% rename from 18-推荐链接/北京有哪些IT互联网大厂.md rename to 16-推荐链接/北京有哪些IT互联网大厂.md diff --git a/18-推荐链接/深圳有哪些IT互联网大厂.md b/16-推荐链接/深圳有哪些IT互联网大厂.md similarity index 100% rename from 18-推荐链接/深圳有哪些IT互联网大厂.md rename to 16-推荐链接/深圳有哪些IT互联网大厂.md diff --git a/img/20200420_0922.png b/img/20200420_0922.png new file mode 100644 index 0000000000000000000000000000000000000000..50a924a60216b02b7ac1f17a0ef764c3252d64fa GIT binary patch literal 49430 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

mV* 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%0AF;HQTb_?a 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�OO^Y|5lgp7;@-B%3|_d-P20^Xzo#Gd*h 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