From 2cdf6b3718fb284bc19fca93ea65e50b26d0fd95 Mon Sep 17 00:00:00 2001 From: nova1751 Date: Wed, 27 Sep 2023 03:51:20 +0000 Subject: [PATCH] feat: bugs fixed UTC 2023-09-27 Wednesday 03:51:20 Updated By Github Actions --- 404.html | 347 +++++++++ about/index.html | 430 +++++++++++ archives/2022/07/index.html | 347 +++++++++ archives/2022/08/index.html | 347 +++++++++ archives/2022/09/index.html | 347 +++++++++ archives/2022/12/index.html | 347 +++++++++ archives/2022/index.html | 347 +++++++++ archives/2022/page/2/index.html | 347 +++++++++ archives/2023/01/index.html | 347 +++++++++ archives/2023/03/index.html | 347 +++++++++ archives/2023/index.html | 347 +++++++++ archives/index.html | 347 +++++++++ archives/page/2/index.html | 347 +++++++++ atom.xml | 360 ++++++++++ categories/DNS/index.html | 347 +++++++++ categories/Java/index.html | 347 +++++++++ categories/index.html | 430 +++++++++++ .../index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ comments/index.html | 474 +++++++++++++ css/custom.css | 1 + css/index.css | 1 + css/pointer/Arrow.cur | Bin 0 -> 4286 bytes css/pointer/Copy.cur | Bin 0 -> 4286 bytes css/pointer/Hand.cur | Bin 0 -> 4286 bytes css/pointer/Hand2.cur | Bin 0 -> 4286 bytes css/pointer/Help.cur | Bin 0 -> 4286 bytes css/pointer/IBeam.cur | Bin 0 -> 4286 bytes css/pointer/NO.cur | Bin 0 -> 4286 bytes css/var.css | 0 drive/index.html | 430 +++++++++++ img/404.jpg | Bin 0 -> 16393 bytes img/favicon.png | Bin 0 -> 323 bytes img/friend_404.gif | Bin 0 -> 65097 bytes index.html | 347 +++++++++ js/hideLrc.js | 1 + js/main.js | 1 + js/search/algolia.js | 1 + js/search/local-search.js | 1 + js/tw_cn.js | 1 + js/utils.js | 1 + link/index.html | 430 +++++++++++ music/index.html | 434 ++++++++++++ page/2/index.html | 347 +++++++++ posts/170bc017/index.html | 430 +++++++++++ posts/20642/index.html | 430 +++++++++++ posts/355699d5/index.html | 529 ++++++++++++++ posts/40f24371/index.html | 430 +++++++++++ posts/47341/index.html | 430 +++++++++++ posts/54c08517/index.html | 430 +++++++++++ posts/6534ce06/index.html | 435 ++++++++++++ posts/75378e04/index.html | 430 +++++++++++ posts/775eb342/index.html | 430 +++++++++++ posts/8d55d49a/index.html | 430 +++++++++++ posts/b06cc6ec/index.html | 430 +++++++++++ posts/b67f488/index.html | 430 +++++++++++ posts/d3748e5f/index.html | 430 +++++++++++ pwa/images/16.png | Bin 0 -> 1424 bytes pwa/images/32.png | Bin 0 -> 2813 bytes pwa/images/apple-touch-icon.png | Bin 0 -> 55181 bytes pwa/images/icons/icon-128x128.png | Bin 0 -> 41210 bytes pwa/images/icons/icon-144x144.png | Bin 0 -> 50696 bytes pwa/images/icons/icon-152x152.png | Bin 0 -> 55775 bytes pwa/images/icons/icon-192x192.png | Bin 0 -> 83236 bytes pwa/images/icons/icon-384x384.png | Bin 0 -> 274849 bytes pwa/images/icons/icon-512x512.png | Bin 0 -> 389026 bytes pwa/images/icons/icon-72x72.png | Bin 0 -> 14979 bytes pwa/images/icons/icon-96x96.png | Bin 0 -> 24978 bytes pwa/images/safari-pinned-tab.svg | 669 ++++++++++++++++++ pwa/manifest.json | 1 + service-worker.js | 1 + service-worker.js.map | 1 + sitemap.txt | 50 ++ sitemap.xml | 400 +++++++++++ tags/Java/index.html | 347 +++++++++ tags/Numpy/index.html | 347 +++++++++ tags/Python/index.html | 347 +++++++++ tags/Ubuntu/index.html | 347 +++++++++ tags/Windows/index.html | 347 +++++++++ tags/cloudflare/index.html | 347 +++++++++ tags/index.html | 430 +++++++++++ tags/k-means/index.html | 347 +++++++++ "tags/kNN\347\256\227\346\263\225/index.html" | 347 +++++++++ tags/python/index.html | 347 +++++++++ .../index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ "tags/\345\237\237\345\220\215/index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ "tags/\346\240\210/index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ "tags/\347\273\252\350\256\272/index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ "tags/\347\276\216\345\214\226/index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ .../index.html" | 347 +++++++++ "tags/\351\230\237\345\210\227/index.html" | 347 +++++++++ workbox-f2630e7e.js | 1 + workbox-f2630e7e.js.map | 1 + 101 files changed, 24818 insertions(+) create mode 100644 404.html create mode 100644 about/index.html create mode 100644 archives/2022/07/index.html create mode 100644 archives/2022/08/index.html create mode 100644 archives/2022/09/index.html create mode 100644 archives/2022/12/index.html create mode 100644 archives/2022/index.html create mode 100644 archives/2022/page/2/index.html create mode 100644 archives/2023/01/index.html create mode 100644 archives/2023/03/index.html create mode 100644 archives/2023/index.html create mode 100644 archives/index.html create mode 100644 archives/page/2/index.html create mode 100644 atom.xml create mode 100644 categories/DNS/index.html create mode 100644 categories/Java/index.html create mode 100644 categories/index.html create mode 100644 "categories/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" create mode 100644 "categories/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" create mode 100644 "categories/\347\231\276\345\256\235\347\256\261/index.html" create mode 100644 comments/index.html create mode 100644 css/custom.css create mode 100644 css/index.css create mode 100644 css/pointer/Arrow.cur create mode 100644 css/pointer/Copy.cur create mode 100644 css/pointer/Hand.cur create mode 100644 css/pointer/Hand2.cur create mode 100644 css/pointer/Help.cur create mode 100644 css/pointer/IBeam.cur create mode 100644 css/pointer/NO.cur create mode 100644 css/var.css create mode 100644 drive/index.html create mode 100644 img/404.jpg create mode 100644 img/favicon.png create mode 100644 img/friend_404.gif create mode 100644 index.html create mode 100644 js/hideLrc.js create mode 100644 js/main.js create mode 100644 js/search/algolia.js create mode 100644 js/search/local-search.js create mode 100644 js/tw_cn.js create mode 100644 js/utils.js create mode 100644 link/index.html create mode 100644 music/index.html create mode 100644 page/2/index.html create mode 100644 posts/170bc017/index.html create mode 100644 posts/20642/index.html create mode 100644 posts/355699d5/index.html create mode 100644 posts/40f24371/index.html create mode 100644 posts/47341/index.html create mode 100644 posts/54c08517/index.html create mode 100644 posts/6534ce06/index.html create mode 100644 posts/75378e04/index.html create mode 100644 posts/775eb342/index.html create mode 100644 posts/8d55d49a/index.html create mode 100644 posts/b06cc6ec/index.html create mode 100644 posts/b67f488/index.html create mode 100644 posts/d3748e5f/index.html create mode 100644 pwa/images/16.png create mode 100644 pwa/images/32.png create mode 100644 pwa/images/apple-touch-icon.png create mode 100644 pwa/images/icons/icon-128x128.png create mode 100644 pwa/images/icons/icon-144x144.png create mode 100644 pwa/images/icons/icon-152x152.png create mode 100644 pwa/images/icons/icon-192x192.png create mode 100644 pwa/images/icons/icon-384x384.png create mode 100644 pwa/images/icons/icon-512x512.png create mode 100644 pwa/images/icons/icon-72x72.png create mode 100644 pwa/images/icons/icon-96x96.png create mode 100644 pwa/images/safari-pinned-tab.svg create mode 100644 pwa/manifest.json create mode 100644 service-worker.js create mode 100644 service-worker.js.map create mode 100644 sitemap.txt create mode 100644 sitemap.xml create mode 100644 tags/Java/index.html create mode 100644 tags/Numpy/index.html create mode 100644 tags/Python/index.html create mode 100644 tags/Ubuntu/index.html create mode 100644 tags/Windows/index.html create mode 100644 tags/cloudflare/index.html create mode 100644 tags/index.html create mode 100644 tags/k-means/index.html create mode 100644 "tags/kNN\347\256\227\346\263\225/index.html" create mode 100644 tags/python/index.html create mode 100644 "tags/\344\273\273\345\212\241\346\240\217/index.html" create mode 100644 "tags/\345\206\263\347\255\226\346\240\221/index.html" create mode 100644 "tags/\345\237\237\345\220\215/index.html" create mode 100644 "tags/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" create mode 100644 "tags/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" create mode 100644 "tags/\346\240\210/index.html" create mode 100644 "tags/\347\272\277\346\200\247\345\233\236\345\275\222/index.html" create mode 100644 "tags/\347\272\277\346\200\247\350\241\250/index.html" create mode 100644 "tags/\347\273\252\350\256\272/index.html" create mode 100644 "tags/\347\274\226\347\250\213\345\255\246\344\271\240/index.html" create mode 100644 "tags/\347\276\216\345\214\226/index.html" create mode 100644 "tags/\350\231\232\346\213\237\346\234\272/index.html" create mode 100644 "tags/\351\200\273\350\276\221\345\233\236\345\275\222/index.html" create mode 100644 "tags/\351\230\237\345\210\227/index.html" create mode 100644 workbox-f2630e7e.js create mode 100644 workbox-f2630e7e.js.map diff --git a/404.html b/404.html new file mode 100644 index 000000000..7911e4a41 --- /dev/null +++ b/404.html @@ -0,0 +1,347 @@ +页面没有找到 | 希亚的西红柿のBlog
Page not found

404

Page Not Found
\ No newline at end of file diff --git a/about/index.html b/about/index.html new file mode 100644 index 000000000..0cd1db785 --- /dev/null +++ b/about/index.html @@ -0,0 +1,430 @@ +about | 希亚的西红柿のBlog

评论
\ No newline at end of file diff --git a/archives/2022/07/index.html b/archives/2022/07/index.html new file mode 100644 index 000000000..37c8def91 --- /dev/null +++ b/archives/2022/07/index.html @@ -0,0 +1,347 @@ +七月 2022 | 希亚的西红柿のBlog
\ No newline at end of file diff --git a/archives/2022/08/index.html b/archives/2022/08/index.html new file mode 100644 index 000000000..105df8fca --- /dev/null +++ b/archives/2022/08/index.html @@ -0,0 +1,347 @@ +八月 2022 | 希亚的西红柿のBlog
\ No newline at end of file diff --git a/archives/2022/09/index.html b/archives/2022/09/index.html new file mode 100644 index 000000000..4f18368d7 --- /dev/null +++ b/archives/2022/09/index.html @@ -0,0 +1,347 @@ +九月 2022 | 希亚的西红柿のBlog
文章总览 - 1
2022
数据结构绪论
数据结构绪论
\ No newline at end of file diff --git a/archives/2022/12/index.html b/archives/2022/12/index.html new file mode 100644 index 000000000..f0a772683 --- /dev/null +++ b/archives/2022/12/index.html @@ -0,0 +1,347 @@ +十二月 2022 | 希亚的西红柿のBlog
文章总览 - 3
2022
栈与队列
栈与队列
线性表
线性表
Win10/11任务栏透明美化
Win10/11任务栏透明美化
\ No newline at end of file diff --git a/archives/2022/index.html b/archives/2022/index.html new file mode 100644 index 000000000..2c757bc1e --- /dev/null +++ b/archives/2022/index.html @@ -0,0 +1,347 @@ +2022 | 希亚的西红柿のBlog
\ No newline at end of file diff --git a/archives/2022/page/2/index.html b/archives/2022/page/2/index.html new file mode 100644 index 000000000..458329301 --- /dev/null +++ b/archives/2022/page/2/index.html @@ -0,0 +1,347 @@ +2022 | 希亚的西红柿のBlog
文章总览 - 11
2022
关于cloudflare对网站搭建的使用
关于cloudflare对网站搭建的使用
\ No newline at end of file diff --git a/archives/2023/01/index.html b/archives/2023/01/index.html new file mode 100644 index 000000000..7c2aaa639 --- /dev/null +++ b/archives/2023/01/index.html @@ -0,0 +1,347 @@ +一月 2023 | 希亚的西红柿のBlog
文章总览 - 1
2023
JAVA学习笔记
JAVA学习笔记
\ No newline at end of file diff --git a/archives/2023/03/index.html b/archives/2023/03/index.html new file mode 100644 index 000000000..9702940ec --- /dev/null +++ b/archives/2023/03/index.html @@ -0,0 +1,347 @@ +三月 2023 | 希亚的西红柿のBlog
文章总览 - 1
2023
Windows/Ubuntu双系统安装教程
Windows/Ubuntu双系统安装教程
\ No newline at end of file diff --git a/archives/2023/index.html b/archives/2023/index.html new file mode 100644 index 000000000..a1d044672 --- /dev/null +++ b/archives/2023/index.html @@ -0,0 +1,347 @@ +2023 | 希亚的西红柿のBlog
文章总览 - 2
2023
Windows/Ubuntu双系统安装教程
Windows/Ubuntu双系统安装教程
JAVA学习笔记
JAVA学习笔记
\ No newline at end of file diff --git a/archives/index.html b/archives/index.html new file mode 100644 index 000000000..17dd68856 --- /dev/null +++ b/archives/index.html @@ -0,0 +1,347 @@ +归档 | 希亚的西红柿のBlog
\ No newline at end of file diff --git a/archives/page/2/index.html b/archives/page/2/index.html new file mode 100644 index 000000000..0c4581256 --- /dev/null +++ b/archives/page/2/index.html @@ -0,0 +1,347 @@ +归档 | 希亚的西红柿のBlog
\ No newline at end of file diff --git a/atom.xml b/atom.xml new file mode 100644 index 000000000..26182aebb --- /dev/null +++ b/atom.xml @@ -0,0 +1,360 @@ + + + 希亚的西红柿のBlog + https://npm.elemecdn.com/nova1751-sources/blogImg/icon.png + 分享学习与生活 + + + + 2023-09-26T14:08:00.000Z + http://refrain.cf/ + + + 希亚的西红柿 + + + + Hexo + + + Windows/Ubuntu双系统安装教程 + + http://refrain.cf/posts/d3748e5f/ + 2023-03-04T09:52:55.000Z + 2023-09-26T14:08:00.000Z + + + + + + + <div class="tip home"><p>本文主要记录笔者 PC 安装 Windows/Ubuntu 双系统的过程、Windows 平台下 VMware 虚拟机安装 Ubuntu 的配置过程、以及双系统 Ubuntu 卸载的注意事项。</p> +</div> +<div + + + + + + + + + + + + + + + + + + JAVA学习笔记 + + http://refrain.cf/posts/8d55d49a/ + 2023-01-17T06:44:22.000Z + 2023-03-07T06:44:22.000Z + + + + + + + <div class="tip home"><p>本篇文章将作为编程语言 <strong><span class='p red'>JAVA</span></strong> 的学习笔记,供以后查阅与复习使用。</p> +</div> +<div class="tip + + + + + + + + + + + + + + + + 栈与队列 + + http://refrain.cf/posts/6534ce06/ + 2022-12-31T06:18:56.000Z + 2023-01-09T06:18:56.000Z + + + 本人书写的数据结构教程 + + + + + + + + + + + + + + + + 线性表 + + http://refrain.cf/posts/40f24371/ + 2022-12-24T13:23:10.000Z + 2022-12-31T13:23:10.000Z + + + 本人书写的数据结构教程 + + + + + + + + + + + + + + Win10/11任务栏透明美化 + + http://refrain.cf/posts/b67f488/ + 2022-12-02T12:18:18.000Z + 2022-12-02T12:18:18.000Z + + + win10/11任务栏美化教程 + + + + + + + + + + + + + + + + 数据结构绪论 + + http://refrain.cf/posts/b06cc6ec/ + 2022-09-27T08:42:26.000Z + 2022-12-12T08:42:26.000Z + + + 本人书写的数据结构教程 + + + + + + + + + + + + + + 机器学习基本概念与知识 + + http://refrain.cf/posts/75378e04/ + 2022-08-20T02:42:24.000Z + 2022-08-20T02:42:24.000Z + + + 机器学习基础知识清单 + + + + + + + + + + + + 使用numpy实现k-means聚类算法 + + http://refrain.cf/posts/170bc017/ + 2022-08-17T01:03:20.000Z + 2022-08-17T01:03:20.000Z + + + + + + + <h2 id="k-means-算法基础原理"><a href="#k-means-算法基础原理" class="headerlink" title="k-means 算法基础原理"></a>k-means 算法基础原理</h2><blockquote> +<p>本文注重对 + + + + + + + + + + + + + + + + + + 使用Numpy实现k-Nearest-Neighbor算法 + + http://refrain.cf/posts/775eb342/ + 2022-08-14T06:08:58.000Z + 2022-08-14T06:08:58.000Z + + + + + + + <h2 id="KNN-算法基本原理"><a href="#KNN-算法基本原理" class="headerlink" title="KNN 算法基本原理"></a>KNN 算法基本原理</h2><p><strong>kNN 算法的核心思想是用距离最近的 k + + + + + + + + + + + + + + + + + + + + Python实现决策树(Decision Tree)算法 + + http://refrain.cf/posts/54c08517/ + 2022-08-07T06:13:25.000Z + 2022-08-07T06:13:25.000Z + + + + + + + <h2 id="决策树算法基础原理分析"><a href="#决策树算法基础原理分析" class="headerlink" title="决策树算法基础原理分析"></a>决策树算法基础原理分析</h2><h3 id="信息的不纯度-决定决策树分支的指标"><a + + + + + + + + + + + + + + + + + + Numpy实现逻辑回归(Logistic Regression)算法 + + http://refrain.cf/posts/355699d5/ + 2022-08-06T09:20:58.000Z + 2022-08-06T09:20:58.000Z + + + + + + + <blockquote> +<p>前言:本文旨在对如何使用 numpy 实现逻辑回归拟合的过程做具体分析,有关逻辑回归原理部分不做过多论述。</p> +</blockquote> +<h2 id="数据集准备"><a href="#数据集准备" class="headerlink" + + + + + + + + + + + + + + + + + + + + 线性回归 (Linear Regression) + + http://refrain.cf/posts/20642/ + 2022-07-22T06:59:02.000Z + 2022-07-22T06:59:02.000Z + + + <h3 id="利用-Numpy-实现简单的机器学习算法"><a href="#利用-Numpy-实现简单的机器学习算法" class="headerlink" title="利用 Numpy 实现简单的机器学习算法"></a>利用 Numpy 实现简单的机器学习算法</h3><blockquote> +<p>线性回归(Linear Regression) 可能是最流行的机器学习算法。线性回归就是要找一条直线,并且让这条直线尽可能地拟合散点图中的数据点。</p> +</blockquote> + + + + + + + + + + + + + + + + + + 关于cloudflare对网站搭建的使用 + + http://refrain.cf/posts/47341/ + 2022-07-18T10:54:13.000Z + 2022-07-18T10:54:13.000Z + + + <h2 id="为-hexo-博客添加自定义域名"><a href="#为-hexo-博客添加自定义域名" class="headerlink" title="为 hexo 博客添加自定义域名"></a>为 hexo 博客添加自定义域名</h2><blockquote> +<p>域名注册方面不做赘述,下面详细讲述利用 cloudflare 中 DNS 解析域名至 hexo 博客站的过程</p> +</blockquote> + + + + + + + + + + + + + diff --git a/categories/DNS/index.html b/categories/DNS/index.html new file mode 100644 index 000000000..1750b49fa --- /dev/null +++ b/categories/DNS/index.html @@ -0,0 +1,347 @@ +分类: DNS | 希亚的西红柿のBlog
分类 - DNS
2022
关于cloudflare对网站搭建的使用
关于cloudflare对网站搭建的使用
\ No newline at end of file diff --git a/categories/Java/index.html b/categories/Java/index.html new file mode 100644 index 000000000..fc70dadce --- /dev/null +++ b/categories/Java/index.html @@ -0,0 +1,347 @@ +分类: Java | 希亚的西红柿のBlog
分类 - Java
2023
JAVA学习笔记
JAVA学习笔记
\ No newline at end of file diff --git a/categories/index.html b/categories/index.html new file mode 100644 index 000000000..d7ddb3f3f --- /dev/null +++ b/categories/index.html @@ -0,0 +1,430 @@ +categories | 希亚的西红柿のBlog
\ No newline at end of file diff --git "a/categories/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" "b/categories/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" new file mode 100644 index 000000000..e64498312 --- /dev/null +++ "b/categories/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" @@ -0,0 +1,347 @@ +分类: 数据结构 | 希亚的西红柿のBlog
分类 - 数据结构
2022
栈与队列
栈与队列
线性表
线性表
数据结构绪论
数据结构绪论
\ No newline at end of file diff --git "a/categories/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" "b/categories/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" new file mode 100644 index 000000000..199fc2ad6 --- /dev/null +++ "b/categories/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" @@ -0,0 +1,347 @@ +分类: 机器学习 | 希亚的西红柿のBlog
\ No newline at end of file diff --git "a/categories/\347\231\276\345\256\235\347\256\261/index.html" "b/categories/\347\231\276\345\256\235\347\256\261/index.html" new file mode 100644 index 000000000..8ab472001 --- /dev/null +++ "b/categories/\347\231\276\345\256\235\347\256\261/index.html" @@ -0,0 +1,347 @@ +分类: 百宝箱 | 希亚的西红柿のBlog
分类 - 百宝箱
2023
Windows/Ubuntu双系统安装教程
Windows/Ubuntu双系统安装教程
2022
Win10/11任务栏透明美化
Win10/11任务栏透明美化
\ No newline at end of file diff --git a/comments/index.html b/comments/index.html new file mode 100644 index 000000000..b6b80aa1b --- /dev/null +++ b/comments/index.html @@ -0,0 +1,474 @@ +留言板 | 希亚的西红柿のBlog

来自希亚的西红柿的留言:

有什么想问的?
有什么想说的?
有什么想吐槽的?
哪怕是有什么想吃的,都可以告诉我哦~

自动书记人偶竭诚为您服务!


评论
\ No newline at end of file diff --git a/css/custom.css b/css/custom.css new file mode 100644 index 000000000..8d641f13f --- /dev/null +++ b/css/custom.css @@ -0,0 +1 @@ +body,html{font-family:"LXGW WenKai"}#article-container code{font-family:"LXGW WenKai",consolas,Menlo,"PingFang SC","Microsoft YaHei",sans-serif!important}.card-clock-location,.card-clock-windDir,span.card-clock-weather{font-family:LXGW WenKai!important}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-body{left:-66px!important}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-body:hover{left:0!important}#footer-wrap .copyright{color:var(--font-color)}#web_bg{background-color:#ffdee9;background-image:linear-gradient(45deg,#ffdee9 0,#b5fffc 100%)}[data-theme=dark] #web_bg{background-color:#74ebd5;background-image:linear-gradient(180deg,#74ebd5 0,#9face6 100%)}#aside-content .card-widget,#content-inner>div:not([class]),#recent-posts>.recent-post-item,#sidebar #sidebar-menus,body #page-header.not-top-img #nav{background:rgba(255,255,255,.5)}@media screen and (max-width:768px){#aside-content .card-widget#card-toc,#sidebar #sidebar-menus{backdrop-filter:blur(10px)}}#nav .menus_items .menus_item .menus_item_child{background:rgba(255,255,255,.8)}[data-theme=dark] #nav .menus_items .menus_item .menus_item_child{background:rgba(0,0,0,.8)}[data-theme=dark] #aside-content .card-widget,[data-theme=dark] #content-inner>div:not([class]),[data-theme=dark] #recent-posts>.recent-post-item,[data-theme=dark] #sidebar #sidebar-menus,[data-theme=dark] body #page-header.not-top-img #nav{background:rgba(0,0,0,.5)}.fas.fa-envelope{color:#39c7f3}.fab.fa-bilibili{color:#00b3ef}.fas.fa-rss{color:#d68650}.fab.fa-telegram{color:#34a9e5}#footer-wrap .footer_custom_text img{vertical-align:middle}#footer-wrap .footer_custom_text a{line-height:1}:root{--cursor-arrow:url("pointer/Arrow.cur");--cursor-backrunning:url("pointer/Hand2.cur");--cursor-ban:url("pointer/NO.cur");--cursor-help:url("pointer/Help.cur");--cursor-link:url("pointer/Hand.cur");--cursor-input:url("pointer/IBeam.cur");--cursor-copy:url("pointer/Copy.cur")}body,html{cursor:var(--cursor-arrow),auto}#article-container img{cursor:var(--cursor-backrunning),auto}a:hover{cursor:var(--cursor-link),auto}input:hover,textarea:hover{cursor:var(--cursor-input),auto}summary:hover{cursor:var(--cursor-help),auto!important}#twikoo svg,button:hover{cursor:var(--cursor-backrunning),auto}#footer-wrap a:hover{cursor:var(--cursor-link),auto}#pagination .page-number:hover{cursor:var(--cursor-link),auto}#nav .site-page:hover{cursor:var(--cursor-link),auto}#article-container .tabs>.nav-tabs>.tab.active button{cursor:var(--cursor-arrow),auto}:disabled{cursor:var(--cursor-ban),auto!important}.fas.fa-paste.copy-button{cursor:var(--cursor-copy),auto!important}::-webkit-scrollbar-thumb{background-color:#80c8f8;border-radius:4px;box-shadow:0 0 1px rgba(255,255,255,.01)}[data-theme=dark] ::-webkit-scrollbar-thumb{background-color:#2a2a2a}#nav .site-page:not(.child):after{border-radius:1.5px}#aside-content .card-categories ul.card-category-list li,#aside-content .card-info #card-info-btn{border-radius:6px}#algolia-search .search-dialog .ais-Pagination .ais-Pagination-item .ais-Pagination-link,#aside-content #card-toc .toc-content .toc-link,#aside-content .aside-list>.aside-list-item .thumbnail,#aside-content .card-archives ul.card-archive-list li,#aside-content .card-archives ul.card-archive-list>.card-archive-list-item a,#aside-content .card-categories ul.card-category-list>.card-category-list-item a,#sidebar #sidebar-menus .menus_items .site-page,.article-sort-item-img,.layout>div:not(.recent-posts) .pagination .page-number{border-radius:6px}.pace .pace-progress{background-color:#80c8f8;border-radius:1px} \ No newline at end of file diff --git a/css/index.css b/css/index.css new file mode 100644 index 000000000..a6fe12ca5 --- /dev/null +++ b/css/index.css @@ -0,0 +1 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}#article-container .flink .flink-item-desc,#article-container .flink .flink-item-name,#aside-content .card-archives ul.card-archive-list>.card-archive-list-item a span,#aside-content .card-categories ul.card-category-list>.card-category-list-item a span,#nav #blog-info,#pagination .next_info,#pagination .prev_info,#sidebar #sidebar-menus .menus_items .site-page,.limit-one-line,.site-data>a .headline{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}#article-container figure.gallery-group .gallery-group-name,#article-container figure.gallery-group p,#aside-content .aside-list>.aside-list-item .content>.comment,#aside-content .aside-list>.aside-list-item .content>.name,#aside-content .aside-list>.aside-list-item .content>.title,#post-info .post-title,#recent-posts>.recent-post-item>.recent-post-info>.article-title,#recent-posts>.recent-post-item>.recent-post-info>.content,.article-sort-item-title,.error404 #error-wrap .error-content .error-info .error_subtitle,.limit-more-line,.relatedPosts>.relatedPosts-list .content .title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}#article-container a.headerlink:after,#article-container h1:before,#article-container h2:before,#article-container h3:before,#article-container h4:before,#article-container h5:before,#article-container h6:before,#article-container hr:before,#post .post-copyright:before,#post .post-outdate-notice:before,.custom-hr:before,.fontawesomeIcon,.note:not(.no-icon)::before,.search-dialog hr:before{display:inline-block;font-weight:600;font-family:'Font Awesome 6 Free';text-rendering:auto;-webkit-font-smoothing:antialiased}#aside-content .card-widget,#recent-posts>.recent-post-item,.cardHover,.error404 #error-wrap .error-content,.layout>.recent-posts .pagination>:not(.space),.layout>div:first-child:not(.recent-posts){border-radius:8px;background:var(--card-bg);-webkit-box-shadow:var(--card-box-shadow);box-shadow:var(--card-box-shadow);-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}#aside-content .card-widget:hover,#recent-posts>.recent-post-item:hover,.cardHover:hover,.error404 #error-wrap .error-content:hover,.layout>.recent-posts .pagination>:not(.space):hover,.layout>div:first-child:not(.recent-posts):hover{-webkit-box-shadow:var(--card-hover-box-shadow);box-shadow:var(--card-hover-box-shadow)}#aside-content .aside-list>.aside-list-item .thumbnail :first-child,#recent-posts>.recent-post-item .post_cover .post-bg,.article-sort-item-img :first-child,.error404 #error-wrap .error-content .error-img img,.imgHover{width:100%;height:100%;-webkit-transition:filter 375ms ease-in .2s,-webkit-transform .6s;-moz-transition:filter 375ms ease-in .2s,-moz-transform .6s;-o-transition:filter 375ms ease-in .2s,-o-transform .6s;-ms-transition:filter 375ms ease-in .2s,-ms-transform .6s;transition:filter 375ms ease-in .2s,transform .6s;object-fit:cover}#aside-content .aside-list>.aside-list-item .thumbnail :first-child:hover,#recent-posts>.recent-post-item .post_cover .post-bg:hover,.article-sort-item-img :first-child:hover,.error404 #error-wrap .error-content .error-img img:hover,.imgHover:hover{-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-o-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}#pagination .next-post:hover .cover,#pagination .prev-post:hover .cover,.postImgHover:hover .cover,.relatedPosts>.relatedPosts-list>div:hover .cover{opacity:.8;-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-o-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}#pagination .next-post .cover,#pagination .prev-post .cover,.postImgHover .cover,.relatedPosts>.relatedPosts-list>div .cover{position:absolute;width:100%;height:100%;opacity:.4;-webkit-transition:all .6s,filter 375ms ease-in .2s;-moz-transition:all .6s,filter 375ms ease-in .2s;-o-transition:all .6s,filter 375ms ease-in .2s;-ms-transition:all .6s,filter 375ms ease-in .2s;transition:all .6s,filter 375ms ease-in .2s;object-fit:cover}#algolia-search .search-dialog .ais-Hits-list,.category-lists ul,.list-beauty{list-style:none}#algolia-search .search-dialog .ais-Hits-list li,.category-lists ul li,.list-beauty li{position:relative;padding:.12em .4em .12em 1.4em}#algolia-search .search-dialog .ais-Hits-list li:hover:before,.category-lists ul li:hover:before,.list-beauty li:hover:before{border-color:var(--pseudo-hover)}#algolia-search .search-dialog .ais-Hits-list li:before,.category-lists ul li:before,.list-beauty li:before{position:absolute;top:.67em;left:0;width:.43em;height:.43em;border:.215em solid #49b1f5;border-radius:.43em;background:0 0;content:'';cursor:pointer;-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-o-transition:all .3s ease-out;-ms-transition:all .3s ease-out;transition:all .3s ease-out}#article-container hr,.custom-hr,.search-dialog hr{position:relative;margin:40px auto;border:2px dashed var(--hr-border);width:calc(100% - 4px)}#article-container hr:hover:before,.custom-hr:hover:before,.search-dialog hr:hover:before{left:calc(95% - 20px)}#article-container hr:before,.custom-hr:before,.search-dialog hr:before{position:absolute;top:-10px;left:5%;z-index:1;color:var(--hr-before-color);content:'\f0c4';font-size:20px;line-height:1;-webkit-transition:all 1s ease-in-out;-moz-transition:all 1s ease-in-out;-o-transition:all 1s ease-in-out;-ms-transition:all 1s ease-in-out;transition:all 1s ease-in-out}.scroll-down-effects{-webkit-animation:scroll-down-effect 1.5s infinite;-moz-animation:scroll-down-effect 1.5s infinite;-o-animation:scroll-down-effect 1.5s infinite;-ms-animation:scroll-down-effect 1.5s infinite;animation:scroll-down-effect 1.5s infinite}.reward-main{-webkit-animation:donate_effcet .3s .1s ease both;-moz-animation:donate_effcet .3s .1s ease both;-o-animation:donate_effcet .3s .1s ease both;-ms-animation:donate_effcet .3s .1s ease both;animation:donate_effcet .3s .1s ease both}@-moz-keyframes scroll-down-effect{0%{top:0;opacity:.4}50%{top:-16px;opacity:1;-ms-filter:none;filter:none}100%{top:0;opacity:.4}}@-webkit-keyframes scroll-down-effect{0%{top:0;opacity:.4}50%{top:-16px;opacity:1;-ms-filter:none;filter:none}100%{top:0;opacity:.4}}@-o-keyframes scroll-down-effect{0%{top:0;opacity:.4}50%{top:-16px;opacity:1;-ms-filter:none;filter:none}100%{top:0;opacity:.4}}@keyframes scroll-down-effect{0%{top:0;opacity:.4}50%{top:-16px;opacity:1;-ms-filter:none;filter:none}100%{top:0;opacity:.4}}@-moz-keyframes header-effect{0%{opacity:0;-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes header-effect{0%{opacity:0;-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-o-keyframes header-effect{0%{opacity:0;-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@keyframes header-effect{0%{opacity:0;-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes headerNoOpacity{0%{-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes headerNoOpacity{0%{-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-o-keyframes headerNoOpacity{0%{-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@keyframes headerNoOpacity{0%{-webkit-transform:translateY(-50px);-moz-transform:translateY(-50px);-o-transform:translateY(-50px);-ms-transform:translateY(-50px);transform:translateY(-50px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes bottom-top{0%{margin-top:50px;opacity:0}100%{margin-top:0;opacity:1;-ms-filter:none;filter:none}}@-webkit-keyframes bottom-top{0%{margin-top:50px;opacity:0}100%{margin-top:0;opacity:1;-ms-filter:none;filter:none}}@-o-keyframes bottom-top{0%{margin-top:50px;opacity:0}100%{margin-top:0;opacity:1;-ms-filter:none;filter:none}}@keyframes bottom-top{0%{margin-top:50px;opacity:0}100%{margin-top:0;opacity:1;-ms-filter:none;filter:none}}@-moz-keyframes titleScale{0%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-webkit-keyframes titleScale{0%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-o-keyframes titleScale{0%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes titleScale{0%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-moz-keyframes search_close{0%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}@-webkit-keyframes search_close{0%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}@-o-keyframes search_close{0%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}@keyframes search_close{0%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}@-moz-keyframes to_show{0%{opacity:0}100%{opacity:1;-ms-filter:none;filter:none}}@-webkit-keyframes to_show{0%{opacity:0}100%{opacity:1;-ms-filter:none;filter:none}}@-o-keyframes to_show{0%{opacity:0}100%{opacity:1;-ms-filter:none;filter:none}}@keyframes to_show{0%{opacity:0}100%{opacity:1;-ms-filter:none;filter:none}}@-moz-keyframes to_hide{0%{opacity:1;-ms-filter:none;filter:none}100%{opacity:0}}@-webkit-keyframes to_hide{0%{opacity:1;-ms-filter:none;filter:none}100%{opacity:0}}@-o-keyframes to_hide{0%{opacity:1;-ms-filter:none;filter:none}100%{opacity:0}}@keyframes to_hide{0%{opacity:1;-ms-filter:none;filter:none}100%{opacity:0}}@-moz-keyframes ribbon_to_show{0%{opacity:0}100%{opacity:.6}}@-webkit-keyframes ribbon_to_show{0%{opacity:0}100%{opacity:.6}}@-o-keyframes ribbon_to_show{0%{opacity:0}100%{opacity:.6}}@keyframes ribbon_to_show{0%{opacity:0}100%{opacity:.6}}@-moz-keyframes avatar_turn_around{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes avatar_turn_around{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-o-keyframes avatar_turn_around{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes avatar_turn_around{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes sub_menus{0%{opacity:0;-webkit-transform:translateY(10px);-moz-transform:translateY(10px);-o-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes sub_menus{0%{opacity:0;-webkit-transform:translateY(10px);-moz-transform:translateY(10px);-o-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-o-keyframes sub_menus{0%{opacity:0;-webkit-transform:translateY(10px);-moz-transform:translateY(10px);-o-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@keyframes sub_menus{0%{opacity:0;-webkit-transform:translateY(10px);-moz-transform:translateY(10px);-o-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes donate_effcet{0%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);-o-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes donate_effcet{0%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);-o-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-o-keyframes donate_effcet{0%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);-o-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@keyframes donate_effcet{0%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);-o-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes sidebarItem{0%{-webkit-transform:translateX(200px);-moz-transform:translateX(200px);-o-transform:translateX(200px);-ms-transform:translateX(200px);transform:translateX(200px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes sidebarItem{0%{-webkit-transform:translateX(200px);-moz-transform:translateX(200px);-o-transform:translateX(200px);-ms-transform:translateX(200px);transform:translateX(200px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}@-o-keyframes sidebarItem{0%{-webkit-transform:translateX(200px);-moz-transform:translateX(200px);-o-transform:translateX(200px);-ms-transform:translateX(200px);transform:translateX(200px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}@keyframes sidebarItem{0%{-webkit-transform:translateX(200px);-moz-transform:translateX(200px);-o-transform:translateX(200px);-ms-transform:translateX(200px);transform:translateX(200px)}100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}:root{--global-font-size:15px;--global-bg:#fff;--font-color:#4c4948;--hr-border:#a4d8fa;--hr-before-color:#80c8f8;--search-bg:#f6f8fa;--search-input-color:#4c4948;--search-a-color:#4c4948;--preloader-bg:#37474f;--preloader-color:#fff;--tab-border-color:#f0f0f0;--tab-botton-bg:#f0f0f0;--tab-botton-color:#1f2d3d;--tab-button-hover-bg:#dcdcdc;--tab-button-active-bg:#fff;--card-bg:#fff;--sidebar-bg:#f6f8fa;--btn-hover-color:#ff7242;--btn-color:#fff;--btn-bg:#49b1f5;--text-bg-hover:rgba(73,177,245,0.7);--light-grey:#eee;--dark-grey:#cacaca;--white:#fff;--text-highlight-color:#1f2d3d;--blockquote-color:#6a737d;--blockquote-bg:rgba(73,177,245,0.1);--reward-pop:#f5f5f5;--toc-link-color:#666261;--card-box-shadow:0 3px 8px 6px rgba(7,17,27,0.05);--card-hover-box-shadow:0 3px 8px 6px rgba(7,17,27,0.09);--pseudo-hover:#ff7242;--headline-presudo:#a0a0a0;--scrollbar-color:#49b1f5;--default-bg-color:#49b1f5;--zoom-bg:#fff;--mark-bg:rgba(0,0,0,0.3)}body{position:relative;min-height:100%;background:var(--global-bg);color:var(--font-color);font-size:var(--global-font-size);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Lato,Roboto,'PingFang SC','Microsoft YaHei',sans-serif;line-height:2;-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:var(--scrollbar-color)}::-webkit-scrollbar-track{background-color:transparent}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-color) transparent}input::placeholder{color:var(--font-color)}#web_bg{position:fixed;z-index:-999;width:100%;height:100%;background:0 0;background-attachment:local;background-position:center;background-size:cover;background-repeat:no-repeat}h1,h2,h3,h4,h5,h6{position:relative;margin:20px 0 14px;color:var(--text-highlight-color);font-weight:700}h1 code,h2 code,h3 code,h4 code,h5 code,h6 code{font-size:inherit!important}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.table-wrap{overflow-x:scroll;margin:0 0 20px}table{display:table;width:100%;border-spacing:0;border-collapse:collapse;empty-cells:show}table thead{background:rgba(153,169,191,.1)}table td,table th{padding:6px 12px;border:1px solid var(--light-grey);vertical-align:middle}::selection{background:#00c4b6;color:#f7f7f7}button{padding:0;outline:0;border:none;background:0 0;cursor:pointer;touch-action:manipulation}a{color:#99a9bf;text-decoration:none;word-wrap:break-word;-webkit-transition:all .2s;-moz-transition:all .2s;-o-transition:all .2s;-ms-transition:all .2s;transition:all .2s;overflow-wrap:break-word}a:hover{color:#49b1f5}.is-center{text-align:center}.pull-left{float:left}.pull-right{float:right}img:not([src]),img[src='']{opacity:0}img[data-lazy-src]:not(.loaded){filter:blur(8px) brightness(1)}img[data-lazy-src].error{filter:none}.img-alt{margin:-10px 0 10px;color:#858585}.img-alt:hover{text-decoration:none!important}blockquote{margin:0 0 20px;padding:12px 15px;border-left:3px solid #49b1f5;background-color:var(--blockquote-bg);color:var(--blockquote-color)}blockquote footer cite:before{padding:0 5px;content:'—'}blockquote>:last-child{margin-bottom:0!important}:root{--hl-color:#eff;--hl-bg:#212121;--hltools-bg:#1c1c1c;--hltools-color:rgba(238,255,255,0.8);--hlnumber-bg:#212121;--hlnumber-color:rgba(238,255,255,0.5);--hlscrollbar-bg:#353535;--hlexpand-bg:linear-gradient(180deg, rgba(33,33,33,0.6), rgba(33,33,33,0.9))}figure.highlight table{scrollbar-color:var(--hlscrollbar-bg) transparent}figure.highlight table::-webkit-scrollbar-thumb{background:var(--hlscrollbar-bg)}figure.highlight pre .deletion{color:#bf42bf}figure.highlight pre .addition{color:#105ede}figure.highlight pre .meta{color:#c792ea}figure.highlight pre .comment{color:#969896}figure.highlight pre .attribute,figure.highlight pre .css .class,figure.highlight pre .css .id,figure.highlight pre .css .pseudo,figure.highlight pre .html .doctype,figure.highlight pre .regexp,figure.highlight pre .ruby .constant,figure.highlight pre .tag .name,figure.highlight pre .variable,figure.highlight pre .xml .doctype,figure.highlight pre .xml .pi,figure.highlight pre .xml .tag .title{color:#ff5370}figure.highlight pre .tag{color:#89ddff}figure.highlight pre .command,figure.highlight pre .constant,figure.highlight pre .literal,figure.highlight pre .number,figure.highlight pre .params,figure.highlight pre .preprocessor{color:#f78c6c}figure.highlight pre .built_in{color:#ffcb6b}figure.highlight pre .css .rules .attribute,figure.highlight pre .formula,figure.highlight pre .header,figure.highlight pre .inheritance,figure.highlight pre .number,figure.highlight pre .ruby .class .title,figure.highlight pre .ruby .symbol,figure.highlight pre .special,figure.highlight pre .string,figure.highlight pre .value,figure.highlight pre .xml .cdata{color:#c3e88d}figure.highlight pre .css .hexcolor,figure.highlight pre .keyword,figure.highlight pre .title{color:#89ddff}figure.highlight pre .coffeescript .title,figure.highlight pre .function,figure.highlight pre .javascript .title,figure.highlight pre .perl .sub,figure.highlight pre .python .decorator,figure.highlight pre .python .title,figure.highlight pre .ruby .function .title,figure.highlight pre .ruby .title .keyword{color:#82aaff}figure.highlight pre .javascript .function,figure.highlight pre .tag .attr{color:#c792ea}#article-container figure.highlight .line.marked{background-color:rgba(97,97,97,.314)}#article-container figure.highlight table{display:block;overflow:auto;border:none}#article-container figure.highlight table td{padding:0;border:none}#article-container figure.highlight .gutter pre{padding-right:10px;padding-left:10px;background-color:var(--hlnumber-bg);color:var(--hlnumber-color);text-align:right}#article-container figure.highlight .code pre{padding-right:10px;padding-left:10px;width:100%}#article-container figure.highlight,#article-container pre{overflow:auto;margin:0 0 20px;padding:0;background:var(--hl-bg);color:var(--hl-color);line-height:1.6}#article-container code,#article-container pre{font-size:var(--global-font-size);font-family:consolas,Menlo,'PingFang SC','Microsoft YaHei',sans-serif!important}#article-container code{padding:2px 4px;background:rgba(27,31,35,.05);color:#f47466}#article-container pre{padding:10px 20px}#article-container pre code{padding:0;background:0 0;color:var(--hl-color);text-shadow:none}#article-container figure.highlight{position:relative}#article-container figure.highlight pre{margin:0;padding:8px 0;border:none}#article-container figure.highlight .caption,#article-container figure.highlight figcaption{padding:6px 0 2px 14px;font-size:var(--global-font-size);line-height:1em}#article-container figure.highlight .caption a,#article-container figure.highlight figcaption a{float:right;padding-right:10px;color:var(--hl-color)}#article-container figure.highlight .caption a:hover,#article-container figure.highlight figcaption a:hover{border-bottom-color:var(--hl-color)}#article-container figure.highlight.copy-true{-webkit-user-select:all;-moz-user-select:all;-ms-user-select:all;user-select:all}#article-container figure.highlight.copy-true>pre,#article-container figure.highlight.copy-true>table{display:block!important;opacity:0}#article-container .highlight-tools{position:relative;display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-align:center;-moz-box-align:center;-o-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;overflow:hidden;min-height:24px;height:2.15em;background:var(--hltools-bg);color:var(--hltools-color);font-size:var(--global-font-size)}#article-container .highlight-tools.closed~*{display:none}#article-container .highlight-tools .expand{position:absolute;padding:.57em .7em;cursor:pointer;-webkit-transition:-webkit-transform .3s;-moz-transition:-moz-transform .3s;-o-transition:-o-transform .3s;-ms-transition:-ms-transform .3s;transition:transform .3s}#article-container .highlight-tools .expand+.code-lang{left:1.7em}#article-container .highlight-tools .expand.closed{-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s;-webkit-transform:rotate(-90deg)!important;-moz-transform:rotate(-90deg)!important;-o-transform:rotate(-90deg)!important;-ms-transform:rotate(-90deg)!important;transform:rotate(-90deg)!important}#article-container .highlight-tools .code-lang{position:absolute;left:14px;text-transform:uppercase;font-weight:700;font-size:1.15em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#article-container .highlight-tools .copy-notice{position:absolute;right:2.4em;opacity:0;-webkit-transition:opacity .4s;-moz-transition:opacity .4s;-o-transition:opacity .4s;-ms-transition:opacity .4s;transition:opacity .4s}#article-container .highlight-tools .copy-button{position:absolute;right:14px;cursor:pointer;-webkit-transition:color .2s;-moz-transition:color .2s;-o-transition:color .2s;-ms-transition:color .2s;transition:color .2s}#article-container .highlight-tools .copy-button:hover{color:#49b1f5}#article-container .gutter{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#article-container .gist table{width:auto}#article-container .gist table td{border:none}#article-container figure.highlight{margin:0 0 24px;border-radius:7px;-webkit-box-shadow:0 5px 10px 0 rgba(0,0,0,.4);box-shadow:0 5px 10px 0 rgba(0,0,0,.4);-webkit-transform:translateZ(0)}#article-container figure.highlight .highlight-tools:after{position:absolute;left:14px;width:12px;height:12px;border-radius:50%;background:#fc625d;-webkit-box-shadow:20px 0 #fdbc40,40px 0 #35cd4b;box-shadow:20px 0 #fdbc40,40px 0 #35cd4b;content:' '}#article-container figure.highlight .highlight-tools .expand{right:0}#article-container figure.highlight .highlight-tools .expand.closed{-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s;-webkit-transform:rotate(90deg)!important;-moz-transform:rotate(90deg)!important;-o-transform:rotate(90deg)!important;-ms-transform:rotate(90deg)!important;transform:rotate(90deg)!important}#article-container figure.highlight .highlight-tools .expand~.copy-notice{right:3.45em}#article-container figure.highlight .highlight-tools .expand~.copy-button{right:2.1em}#article-container figure.highlight .highlight-tools .code-lang{left:75px}#article-container .code-expand-btn{position:absolute;bottom:0;z-index:10;width:100%;background:var(--hlexpand-bg);text-align:center;font-size:var(--global-font-size);cursor:pointer}#article-container .code-expand-btn i{padding:6px 0;color:var(--hlnumber-color);-webkit-animation:code-expand-key 1.2s infinite;-moz-animation:code-expand-key 1.2s infinite;-o-animation:code-expand-key 1.2s infinite;-ms-animation:code-expand-key 1.2s infinite;animation:code-expand-key 1.2s infinite}#article-container .code-expand-btn.expand-done>i{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}#article-container .code-expand-btn.expand-done+pre,#article-container .code-expand-btn.expand-done+table{margin-bottom:1.8em}#article-container .code-expand-btn:not(.expand-done)~pre,#article-container .code-expand-btn:not(.expand-done)~table{overflow:hidden;height:360px}@-moz-keyframes code-expand-key{0%{opacity:.6}50%{opacity:.1}100%{opacity:.6}}@-webkit-keyframes code-expand-key{0%{opacity:.6}50%{opacity:.1}100%{opacity:.6}}@-o-keyframes code-expand-key{0%{opacity:.6}50%{opacity:.1}100%{opacity:.6}}@keyframes code-expand-key{0%{opacity:.6}50%{opacity:.1}100%{opacity:.6}}.error404 #error-wrap{position:absolute;top:50%;right:0;left:0;margin:0 auto;padding:60px 20px 0;max-width:1000px;-webkit-transform:translate(0,-50%);-moz-transform:translate(0,-50%);-o-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%)}.error404 #error-wrap .error-content{overflow:hidden;margin:0 20px;height:360px}@media screen and (max-width:768px){.error404 #error-wrap .error-content{margin:0;height:500px}}.error404 #error-wrap .error-content .error-img{display:inline-block;overflow:hidden;width:50%;height:100%}@media screen and (max-width:768px){.error404 #error-wrap .error-content .error-img{width:100%;height:45%}}.error404 #error-wrap .error-content .error-img img{background-color:#49b1f5}.error404 #error-wrap .error-content .error-info{display:-webkit-inline-box;display:-moz-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-box;display:inline-flex;-webkit-box-orient:vertical;-moz-box-orient:vertical;-o-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-moz-box-pack:center;-o-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-ms-flex-line-pack:center;-webkit-align-content:center;align-content:center;width:50%;height:100%;vertical-align:top;text-align:center}@media screen and (max-width:768px){.error404 #error-wrap .error-content .error-info{width:100%;height:55%}}.error404 #error-wrap .error-content .error-info .error_title{margin-top:-.6em;font-size:9em}@media screen and (max-width:768px){.error404 #error-wrap .error-content .error-info .error_title{font-size:8em}}.error404 #error-wrap .error-content .error-info .error_subtitle{margin-top:-3em;word-break:break-word;font-size:1.6em;-webkit-line-clamp:2}.error404+#rightside{display:none}.article-sort{margin-left:10px;padding-left:20px;border-left:2px solid #aadafa}.article-sort-title{position:relative;margin-left:10px;padding-bottom:20px;padding-left:20px;font-size:1.72em}.article-sort-title:hover:before{border-color:var(--pseudo-hover)}.article-sort-title:before{position:absolute;top:calc(((100% - 36px)/ 2));left:-9px;z-index:1;width:10px;height:10px;border:5px solid #49b1f5;border-radius:10px;background:var(--card-bg);content:'';line-height:10px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.article-sort-title:after{position:absolute;bottom:0;left:0;z-index:0;width:2px;height:1.5em;background:#aadafa;content:''}.article-sort-item{position:relative;display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-align:center;-moz-box-align:center;-o-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;margin:0 0 20px 10px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.article-sort-item:hover:before{border-color:var(--pseudo-hover)}.article-sort-item:before{position:absolute;left:calc(-20px - 17px);width:6px;height:6px;border:3px solid #49b1f5;border-radius:6px;background:var(--card-bg);content:'';-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.article-sort-item.no-article-cover{height:80px}.article-sort-item.no-article-cover .article-sort-item-info{padding:0}.article-sort-item.year{font-size:1.43em}.article-sort-item.year:hover:before{border-color:#49b1f5}.article-sort-item.year:before{border-color:var(--pseudo-hover)}.article-sort-item-time{color:#858585;font-size:95%}.article-sort-item-time time{padding-left:6px;cursor:default}.article-sort-item-title{color:var(--font-color);font-size:1.1em;-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s;-webkit-line-clamp:2}.article-sort-item-title:hover{color:#49b1f5;-webkit-transform:translateX(10px);-moz-transform:translateX(10px);-o-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}.article-sort-item-img{overflow:hidden;width:80px;height:80px}.article-sort-item-info{-webkit-box-flex:1;-moz-box-flex:1;-o-box-flex:1;box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;padding:0 16px}.category-lists .category-title{font-size:2.57em}@media screen and (max-width:768px){.category-lists .category-title{font-size:2em}}.category-lists .category-list{margin-bottom:0}.category-lists .category-list a{color:var(--font-color)}.category-lists .category-list a:hover{color:#49b1f5}.category-lists .category-list .category-list-count{margin-left:8px;color:#858585}.category-lists .category-list .category-list-count:before{content:'('}.category-lists .category-list .category-list-count:after{content:')'}.category-lists ul{padding:0 0 0 20px}.category-lists ul ul{padding-left:4px}.category-lists ul li{position:relative;margin:6px 0;padding:.12em .4em .12em 1.4em}#body-wrap{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-orient:vertical;-moz-box-orient:vertical;-o-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:100vh}.layout{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-flex:1;-moz-box-flex:1;-o-box-flex:1;box-flex:1;-webkit-flex:1 auto;-ms-flex:1 auto;flex:1 auto;margin:0 auto;padding:40px 15px;max-width:1200px;width:100%}@media screen and (max-width:900px){.layout{-webkit-box-orient:vertical;-moz-box-orient:vertical;-o-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}@media screen and (max-width:768px){.layout{padding:20px 5px}}@media screen and (min-width:2000px){.layout{max-width:70%}}.layout>div:first-child:not(.recent-posts){-webkit-align-self:flex-start;align-self:flex-start;-ms-flex-item-align:start;padding:50px 40px}@media screen and (max-width:768px){.layout>div:first-child:not(.recent-posts){padding:36px 14px}}.layout>div:first-child{width:74%;-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}@media screen and (max-width:900px){.layout>div:first-child{width:100%!important}}.layout.hide-aside{max-width:1000px}@media screen and (min-width:2000px){.layout.hide-aside{max-width:1300px}}.layout.hide-aside>div{width:100%!important}.apple #page-header.full_page{background-attachment:scroll!important}.apple .avatar-img,.apple .flink-item-icon,.apple .recent-post-item{-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-o-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0)}#article-container .flink{margin-bottom:20px}#article-container .flink .flink-list{overflow:auto;padding:10px 10px 0;text-align:center}#article-container .flink .flink-list>.flink-list-item{position:relative;float:left;overflow:hidden;margin:15px 7px;width:calc(100% / 3 - 15px);height:90px;border-radius:8px;line-height:17px;-webkit-transform:translateZ(0)}@media screen and (max-width:1024px){#article-container .flink .flink-list>.flink-list-item{width:calc(50% - 15px)!important}}@media screen and (max-width:600px){#article-container .flink .flink-list>.flink-list-item{width:calc(100% - 15px)!important}}#article-container .flink .flink-list>.flink-list-item:hover .flink-item-icon{margin-left:-10px;width:0}#article-container .flink .flink-list>.flink-list-item:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--text-bg-hover);content:'';-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;-ms-transition:-ms-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:scale(0);-moz-transform:scale(0);-o-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}#article-container .flink .flink-list>.flink-list-item:active:before,#article-container .flink .flink-list>.flink-list-item:focus:before,#article-container .flink .flink-list>.flink-list-item:hover:before{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}#article-container .flink .flink-list>.flink-list-item a{color:var(--font-color);text-decoration:none}#article-container .flink .flink-list>.flink-list-item a .flink-item-icon{float:left;overflow:hidden;margin:15px 10px;width:60px;height:60px;border-radius:35px;-webkit-transition:width .3s ease-out;-moz-transition:width .3s ease-out;-o-transition:width .3s ease-out;-ms-transition:width .3s ease-out;transition:width .3s ease-out}#article-container .flink .flink-list>.flink-list-item a .flink-item-icon img{width:100%;height:100%;-webkit-transition:filter 375ms ease-in .2s,-webkit-transform .3s;-moz-transition:filter 375ms ease-in .2s,-moz-transform .3s;-o-transition:filter 375ms ease-in .2s,-o-transform .3s;-ms-transition:filter 375ms ease-in .2s,-ms-transform .3s;transition:filter 375ms ease-in .2s,transform .3s;object-fit:cover}#article-container .flink .flink-list>.flink-list-item a .img-alt{display:none}#article-container .flink .flink-item-name{padding:16px 10px 0 0;height:40px;font-weight:700;font-size:1.43em}#article-container .flink .flink-item-desc{padding:16px 10px 16px 0;height:50px;font-size:.93em}#article-container .flink .flink-name{margin-bottom:5px;font-weight:700;font-size:1.5em}#recent-posts>.recent-post-item:not(:first-child){margin-top:20px}#recent-posts>.recent-post-item{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-orient:horizontal;-moz-box-orient:horizontal;-o-box-orient:horizontal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-moz-box-align:center;-o-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;overflow:hidden;height:16.8em}@media screen and (max-width:768px){#recent-posts>.recent-post-item{-webkit-box-orient:vertical;-moz-box-orient:vertical;-o-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;height:auto}}#recent-posts>.recent-post-item:hover img.post-bg{-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-o-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}#recent-posts>.recent-post-item.ads-wrap{display:block!important;height:auto!important}#recent-posts>.recent-post-item .post_cover{overflow:hidden;width:42%;height:100%}@media screen and (max-width:768px){#recent-posts>.recent-post-item .post_cover{width:100%;height:230px}}#recent-posts>.recent-post-item .post_cover.right{-webkit-box-ordinal-group:1;-moz-box-ordinal-group:1;-o-box-ordinal-group:1;-ms-flex-order:1;-webkit-order:1;order:1}@media screen and (max-width:768px){#recent-posts>.recent-post-item .post_cover.right{-webkit-box-ordinal-group:0;-moz-box-ordinal-group:0;-o-box-ordinal-group:0;-ms-flex-order:0;-webkit-order:0;order:0}}#recent-posts>.recent-post-item>.recent-post-info{padding:0 40px;width:58%}@media screen and (max-width:768px){#recent-posts>.recent-post-item>.recent-post-info{padding:20px 20px 30px;width:100%}}#recent-posts>.recent-post-item>.recent-post-info.no-cover{width:100%}@media screen and (max-width:768px){#recent-posts>.recent-post-item>.recent-post-info.no-cover{padding:30px 20px}}#recent-posts>.recent-post-item>.recent-post-info>.article-title{color:var(--text-highlight-color);font-size:1.55em;line-height:1.4;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out;-webkit-line-clamp:2}@media screen and (max-width:768px){#recent-posts>.recent-post-item>.recent-post-info>.article-title{font-size:1.43em}}#recent-posts>.recent-post-item>.recent-post-info>.article-title:hover{color:#49b1f5}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap{margin:6px 0;color:#858585;font-size:.9em}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap>.post-meta-date{cursor:default}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap .sticky{color:#ff7242}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap i{margin:0 4px 0 0}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap .fa-spinner{margin:0}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap .article-meta-label{padding-right:4px}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap .article-meta-separator{margin:0 6px}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap .article-meta-link{margin:0 4px}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap a{color:#858585}#recent-posts>.recent-post-item>.recent-post-info>.article-meta-wrap a:hover{color:#49b1f5;text-decoration:underline}#recent-posts>.recent-post-item>.recent-post-info>.content{-webkit-line-clamp:2}.tag-cloud-list a{display:inline-block;padding:0 8px;-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}.tag-cloud-list a:hover{color:#49b1f5!important;-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-o-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}@media screen and (max-width:768px){.tag-cloud-list a{zoom:.85}}.tag-cloud-title{font-size:2.57em}@media screen and (max-width:768px){.tag-cloud-title{font-size:2em}}h1.page-title+.tag-cloud-list{text-align:left}#aside-content{width:26%}@media screen and (min-width:900px){#aside-content{padding-left:15px}}@media screen and (max-width:900px){#aside-content{width:100%}}#aside-content>.card-widget:first-child{margin-top:0}@media screen and (max-width:900px){#aside-content>.card-widget:first-child{margin-top:20px}}#aside-content .card-widget{position:relative;overflow:hidden;margin-top:20px;padding:20px 24px}#aside-content .card-info .author-info__name{font-weight:500;font-size:1.57em}#aside-content .card-info .author-info__description{margin-top:-.42em}#aside-content .card-info .card-info-data{margin:14px 0 4px}#aside-content .card-info .card-info-social-icons{margin:6px 0 -6px}#aside-content .card-info .card-info-social-icons .social-icon{margin:0 10px;color:var(--font-color);font-size:1.4em}#aside-content .card-info .card-info-social-icons i{-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}#aside-content .card-info .card-info-social-icons i:hover{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}#aside-content .card-info #card-info-btn{display:block;margin-top:14px;background-color:var(--btn-bg);color:var(--btn-color);text-align:center;line-height:2.4}#aside-content .card-info #card-info-btn:hover{background-color:var(--btn-hover-color)}#aside-content .card-info #card-info-btn span{padding-left:10px}#aside-content .item-headline{padding-bottom:6px;font-size:1.2em}#aside-content .item-headline span{margin-left:6px}@media screen and (min-width:900px){#aside-content .sticky_layout{position:sticky;position:-webkit-sticky;top:20px;-webkit-transition:top .3s;-moz-transition:top .3s;-o-transition:top .3s;-ms-transition:top .3s;transition:top .3s}}#aside-content .card-tag-cloud a{display:inline-block;padding:0 4px}#aside-content .card-tag-cloud a:hover{color:#49b1f5!important}#aside-content .aside-list>span{display:block;margin-bottom:10px;text-align:center}#aside-content .aside-list>.aside-list-item{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-align:center;-moz-box-align:center;-o-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;padding:6px 0}#aside-content .aside-list>.aside-list-item:first-child{padding-top:0}#aside-content .aside-list>.aside-list-item:not(:last-child){border-bottom:1px dashed #f5f5f5}#aside-content .aside-list>.aside-list-item:last-child{padding-bottom:0}#aside-content .aside-list>.aside-list-item .thumbnail{overflow:hidden;width:4.2em;height:4.2em}#aside-content .aside-list>.aside-list-item .content{-webkit-box-flex:1;-moz-box-flex:1;-o-box-flex:1;box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;padding-left:10px;word-break:break-all}#aside-content .aside-list>.aside-list-item .content>.name{-webkit-line-clamp:1}#aside-content .aside-list>.aside-list-item .content>.name,#aside-content .aside-list>.aside-list-item .content>time{display:block;color:#858585;font-size:85%}#aside-content .aside-list>.aside-list-item .content>.comment,#aside-content .aside-list>.aside-list-item .content>.title{color:var(--font-color);font-size:95%;line-height:1.5;-webkit-line-clamp:2}#aside-content .aside-list>.aside-list-item .content>.comment:hover,#aside-content .aside-list>.aside-list-item .content>.title:hover{color:#49b1f5}#aside-content .aside-list>.aside-list-item.no-cover{min-height:4.4em}#aside-content .card-archives ul.card-archive-list,#aside-content .card-categories ul.card-category-list{margin:0;padding:0;list-style:none}#aside-content .card-archives ul.card-archive-list>.card-archive-list-item a,#aside-content .card-categories ul.card-category-list>.card-category-list-item a{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-orient:horizontal;-moz-box-orient:horizontal;-o-box-orient:horizontal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;padding:3px 10px;color:var(--font-color);-webkit-transition:all .4s;-moz-transition:all .4s;-o-transition:all .4s;-ms-transition:all .4s;transition:all .4s}#aside-content .card-archives ul.card-archive-list>.card-archive-list-item a:hover,#aside-content .card-categories ul.card-category-list>.card-category-list-item a:hover{padding:3px 17px;background-color:var(--text-bg-hover)}#aside-content .card-archives ul.card-archive-list>.card-archive-list-item a span:first-child,#aside-content .card-categories ul.card-category-list>.card-category-list-item a span:first-child{-webkit-box-flex:1;-moz-box-flex:1;-o-box-flex:1;box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}#aside-content .card-categories .card-category-list.child{padding:0 0 0 16px}#aside-content .card-categories .card-category-list>.parent>a .card-category-list-name{width:70%!important}#aside-content .card-categories .card-category-list>.parent>a .card-category-list-count{width:calc(100% - 70% - 20px);text-align:right}#aside-content .card-categories .card-category-list>.parent i{float:right;margin-right:-.5em;padding:.5em;-webkit-transition:-webkit-transform .3s;-moz-transition:-moz-transform .3s;-o-transition:-o-transform .3s;-ms-transition:-ms-transform .3s;transition:transform .3s;-webkit-transform:rotate(0);-moz-transform:rotate(0);-o-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}#aside-content .card-categories .card-category-list>.parent i.expand{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-o-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}#aside-content .card-webinfo .webinfo .webinfo-item{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-align:center;-moz-box-align:center;-o-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;padding:2px 10px 0}#aside-content .card-webinfo .webinfo .webinfo-item div:first-child{-webkit-box-flex:1;-moz-box-flex:1;-o-box-flex:1;box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;padding-right:20px}@media screen and (min-width:901px){#aside-content #card-toc{right:0!important}}@media screen and (max-width:900px){#aside-content #card-toc{position:fixed;right:-100%;bottom:30px;z-index:100;max-width:380px;max-height:calc(100% - 60px);width:calc(100% - 80px);opacity:0;-webkit-transition:initial;-moz-transition:initial;-o-transition:initial;-ms-transition:initial;transition:initial;-webkit-transform-origin:right bottom;-moz-transform-origin:right bottom;-o-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom}}#aside-content #card-toc .toc-percentage{float:right;margin-top:-9px;color:#a9a9a9;font-style:italic;font-size:140%}#aside-content #card-toc .toc-content{overflow-y:scroll;overflow-y:overlay;margin:0 -24px;max-height:calc(100vh - 120px)}@media screen and (max-width:900px){#aside-content #card-toc .toc-content{max-height:calc(100vh - 140px)}}#aside-content #card-toc .toc-content>*{margin:0 20px!important}#aside-content #card-toc .toc-content>*>.toc-item>.toc-child{margin-left:10px;padding-left:10px;border-left:1px solid var(--dark-grey)}#aside-content #card-toc .toc-content:not(.is-expand) .toc-child{display:none}@media screen and (max-width:900px){#aside-content #card-toc .toc-content:not(.is-expand) .toc-child{display:block!important}}#aside-content #card-toc .toc-content:not(.is-expand) .toc-item.active .toc-child{display:block}#aside-content #card-toc .toc-content li,#aside-content #card-toc .toc-content ol{list-style:none}#aside-content #card-toc .toc-content>ol{padding:0!important}#aside-content #card-toc .toc-content ol{margin:0;padding-left:18px}#aside-content #card-toc .toc-content .toc-link{display:block;margin:4px 0;padding:1px 6px;color:var(--toc-link-color);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#aside-content #card-toc .toc-content .toc-link:hover{color:#49b1f5}#aside-content #card-toc .toc-content .toc-link.active{background:#00c4b6;color:#fff}#aside-content .sticky_layout:only-child>:first-child{margin-top:0}#aside-content .card-more-btn{float:right;color:inherit}#aside-content .card-more-btn:hover{-webkit-animation:more-btn-move 1s infinite;-moz-animation:more-btn-move 1s infinite;-o-animation:more-btn-move 1s infinite;-ms-animation:more-btn-move 1s infinite;animation:more-btn-move 1s infinite}#aside-content .card-announcement .item-headline i{color:red}.avatar-img{overflow:hidden;margin:0 auto;width:110px;height:110px;border-radius:70px}.avatar-img img{width:100%;height:100%;-webkit-transition:filter 375ms ease-in .2s,-webkit-transform .3s;-moz-transition:filter 375ms ease-in .2s,-moz-transform .3s;-o-transition:filter 375ms ease-in .2s,-o-transform .3s;-ms-transition:filter 375ms ease-in .2s,-ms-transform .3s;transition:filter 375ms ease-in .2s,transform .3s;object-fit:cover}.avatar-img img:hover{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}.site-data{display:table;width:100%;table-layout:fixed}.site-data>a{display:table-cell}.site-data>a div{-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}.site-data>a:hover div{color:#49b1f5!important}.site-data>a .headline{color:var(--font-color)}.site-data>a .length-num{margin-top:-.32em;color:var(--text-highlight-color);font-size:1.4em}@media screen and (min-width:900px){html.hide-aside .layout{-webkit-box-pack:center;-moz-box-pack:center;-o-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center}html.hide-aside .layout>.aside-content{display:none}html.hide-aside .layout>div:first-child{width:80%}}.page .sticky_layout{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-orient:vertical;-moz-box-orient:vertical;-o-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}@-moz-keyframes more-btn-move{0%,100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(3px);-moz-transform:translateX(3px);-o-transform:translateX(3px);-ms-transform:translateX(3px);transform:translateX(3px)}}@-webkit-keyframes more-btn-move{0%,100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(3px);-moz-transform:translateX(3px);-o-transform:translateX(3px);-ms-transform:translateX(3px);transform:translateX(3px)}}@-o-keyframes more-btn-move{0%,100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(3px);-moz-transform:translateX(3px);-o-transform:translateX(3px);-ms-transform:translateX(3px);transform:translateX(3px)}}@keyframes more-btn-move{0%,100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);-o-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(3px);-moz-transform:translateX(3px);-o-transform:translateX(3px);-ms-transform:translateX(3px);transform:translateX(3px)}}@-moz-keyframes toc-open{0%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-webkit-keyframes toc-open{0%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-o-keyframes toc-open{0%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes toc-open{0%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-moz-keyframes toc-close{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}@-webkit-keyframes toc-close{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}@-o-keyframes toc-close{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}@keyframes toc-close{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-o-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}100%{-webkit-transform:scale(.7);-moz-transform:scale(.7);-o-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}}#post-comment .comment-head{margin-bottom:20px}#post-comment .comment-head .comment-headline{display:inline-block;vertical-align:middle;font-weight:700;font-size:1.43em}#post-comment .comment-head #comment-switch{display:inline-block;float:right;margin:2px auto 0;padding:4px 16px;width:max-content;border-radius:8px;background:#f6f8fa}#post-comment .comment-head #comment-switch .first-comment{color:#49b1f5}#post-comment .comment-head #comment-switch .second-comment{color:#ff7242}#post-comment .comment-head #comment-switch .switch-btn{position:relative;display:inline-block;margin:-4px 8px 0;width:42px;height:22px;border-radius:34px;background-color:#49b1f5;vertical-align:middle;cursor:pointer;-webkit-transition:.4s;-moz-transition:.4s;-o-transition:.4s;-ms-transition:.4s;transition:.4s}#post-comment .comment-head #comment-switch .switch-btn:before{position:absolute;bottom:4px;left:4px;width:14px;height:14px;border-radius:50%;background-color:#fff;content:'';-webkit-transition:.4s;-moz-transition:.4s;-o-transition:.4s;-ms-transition:.4s;transition:.4s}#post-comment .comment-head #comment-switch .switch-btn.move{background-color:#ff7242}#post-comment .comment-head #comment-switch .switch-btn.move:before{-webkit-transform:translateX(20px);-moz-transform:translateX(20px);-o-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}#post-comment .comment-wrap>div:nth-child(2){display:none}#footer{position:relative;background-color:#49b1f5;background-attachment:scroll;background-position:bottom;background-size:cover}#footer-wrap{position:relative;padding:40px 20px;color:var(--light-grey);text-align:center}#footer-wrap a{color:var(--light-grey)}#footer-wrap a:hover{text-decoration:underline}#footer-wrap .footer-separator{margin:0 4px}#footer-wrap .icp-icon{padding:0 4px;max-height:1.4em;width:auto;vertical-align:text-bottom}#page-header{position:relative;width:100%;background-color:#49b1f5;background-position:center center;background-size:cover;background-repeat:no-repeat;-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;-ms-transition:all .5s;transition:all .5s}#page-header:not(.not-top-img):before{position:absolute;width:100%;height:100%;background-color:var(--mark-bg);content:''}#page-header.full_page{height:100vh;background-attachment:fixed}#page-header.full_page #site-info{position:absolute;top:43%;padding:0 10px;width:100%}#page-header #scroll-down .scroll-down-effects,#page-header #site-subtitle,#page-header #site-title{text-align:center;text-shadow:2px 2px 4px rgba(0,0,0,.15);line-height:1.5}#page-header #site-title{margin:0;color:var(--white);font-size:1.85em}@media screen and (min-width:768px){#page-header #site-title{font-size:2.85em}}#page-header #site-subtitle{color:var(--light-grey);font-size:1.15em}@media screen and (min-width:768px){#page-header #site-subtitle{font-size:1.72em}}#page-header #site_social_icons{display:none;margin:0 auto;width:300px;text-align:center}@media screen and (max-width:768px){#page-header #site_social_icons{display:block}}#page-header #site_social_icons .social-icon{margin:0 10px;color:var(--light-grey);text-shadow:2px 2px 4px rgba(0,0,0,.15);font-size:1.43em}#page-header #scroll-down{position:absolute;bottom:0;width:100%;cursor:pointer}#page-header #scroll-down .scroll-down-effects{position:relative;width:100%;color:var(--light-grey);font-size:30px}#page-header.not-home-page{height:400px}@media screen and (max-width:768px){#page-header.not-home-page{height:280px}}#page-header #page-site-info{position:absolute;top:200px;padding:0 10px;width:100%}@media screen and (max-width:768px){#page-header #page-site-info{top:140px}}#page-header.post-bg{height:400px}@media screen and (max-width:768px){#page-header.post-bg{height:360px}}#page-header #post-info{position:absolute;bottom:100px;padding:0 8%;width:100%;text-align:center}@media screen and (max-width:900px){#page-header #post-info{bottom:30px;text-align:left}}@media screen and (max-width:768px){#page-header #post-info{bottom:22px;padding:0 22px}}#page-header.not-top-img{margin-bottom:10px;height:60px;background:0}#page-header.not-top-img #nav{background:rgba(255,255,255,.8);-webkit-box-shadow:0 5px 6px -5px rgba(133,133,133,.6);box-shadow:0 5px 6px -5px rgba(133,133,133,.6)}#page-header.not-top-img #nav .site-name,#page-header.not-top-img #nav a{color:var(--font-color);text-shadow:none}#page-header.nav-fixed #nav{position:fixed;top:-60px;z-index:91;background:rgba(255,255,255,.8);-webkit-box-shadow:0 5px 6px -5px rgba(133,133,133,.6);box-shadow:0 5px 6px -5px rgba(133,133,133,.6);-webkit-transition:-webkit-transform .2s ease-in-out,opacity .2s ease-in-out;-moz-transition:-moz-transform .2s ease-in-out,opacity .2s ease-in-out;-o-transition:-o-transform .2s ease-in-out,opacity .2s ease-in-out;-ms-transition:-ms-transform .2s ease-in-out,opacity .2s ease-in-out;transition:transform .2s ease-in-out,opacity .2s ease-in-out}#page-header.nav-fixed #nav #blog-info{color:var(--font-color)}#page-header.nav-fixed #nav #blog-info:hover{color:#49b1f5}#page-header.nav-fixed #nav #blog-info .site-name{text-shadow:none}#page-header.nav-fixed #nav #toggle-menu,#page-header.nav-fixed #nav a{color:var(--font-color);text-shadow:none}#page-header.nav-fixed #nav #toggle-menu:hover,#page-header.nav-fixed #nav a:hover{color:#49b1f5}#page-header.nav-fixed.fixed #nav{top:0;-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;-ms-transition:all .5s;transition:all .5s}#page-header.nav-visible:not(.fixed) #nav{-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;-ms-transition:all .5s;transition:all .5s;-webkit-transform:translate3d(0,100%,0);-moz-transform:translate3d(0,100%,0);-o-transform:translate3d(0,100%,0);-ms-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}#page-header.nav-visible:not(.fixed)+.layout>.aside-content>.sticky_layout{top:70px;-webkit-transition:top .5s;-moz-transition:top .5s;-o-transition:top .5s;-ms-transition:top .5s;transition:top .5s}#page-header.fixed #nav{position:fixed}#page-header.fixed+.layout>.aside-content>.sticky_layout{top:70px;-webkit-transition:top .5s;-moz-transition:top .5s;-o-transition:top .5s;-ms-transition:top .5s;transition:top .5s}#page-header.fixed+.layout #card-toc .toc-content{max-height:calc(100vh - 170px)}#page h1.page-title{margin:8px 0 20px}#post>#post-info{margin-bottom:30px}#post>#post-info .post-title{padding-bottom:4px;border-bottom:1px solid var(--light-grey);color:var(--text-highlight-color)}#post>#post-info .post-title .post-edit-link{float:right}#post>#post-info #post-meta,#post>#post-info #post-meta a{color:#78818a}#post-info .post-title{margin-bottom:8px;color:var(--white);font-weight:400;font-size:2.5em;line-height:1.5;-webkit-line-clamp:3}@media screen and (max-width:768px){#post-info .post-title{font-size:2.1em}}#post-info .post-title .post-edit-link{padding-left:10px}#post-info #post-meta{color:var(--light-grey);font-size:95%}@media screen and (min-width:768px){#post-info #post-meta>.meta-secondline>span:first-child{display:none}}@media screen and (max-width:768px){#post-info #post-meta{font-size:90%}#post-info #post-meta>.meta-firstline,#post-info #post-meta>.meta-secondline{display:inline}}#post-info #post-meta .post-meta-separator{margin:0 5px}#post-info #post-meta .post-meta-icon{margin-right:4px}#post-info #post-meta .post-meta-label{margin-right:4px}#post-info #post-meta a{color:var(--light-grey);-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;-o-transition:all .3s ease-out;-ms-transition:all .3s ease-out;transition:all .3s ease-out}#post-info #post-meta a:hover{color:#49b1f5;text-decoration:underline}#nav{position:absolute;top:0;z-index:90;display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-align:center;-moz-box-align:center;-o-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;padding:0 36px;width:100%;height:60px;font-size:1.3em;opacity:0;-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;-ms-transition:all .5s;transition:all .5s}@media screen and (max-width:768px){#nav{padding:0 16px}}#nav.show{opacity:1;-ms-filter:none;filter:none}#nav #blog-info{-webkit-box-flex:1;-moz-box-flex:1;-o-box-flex:1;box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;color:var(--light-grey)}#nav #blog-info .site-icon{margin-right:6px;height:36px;vertical-align:middle}#nav #toggle-menu{display:none;padding:2px 0 0 6px;vertical-align:top}#nav #toggle-menu:hover{color:var(--white)}#nav a{color:var(--light-grey)}#nav a:hover{color:var(--white)}#nav .site-name{text-shadow:2px 2px 4px rgba(0,0,0,.15);font-weight:700}#nav .menus_items{display:inline}#nav .menus_items .menus_item{position:relative;display:inline-block;padding:0 0 0 14px}#nav .menus_items .menus_item:hover .menus_item_child{display:block}#nav .menus_items .menus_item:hover>a>i:last-child{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}#nav .menus_items .menus_item>a>i:last-child{padding:4px;-webkit-transition:-webkit-transform .3s;-moz-transition:-moz-transform .3s;-o-transition:-o-transform .3s;-ms-transition:-ms-transform .3s;transition:transform .3s}#nav .menus_items .menus_item .menus_item_child{position:absolute;right:0;display:none;margin-top:8px;padding:0;width:max-content;border-radius:5px;background-color:var(--sidebar-bg);-webkit-box-shadow:0 5px 20px -4px rgba(0,0,0,.5);box-shadow:0 5px 20px -4px rgba(0,0,0,.5);-webkit-animation:sub_menus .3s .1s ease both;-moz-animation:sub_menus .3s .1s ease both;-o-animation:sub_menus .3s .1s ease both;-ms-animation:sub_menus .3s .1s ease both;animation:sub_menus .3s .1s ease both}#nav .menus_items .menus_item .menus_item_child:before{position:absolute;top:-8px;left:0;width:100%;height:20px;content:''}#nav .menus_items .menus_item .menus_item_child li{list-style:none}#nav .menus_items .menus_item .menus_item_child li:hover{background:var(--text-bg-hover)}#nav .menus_items .menus_item .menus_item_child li:first-child{border-top-left-radius:5px;border-top-right-radius:5px}#nav .menus_items .menus_item .menus_item_child li:last-child{border-bottom-right-radius:5px;border-bottom-left-radius:5px}#nav .menus_items .menus_item .menus_item_child li a{display:inline-block;padding:8px 16px;width:100%;color:var(--font-color)!important;text-shadow:none!important}#nav.hide-menu #toggle-menu{display:inline-block!important}#nav.hide-menu #toggle-menu .site-page{font-size:inherit}#nav.hide-menu .menus_items{display:none}#nav.hide-menu #search-button span{display:none}#nav #search-button{display:inline;padding:0 0 0 14px}#nav .site-page{position:relative;padding-bottom:6px;text-shadow:1px 1px 2px rgba(0,0,0,.3);font-size:.78em;cursor:pointer}#nav .site-page:not(.child):after{position:absolute;bottom:0;left:0;z-index:-1;width:0;height:3px;background-color:#80c8f8;content:'';-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;-ms-transition:all .3s ease-in-out;transition:all .3s ease-in-out}#nav .site-page:not(.child):hover:after{width:100%}#pagination .pagination{margin-top:20px;text-align:center}#pagination .page-number.current{background:#00c4b6;color:var(--white)}#pagination .pagination-info{position:absolute;top:50%;padding:20px 40px;width:100%;-webkit-transform:translate(0,-50%);-moz-transform:translate(0,-50%);-o-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%)}#pagination .next_info,#pagination .prev_info{color:var(--white);font-weight:500}#pagination .next-post .pagination-info{text-align:right}#pagination .pull-full{width:100%!important}#pagination .next-post .label,#pagination .prev-post .label{color:var(--light-grey);text-transform:uppercase;font-size:90%}#pagination .next-post,#pagination .prev-post{width:50%}@media screen and (max-width:768px){#pagination .next-post,#pagination .prev-post{width:100%}}#pagination .next-post a,#pagination .prev-post a{position:relative;display:block;overflow:hidden;height:150px}#pagination.pagination-post{overflow:hidden;margin-top:40px;width:100%;background:#000}.layout>.recent-posts .pagination>*{display:inline-block;margin:0 6px;width:2.5em;height:2.5em;line-height:2.5em}.layout>.recent-posts .pagination>:not(.space):hover{background:var(--btn-hover-color);color:var(--btn-color)}.layout>div:not(.recent-posts) .pagination .page-number{display:inline-block;margin:0 4px;min-width:24px;height:24px;text-align:center;line-height:24px;cursor:pointer}#article-container{word-wrap:break-word;overflow-wrap:break-word}#article-container a{color:#49b1f5}#article-container a:hover{text-decoration:underline}#article-container img{display:block;margin:0 auto 20px;max-width:100%;-webkit-transition:filter 375ms ease-in .2s;-moz-transition:filter 375ms ease-in .2s;-o-transition:filter 375ms ease-in .2s;-ms-transition:filter 375ms ease-in .2s;transition:filter 375ms ease-in .2s}#article-container p{margin:0 0 16px}#article-container iframe{margin:0 0 20px}#article-container kbd{margin:0 3px;padding:3px 5px;border:1px solid #b4b4b4;border-radius:3px;background-color:#f8f8f8;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.25),0 2px 1px 0 rgba(255,255,255,.6) inset;box-shadow:0 1px 3px rgba(0,0,0,.25),0 2px 1px 0 rgba(255,255,255,.6) inset;color:#34495e;white-space:nowrap;font-weight:600;font-size:.9em;font-family:Monaco,'Ubuntu Mono',monospace;line-height:1em}#article-container a.headerlink:after{float:right;color:var(--headline-presudo);content:'\f1d8';font-size:.95em;-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}#article-container a.headerlink:hover:after{color:var(--pseudo-hover)}#article-container a.headerlink:after{opacity:0}#article-container h1:hover a.headerlink:after,#article-container h2:hover a.headerlink:after,#article-container h3:hover a.headerlink:after,#article-container h4:hover a.headerlink:after,#article-container h5:hover a.headerlink:after,#article-container h6:hover a.headerlink:after{opacity:1;-ms-filter:none;filter:none}#article-container ol ol,#article-container ol ul,#article-container ul ol,#article-container ul ul{padding-left:20px}#article-container ol li,#article-container ul li{margin:4px 0}#article-container ol p,#article-container ul p{margin:0 0 8px}#article-container>:last-child{margin-bottom:0!important}#article-container hr{margin:20px 0}#article-container h1,#article-container h2,#article-container h3,#article-container h4,#article-container h5,#article-container h6{-webkit-transition:all .2s ease-out;-moz-transition:all .2s ease-out;-o-transition:all .2s ease-out;-ms-transition:all .2s ease-out;transition:all .2s ease-out}#article-container h1:before,#article-container h2:before,#article-container h3:before,#article-container h4:before,#article-container h5:before,#article-container h6:before{position:absolute;top:calc(50% - 7px);color:#fc6;content:'\f0e7';line-height:1;-webkit-transition:all .2s ease-out;-moz-transition:all .2s ease-out;-o-transition:all .2s ease-out;-ms-transition:all .2s ease-out;transition:all .2s ease-out}#article-container h1:hover:before,#article-container h2:hover:before,#article-container h3:hover:before,#article-container h4:hover:before,#article-container h5:hover:before,#article-container h6:hover:before{color:#49b1f5}#article-container h1{padding-left:32px}#article-container h1:before{margin-left:-26px;font-size:20px}#article-container h1:hover{padding-left:38px}#article-container h2{padding-left:30px}#article-container h2:before{margin-left:-24px;font-size:18px}#article-container h2:hover{padding-left:36px}#article-container h3{padding-left:28px}#article-container h3:before{margin-left:-22px;font-size:16px}#article-container h3:hover{padding-left:34px}#article-container h4{padding-left:26px}#article-container h4:before{margin-left:-20px;font-size:14px}#article-container h4:hover{padding-left:32px}#article-container h5{padding-left:24px}#article-container h5:before{margin-left:-18px;font-size:12px}#article-container h5:hover{padding-left:30px}#article-container h6{padding-left:24px}#article-container h6:before{margin-left:-18px;font-size:12px}#article-container h6:hover{padding-left:30px}#article-container ol p,#article-container ul p{margin:0 0 8px}#article-container li::marker{color:#49b1f5;font-weight:600;font-size:1.05em}#article-container li:hover::marker{color:var(--pseudo-hover)}#article-container ul>li{list-style-type:circle}#post .tag_share:after{display:block;clear:both;content:''}#post .tag_share .post-meta__tag-list{display:inline-block}#post .tag_share .post-meta__tags{display:inline-block;margin:8px 8px 8px 0;padding:0 12px;width:fit-content;border:1px solid #49b1f5;border-radius:12px;color:#49b1f5;font-size:.85em;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#post .tag_share .post-meta__tags:hover{background:#49b1f5;color:var(--white)}#post .tag_share .post_share{display:inline-block;float:right;margin:8px 0 0;width:fit-content}#post .tag_share .post_share .social-share{font-size:.85em}#post .tag_share .post_share .social-share .social-share-icon{margin:0 4px;width:1.85em;height:1.85em;font-size:1.2em;line-height:1.85em}#post .post-copyright{position:relative;margin:40px 0 10px;padding:10px 16px;border:1px solid var(--light-grey);-webkit-transition:box-shadow .3s ease-in-out;-moz-transition:box-shadow .3s ease-in-out;-o-transition:box-shadow .3s ease-in-out;-ms-transition:box-shadow .3s ease-in-out;transition:box-shadow .3s ease-in-out}#post .post-copyright:before{position:absolute;top:2px;right:12px;color:#49b1f5;content:'\f1f9';font-size:1.3em}#post .post-copyright:hover{-webkit-box-shadow:0 0 8px 0 rgba(232,237,250,.6),0 2px 4px 0 rgba(232,237,250,.5);box-shadow:0 0 8px 0 rgba(232,237,250,.6),0 2px 4px 0 rgba(232,237,250,.5)}#post .post-copyright .post-copyright-meta{color:#49b1f5;font-weight:700}#post .post-copyright .post-copyright-info{padding-left:6px}#post .post-copyright .post-copyright-info a{text-decoration:underline;word-break:break-word}#post .post-copyright .post-copyright-info a:hover{text-decoration:none}#post .post-outdate-notice{position:relative;margin:0 0 20px;padding:.5em 1.2em;border-radius:3px;background-color:#ffe6e6;color:#f66;padding:.5em 1em .5em 2.6em;border-left:5px solid #ff8080}#post .post-outdate-notice:before{position:absolute;top:50%;left:.9em;color:#ff8080;content:'\f071';-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-o-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#post .ads-wrap{margin:40px 0}.relatedPosts{margin-top:40px}.relatedPosts>.headline{margin-bottom:5px;font-weight:700;font-size:1.43em}.relatedPosts>.relatedPosts-list>div{position:relative;display:inline-block;overflow:hidden;margin:3px;width:calc(33.333% - 6px);height:200px;background:#000;vertical-align:bottom}@media screen and (max-width:768px){.relatedPosts>.relatedPosts-list>div{margin:2px;width:calc(50% - 4px);height:150px}}@media screen and (max-width:600px){.relatedPosts>.relatedPosts-list>div{width:calc(100% - 4px)}}.relatedPosts>.relatedPosts-list .content{position:absolute;top:50%;padding:0 20px;width:100%;-webkit-transform:translate(0,-50%);-moz-transform:translate(0,-50%);-o-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%)}.relatedPosts>.relatedPosts-list .content .date{color:var(--light-grey);font-size:90%}.relatedPosts>.relatedPosts-list .content .title{color:var(--white);-webkit-line-clamp:2}.post-reward{position:relative;margin-top:80px;width:100%;text-align:center;pointer-events:none}.post-reward>*{pointer-events:auto}.post-reward .reward-button{display:inline-block;padding:4px 24px;background:var(--btn-bg);color:var(--btn-color);cursor:pointer}.post-reward:hover .reward-button{background:var(--btn-hover-color)}.post-reward:hover>.reward-main{display:block}.post-reward .reward-main{position:absolute;bottom:40px;left:0;z-index:100;display:none;padding:0 0 15px;width:100%}.post-reward .reward-main .reward-all{display:inline-block;margin:0;padding:20px 10px;border-radius:4px;background:var(--reward-pop)}.post-reward .reward-main .reward-all:before{position:absolute;bottom:-10px;left:0;width:100%;height:20px;content:''}.post-reward .reward-main .reward-all:after{position:absolute;right:0;bottom:2px;left:0;margin:0 auto;width:0;height:0;border-top:13px solid var(--reward-pop);border-right:13px solid transparent;border-left:13px solid transparent;content:''}.post-reward .reward-main .reward-all .reward-item{display:inline-block;padding:0 8px;list-style-type:none;vertical-align:top}.post-reward .reward-main .reward-all .reward-item img{width:130px;height:130px}.post-reward .reward-main .reward-all .reward-item .post-qr-code-desc{width:130px;color:#858585}#rightside{position:fixed;right:-48px;bottom:40px;z-index:100;opacity:0;-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;-ms-transition:all .5s;transition:all .5s}#rightside #rightside-config-hide{height:0;opacity:0;-webkit-transition:-webkit-transform .4s;-moz-transition:-moz-transform .4s;-o-transition:-o-transform .4s;-ms-transition:-ms-transform .4s;transition:transform .4s;-webkit-transform:translate(45px,0);-moz-transform:translate(45px,0);-o-transform:translate(45px,0);-ms-transform:translate(45px,0);transform:translate(45px,0)}#rightside #rightside-config-hide.show{height:auto;opacity:1;-ms-filter:none;filter:none;-webkit-transform:translate(0,0);-moz-transform:translate(0,0);-o-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}#rightside #rightside-config-hide.status{height:auto;opacity:1;-ms-filter:none;filter:none}#rightside>div>a,#rightside>div>button{display:block;margin-bottom:5px;width:35px;height:35px;border-radius:5px;background-color:var(--btn-bg);color:var(--btn-color);text-align:center;font-size:16px;line-height:35px}#rightside>div>a:hover,#rightside>div>button:hover{background-color:var(--btn-hover-color)}#rightside #mobile-toc-button{display:none}@media screen and (max-width:900px){#rightside #mobile-toc-button{display:block}}@media screen and (max-width:900px){#rightside #hide-aside-btn{display:none}}#rightside #go-up .scroll-percent{display:none}#rightside #go-up.show-percent .scroll-percent{display:block}#rightside #go-up.show-percent .scroll-percent+i{display:none}#rightside #go-up:hover .scroll-percent{display:none}#rightside #go-up:hover .scroll-percent+i{display:block}#sidebar #menu-mask{position:fixed;z-index:102;display:none;width:100%;height:100%;background:rgba(0,0,0,.8)}#sidebar #sidebar-menus{position:fixed;top:0;right:-300px;z-index:103;overflow-x:hidden;overflow-y:auto;width:300px;height:100%;background:var(--sidebar-bg);-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;-ms-transition:all .5s;transition:all .5s}#sidebar #sidebar-menus.open{-webkit-transform:translate3d(-100%,0,0);-moz-transform:translate3d(-100%,0,0);-o-transform:translate3d(-100%,0,0);-ms-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}#sidebar #sidebar-menus>.avatar-img{margin:20px auto}#sidebar #sidebar-menus .sidebar-site-data{padding:0 10px}#sidebar #sidebar-menus hr{margin:20px auto}#sidebar #sidebar-menus .menus_items{padding:0 10px 40px}#sidebar #sidebar-menus .menus_items .site-page{position:relative;display:block;padding:6px 30px 6px 22px;color:var(--font-color);font-size:1.15em}#sidebar #sidebar-menus .menus_items .site-page:hover{background:var(--text-bg-hover)}#sidebar #sidebar-menus .menus_items .site-page i:first-child{width:15%;text-align:left}#sidebar #sidebar-menus .menus_items .site-page.group>i:last-child{position:absolute;top:.78em;right:18px;-webkit-transition:-webkit-transform .3s;-moz-transition:-moz-transform .3s;-o-transition:-o-transform .3s;-ms-transition:-ms-transform .3s;transition:transform .3s}#sidebar #sidebar-menus .menus_items .site-page.group.hide>i:last-child{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}#sidebar #sidebar-menus .menus_items .site-page.group.hide+.menus_item_child{display:none}#sidebar #sidebar-menus .menus_items .menus_item_child{margin:0;list-style:none}#vcomment{font-size:1.1em}#vcomment .vbtn{border:none;background:var(--btn-bg);color:var(--btn-color)}#vcomment .vbtn:hover{background:var(--btn-hover-color)}#vcomment .vimg{-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}#vcomment .vimg:hover{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}#vcomment .vcards .vcard .vcontent.expand:after,#vcomment .vcards .vcard .vcontent.expand:before{z-index:22}#waline-wrap{--waline-font-size:1.1em;--waline-theme-color:#49b1f5;--waline-active-color:#ff7242}#waline-wrap .wl-comment-actions>button:not(last-child){padding-right:4px}.fireworks{position:fixed;top:0;left:0;z-index:9999;pointer-events:none}.medium-zoom-image--opened{z-index:99999!important;margin:0!important}.medium-zoom-overlay{z-index:99999!important}.mermaid-wrap{margin:0 0 20px;text-align:center}.mermaid-wrap>svg{height:100%}.fb-comments iframe,.utterances{width:100%!important}#gitalk-container .gt-meta{margin:0 0 .8em;padding:6px 0 16px}.katex-wrap{overflow:auto}.katex-wrap::-webkit-scrollbar{display:none}mjx-container{overflow-x:auto;overflow-y:hidden;padding-bottom:4px;max-width:100%}mjx-container[display]{display:block!important;min-width:auto!important}mjx-container:not([display]){display:inline-grid!important}mjx-assistive-mml{right:0;bottom:0}.aplayer{color:#4c4948}#article-container .aplayer{margin:0 0 20px}#article-container .aplayer ol,#article-container .aplayer ul{margin:0;padding:0}#article-container .aplayer ol li,#article-container .aplayer ul li{margin:0;padding:0 15px}#article-container .aplayer ol li:before,#article-container .aplayer ul li:before{content:none}.snackbar-css{border-radius:5px!important}.abc-music-sheet{margin:0 0 20px;opacity:0;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-o-transition:opacity .3s;-ms-transition:opacity .3s;transition:opacity .3s}.abc-music-sheet.abcjs-container{opacity:1;-ms-filter:none;filter:none}@media screen and (max-width:768px){.fancybox__toolbar__column.is-middle{display:none}}#article-container .btn-center{margin:0 0 20px;text-align:center}#article-container .btn-beautify{display:inline-block;margin:0 4px 6px;padding:0 15px;background-color:var(--btn-beautify-color,#777);color:#fff;line-height:2}#article-container .btn-beautify.blue{--btn-beautify-color:#428bca}#article-container .btn-beautify.pink{--btn-beautify-color:#ff69b4}#article-container .btn-beautify.red{--btn-beautify-color:#f00}#article-container .btn-beautify.purple{--btn-beautify-color:#6f42c1}#article-container .btn-beautify.orange{--btn-beautify-color:#ff8c00}#article-container .btn-beautify.green{--btn-beautify-color:#5cb85c}#article-container .btn-beautify:hover{background-color:var(--btn-hover-color)}#article-container .btn-beautify i+span{margin-left:6px}#article-container .btn-beautify:not(.block)+.btn-beautify:not(.block){margin:0 4px 20px}#article-container .btn-beautify.block{display:block;margin:0 0 20px;width:fit-content;width:-moz-fit-content}#article-container .btn-beautify.block.center{margin:0 auto 20px}#article-container .btn-beautify.block.right{margin:0 0 20px auto}#article-container .btn-beautify.larger{padding:6px 15px}#article-container .btn-beautify:hover{text-decoration:none}#article-container .btn-beautify.outline{border:1px solid transparent;border-color:var(--btn-beautify-color,#777);background-color:transparent;color:var(--btn-beautify-color,#777)}#article-container .btn-beautify.outline:hover{background-color:var(--btn-beautify-color,#777)}#article-container .btn-beautify.outline:hover{color:#fff!important}#article-container figure.gallery-group{position:relative;float:left;overflow:hidden;margin:6px 4px;width:calc(50% - 8px);height:250px;border-radius:8px;background:#000;-webkit-transform:translate3d(0,0,0)}@media screen and (max-width:600px){#article-container figure.gallery-group{width:calc(100% - 8px)}}#article-container figure.gallery-group:hover img{opacity:.4;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}#article-container figure.gallery-group:hover .gallery-group-name::after{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}#article-container figure.gallery-group:hover p{opacity:1;-ms-filter:none;filter:none;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}#article-container figure.gallery-group img{position:relative;margin:0;max-width:none;width:calc(100% + 20px);height:250px;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden;opacity:.8;-webkit-transition:all .3s,filter 375ms ease-in .2s;-moz-transition:all .3s,filter 375ms ease-in .2s;-o-transition:all .3s,filter 375ms ease-in .2s;-ms-transition:all .3s,filter 375ms ease-in .2s;transition:all .3s,filter 375ms ease-in .2s;-webkit-transform:translate3d(-10px,0,0);-moz-transform:translate3d(-10px,0,0);-o-transform:translate3d(-10px,0,0);-ms-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0);object-fit:cover}#article-container figure.gallery-group figcaption{position:absolute;top:0;left:0;padding:30px;width:100%;height:100%;color:#fff;text-transform:uppercase;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden}#article-container figure.gallery-group figcaption>a{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1000;opacity:0}#article-container figure.gallery-group p{margin:0;padding:8px 0 0;letter-spacing:1px;font-size:1.1em;line-height:1.5;opacity:0;-webkit-transition:opacity .35s,-webkit-transform .35s;-moz-transition:opacity .35s,-moz-transform .35s;-o-transition:opacity .35s,-o-transform .35s;-ms-transition:opacity .35s,-ms-transform .35s;transition:opacity .35s,transform .35s;-webkit-transform:translate3d(100%,0,0);-moz-transform:translate3d(100%,0,0);-o-transform:translate3d(100%,0,0);-ms-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);-webkit-line-clamp:4}#article-container figure.gallery-group .gallery-group-name{position:relative;margin:0;padding:8px 0;font-weight:700;font-size:1.65em;line-height:1.5;-webkit-line-clamp:2}#article-container figure.gallery-group .gallery-group-name:after{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#fff;content:'';-webkit-transition:-webkit-transform .35s;-moz-transition:-moz-transform .35s;-o-transition:-o-transform .35s;-ms-transition:-ms-transform .35s;transition:transform .35s;-webkit-transform:translate3d(-100%,0,0);-moz-transform:translate3d(-100%,0,0);-o-transform:translate3d(-100%,0,0);-ms-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}#article-container .gallery-group-main{overflow:auto;padding:0 0 16px}#article-container .gallery{margin:0 0 16px;text-align:center}#article-container .gallery .fj-gallery{opacity:0}#article-container .gallery .fj-gallery .img-alt{display:none}#article-container .gallery .fj-gallery.lazyload+button{display:inline-block}#article-container .gallery .fj-gallery .gallery-data{display:none}#article-container .gallery button{display:none;margin-top:25px;padding:10px;width:9em;border-radius:5px;background:var(--btn-bg);color:var(--btn-color);font-weight:700;font-size:1.1em;-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s}#article-container .gallery button>*{-webkit-transition:all .4s;-moz-transition:all .4s;-o-transition:all .4s;-ms-transition:all .4s;transition:all .4s}#article-container .gallery button i{width:0;opacity:0}#article-container .gallery button:hover{background:var(--btn-hover-color)}#article-container .gallery button:hover i{margin-left:2px;width:20px;opacity:1;-ms-filter:none;filter:none}blockquote.pullquote{position:relative;max-width:45%;font-size:110%}blockquote.pullquote.left{float:left;margin:1em .5em 0 0}blockquote.pullquote.right{float:right;margin:1em 0 0 .5em}.video-container{position:relative;overflow:hidden;margin-bottom:16px;padding-top:56.25%;height:0}.video-container iframe{position:absolute;top:0;left:0;margin-top:0;width:100%;height:100%}.hide-block>.hide-button,.hide-inline>.hide-button{display:inline-block;padding:5px 18px;background:#49b1f5;color:var(--white)}.hide-block>.hide-button:hover,.hide-inline>.hide-button:hover{background-color:var(--btn-hover-color)}.hide-block>.hide-button.open,.hide-inline>.hide-button.open{display:none}.hide-block>.hide-button.open+div,.hide-inline>.hide-button.open+div{display:block}.hide-block>.hide-button.open+span,.hide-inline>.hide-button.open+span{display:inline}.hide-block>.hide-content,.hide-inline>.hide-content{display:none}.hide-inline>.hide-button{margin:0 6px}.hide-inline>.hide-content{margin:0 6px}.hide-block{margin:0 0 16px}.toggle{margin-bottom:20px;border:1px solid #f0f0f0}.toggle>.toggle-button{padding:6px 15px;background:#f0f0f0;color:#1f2d3d;cursor:pointer}.toggle>.toggle-content{margin:30px 24px}#article-container .inline-img{display:inline;margin:0 3px;height:1.1em;vertical-align:text-bottom}.hl-label{padding:2px 4px;border-radius:3px;color:#fff}.hl-label.default{background-color:#777}.hl-label.blue{background-color:#428bca}.hl-label.pink{background-color:#ff69b4}.hl-label.red{background-color:red}.hl-label.purple{background-color:#6f42c1}.hl-label.orange{background-color:#ff8c00}.hl-label.green{background-color:#5cb85c}.note{position:relative;margin:0 0 20px;padding:15px;border-radius:3px}.note.icon-padding{padding-left:3em}.note>.note-icon{position:absolute;top:calc(50% - .5em);left:.8em;font-size:larger}.note.blue:not(.disabled){border-left-color:#428bca!important}.note.blue:not(.disabled).modern{border-left-color:transparent!important;color:#428bca}.note.blue:not(.disabled):not(.simple){background:#e3eef7!important}.note.blue>.note-icon{color:#428bca}.note.pink:not(.disabled){border-left-color:#ff69b4!important}.note.pink:not(.disabled).modern{border-left-color:transparent!important;color:#ff69b4}.note.pink:not(.disabled):not(.simple){background:#ffe9f4!important}.note.pink>.note-icon{color:#ff69b4}.note.red:not(.disabled){border-left-color:red!important}.note.red:not(.disabled).modern{border-left-color:transparent!important;color:red}.note.red:not(.disabled):not(.simple){background:#ffd9d9!important}.note.red>.note-icon{color:red}.note.purple:not(.disabled){border-left-color:#6f42c1!important}.note.purple:not(.disabled).modern{border-left-color:transparent!important;color:#6f42c1}.note.purple:not(.disabled):not(.simple){background:#e9e3f6!important}.note.purple>.note-icon{color:#6f42c1}.note.orange:not(.disabled){border-left-color:#ff8c00!important}.note.orange:not(.disabled).modern{border-left-color:transparent!important;color:#ff8c00}.note.orange:not(.disabled):not(.simple){background:#ffeed9!important}.note.orange>.note-icon{color:#ff8c00}.note.green:not(.disabled){border-left-color:#5cb85c!important}.note.green:not(.disabled).modern{border-left-color:transparent!important;color:#5cb85c}.note.green:not(.disabled):not(.simple){background:#e7f4e7!important}.note.green>.note-icon{color:#5cb85c}.note.simple{border:1px solid #eee;border-left-width:5px}.note.modern{border:1px solid transparent!important;background-color:#f5f5f5;color:#4c4948}.note.flat{border:initial;border-left:5px solid #eee;background-color:#f9f9f9;color:#4c4948}.note h2,.note h3,.note h4,.note h5,.note h6{margin-top:3px;margin-bottom:0;padding-top:0!important;border-bottom:initial}.note blockquote:first-child,.note img:first-child,.note ol:first-child,.note p:first-child,.note pre:first-child,.note table:first-child,.note ul:first-child{margin-top:0!important}.note blockquote:last-child,.note img:last-child,.note ol:last-child,.note p:last-child,.note pre:last-child,.note table:last-child,.note ul:last-child{margin-bottom:0!important}.note:not(.no-icon){padding-left:3em}.note:not(.no-icon)::before{position:absolute;top:calc(50% - .95em);left:.8em;font-size:larger}.note.default.flat{background:#f7f7f7}.note.default.modern{border-color:#e1e1e1;background:#f3f3f3;color:#666}.note.default.modern a:not(.btn){color:#666}.note.default.modern a:not(.btn):hover{color:#454545}.note.default:not(.modern){border-left-color:#777}.note.default:not(.modern) h2,.note.default:not(.modern) h3,.note.default:not(.modern) h4,.note.default:not(.modern) h5,.note.default:not(.modern) h6{color:#777}.note.default:not(.no-icon)::before{content:'\f0a9'}.note.default:not(.no-icon):not(.modern)::before{color:#777}.note.primary.flat{background:#f5f0fa}.note.primary.modern{border-color:#e1c2ff;background:#f3daff;color:#6f42c1}.note.primary.modern a:not(.btn){color:#6f42c1}.note.primary.modern a:not(.btn):hover{color:#453298}.note.primary:not(.modern){border-left-color:#6f42c1}.note.primary:not(.modern) h2,.note.primary:not(.modern) h3,.note.primary:not(.modern) h4,.note.primary:not(.modern) h5,.note.primary:not(.modern) h6{color:#6f42c1}.note.primary:not(.no-icon)::before{content:'\f055'}.note.primary:not(.no-icon):not(.modern)::before{color:#6f42c1}.note.info.flat{background:#eef7fa}.note.info.modern{border-color:#b3e5ef;background:#d9edf7;color:#31708f}.note.info.modern a:not(.btn){color:#31708f}.note.info.modern a:not(.btn):hover{color:#215761}.note.info:not(.modern){border-left-color:#428bca}.note.info:not(.modern) h2,.note.info:not(.modern) h3,.note.info:not(.modern) h4,.note.info:not(.modern) h5,.note.info:not(.modern) h6{color:#428bca}.note.info:not(.no-icon)::before{content:'\f05a'}.note.info:not(.no-icon):not(.modern)::before{color:#428bca}.note.success.flat{background:#eff8f0}.note.success.modern{border-color:#d0e6be;background:#dff0d8;color:#3c763d}.note.success.modern a:not(.btn){color:#3c763d}.note.success.modern a:not(.btn):hover{color:#32562c}.note.success:not(.modern){border-left-color:#5cb85c}.note.success:not(.modern) h2,.note.success:not(.modern) h3,.note.success:not(.modern) h4,.note.success:not(.modern) h5,.note.success:not(.modern) h6{color:#5cb85c}.note.success:not(.no-icon)::before{content:'\f058'}.note.success:not(.no-icon):not(.modern)::before{color:#5cb85c}.note.warning.flat{background:#fdf8ea}.note.warning.modern{border-color:#fae4cd;background:#fcf4e3;color:#8a6d3b}.note.warning.modern a:not(.btn){color:#8a6d3b}.note.warning.modern a:not(.btn):hover{color:#714f30}.note.warning:not(.modern){border-left-color:#f0ad4e}.note.warning:not(.modern) h2,.note.warning:not(.modern) h3,.note.warning:not(.modern) h4,.note.warning:not(.modern) h5,.note.warning:not(.modern) h6{color:#f0ad4e}.note.warning:not(.no-icon)::before{content:'\f06a'}.note.warning:not(.no-icon):not(.modern)::before{color:#f0ad4e}.note.danger.flat{background:#fcf1f2}.note.danger.modern{border-color:#ebcdd2;background:#f2dfdf;color:#a94442}.note.danger.modern a:not(.btn){color:#a94442}.note.danger.modern a:not(.btn):hover{color:#84333f}.note.danger:not(.modern){border-left-color:#d9534f}.note.danger:not(.modern) h2,.note.danger:not(.modern) h3,.note.danger:not(.modern) h4,.note.danger:not(.modern) h5,.note.danger:not(.modern) h6{color:#d9534f}.note.danger:not(.no-icon)::before{content:'\f056'}.note.danger:not(.no-icon):not(.modern)::before{color:#d9534f}#article-container .tabs{position:relative;margin:0 0 20px;border-right:1px solid var(--tab-border-color);border-bottom:1px solid var(--tab-border-color);border-left:1px solid var(--tab-border-color)}#article-container .tabs>.nav-tabs{display:-webkit-box;display:-moz-box;display:-webkit-flex;display:-ms-flexbox;display:box;display:flex;-webkit-box-lines:multiple;-moz-box-lines:multiple;-o-box-lines:multiple;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0;padding:0;background:var(--tab-botton-bg)}#article-container .tabs>.nav-tabs>.tab{margin:0;padding:0;list-style:none}@media screen and (max-width:768px){#article-container .tabs>.nav-tabs>.tab{-webkit-box-flex:1;-moz-box-flex:1;-o-box-flex:1;-ms-box-flex:1;box-flex:1;-webkit-flex-grow:1;flex-grow:1}}#article-container .tabs>.nav-tabs>.tab button{display:block;padding:8px 18px;width:100%;border-top:2px solid var(--tab-border-color);background:var(--tab-botton-bg);color:var(--tab-botton-color);line-height:2;-webkit-transition:all .4s;-moz-transition:all .4s;-o-transition:all .4s;-ms-transition:all .4s;transition:all .4s}#article-container .tabs>.nav-tabs>.tab button i{width:1.5em}#article-container .tabs>.nav-tabs>.tab.active button{border-top:2px solid #49b1f5;background:var(--tab-button-active-bg);cursor:default}#article-container .tabs>.nav-tabs>.tab:not(.active) button:hover{border-top:2px solid var(--tab-button-hover-bg);background:var(--tab-button-hover-bg)}#article-container .tabs>.tab-contents .tab-item-content{position:relative;display:none;padding:36px 24px}@media screen and (max-width:768px){#article-container .tabs>.tab-contents .tab-item-content{padding:24px 14px}}#article-container .tabs>.tab-contents .tab-item-content.active{display:block;-webkit-animation:tabshow .5s;-moz-animation:tabshow .5s;-o-animation:tabshow .5s;-ms-animation:tabshow .5s;animation:tabshow .5s}#article-container .tabs .tab-to-top{position:relative;display:block;margin:0 0 0 auto;color:#99a9bf}@-moz-keyframes tabshow{0%{-webkit-transform:translateY(15px);-moz-transform:translateY(15px);-o-transform:translateY(15px);-ms-transform:translateY(15px);transform:translateY(15px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes tabshow{0%{-webkit-transform:translateY(15px);-moz-transform:translateY(15px);-o-transform:translateY(15px);-ms-transform:translateY(15px);transform:translateY(15px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@-o-keyframes tabshow{0%{-webkit-transform:translateY(15px);-moz-transform:translateY(15px);-o-transform:translateY(15px);-ms-transform:translateY(15px);transform:translateY(15px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}@keyframes tabshow{0%{-webkit-transform:translateY(15px);-moz-transform:translateY(15px);-o-transform:translateY(15px);-ms-transform:translateY(15px);transform:translateY(15px)}100%{-webkit-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}#article-container .timeline{margin:0 0 20px 10px;padding:14px 20px 5px;border-left:2px solid var(--timeline-color,#49b1f5)}#article-container .timeline.blue{--timeline-color:#428bca;--timeline-bg:rgba(66,139,202, 0.2)}#article-container .timeline.pink{--timeline-color:#ff69b4;--timeline-bg:rgba(255,105,180, 0.2)}#article-container .timeline.red{--timeline-color:#f00;--timeline-bg:rgba(255,0,0, 0.2)}#article-container .timeline.purple{--timeline-color:#6f42c1;--timeline-bg:rgba(111,66,193, 0.2)}#article-container .timeline.orange{--timeline-color:#ff8c00;--timeline-bg:rgba(255,140,0, 0.2)}#article-container .timeline.green{--timeline-color:#5cb85c;--timeline-bg:rgba(92,184,92, 0.2)}#article-container .timeline .timeline-item{margin:0 0 15px}#article-container .timeline .timeline-item:hover .item-circle:before{border-color:var(--timeline-color,#49b1f5)}#article-container .timeline .timeline-item.headline .timeline-item-title .item-circle>p{font-weight:600;font-size:1.2em}#article-container .timeline .timeline-item.headline .timeline-item-title .item-circle:before{left:-28px;border:4px solid var(--timeline-color,#49b1f5)}#article-container .timeline .timeline-item.headline:hover .item-circle:before{border-color:var(--pseudo-hover)}#article-container .timeline .timeline-item .timeline-item-title{position:relative}#article-container .timeline .timeline-item .item-circle:before{position:absolute;top:50%;left:-27px;width:6px;height:6px;border:3px solid var(--pseudo-hover);border-radius:50%;background:var(--card-bg);content:'';-webkit-transition:all .3s;-moz-transition:all .3s;-o-transition:all .3s;-ms-transition:all .3s;transition:all .3s;-webkit-transform:translate(0,-50%);-moz-transform:translate(0,-50%);-o-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%)}#article-container .timeline .timeline-item .item-circle>p{margin:0 0 8px;font-weight:500}#article-container .timeline .timeline-item .timeline-item-content{position:relative;padding:12px 15px;border-radius:8px;background:var(--timeline-bg,#e4f3fd);font-size:.93em}#article-container .timeline .timeline-item .timeline-item-content>:last-child{margin-bottom:0}#article-container .timeline+.timeline{margin-top:-20px}[data-theme=dark]{--global-bg:#0d0d0d;--font-color:rgba(255,255,255,0.7);--hr-border:rgba(255,255,255,0.4);--hr-before-color:rgba(255,255,255,0.7);--search-bg:#121212;--search-input-color:rgba(255,255,255,0.7);--search-a-color:rgba(255,255,255,0.7);--preloader-bg:#0d0d0d;--preloader-color:rgba(255,255,255,0.7);--tab-border-color:#2c2c2c;--tab-botton-bg:#2c2c2c;--tab-botton-color:rgba(255,255,255,0.7);--tab-button-hover-bg:#383838;--tab-button-active-bg:#121212;--card-bg:#121212;--sidebar-bg:#121212;--btn-hover-color:#787878;--btn-color:rgba(255,255,255,0.7);--btn-bg:#1f1f1f;--text-bg-hover:#383838;--light-grey:rgba(255,255,255,0.7);--dark-grey:rgba(255,255,255,0.2);--white:rgba(255,255,255,0.9);--text-highlight-color:rgba(255,255,255,0.9);--blockquote-color:rgba(255,255,255,0.7);--blockquote-bg:#2c2c2c;--reward-pop:#2c2c2c;--toc-link-color:rgba(255,255,255,0.6);--hl-color:rgba(255,255,255,0.7);--hl-bg:#171717;--hltools-bg:#1a1a1a;--hltools-color:#90a4ae;--hlnumber-bg:#171717;--hlnumber-color:rgba(255,255,255,0.4);--hlscrollbar-bg:#1f1f1f;--hlexpand-bg:linear-gradient(180deg, rgba(23,23,23,0.6), rgba(23,23,23,0.9));--scrollbar-color:#1f1f1f;--timeline-bg:#1f1f1f;--zoom-bg:#121212;--mark-bg:rgba(0,0,0,0.6)}[data-theme=dark] #web_bg:before{position:absolute;width:100%;height:100%;background-color:rgba(0,0,0,.7);content:''}[data-theme=dark] #article-container code{background:#2c2c2c}[data-theme=dark] #article-container pre>code{background:#171717}[data-theme=dark] #article-container figure.highlight{-webkit-box-shadow:none;box-shadow:none}[data-theme=dark] #article-container .note code{background:rgba(27,31,35,.05)}[data-theme=dark] #article-container .aplayer{filter:brightness(.8)}[data-theme=dark] #article-container kbd{border-color:#696969;background-color:#525252;color:#e2f1ff}[data-theme=dark] #page-header.nav-fixed>#nav,[data-theme=dark] #page-header.not-top-img>#nav{background:rgba(18,18,18,.8);-webkit-box-shadow:0 5px 6px -5px rgba(133,133,133,0);box-shadow:0 5px 6px -5px rgba(133,133,133,0)}[data-theme=dark] #post-comment #comment-switch{background:#2c2c2c!important}[data-theme=dark] #post-comment #comment-switch .switch-btn{filter:brightness(.8)}[data-theme=dark] .note{filter:brightness(.8)}[data-theme=dark] #article-container iframe,[data-theme=dark] .ads-wrap,[data-theme=dark] .btn-beautify,[data-theme=dark] .error-img,[data-theme=dark] .gist,[data-theme=dark] .hide-button,[data-theme=dark] .hl-label,[data-theme=dark] .post-outdate-notice{filter:brightness(.8)}[data-theme=dark] img{filter:blur(0) brightness(.8)}[data-theme=dark] #aside-content .aside-list>.aside-list-item:not(:last-child){border-bottom:1px dashed rgba(255,255,255,.1)}[data-theme=dark] #gitalk-container{filter:brightness(.8)}[data-theme=dark] #gitalk-container svg{fill:rgba(255,255,255,.9)!important}[data-theme=dark] #disqusjs #dsqjs .dsqjs-no-comment,[data-theme=dark] #disqusjs #dsqjs .dsqjs-tab-active,[data-theme=dark] #disqusjs #dsqjs:focus,[data-theme=dark] #disqusjs #dsqjs:hover{color:rgba(255,255,255,.7)}[data-theme=dark] #disqusjs #dsqjs .dsqjs-order-label{background-color:#1f1f1f}[data-theme=dark] #disqusjs #dsqjs .dsqjs-post-body{color:rgba(255,255,255,.7)}[data-theme=dark] #disqusjs #dsqjs .dsqjs-post-body code,[data-theme=dark] #disqusjs #dsqjs .dsqjs-post-body pre{background:#2c2c2c}[data-theme=dark] #disqusjs #dsqjs .dsqjs-post-body blockquote{color:rgba(255,255,255,.7)}[data-theme=dark] #artitalk_main #lazy{background:#121212}[data-theme=dark] #operare_artitalk .c2{background:#121212}@media screen and (max-width:900px){[data-theme=dark] #card-toc{background:#1f1f1f}}.read-mode{--font-color:#4c4948;--readmode-light-color:#fff;--white:#4c4948;--light-grey:#4c4948;--gray:#d6dbdf;--hr-border:#d6dbdf;--hr-before-color:#b9c2c9;--highlight-bg:#f7f7f7;--exit-btn-bg:#c0c0c0;--exit-btn-color:#fff;--exit-btn-hover:#8d8d8d;--pseudo-hover:none}[data-theme=dark] .read-mode{--font-color:rgba(255,255,255,0.7);--readmode-light-color:#0d0d0d;--white:rgba(255,255,255,0.9);--light-grey:rgba(255,255,255,0.7);--gray:rgba(255,255,255,0.7);--hr-border:rgba(255,255,255,0.5);--hr-before-color:rgba(255,255,255,0.7);--highlight-bg:#171717;--exit-btn-bg:#1f1f1f;--exit-btn-color:rgba(255,255,255,0.9);--exit-btn-hover:#525252}.read-mode{background:var(--readmode-light-color)}.read-mode .exit-readmode{position:fixed;top:30px;right:30px;z-index:100;width:40px;height:40px;border-radius:8px;background:var(--exit-btn-bg);color:var(--exit-btn-color);font-size:16px;-webkit-transition:background .3s;-moz-transition:background .3s;-o-transition:background .3s;-ms-transition:background .3s;transition:background .3s}@media screen and (max-width:768px){.read-mode .exit-readmode{top:initial;bottom:30px}}.read-mode .exit-readmode:hover{background:var(--exit-btn-hover)}.read-mode #aside-content{display:none}.read-mode #page-header.post-bg{background:0 0!important}.read-mode #page-header.post-bg:before{opacity:0}.read-mode #page-header.post-bg>#post-info{text-align:center}.read-mode #post{margin:0 auto;background:0 0;-webkit-box-shadow:none;box-shadow:none}.read-mode #post:hover{-webkit-box-shadow:none;box-shadow:none}.read-mode>canvas{display:none!important}.read-mode #footer,.read-mode #nav,.read-mode #post>:not(#post-info):not(.post-content),.read-mode #rightside,.read-mode #web_bg,.read-mode .highlight-tools,.read-mode .not-top-img,.read-mode .post-outdate-notice{display:none!important}.read-mode #article-container a{color:#99a9bf}.read-mode #article-container .highlight:not(.js-file-line-container),.read-mode #article-container pre{background:var(--highlight-bg)!important}.read-mode #article-container .highlight:not(.js-file-line-container) *,.read-mode #article-container pre *{color:var(--font-color)!important}.read-mode #article-container figure.highlight{border-radius:0!important;-webkit-box-shadow:none!important;box-shadow:none!important}.read-mode #article-container figure.highlight>:not(.highlight-tools){display:block!important}.read-mode #article-container figure.highlight .line:before{color:var(--font-color)!important}.read-mode #article-container figure.highlight .hljs{background:var(--highlight-bg)!important}.read-mode #article-container h1,.read-mode #article-container h2,.read-mode #article-container h3,.read-mode #article-container h4,.read-mode #article-container h5,.read-mode #article-container h6{padding:0}.read-mode #article-container h1:before,.read-mode #article-container h2:before,.read-mode #article-container h3:before,.read-mode #article-container h4:before,.read-mode #article-container h5:before,.read-mode #article-container h6:before{content:''}.read-mode #article-container h1:hover,.read-mode #article-container h2:hover,.read-mode #article-container h3:hover,.read-mode #article-container h4:hover,.read-mode #article-container h5:hover,.read-mode #article-container h6:hover{padding:0}.read-mode #article-container li:hover:before,.read-mode #article-container ol:hover:before,.read-mode #article-container ul:hover:before{-webkit-transform:none!important;-moz-transform:none!important;-o-transform:none!important;-ms-transform:none!important;transform:none!important}.read-mode #article-container li:before,.read-mode #article-container ol:before{background:0 0!important;color:var(--font-color)!important}.read-mode #article-container ul>li:before{border-color:var(--gray)!important}.read-mode #article-container .tabs{border:2px solid var(--tab-border-color)}.read-mode #article-container .tabs>.nav-tabs{background:0 0}.read-mode #article-container .tabs>.nav-tabs>.tab{border-bottom:0}.read-mode #article-container .tabs>.nav-tabs>.tab button{border-top:none!important;background:0 0}.read-mode #article-container .tabs>.nav-tabs>.tab button:hover{background:0 0!important}.read-mode #article-container .tabs>.nav-tabs>.tab.active button{text-decoration:underline}.read-mode #article-container .tabs>.tab-contents .tab-item-content.active{-webkit-animation:none;-moz-animation:none;-o-animation:none;-ms-animation:none;animation:none}.read-mode #article-container code{color:var(--font-color)}.read-mode #article-container blockquote{border-color:var(--gray);background-color:var(--readmode-light-color)}.read-mode #article-container kbd{border:1px solid var(--gray);background-color:transparent;-webkit-box-shadow:none;box-shadow:none;color:var(--font-color)}.read-mode #article-container .hide-toggle{border:1px solid var(--gray)!important}.read-mode #article-container .btn-beautify,.read-mode #article-container .hide-button,.read-mode #article-container .hl-label{border:1px solid var(--gray)!important;background:var(--readmode-light-color)!important;color:var(--font-color)!important}.read-mode #article-container .note{border:2px solid var(--gray);border-left-color:var(--gray)!important;filter:none;background-color:var(--readmode-light-color)!important;color:var(--font-color)}.read-mode #article-container .note .note-icon,.read-mode #article-container .note:before{color:var(--font-color)}.search-dialog{position:fixed;top:10%;left:50%;z-index:1001;display:none;margin-left:-300px;padding:20px;width:600px;border-radius:8px;background:var(--search-bg);--search-height:100vh}@media screen and (max-width:768px){.search-dialog{top:0;left:0;margin:0;width:100%;height:100%;border-radius:0}}.search-dialog hr{margin:20px auto}.search-dialog .search-nav{margin:0 0 14px;color:#49b1f5;font-size:1.4em;line-height:1}.search-dialog .search-nav .search-dialog-title{margin-right:10px}.search-dialog .search-nav .search-close-button{float:right;color:#858585;-webkit-transition:color .2s ease-in-out;-moz-transition:color .2s ease-in-out;-o-transition:color .2s ease-in-out;-ms-transition:color .2s ease-in-out;transition:color .2s ease-in-out}.search-dialog .search-nav .search-close-button:hover{color:#49b1f5}.search-dialog hr{margin:20px auto}#search-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:none;background:rgba(0,0,0,.6)}#algolia-search .search-dialog .ais-SearchBox input{padding:5px 14px;width:100%;outline:0;border:2px solid #49b1f5;border-radius:40px;background:var(--search-bg);color:var(--search-input-color)}#algolia-search .search-dialog .ais-Hits-list{margin:0;padding:0}#algolia-search .search-dialog .ais-Hits-list a{color:var(--search-a-color)}#algolia-search .search-dialog .ais-Hits-list a:hover{color:#49b1f5}#algolia-search .search-dialog .ais-Hits-list mark{background:0 0;color:#f47466;font-weight:700}#algolia-search .search-dialog .algolia-hits-item-title{font-weight:600}#algolia-search .search-dialog .algolia-hit-item-content{margin:0 0 8px;word-break:break-word}#algolia-search .search-dialog .ais-Pagination{margin:15px 0 0;padding:0;text-align:center}#algolia-search .search-dialog .ais-Pagination .ais-Pagination-list{margin:0;padding:0;list-style:none}#algolia-search .search-dialog .ais-Pagination .ais-Pagination-item{display:inline;margin:0 4px;padding:0}#algolia-search .search-dialog .ais-Pagination .ais-Pagination-item .ais-Pagination-link{display:inline-block;min-width:24px;height:24px;text-align:center;line-height:24px}#algolia-search .search-dialog .ais-Pagination .ais-Pagination-item--selected a{background:#00c4b6;color:#eee;cursor:default}#algolia-search .search-dialog .ais-Pagination .ais-Pagination-item--disabled{visibility:hidden}#algolia-search .search-dialog #algolia-hits>div{overflow-y:scroll;margin:0 -20px;padding:0 22px;max-height:calc(80vh - 240px)}@media screen and (max-width:768px){#algolia-search .search-dialog #algolia-hits>div{max-height:none;height:calc(var(--search-height) - 265px)}}#algolia-search .search-dialog #algolia-info div{display:inline}#algolia-search .search-dialog #algolia-info .algolia-poweredBy{float:right;vertical-align:text-top}#algolia-search .search-dialog #algolia-info .algolia-poweredBy svg{height:1.1em} \ No newline at end of file diff --git a/css/pointer/Arrow.cur b/css/pointer/Arrow.cur new file mode 100644 index 0000000000000000000000000000000000000000..8db3ab43ad785fb767f76df207356dbe88498744 GIT binary patch literal 4286 zcmeH}+ins;9EXRp6IN%`%U)~@B+L7#}1D0{1Q|FW4Z?z1IIzdTyV^d zYPBlYQK?ks>2&%H%033%ei%2`gx452zXx<%mgUNLJZ5}9gTY`85S;H(@fFNUXKVz+#sA2b8m777h`g^^e zESJk)qtPhOz-_o~|8oCje{K5xKHc9UkqFPcZMo@Rojrp1<@DheP)JJdsFnf8Vy7anOZ=!Z?VRy9}yd xr+;k(q%*xcl9tdx0Qi9q2%8f;{|V%?9LuvF>puW&>jX$?`G6k;fbJAZ`5Ph_SR()c literal 0 HcmV?d00001 diff --git a/css/pointer/Copy.cur b/css/pointer/Copy.cur new file mode 100644 index 0000000000000000000000000000000000000000..51ba7902dfd8d71821fe126a2dfc8bc21f30d837 GIT binary patch literal 4286 zcmeH}%TE(Q9LJ}Wihx=rpinAZkW!@S11gUwq?NNA^baucz=4u@GZ;A_CyqiO+`V}+ z#u#EqOi0AUn_LWuhH&77!2}W@JPJR*-)*NZ523B}Vw~i=v%9l9pWka{SE&MJQ-+~b zv2v(amzBDzlxl=Ft1jg5J#pZuK=<`g%mrEbXKBY_E_oG@8#16;$OBbF_al769 z7!N~?2W_C;%tbbh&y&qKS3x(R5Y%P2+aEMGHhzdiA`*Yxh9Zv;nbs zjpvyQ)n zcboaP`g$Cn_gD{z+Yii93uRLSR=&^be|vkoR6mQEv8K;|68U@%<2zvgwg2nu>$0@8 zl(qk`o&M*Ve>48{absgcmY0{Mudh#ncUvXX{G(>yfuC#rr}^94+hz?+O--3GuO3Y1 zK-U3n)aUGV{d>LM`&s55kDL1hYc6rDOT6?Jd zmzbjr%4Y53@uU1iA|X3FJLx=_Ho)g#cbj+~AKm}RE-fwPex1wyZ>|3Z#&&OSPqYn; z1J~p9^t8m|ap~yjU{3bA)X-E zxr}^#N50q8)HLCm`PMa#)4VnE$teN*TU}k97w6V>oi}i5V&;H06yl%jI(ogn&bro8 zxMMropzR=+=l|P36akSJA_<$wsv43R72U_bVj?LgdgoSBMd-EkJ@%fIqUeXVlufpj W6Y@Y&Xb4J9pRl7Z64`gkf%XgLrbqw) literal 0 HcmV?d00001 diff --git a/css/pointer/Hand.cur b/css/pointer/Hand.cur new file mode 100644 index 0000000000000000000000000000000000000000..fce73d116c8c435805e3da73c3ed1acc74c3470d GIT binary patch literal 4286 zcmeHJO-NKx6uvf1R#sD@rDo1#j$_KanR!!bKc)#rR6+`^jHrc>M$ix8E;9m`Ice_O zwTg(45CS3h1rb6bE?k6RprE48=;{03%+)a^oyplm7rwdk-o5X9=X~ef^PW;$RGMeXJQ_A8}I0Nhg509Ns<)MKorXr#feMv5p_nI+#Azy@rM1Fw0X>!}!;mz>*y zoxpBjPi*FOI>7bK^y7D4@?``0fD1SbIDvye7C@iq2le2y$qda&8+L&9b^+vd0cF5( z;51MPoB~XM0885i7(iuSUf#pf($WFH-~ZDz%`oQiva+)N z{QUgeSoZ_egFeu2<|2{7{p6<3xxf*?2UOZ@wuX|Dk`KXPP--hoX}c7V=k7&t;#{4#sbEAn6&yzaz( z`T%WSV?T4jdPqbA`bmH3w+q@zAP^A4Fc_C*oAG{WGUVe8-wJ;1OQ=3z?Q=SvH(`S{ z$ygZEMuz5R&fVmnoSc-Akr8QXYO*w+yJtvawJE*VmigN+2V~}MR150BTzI|S_pre_ zVBKys2b!N9vzYu76B9B#JS;UeHS!qwW}K%_1m($PzbwS`KMu{Wo;78-*|64G576xg zY#as>seyQYPkj94<>k`d;J57GsWmN)nd^AaueXgpYai~WO=13Zt?8NiH&mK3bjz^L1@n)Z zeFy$z>wk%VZf?%1f!^L;E7lhc(HhX)oY@DaWA&%&-|cqSCzyL|xB3KYb%{S54$I8U zjEs+uOKWSZrFjqPAbfxM?9&IxOnv$K=E?Q?c^b`hRnZzb;`aVPq1v7R%UpEc~#{N3H%jC(LQH<$19 zRB_Wc%}O@0n)%6iTuKi(rl1qB7AxMsd}jpJ|12KmXe6Wrel z3k%)&AAhb>MjSKD9MFfY_~trYy6_dpoumuLE2_;>e|Ug3NF&(rr_wu;vj-c-5i|i zA8=_0>mLZT1Vk!i5k(_ShE`LPoIX#uuS7A)y)iDO2Oh7v?>X;tz7wVDRh?>WRqCE< zP@nEA)ufbq3gDHB0yxEArKWNA4@n(jv4UELOul*(H}SLrtxwylh~~b9OI*Mm;2z)x zSlMFm9nYvk-3EYuROC_qobp;v$G@le7-F9_V#3ad|Y7j9k$FH`+;?|B0BGlQ07YMM%UYlJ)4m+W0D z{N!fd>2D$Lp-?Ejy1Htcn?9KQoDKF+C4T0HI=6uqpa-%(GBP6BZ1%eOb-pm>ahFxve|q*C z{eJ&D!kOuxcg>iX2`z_TkalykMRCVLLKIb`s_#UZO&tN zDgL9QBUxTvmUuiaQ&Up{zjM&dp@+9RIy(I3J&fJT?uA-GkGk}QesB+WUF2U}T$Iht zO&J>-BWDIUL7l!~U$;S@`;$4Ry&Z0-p9y{7F6Qp+BtQ3{20w%ICpf=gW}iSubMm`` zcI0IYR^x{1IiVeE!F$^;Oi3v9br&1~Qb{_8^ndjBk80KX~_n;g7{9}H8UNV`C@OuIL2e4#sSe>o1L?sT{1B}gy zoe+c%$#6JK?q7jG;0@oK=hgNY%qxoafpNMpUz|tQ*BLji z|1Z~-0ik4-NJ1I1q1-YJ;CDBH!FFU(W8wrz0g21uz?lO&)Tg}xh)g?7xbXxw4Dh@r HuRKkV%4(bO9Sk{ItzHsan7frX z09n8WU}LQ3bvnTLzp3MUUh?GwZomLa01r?E&%eT(BMz@qjw1m%0sjE7jH25(oqsm$^3MB`=Y2f5aTq8aU=YAJyRT zcurys)+A$LOlxVHpE>uEe`;z<#>U2^rKQF6JniY{IKS4Q^{}T8%!S|Ye}Xkw2dvw* z=0NlF#4IEKSWNzuh? ztGLMT-+x3l-gp+D<9!%k0QVoqKRrDy3u9TLyk&Q<3hxwEsgd0r=T{#)z6 zjQL+$S`w{+K5#z{4Gl?KTbtC^*E1)}+-t#L@Da{Oo|8Pc8F#Ypo)!L+Uu$44SP$G2 zU0q!~W8NWFKe)EWcr(%S`DEY!Ka5{%U{4L*-Q9wB-rKyqJTJI-R?=&}r<3Kyqh|Xp ze@{;j&$f5@`T0BW1kYCTuJwF3Nq+HT<@YlG%)Lf$Z!fvuBknS+kqv0Cf3ajjQ<|Ti z?y&Or_4U#75qx|2FsI{A^xNWhVl+Q%*wFm_{r!x4q_D7%@AOo0Q=8@|hl~6J0|O>^ zK|#UJ6myfGjh?cebIFhQ$j9R1;tE_d-@3-}H)W0d=%mT_j=?nN*$fQZ+8)TQL%a6TNdTigffE jdW^j%hDP+AbIK-j$_aRYMxYajE+4U@PZwEs%8K?4c+_&F literal 0 HcmV?d00001 diff --git a/css/pointer/IBeam.cur b/css/pointer/IBeam.cur new file mode 100644 index 0000000000000000000000000000000000000000..582ad9816149ae38877089f05961520d58bb41c0 GIT binary patch literal 4286 zcmeH}&rSkC48{xiCu#)ZK}|e}5yb;H3@4-eXgrRO;bVDVcl~~wnPf8yc$rFKDESzs zE&Zn5&di$it!I;o*+`$yvDvkmy$DiSA;_w4vz2TI$x?xyqNK~ zkK7fuiOabM|1{y}96*o#z^@`W2zA|e{rA~_o&DG9fA9TA?K|gBi{JbFiMg}K9)u

>g(j{LTHNkz9*}zX*D-`-j?h?%$X{YXS1{ynmbbkC->yZ3KR=_mBAe zhcVYpqw@E9|Dyln8t8++e*Y9@bFZ)ldVzB=1$ykP)mz|5;mvu7{|_rrNBRD!>#x(g QUJbSb`!4+UUpNx^0k4Z80ssI2 literal 0 HcmV?d00001 diff --git a/css/pointer/NO.cur b/css/pointer/NO.cur new file mode 100644 index 0000000000000000000000000000000000000000..fbc8bc84c942a1c950c3e350f18853fa04504f57 GIT binary patch literal 4286 zcmeHJ&r4KM7`-#&X#S`%(Hh6e_cX^bMMoV&sl*V9AX?NP5VUZitwY+RLf|qd&26-6 z6%ipJL@r#Hn-B_d;UWwJ1+{Tz^y{2AbBE^-)R~-3bm7c>Z|;5HIp2@_y{D8@Ih1KC zRjAzRb*WP4lu``<{!-Tgtm0RxVXWn7IAB*JM-=-I=pUq}yPTFt-v{wR<*94k?%fMBj z8@K|r11vx4ItwsH*=W$*`FNf&^#Ckw6KDateLml##>U3k*4EZv?d|Px%qvYzO*4MK z{~^{}0mg$GsGGUSWN<&Z8RtsiA`k+)T`t$XhK7cZ;c!@5T5gDG4oOwjbIea96uKe& zA3EN;-R>~w!KUcQ9u3+Y2zx*MK{~{a`RS8xD7XGa^psZ&7L|4c`0xW0nTQ z<_-2U7p#X&VnChLOWh`7D{XCU@U?}0S+?n~opoG0HCbF-l)k<`E9OpTR6L#;DJl7Upbo}?xoB=~{s0>Wz`8wd4m3YIWuOL^>tZVTH58mJ?HeFabP?c7p~ENXs7?#=HH4x&(p@n zhAb~HOMibq@_!S4M$>-Ub+8^-7dro_+4tbjw*J%nTU%RJ4NOftU(vdv>$+L&re+3(5KqhA& z+xPP)5($aLV(C02HL(BP62o}9um6#|xVV`8I-CA)um5`He|vjdvz_+*|+I;w(p)@@h895z+A8%cqT?hM%ZKK;A=Cu&Zl?_G4uIs z-~R{tuQhO{hSAYc!8`9ud3kvNThbP!u$a~!W zZjl`FW9JVr|IEEcBoZO_SNL5I8^wT*^&uuRTGITCX`P*ae0-cSpU1aH5Nq1+OusFT z5~KN9!=~n+n3$m7^OcpAe5dD%o7yx#Ieg@woSd|{yq6akTEA_<4csv43R)w6?d#Y7Sw%${fx1(-GTf1HgJdN2<~l|!P+0~kOLFa#vc OCtR2dM0Px~Yy1JZJVcEE literal 0 HcmV?d00001 diff --git a/css/var.css b/css/var.css new file mode 100644 index 000000000..e69de29bb diff --git a/drive/index.html b/drive/index.html new file mode 100644 index 000000000..81d3f4b38 --- /dev/null +++ b/drive/index.html @@ -0,0 +1,430 @@ +个人网盘 | 希亚的西红柿のBlog

\ No newline at end of file diff --git a/img/404.jpg b/img/404.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4bab3c3f20a1e04b7e611f1b8e1d28357009007d GIT binary patch literal 16393 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 literal 0 HcmV?d00001 diff --git a/img/favicon.png b/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..862ebe85838eb999f7c19e80c498ebf286110f7e GIT binary patch literal 323 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 literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 000000000..f53783d51 --- /dev/null +++ b/index.html @@ -0,0 +1,347 @@ +希亚的西红柿のBlog - 分享学习与生活

Windows/Ubuntu双系统安装教程
JAVA学习笔记
栈与队列
线性表
Win10/11任务栏透明美化
数据结构绪论
机器学习基本概念与知识
使用numpy实现k-means聚类算法
使用Numpy实现k-Nearest-Neighbor算法
Python实现决策树(Decision Tree)算法
\ No newline at end of file diff --git a/js/hideLrc.js b/js/hideLrc.js new file mode 100644 index 000000000..ef0618abe --- /dev/null +++ b/js/hideLrc.js @@ -0,0 +1 @@ +const observer=new MutationObserver(((e,r)=>{for(let r of e)"childList"===r.type&&removelrc()})),removelrc=()=>{const e=document.querySelector(".aplayer-icon-lrc");e&&(observer.disconnect(),e.click())},observerConfig={childList:!0,subtree:!0};observer.observe(document,observerConfig); \ No newline at end of file diff --git a/js/main.js b/js/main.js new file mode 100644 index 000000000..42192e22e --- /dev/null +++ b/js/main.js @@ -0,0 +1 @@ +document.addEventListener("DOMContentLoaded",(function(){let t,e,n=!1;const o=n=>{const o=t=>{let e=0;return t.length&&Array.from(t).forEach((t=>{e+=t.offsetWidth})),e};if(n){const n=o(document.querySelector("#blog-info > a").children),i=o(document.getElementById("menus").children);t=n+i,e=document.getElementById("nav")}let i="";i=window.innerWidth<=768||t>e.offsetWidth-120,i?e.classList.add("hide-menu"):e.classList.remove("hide-menu")},i=()=>{btf.sidebarPaddingR(),document.body.style.overflow="hidden",btf.animateIn(document.getElementById("menu-mask"),"to_show 0.5s"),document.getElementById("sidebar-menus").classList.add("open"),n=!0},c=()=>{const t=document.body;t.style.overflow="",t.style.paddingRight="",btf.animateOut(document.getElementById("menu-mask"),"to_hide 0.5s"),document.getElementById("sidebar-menus").classList.remove("open"),n=!1},s=function(){const t=GLOBAL_CONFIG.highlight;if(!t)return;const{highlightCopy:e,highlightLang:n,highlightHeightLimit:o,plugin:i}=t,c=GLOBAL_CONFIG_SITE.isHighlightShrink,s=e||n||void 0!==c,a="highlighjs"===i?document.querySelectorAll("figure.highlight"):document.querySelectorAll('pre[class*="language-"]');if(!s&&!o||!a.length)return;const l="prismjs"===i,d=!0===c?"closed":"",r=void 0!==c?``:"",u=e?'
':"",m=t=>{const e=t.parentNode;e.classList.add("copy-true");const n=window.getSelection(),o=document.createRange(),i=l?"pre code":"table .code pre";o.selectNodeContents(e.querySelectorAll(`${i}`)[0]),n.removeAllRanges(),n.addRange(o);n.toString();((t,e)=>{if(document.queryCommandSupported&&document.queryCommandSupported("copy"))if(document.execCommand("copy"),void 0!==GLOBAL_CONFIG.Snackbar)btf.snackbarShow(GLOBAL_CONFIG.copy.success);else{const t=e.previousElementSibling;t.textContent=GLOBAL_CONFIG.copy.success,t.style.opacity=1,setTimeout((()=>{t.style.opacity=0}),700)}else void 0!==GLOBAL_CONFIG.Snackbar?btf.snackbarShow(GLOBAL_CONFIG.copy.noSupport):e.previousElementSibling.textContent=GLOBAL_CONFIG.copy.noSupport})(0,t.lastChild),n.removeAllRanges(),e.classList.remove("copy-true")},g=function(t){const e=t.target.classList;e.contains("expand")?(t=>{const e=[...t.parentNode.children].slice(1);t.firstChild.classList.toggle("closed"),btf.isHidden(e[e.length-1])?e.forEach((t=>{t.style.display="block"})):e.forEach((t=>{t.style.display="none"}))})(this):e.contains("copy-button")&&m(this)},h=function(){this.classList.toggle("expand-done")};function f(t,e,n){const i=document.createDocumentFragment();if(s){const e=document.createElement("div");e.className=`highlight-tools ${d}`,e.innerHTML=r+t+u,e.addEventListener("click",g),i.appendChild(e)}if(o&&e.offsetHeight>o+30){const t=document.createElement("div");t.className="code-expand-btn",t.innerHTML='',t.addEventListener("click",h),i.appendChild(t)}"hl"===n?e.insertBefore(i,e.firstChild):e.parentNode.insertBefore(i,e)}l?a.forEach((t=>{if(n){const e=`
${t.getAttribute("data-language")||"Code"}
`;btf.wrap(t,"figure",{class:"highlight"}),f(e,t)}else btf.wrap(t,"figure",{class:"highlight"}),f("",t)})):a.forEach((function(t){if(n){let e=t.getAttribute("class").split(" ")[1];"plain"!==e&&void 0!==e||(e="Code");f(`
${e}
`,t,"hl")}else f("",t,"hl")}))};const a=function(t){const e=t=>{let e="";const n=t=>t.replace(/"/g,""");return t.forEach((t=>{const o=t.alt?`alt="${n(t.alt)}"`:"",i=t.title?`title="${n(t.title)}"`:"";e+=``})),e},n=(t,n,o)=>{const i=o,c=n.length;return c>i?t.insertAdjacentHTML("beforeend",e(n.splice(0,i))):(t.insertAdjacentHTML("beforeend",e(n)),t.classList.remove("lazyload")),c>i?i:c},o=(t,o)=>{if(t.classList.contains("lazyload")){const e=t.getAttribute("data-limit");n(t,o,e);const i=()=>{const c=n(t,o,e);fjGallery(t,"appendImages",t.querySelectorAll(`.fj-gallery-item:nth-last-child(-n+${c})`)),btf.loadLightbox(t.querySelectorAll("img")),c{t.forEach((t=>{t.classList.contains("url")?(async t=>{const e=await fetch(t);return await e.json()})(t.textContent).then((e=>{o(t,e)})):o(t,JSON.parse(t.textContent))}))};window.fjGallery?i():(getCSS(`${GLOBAL_CONFIG.source.justifiedGallery.css}`),getScript(`${GLOBAL_CONFIG.source.justifiedGallery.js}`).then(i))},l=function(){const t=document.getElementById("rightside"),e=window.innerHeight+56;let n=0,o=!0;const i=document.getElementById("page-header"),c="undefined"!=typeof chatBtn,s=GLOBAL_CONFIG.percent.rightside;if(document.body.scrollHeight<=e)return void(t.style.cssText="opacity: 1; transform: translateX(-58px)");const a=btf.throttle((()=>{const a=window.scrollY||document.documentElement.scrollTop,l=(t=>{const e=t>n;return n=t,e})(a);a>56?(l?(i.classList.contains("nav-visible")&&i.classList.remove("nav-visible"),c&&!0===o&&(window.chatBtn.hide(),o=!1)):(i.classList.contains("nav-visible")||i.classList.add("nav-visible"),c&&!1===o&&(window.chatBtn.show(),o=!0)),i.classList.add("nav-fixed"),"0"===window.getComputedStyle(t).getPropertyValue("opacity")&&(t.style.cssText="opacity: 0.8; transform: translateX(-58px)")):(0===a&&i.classList.remove("nav-fixed","nav-visible"),t.style.cssText="opacity: ''; transform: ''"),s&&(t=>{const e=btf.getScrollPercent(t,document.body),n=document.getElementById("go-up");e<95?(n.classList.add("show-percent"),n.querySelector(".scroll-percent").textContent=e):n.classList.remove("show-percent")})(a),document.body.scrollHeight<=e&&(t.style.cssText="opacity: 0.8; transform: translateX(-58px)")}),200);window.scrollCollect=a,window.addEventListener("scroll",scrollCollect)},d=function(){const t=GLOBAL_CONFIG_SITE.isToc,e=GLOBAL_CONFIG.isAnchor,n=document.getElementById("article-container");if(!n||!t&&!e)return;let o,i,c,s,a;if(t){const t=document.getElementById("card-toc");i=t.getElementsByClassName("toc-content")[0],o=i.querySelectorAll(".toc-link"),s=t.querySelector(".toc-percentage"),a=i.classList.contains("is-expand"),window.mobileToc={open:()=>{t.style.cssText="animation: toc-open .3s; opacity: 1; right: 55px"},close:()=>{t.style.animation="toc-close .2s",setTimeout((()=>{t.style.cssText="opacity:''; animation: ''; right: ''"}),100)}},i.addEventListener("click",(t=>{t.preventDefault();const e=t.target.classList;if(e.contains("toc-content"))return;const n=e.contains("toc-link")?t.target:t.target.parentElement;btf.scrollToDest(btf.getEleTop(document.getElementById(decodeURI(n.getAttribute("href")).replace("#",""))),300),window.innerWidth<900&&window.mobileToc.close()})),c=t=>{const e=t.getBoundingClientRect().top,n=i.scrollTop;e>document.documentElement.clientHeight-100&&(i.scrollTop=n+150),e<100&&(i.scrollTop=n-150)}}const l=n.querySelectorAll("h1,h2,h3,h4,h5,h6");let d="";window.tocScrollFn=btf.throttle((()=>{const r=window.scrollY||document.documentElement.scrollTop;t&&GLOBAL_CONFIG.percent.toc&&(s.textContent=btf.getScrollPercent(r,n)),function(n){if(0===n)return!1;let s="",r="";if(l.forEach((function(t,e){if(n>btf.getEleTop(t)-80){const n=t.id;s=n?"#"+encodeURI(n):"",r=e}})),d!==r&&(e&&btf.updateAnchor(s),d=r,t)){if(i.querySelectorAll(".active").forEach((t=>{t.classList.remove("active")})),""===s)return;const t=o[r];if(t.classList.add("active"),setTimeout((()=>{c(t)}),0),a)return;let e=t.parentNode;for(;!e.matches(".toc");e=e.parentNode)e.matches("li")&&e.classList.add("active")}}(r)}),100),window.addEventListener("scroll",tocScrollFn)},r=t=>{if(!window.themeChange)return;const e=e=>window.themeChange[e](t);Object.keys(window.themeChange).forEach((t=>{["disqus","disqusjs"].includes(t)?setTimeout((()=>e(t)),300):e(t)}))},u=()=>{const t=document.body;t.classList.add("read-mode");const e=document.createElement("button");e.type="button",e.className="fas fa-sign-out-alt exit-readmode",t.appendChild(e);const n=()=>{t.classList.remove("read-mode"),e.remove(),e.removeEventListener("click",n)};e.addEventListener("click",n)},m=()=>{const t="dark"===document.documentElement.getAttribute("data-theme")?"light":"dark";"dark"===t?(activateDarkMode(),saveToLocal.set("theme","dark",2),void 0!==GLOBAL_CONFIG.Snackbar&&btf.snackbarShow(GLOBAL_CONFIG.Snackbar.day_to_night)):(activateLightMode(),saveToLocal.set("theme","light",2),void 0!==GLOBAL_CONFIG.Snackbar&&btf.snackbarShow(GLOBAL_CONFIG.Snackbar.night_to_day)),r(t)},g=t=>{const e=document.getElementById("rightside-config-hide").classList;e.toggle("show"),t.classList.contains("show")&&(e.add("status"),setTimeout((()=>{e.remove("status")}),300)),t.classList.toggle("show")},h=()=>{btf.scrollToDest(0,500)},f=()=>{const t=document.documentElement.classList,e=t.contains("hide-aside")?"show":"hide";saveToLocal.set("aside-status",e,2),t.toggle("hide-aside")},p=()=>{"0"===window.getComputedStyle(document.getElementById("card-toc")).getPropertyValue("opacity")?window.mobileToc.open():window.mobileToc.close()},L=()=>{window.chatBtnFn()};document.getElementById("rightside").addEventListener("click",(function(t){const e=t.target.id?t.target:t.target.parentNode;switch(e.id){case"go-up":h();break;case"rightside_config":g(e);break;case"mobile-toc-button":p();break;case"readmode":u();break;case"darkmode":m();break;case"hide-aside-btn":f();break;case"chat-btn":L()}}));const y=()=>{document.querySelectorAll("#sidebar-menus .site-page.group").forEach((function(t){t.addEventListener("click",(function(){this.classList.toggle("hide")}))}))},b=function(){document.querySelectorAll("#article-container .tab > button").forEach((function(t){t.addEventListener("click",(function(t){const e=this,n=e.parentNode;if(!n.classList.contains("active")){const t=n.parentNode.nextElementSibling,o=btf.siblings(n,".active")[0];o&&o.classList.remove("active"),n.classList.add("active");const i=e.getAttribute("data-href").replace("#","");[...t.children].forEach((t=>{t.id===i?t.classList.add("active"):t.classList.remove("active")}));const c=t.querySelectorAll(`#${i} .fj-gallery`);c.length>0&&btf.initJustifiedGallery(c)}}))}))},v=()=>{document.querySelectorAll("#article-container .tabs .tab-to-top").forEach((function(t){t.addEventListener("click",(function(){btf.scrollToDest(btf.getEleTop(btf.getParents(this,".tabs")),300)}))}))},E=function(t){t.forEach((t=>{const e=t.getAttribute("datetime");t.textContent=btf.diffDate(e,!0),t.style.display="inline"}))};window.refreshFn=function(){o(!0),e.classList.add("show"),GLOBAL_CONFIG_SITE.isPost?(void 0!==GLOBAL_CONFIG.noticeOutdate&&function(){const t=GLOBAL_CONFIG.noticeOutdate,e=btf.diffDate(GLOBAL_CONFIG_SITE.postUpdate);if(e>=t.limitDay){const n=document.createElement("div");n.className="post-outdate-notice",n.textContent=t.messagePrev+" "+e+" "+t.messageNext;const o=document.getElementById("article-container");"top"===t.position?o.insertBefore(n,o.firstChild):o.appendChild(n)}}(),GLOBAL_CONFIG.relativeDate.post&&E(document.querySelectorAll("#post-meta time"))):(GLOBAL_CONFIG.relativeDate.homepage&&E(document.querySelectorAll("#recent-posts time")),GLOBAL_CONFIG.runtime&&(()=>{const t=document.getElementById("runtimeshow");if(t){const e=t.getAttribute("data-publishDate");t.textContent=`${btf.diffDate(e)} ${GLOBAL_CONFIG.runtime}`}})(),(()=>{const t=document.getElementById("last-push-date");if(t){const e=t.getAttribute("data-lastPushDate");t.textContent=btf.diffDate(e,!0)}})(),function(){const t=document.querySelectorAll("#aside-cat-list .card-category-list-item.parent i");t.length&&t.forEach((function(t){t.addEventListener("click",(function(t){t.preventDefault(),this.classList.toggle("expand");const e=this.parentNode.nextElementSibling;btf.isHidden(e)?e.style.display="block":e.style.display="none"}))}))}()),d(),GLOBAL_CONFIG_SITE.isHome&&(()=>{const t=document.getElementById("scroll-down");t&&t.addEventListener("click",(function(){btf.scrollToDest(document.getElementById("content-inner").offsetTop,300)}))})(),s(),GLOBAL_CONFIG.isPhotoFigcaption&&document.querySelectorAll("#article-container img").forEach((function(t){const e=t.parentNode,n=t.title||t.alt;if(n&&!e.parentNode.classList.contains("justified-gallery")){const o=document.createElement("div");o.className="img-alt is-center",o.textContent=n,e.insertBefore(o,t.nextSibling)}})),l();const t=document.querySelectorAll("#article-container .fj-gallery");t.length&&a(t),btf.loadLightbox(document.querySelectorAll("#article-container img:not(.no-lightbox)")),(()=>{const t=document.querySelectorAll("#article-container :not(.highlight) > table, #article-container > table");t.length&&t.forEach((t=>{btf.wrap(t,"div",{class:"table-wrap"})}))})(),function(){const t=document.querySelectorAll("#article-container .hide-button");t.length&&t.forEach((function(t){t.addEventListener("click",(function(t){this.classList.add("open");const e=this.nextElementSibling.querySelectorAll(".fj-gallery");e.length&&btf.initJustifiedGallery(e)}))}))}(),b(),v(),function(){let t=!1;const e=document.querySelector("#comment-switch > .switch-btn");e&&e.addEventListener("click",(function(){this.classList.toggle("move"),document.querySelectorAll("#post-comment > .comment-wrap > div").forEach((function(t){btf.isHidden(t)?t.style.cssText="display: block;animation: tabshow .5s":t.style.cssText="display: none;animation: ''"})),t||"function"!=typeof loadOtherComment||(t=!0,loadOtherComment())}))}(),document.getElementById("toggle-menu").addEventListener("click",(()=>{i()}))},refreshFn(),window.addEventListener("resize",(()=>{o(!1),btf.isHidden(document.getElementById("toggle-menu"))&&n&&c()})),document.getElementById("menu-mask").addEventListener("click",(t=>{c()})),y(),GLOBAL_CONFIG.islazyload&&(window.lazyLoadInstance=new LazyLoad({elements_selector:"img",threshold:0,data_src:"lazy-src"})),void 0!==GLOBAL_CONFIG.copyright&&(()=>{const t=GLOBAL_CONFIG.copyright;document.body.oncopy=e=>{e.preventDefault();const n=window.getSelection(0).toString();let o=n;return n.length>t.limitCount&&(o=`${n}\n\n\n${t.languages.author}\n${t.languages.link}${window.location.href}\n${t.languages.source}\n${t.languages.info}`),e.clipboardData?e.clipboardData.setData("text",o):window.clipboardData.setData("text",o)}})(),GLOBAL_CONFIG.autoDarkmode&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",(t=>{void 0===saveToLocal.get("theme")&&(t.matches?r("dark"):r("light"))}))})); \ No newline at end of file diff --git a/js/search/algolia.js b/js/search/algolia.js new file mode 100644 index 000000000..ef3f8251e --- /dev/null +++ b/js/search/algolia.js @@ -0,0 +1 @@ +window.addEventListener("load",(()=>{const e=document.getElementById("search-mask"),t=document.querySelector("#algolia-search .search-dialog"),a=()=>{const a=document.body.style;a.width="100%",a.overflow="hidden",btf.animateIn(e,"to_show 0.5s"),btf.animateIn(t,"titleScale 0.5s"),setTimeout((()=>{document.querySelector("#algolia-search .ais-SearchBox-input").focus()}),100),document.addEventListener("keydown",(function e(t){"Escape"===t.code&&(n(),document.removeEventListener("keydown",e))})),i(),window.addEventListener("resize",i)},n=()=>{const a=document.body.style;a.width="",a.overflow="",btf.animateOut(t,"search_close .5s"),btf.animateOut(e,"to_hide 0.5s"),window.removeEventListener("resize",i)},i=()=>{window.innerWidth<768&&t.style.setProperty("--search-height",window.innerHeight+"px")},s=()=>{document.querySelector("#search-button > .search").addEventListener("click",a)},o=e=>{if(""===e)return"";const t=e.indexOf("");let a=t-30,n=t+120,i="",s="";a<=0?(a=0,n=140):i="...",n>e.length?n=e.length:s="...";return i+e.substring(a,n)+s},l=GLOBAL_CONFIG.algolia;if(!(l.appId&&l.apiKey&&l.indexName))return console.error("Algolia setting is invalid!");const r=instantsearch({indexName:l.indexName,searchClient:algoliasearch(l.appId,l.apiKey),searchFunction(e){e.state.query&&e.search()}}),c=instantsearch.widgets.configure({hitsPerPage:5}),d=instantsearch.widgets.searchBox({container:"#algolia-search-input",showReset:!1,showSubmit:!1,placeholder:GLOBAL_CONFIG.algolia.languages.input_placeholder,showLoadingIndicator:!0}),h=instantsearch.widgets.hits({container:"#algolia-hits",templates:{item(e){const t=e.permalink?e.permalink:GLOBAL_CONFIG.root+e.path,a=e._highlightResult,n=a.contentStripTruncate?o(a.contentStripTruncate.value):a.contentStrip?o(a.contentStrip.value):a.content?o(a.content.value):"";return`\n \n ${a.title.value||"no-title"}\n

${n}

\n
`},empty:function(e){return'
'+GLOBAL_CONFIG.algolia.languages.hits_empty.replace(/\$\{query}/,e.query)+"
"}}}),g=instantsearch.widgets.stats({container:"#algolia-info > .algolia-stats",templates:{text:function(e){return`
${GLOBAL_CONFIG.algolia.languages.hits_stats.replace(/\$\{hits}/,e.nbHits).replace(/\$\{time}/,e.processingTimeMS)}`}}}),u=instantsearch.widgets.poweredBy({container:"#algolia-info > .algolia-poweredBy"}),p=instantsearch.widgets.pagination({container:"#algolia-pagination",totalPages:5,templates:{first:'',last:'',previous:'',next:''}});r.addWidgets([c,d,h,g,u,p]),r.start(),s(),e.addEventListener("click",n),document.querySelector("#algolia-search .search-close-button").addEventListener("click",n),window.addEventListener("pjax:complete",(()=>{!btf.isHidden(e)&&n(),s()})),window.pjax&&r.on("render",(()=>{window.pjax.refresh(document.getElementById("algolia-hits"))}))})); \ No newline at end of file diff --git a/js/search/local-search.js b/js/search/local-search.js new file mode 100644 index 000000000..7c6ecc50f --- /dev/null +++ b/js/search/local-search.js @@ -0,0 +1 @@ +class LocalSearch{constructor({path:e="",unescape:t=!1,top_n_per_article:n=1}){this.path=e,this.unescape=t,this.top_n_per_article=n,this.isfetched=!1,this.datas=null}getIndexByWord(e,t,n=!1){const s=[],o=new Set;return n||(t=t.toLowerCase()),e.forEach((e=>{if(this.unescape){const t=document.createElement("div");t.innerText=e,e=t.innerHTML}const i=e.length;if(0===i)return;let r=0,a=-1;for(n||(e=e.toLowerCase());(a=t.indexOf(e,r))>-1;)s.push({position:a,word:e}),o.add(e),r=a+i})),s.sort(((e,t)=>e.position!==t.position?e.position-t.position:t.word.length-e.word.length)),[s,o]}mergeIntoSlice(e,t,n){let s=n[0],{position:o,word:i}=s;const r=[],a=new Set;for(;o+i.length<=t&&0!==n.length;){a.add(i),r.push({position:o,length:i.length});const e=o+i.length;for(n.shift();0!==n.length&&(s=n[0],o=s.position,i=s.word,e>o);)n.shift()}return{hits:r,start:e,end:t,count:a.size}}highlightKeyword(e,t){let n="",s=t.start;for(const{position:o,length:i}of t.hits)n+=e.substring(s,o),s=o+i,n+=`${e.substr(o,i)}`;return n+=e.substring(s,t.end),n}getResultItems(e){const t=[];return this.datas.forEach((({title:n,content:s,url:o})=>{const[i,r]=this.getIndexByWord(e,n),[a,c]=this.getIndexByWord(e,s),l=new Set([...r,...c]).size,h=i.length+a.length;if(0===h)return;const d=[];0!==i.length&&d.push(this.mergeIntoSlice(0,n.length,i));let u=[];for(;0!==a.length;){const e=a[0],{position:t}=e,n=Math.max(0,t-20),o=Math.min(s.length,t+100);u.push(this.mergeIntoSlice(n,o,a))}u.sort(((e,t)=>e.count!==t.count?t.count-e.count:e.hits.length!==t.hits.length?t.hits.length-e.hits.length:e.start-t.start));const g=parseInt(this.top_n_per_article,10);g>=0&&(u=u.slice(0,g));let p="";(o=new URL(o,location.origin)).searchParams.append("highlight",e.join(" ")),0!==d.length?p+=`
${this.highlightKeyword(n,d[0])}`:p+=`",t.push({item:p,id:t.length,hitCount:h,includedCount:l})})),t}fetchData(){const e=!this.path.endsWith("json");fetch(this.path).then((e=>e.text())).then((t=>{this.isfetched=!0,this.datas=e?[...(new DOMParser).parseFromString(t,"text/xml").querySelectorAll("entry")].map((e=>({title:e.querySelector("title").textContent,content:e.querySelector("content").textContent,url:e.querySelector("url").textContent}))):JSON.parse(t),this.datas=this.datas.filter((e=>e.title)).map((e=>(e.title=e.title.trim(),e.content=e.content?e.content.trim().replace(/<[^>]+>/g,""):"",e.url=decodeURIComponent(e.url).replace(/\/{2,}/g,"/"),e))),window.dispatchEvent(new Event("search:loaded"))}))}highlightText(e,t,n){const s=e.nodeValue;let o=t.start;const i=[];for(const{position:e,length:r}of t.hits){const t=document.createTextNode(s.substring(o,e));o=e+r;const a=document.createElement("mark");a.className=n,a.appendChild(document.createTextNode(s.substr(e,r))),i.push(t,a)}e.nodeValue=s.substring(o,t.end),i.forEach((t=>{e.parentNode.insertBefore(t,e)}))}highlightSearchWords(e){const t=new URL(location.href).searchParams.get("highlight"),n=t?t.split(" "):[];if(!n.length||!e)return;const s=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,null),o=[];for(;s.nextNode();)s.currentNode.parentNode.matches("button, select, textarea, .mermaid")||o.push(s.currentNode);o.forEach((e=>{const[t]=this.getIndexByWord(n,e.nodeValue);if(!t.length)return;const s=this.mergeIntoSlice(0,e.nodeValue.length,t);this.highlightText(e,s,"search-keyword")}))}}window.addEventListener("load",(()=>{const{path:e,top_n_per_article:t,unescape:n,languages:s}=GLOBAL_CONFIG.localSearch,o=new LocalSearch({path:e,top_n_per_article:t,unescape:n}),i=document.querySelector("#local-search-input input"),r=document.getElementById("local-search-stats-wrap"),a=document.getElementById("loading-status"),c=()=>{if(!o.isfetched)return;const e=i.value.trim().toLowerCase();""!==e&&(a.innerHTML='');const t=e.split(/[-\s]+/),n=document.getElementById("local-search-results");let c=[];if(e.length>0&&(c=o.getResultItems(t)),1===t.length&&""===t[0])n.classList.add("no-result"),n.textContent="";else if(0===c.length)n.textContent="",r.innerHTML=`
${s.hits_empty.replace(/\$\{query}/,e)}
`;else{c.sort(((e,t)=>e.includedCount!==t.includedCount?t.includedCount-e.includedCount:e.hitCount!==t.hitCount?t.hitCount-e.hitCount:t.id-e.id));const e=s.hits_stats.replace(/\$\{hits}/,c.length);n.classList.remove("no-result"),n.innerHTML=`
${c.map((e=>e.item)).join("")}
`,r.innerHTML=`
${e}
`,window.pjax&&window.pjax.refresh(n)}a.textContent=""};let l=!1;const h=document.getElementById("search-mask"),d=document.querySelector("#local-search .search-dialog"),u=()=>{window.innerWidth<768&&d.style.setProperty("--search-height",window.innerHeight+"px")},g=()=>{const e=document.body.style;e.width="100%",e.overflow="hidden",btf.animateIn(h,"to_show 0.5s"),btf.animateIn(d,"titleScale 0.5s"),setTimeout((()=>{i.focus()}),300),l||(!o.isfetched&&o.fetchData(),i.addEventListener("input",c),l=!0),document.addEventListener("keydown",(function e(t){"Escape"===t.code&&(p(),document.removeEventListener("keydown",e))})),u(),window.addEventListener("resize",u)},p=()=>{const e=document.body.style;e.width="",e.overflow="",btf.animateOut(d,"search_close .5s"),btf.animateOut(h,"to_hide 0.5s"),window.removeEventListener("resize",u)},m=()=>{document.querySelector("#search-button > .search").addEventListener("click",g)};window.addEventListener("search:loaded",(()=>{const e=document.getElementById("loading-database");e.nextElementSibling.style.display="block",e.remove()})),m(),document.querySelector("#local-search .search-close-button").addEventListener("click",p),h.addEventListener("click",p),GLOBAL_CONFIG.localSearch.preload&&o.fetchData(),o.highlightSearchWords(document.getElementById("article-container")),window.addEventListener("pjax:complete",(()=>{!btf.isHidden(h)&&p(),o.highlightSearchWords(document.getElementById("article-container")),m()}))})); \ No newline at end of file diff --git a/js/tw_cn.js b/js/tw_cn.js new file mode 100644 index 000000000..8c7050f62 --- /dev/null +++ b/js/tw_cn.js @@ -0,0 +1 @@ +document.addEventListener("DOMContentLoaded",(function(){const{defaultEncoding:t,translateDelay:e,msgToTraditionalChinese:n,msgToSimplifiedChinese:a}=GLOBAL_CONFIG.translate,o=GLOBAL_CONFIG.Snackbar;let l=t;const c="translate-chn-cht";let d,i=void 0===saveToLocal.get(c)?t:Number(saveToLocal.get("translate-chn-cht"));const r=void 0!==o;function h(){document.documentElement.lang=1===i?"zh-TW":"zh-CN"}function s(t){return""===t||null==t?"":1===l&&2===i?function(t){let e="";const n="万与丑专业丛东丝丢两严丧个丬丰临为丽举么义乌乐乔习乡书买乱争于亏云亘亚产亩亲亵亸亿仅从仑仓仪们价众优伙会伛伞伟传伤伥伦伧伪伫体余佣佥侠侣侥侦侧侨侩侪侬俣俦俨俩俪俭债倾偬偻偾偿傥傧储傩儿兑兖党兰关兴兹养兽冁内冈册写军农冢冯冲决况冻净凄凉凌减凑凛几凤凫凭凯击凼凿刍划刘则刚创删别刬刭刽刿剀剂剐剑剥剧劝办务劢动励劲劳势勋勐勚匀匦匮区医华协单卖卢卤卧卫却卺厂厅历厉压厌厍厕厢厣厦厨厩厮县参叆叇双发变叙叠叶号叹叽吁后吓吕吗吣吨听启吴呒呓呕呖呗员呙呛呜咏咔咙咛咝咤咴咸哌响哑哒哓哔哕哗哙哜哝哟唛唝唠唡唢唣唤唿啧啬啭啮啰啴啸喷喽喾嗫呵嗳嘘嘤嘱噜噼嚣嚯团园囱围囵国图圆圣圹场坂坏块坚坛坜坝坞坟坠垄垅垆垒垦垧垩垫垭垯垱垲垴埘埙埚埝埯堑堕塆墙壮声壳壶壸处备复够头夸夹夺奁奂奋奖奥妆妇妈妩妪妫姗姜娄娅娆娇娈娱娲娴婳婴婵婶媪嫒嫔嫱嬷孙学孪宁宝实宠审宪宫宽宾寝对寻导寿将尔尘尧尴尸尽层屃屉届属屡屦屿岁岂岖岗岘岙岚岛岭岳岽岿峃峄峡峣峤峥峦崂崃崄崭嵘嵚嵛嵝嵴巅巩巯币帅师帏帐帘帜带帧帮帱帻帼幂幞干并广庄庆庐庑库应庙庞废庼廪开异弃张弥弪弯弹强归当录彟彦彻径徕御忆忏忧忾怀态怂怃怄怅怆怜总怼怿恋恳恶恸恹恺恻恼恽悦悫悬悭悯惊惧惨惩惫惬惭惮惯愍愠愤愦愿慑慭憷懑懒懔戆戋戏戗战戬户扎扑扦执扩扪扫扬扰抚抛抟抠抡抢护报担拟拢拣拥拦拧拨择挂挚挛挜挝挞挟挠挡挢挣挤挥挦捞损捡换捣据捻掳掴掷掸掺掼揸揽揿搀搁搂搅携摄摅摆摇摈摊撄撑撵撷撸撺擞攒敌敛数斋斓斗斩断无旧时旷旸昙昼昽显晋晒晓晔晕晖暂暧札术朴机杀杂权条来杨杩杰极构枞枢枣枥枧枨枪枫枭柜柠柽栀栅标栈栉栊栋栌栎栏树栖样栾桊桠桡桢档桤桥桦桧桨桩梦梼梾检棂椁椟椠椤椭楼榄榇榈榉槚槛槟槠横樯樱橥橱橹橼檐檩欢欤欧歼殁殇残殒殓殚殡殴毁毂毕毙毡毵氇气氢氩氲汇汉污汤汹沓沟没沣沤沥沦沧沨沩沪沵泞泪泶泷泸泺泻泼泽泾洁洒洼浃浅浆浇浈浉浊测浍济浏浐浑浒浓浔浕涂涌涛涝涞涟涠涡涢涣涤润涧涨涩淀渊渌渍渎渐渑渔渖渗温游湾湿溃溅溆溇滗滚滞滟滠满滢滤滥滦滨滩滪漤潆潇潋潍潜潴澜濑濒灏灭灯灵灾灿炀炉炖炜炝点炼炽烁烂烃烛烟烦烧烨烩烫烬热焕焖焘煅煳熘爱爷牍牦牵牺犊犟状犷犸犹狈狍狝狞独狭狮狯狰狱狲猃猎猕猡猪猫猬献獭玑玙玚玛玮环现玱玺珉珏珐珑珰珲琎琏琐琼瑶瑷璇璎瓒瓮瓯电画畅畲畴疖疗疟疠疡疬疮疯疱疴痈痉痒痖痨痪痫痴瘅瘆瘗瘘瘪瘫瘾瘿癞癣癫癯皑皱皲盏盐监盖盗盘眍眦眬着睁睐睑瞒瞩矫矶矾矿砀码砖砗砚砜砺砻砾础硁硅硕硖硗硙硚确硷碍碛碜碱碹磙礼祎祢祯祷祸禀禄禅离秃秆种积称秽秾稆税稣稳穑穷窃窍窑窜窝窥窦窭竖竞笃笋笔笕笺笼笾筑筚筛筜筝筹签简箓箦箧箨箩箪箫篑篓篮篱簖籁籴类籼粜粝粤粪粮糁糇紧絷纟纠纡红纣纤纥约级纨纩纪纫纬纭纮纯纰纱纲纳纴纵纶纷纸纹纺纻纼纽纾线绀绁绂练组绅细织终绉绊绋绌绍绎经绐绑绒结绔绕绖绗绘给绚绛络绝绞统绠绡绢绣绤绥绦继绨绩绪绫绬续绮绯绰绱绲绳维绵绶绷绸绹绺绻综绽绾绿缀缁缂缃缄缅缆缇缈缉缊缋缌缍缎缏缐缑缒缓缔缕编缗缘缙缚缛缜缝缞缟缠缡缢缣缤缥缦缧缨缩缪缫缬缭缮缯缰缱缲缳缴缵罂网罗罚罢罴羁羟羡翘翙翚耢耧耸耻聂聋职聍联聩聪肃肠肤肷肾肿胀胁胆胜胧胨胪胫胶脉脍脏脐脑脓脔脚脱脶脸腊腌腘腭腻腼腽腾膑臜舆舣舰舱舻艰艳艹艺节芈芗芜芦苁苇苈苋苌苍苎苏苘苹茎茏茑茔茕茧荆荐荙荚荛荜荞荟荠荡荣荤荥荦荧荨荩荪荫荬荭荮药莅莜莱莲莳莴莶获莸莹莺莼萚萝萤营萦萧萨葱蒇蒉蒋蒌蓝蓟蓠蓣蓥蓦蔷蔹蔺蔼蕲蕴薮藁藓虏虑虚虫虬虮虽虾虿蚀蚁蚂蚕蚝蚬蛊蛎蛏蛮蛰蛱蛲蛳蛴蜕蜗蜡蝇蝈蝉蝎蝼蝾螀螨蟏衅衔补衬衮袄袅袆袜袭袯装裆裈裢裣裤裥褛褴襁襕见观觃规觅视觇览觉觊觋觌觍觎觏觐觑觞触觯詟誉誊讠计订讣认讥讦讧讨让讪讫训议讯记讱讲讳讴讵讶讷许讹论讻讼讽设访诀证诂诃评诅识诇诈诉诊诋诌词诎诏诐译诒诓诔试诖诗诘诙诚诛诜话诞诟诠诡询诣诤该详诧诨诩诪诫诬语诮误诰诱诲诳说诵诶请诸诹诺读诼诽课诿谀谁谂调谄谅谆谇谈谊谋谌谍谎谏谐谑谒谓谔谕谖谗谘谙谚谛谜谝谞谟谠谡谢谣谤谥谦谧谨谩谪谫谬谭谮谯谰谱谲谳谴谵谶谷豮贝贞负贠贡财责贤败账货质贩贪贫贬购贮贯贰贱贲贳贴贵贶贷贸费贺贻贼贽贾贿赀赁赂赃资赅赆赇赈赉赊赋赌赍赎赏赐赑赒赓赔赕赖赗赘赙赚赛赜赝赞赟赠赡赢赣赪赵赶趋趱趸跃跄跖跞践跶跷跸跹跻踊踌踪踬踯蹑蹒蹰蹿躏躜躯车轧轨轩轪轫转轭轮软轰轱轲轳轴轵轶轷轸轹轺轻轼载轾轿辀辁辂较辄辅辆辇辈辉辊辋辌辍辎辏辐辑辒输辔辕辖辗辘辙辚辞辩辫边辽达迁过迈运还这进远违连迟迩迳迹适选逊递逦逻遗遥邓邝邬邮邹邺邻郁郄郏郐郑郓郦郧郸酝酦酱酽酾酿释里鉅鉴銮錾钆钇针钉钊钋钌钍钎钏钐钑钒钓钔钕钖钗钘钙钚钛钝钞钟钠钡钢钣钤钥钦钧钨钩钪钫钬钭钮钯钰钱钲钳钴钵钶钷钸钹钺钻钼钽钾钿铀铁铂铃铄铅铆铈铉铊铋铍铎铏铐铑铒铕铗铘铙铚铛铜铝铞铟铠铡铢铣铤铥铦铧铨铪铫铬铭铮铯铰铱铲铳铴铵银铷铸铹铺铻铼铽链铿销锁锂锃锄锅锆锇锈锉锊锋锌锍锎锏锐锑锒锓锔锕锖锗错锚锜锞锟锠锡锢锣锤锥锦锨锩锫锬锭键锯锰锱锲锳锴锵锶锷锸锹锺锻锼锽锾锿镀镁镂镃镆镇镈镉镊镌镍镎镏镐镑镒镕镖镗镙镚镛镜镝镞镟镠镡镢镣镤镥镦镧镨镩镪镫镬镭镮镯镰镱镲镳镴镶长门闩闪闫闬闭问闯闰闱闲闳间闵闶闷闸闹闺闻闼闽闾闿阀阁阂阃阄阅阆阇阈阉阊阋阌阍阎阏阐阑阒阓阔阕阖阗阘阙阚阛队阳阴阵阶际陆陇陈陉陕陧陨险随隐隶隽难雏雠雳雾霁霉霭靓静靥鞑鞒鞯鞴韦韧韨韩韪韫韬韵页顶顷顸项顺须顼顽顾顿颀颁颂颃预颅领颇颈颉颊颋颌颍颎颏颐频颒颓颔颕颖颗题颙颚颛颜额颞颟颠颡颢颣颤颥颦颧风飏飐飑飒飓飔飕飖飗飘飙飚飞飨餍饤饥饦饧饨饩饪饫饬饭饮饯饰饱饲饳饴饵饶饷饸饹饺饻饼饽饾饿馀馁馂馃馄馅馆馇馈馉馊馋馌馍馎馏馐馑馒馓馔馕马驭驮驯驰驱驲驳驴驵驶驷驸驹驺驻驼驽驾驿骀骁骂骃骄骅骆骇骈骉骊骋验骍骎骏骐骑骒骓骔骕骖骗骘骙骚骛骜骝骞骟骠骡骢骣骤骥骦骧髅髋髌鬓魇魉鱼鱽鱾鱿鲀鲁鲂鲄鲅鲆鲇鲈鲉鲊鲋鲌鲍鲎鲏鲐鲑鲒鲓鲔鲕鲖鲗鲘鲙鲚鲛鲜鲝鲞鲟鲠鲡鲢鲣鲤鲥鲦鲧鲨鲩鲪鲫鲬鲭鲮鲯鲰鲱鲲鲳鲴鲵鲶鲷鲸鲹鲺鲻鲼鲽鲾鲿鳀鳁鳂鳃鳄鳅鳆鳇鳈鳉鳊鳋鳌鳍鳎鳏鳐鳑鳒鳓鳔鳕鳖鳗鳘鳙鳛鳜鳝鳞鳟鳠鳡鳢鳣鸟鸠鸡鸢鸣鸤鸥鸦鸧鸨鸩鸪鸫鸬鸭鸮鸯鸰鸱鸲鸳鸴鸵鸶鸷鸸鸹鸺鸻鸼鸽鸾鸿鹀鹁鹂鹃鹄鹅鹆鹇鹈鹉鹊鹋鹌鹍鹎鹏鹐鹑鹒鹓鹔鹕鹖鹗鹘鹚鹛鹜鹝鹞鹟鹠鹡鹢鹣鹤鹥鹦鹧鹨鹩鹪鹫鹬鹭鹯鹰鹱鹲鹳鹴鹾麦麸黄黉黡黩黪黾龙历志制一台皋准复猛钟注范签",a="萬與醜專業叢東絲丟兩嚴喪個爿豐臨為麗舉麼義烏樂喬習鄉書買亂爭於虧雲亙亞產畝親褻嚲億僅從侖倉儀們價眾優夥會傴傘偉傳傷倀倫傖偽佇體餘傭僉俠侶僥偵側僑儈儕儂俁儔儼倆儷儉債傾傯僂僨償儻儐儲儺兒兌兗黨蘭關興茲養獸囅內岡冊寫軍農塚馮衝決況凍淨淒涼淩減湊凜幾鳳鳧憑凱擊氹鑿芻劃劉則剛創刪別剗剄劊劌剴劑剮劍剝劇勸辦務勱動勵勁勞勢勳猛勩勻匭匱區醫華協單賣盧鹵臥衛卻巹廠廳曆厲壓厭厙廁廂厴廈廚廄廝縣參靉靆雙發變敘疊葉號歎嘰籲後嚇呂嗎唚噸聽啟吳嘸囈嘔嚦唄員咼嗆嗚詠哢嚨嚀噝吒噅鹹呱響啞噠嘵嗶噦嘩噲嚌噥喲嘜嗊嘮啢嗩唕喚呼嘖嗇囀齧囉嘽嘯噴嘍嚳囁嗬噯噓嚶囑嚕劈囂謔團園囪圍圇國圖圓聖壙場阪壞塊堅壇壢壩塢墳墜壟壟壚壘墾坰堊墊埡墶壋塏堖塒塤堝墊垵塹墮壪牆壯聲殼壺壼處備複夠頭誇夾奪奩奐奮獎奧妝婦媽嫵嫗媯姍薑婁婭嬈嬌孌娛媧嫻嫿嬰嬋嬸媼嬡嬪嬙嬤孫學孿寧寶實寵審憲宮寬賓寢對尋導壽將爾塵堯尷屍盡層屭屜屆屬屢屨嶼歲豈嶇崗峴嶴嵐島嶺嶽崠巋嶨嶧峽嶢嶠崢巒嶗崍嶮嶄嶸嶔崳嶁脊巔鞏巰幣帥師幃帳簾幟帶幀幫幬幘幗冪襆幹並廣莊慶廬廡庫應廟龐廢廎廩開異棄張彌弳彎彈強歸當錄彠彥徹徑徠禦憶懺憂愾懷態慫憮慪悵愴憐總懟懌戀懇惡慟懨愷惻惱惲悅愨懸慳憫驚懼慘懲憊愜慚憚慣湣慍憤憒願懾憖怵懣懶懍戇戔戲戧戰戩戶紮撲扡執擴捫掃揚擾撫拋摶摳掄搶護報擔擬攏揀擁攔擰撥擇掛摯攣掗撾撻挾撓擋撟掙擠揮撏撈損撿換搗據撚擄摑擲撣摻摜摣攬撳攙擱摟攪攜攝攄擺搖擯攤攖撐攆擷擼攛擻攢敵斂數齋斕鬥斬斷無舊時曠暘曇晝曨顯晉曬曉曄暈暉暫曖劄術樸機殺雜權條來楊榪傑極構樅樞棗櫪梘棖槍楓梟櫃檸檉梔柵標棧櫛櫳棟櫨櫟欄樹棲樣欒棬椏橈楨檔榿橋樺檜槳樁夢檮棶檢欞槨櫝槧欏橢樓欖櫬櫚櫸檟檻檳櫧橫檣櫻櫫櫥櫓櫞簷檁歡歟歐殲歿殤殘殞殮殫殯毆毀轂畢斃氈毿氌氣氫氬氳彙漢汙湯洶遝溝沒灃漚瀝淪滄渢溈滬濔濘淚澩瀧瀘濼瀉潑澤涇潔灑窪浹淺漿澆湞溮濁測澮濟瀏滻渾滸濃潯濜塗湧濤澇淶漣潿渦溳渙滌潤澗漲澀澱淵淥漬瀆漸澠漁瀋滲溫遊灣濕潰濺漵漊潷滾滯灩灄滿瀅濾濫灤濱灘澦濫瀠瀟瀲濰潛瀦瀾瀨瀕灝滅燈靈災燦煬爐燉煒熗點煉熾爍爛烴燭煙煩燒燁燴燙燼熱煥燜燾煆糊溜愛爺牘犛牽犧犢強狀獷獁猶狽麅獮獰獨狹獅獪猙獄猻獫獵獼玀豬貓蝟獻獺璣璵瑒瑪瑋環現瑲璽瑉玨琺瓏璫琿璡璉瑣瓊瑤璦璿瓔瓚甕甌電畫暢佘疇癤療瘧癘瘍鬁瘡瘋皰屙癰痙癢瘂癆瘓癇癡癉瘮瘞瘺癟癱癮癭癩癬癲臒皚皺皸盞鹽監蓋盜盤瞘眥矓著睜睞瞼瞞矚矯磯礬礦碭碼磚硨硯碸礪礱礫礎硜矽碩硤磽磑礄確鹼礙磧磣堿镟滾禮禕禰禎禱禍稟祿禪離禿稈種積稱穢穠穭稅穌穩穡窮竊竅窯竄窩窺竇窶豎競篤筍筆筧箋籠籩築篳篩簹箏籌簽簡籙簀篋籜籮簞簫簣簍籃籬籪籟糴類秈糶糲粵糞糧糝餱緊縶糸糾紆紅紂纖紇約級紈纊紀紉緯紜紘純紕紗綱納紝縱綸紛紙紋紡紵紖紐紓線紺絏紱練組紳細織終縐絆紼絀紹繹經紿綁絨結絝繞絰絎繪給絢絳絡絕絞統綆綃絹繡綌綏絛繼綈績緒綾緓續綺緋綽緔緄繩維綿綬繃綢綯綹綣綜綻綰綠綴緇緙緗緘緬纜緹緲緝縕繢緦綞緞緶線緱縋緩締縷編緡緣縉縛縟縝縫縗縞纏縭縊縑繽縹縵縲纓縮繆繅纈繚繕繒韁繾繰繯繳纘罌網羅罰罷羆羈羥羨翹翽翬耮耬聳恥聶聾職聹聯聵聰肅腸膚膁腎腫脹脅膽勝朧腖臚脛膠脈膾髒臍腦膿臠腳脫腡臉臘醃膕齶膩靦膃騰臏臢輿艤艦艙艫艱豔艸藝節羋薌蕪蘆蓯葦藶莧萇蒼苧蘇檾蘋莖蘢蔦塋煢繭荊薦薘莢蕘蓽蕎薈薺蕩榮葷滎犖熒蕁藎蓀蔭蕒葒葤藥蒞蓧萊蓮蒔萵薟獲蕕瑩鶯蓴蘀蘿螢營縈蕭薩蔥蕆蕢蔣蔞藍薊蘺蕷鎣驀薔蘞藺藹蘄蘊藪槁蘚虜慮虛蟲虯蟣雖蝦蠆蝕蟻螞蠶蠔蜆蠱蠣蟶蠻蟄蛺蟯螄蠐蛻蝸蠟蠅蟈蟬蠍螻蠑螿蟎蠨釁銜補襯袞襖嫋褘襪襲襏裝襠褌褳襝褲襇褸襤繈襴見觀覎規覓視覘覽覺覬覡覿覥覦覯覲覷觴觸觶讋譽謄訁計訂訃認譏訐訌討讓訕訖訓議訊記訒講諱謳詎訝訥許訛論訩訟諷設訪訣證詁訶評詛識詗詐訴診詆謅詞詘詔詖譯詒誆誄試詿詩詰詼誠誅詵話誕詬詮詭詢詣諍該詳詫諢詡譸誡誣語誚誤誥誘誨誑說誦誒請諸諏諾讀諑誹課諉諛誰諗調諂諒諄誶談誼謀諶諜謊諫諧謔謁謂諤諭諼讒諮諳諺諦謎諞諝謨讜謖謝謠謗諡謙謐謹謾謫譾謬譚譖譙讕譜譎讞譴譫讖穀豶貝貞負貟貢財責賢敗賬貨質販貪貧貶購貯貫貳賤賁貰貼貴貺貸貿費賀貽賊贄賈賄貲賃賂贓資賅贐賕賑賚賒賦賭齎贖賞賜贔賙賡賠賧賴賵贅賻賺賽賾贗讚贇贈贍贏贛赬趙趕趨趲躉躍蹌蹠躒踐躂蹺蹕躚躋踴躊蹤躓躑躡蹣躕躥躪躦軀車軋軌軒軑軔轉軛輪軟轟軲軻轤軸軹軼軤軫轢軺輕軾載輊轎輈輇輅較輒輔輛輦輩輝輥輞輬輟輜輳輻輯轀輸轡轅轄輾轆轍轔辭辯辮邊遼達遷過邁運還這進遠違連遲邇逕跡適選遜遞邐邏遺遙鄧鄺鄔郵鄒鄴鄰鬱郤郟鄶鄭鄆酈鄖鄲醞醱醬釅釃釀釋裏钜鑒鑾鏨釓釔針釘釗釙釕釷釺釧釤鈒釩釣鍆釹鍚釵鈃鈣鈈鈦鈍鈔鍾鈉鋇鋼鈑鈐鑰欽鈞鎢鉤鈧鈁鈥鈄鈕鈀鈺錢鉦鉗鈷缽鈳鉕鈽鈸鉞鑽鉬鉭鉀鈿鈾鐵鉑鈴鑠鉛鉚鈰鉉鉈鉍鈹鐸鉶銬銠鉺銪鋏鋣鐃銍鐺銅鋁銱銦鎧鍘銖銑鋌銩銛鏵銓鉿銚鉻銘錚銫鉸銥鏟銃鐋銨銀銣鑄鐒鋪鋙錸鋱鏈鏗銷鎖鋰鋥鋤鍋鋯鋨鏽銼鋝鋒鋅鋶鐦鐧銳銻鋃鋟鋦錒錆鍺錯錨錡錁錕錩錫錮鑼錘錐錦鍁錈錇錟錠鍵鋸錳錙鍥鍈鍇鏘鍶鍔鍤鍬鍾鍛鎪鍠鍰鎄鍍鎂鏤鎡鏌鎮鎛鎘鑷鐫鎳鎿鎦鎬鎊鎰鎔鏢鏜鏍鏰鏞鏡鏑鏃鏇鏐鐔钁鐐鏷鑥鐓鑭鐠鑹鏹鐙鑊鐳鐶鐲鐮鐿鑔鑣鑞鑲長門閂閃閆閈閉問闖閏闈閑閎間閔閌悶閘鬧閨聞闥閩閭闓閥閣閡閫鬮閱閬闍閾閹閶鬩閿閽閻閼闡闌闃闠闊闋闔闐闒闕闞闤隊陽陰陣階際陸隴陳陘陝隉隕險隨隱隸雋難雛讎靂霧霽黴靄靚靜靨韃鞽韉韝韋韌韍韓韙韞韜韻頁頂頃頇項順須頊頑顧頓頎頒頌頏預顱領頗頸頡頰頲頜潁熲頦頤頻頮頹頷頴穎顆題顒顎顓顏額顳顢顛顙顥纇顫顬顰顴風颺颭颮颯颶颸颼颻飀飄飆飆飛饗饜飣饑飥餳飩餼飪飫飭飯飲餞飾飽飼飿飴餌饒餉餄餎餃餏餅餑餖餓餘餒餕餜餛餡館餷饋餶餿饞饁饃餺餾饈饉饅饊饌饢馬馭馱馴馳驅馹駁驢駔駛駟駙駒騶駐駝駑駕驛駘驍罵駰驕驊駱駭駢驫驪騁驗騂駸駿騏騎騍騅騌驌驂騙騭騤騷騖驁騮騫騸驃騾驄驏驟驥驦驤髏髖髕鬢魘魎魚魛魢魷魨魯魴魺鮁鮃鯰鱸鮋鮓鮒鮊鮑鱟鮍鮐鮭鮚鮳鮪鮞鮦鰂鮜鱠鱭鮫鮮鮺鯗鱘鯁鱺鰱鰹鯉鰣鰷鯀鯊鯇鮶鯽鯒鯖鯪鯕鯫鯡鯤鯧鯝鯢鯰鯛鯨鯵鯴鯔鱝鰈鰏鱨鯷鰮鰃鰓鱷鰍鰒鰉鰁鱂鯿鰠鼇鰭鰨鰥鰩鰟鰜鰳鰾鱈鱉鰻鰵鱅鰼鱖鱔鱗鱒鱯鱤鱧鱣鳥鳩雞鳶鳴鳲鷗鴉鶬鴇鴆鴣鶇鸕鴨鴞鴦鴒鴟鴝鴛鴬鴕鷥鷙鴯鴰鵂鴴鵃鴿鸞鴻鵐鵓鸝鵑鵠鵝鵒鷳鵜鵡鵲鶓鵪鶤鵯鵬鵮鶉鶊鵷鷫鶘鶡鶚鶻鶿鶥鶩鷊鷂鶲鶹鶺鷁鶼鶴鷖鸚鷓鷚鷯鷦鷲鷸鷺鸇鷹鸌鸏鸛鸘鹺麥麩黃黌黶黷黲黽龍歷誌製壹臺臯準復勐鐘註範籤";for(let o=0;o1e4&&-1!==a.indexOf(t.charAt(o))?e+=n.charAt(a.indexOf(t.charAt(o))):e+=t.charAt(o);return e}(t):2===l&&1===i?function(t){let e="";const n="万与丑专业丛东丝丢两严丧个丬丰临为丽举么义乌乐乔习乡书买乱争于亏云亘亚产亩亲亵亸亿仅从仑仓仪们价众优伙会伛伞伟传伤伥伦伧伪伫体余佣佥侠侣侥侦侧侨侩侪侬俣俦俨俩俪俭债倾偬偻偾偿傥傧储傩儿兑兖党兰关兴兹养兽冁内冈册写军农冢冯冲决况冻净凄凉凌减凑凛几凤凫凭凯击凼凿刍划刘则刚创删别刬刭刽刿剀剂剐剑剥剧劝办务劢动励劲劳势勋勐勚匀匦匮区医华协单卖卢卤卧卫却卺厂厅历厉压厌厍厕厢厣厦厨厩厮县参叆叇双发变叙叠叶号叹叽吁后吓吕吗吣吨听启吴呒呓呕呖呗员呙呛呜咏咔咙咛咝咤咴咸哌响哑哒哓哔哕哗哙哜哝哟唛唝唠唡唢唣唤唿啧啬啭啮啰啴啸喷喽喾嗫呵嗳嘘嘤嘱噜噼嚣嚯团园囱围囵国图圆圣圹场坂坏块坚坛坜坝坞坟坠垄垅垆垒垦垧垩垫垭垯垱垲垴埘埙埚埝埯堑堕塆墙壮声壳壶壸处备复够头夸夹夺奁奂奋奖奥妆妇妈妩妪妫姗姜娄娅娆娇娈娱娲娴婳婴婵婶媪嫒嫔嫱嬷孙学孪宁宝实宠审宪宫宽宾寝对寻导寿将尔尘尧尴尸尽层屃屉届属屡屦屿岁岂岖岗岘岙岚岛岭岳岽岿峃峄峡峣峤峥峦崂崃崄崭嵘嵚嵛嵝嵴巅巩巯币帅师帏帐帘帜带帧帮帱帻帼幂幞干并广庄庆庐庑库应庙庞废庼廪开异弃张弥弪弯弹强归当录彟彦彻径徕御忆忏忧忾怀态怂怃怄怅怆怜总怼怿恋恳恶恸恹恺恻恼恽悦悫悬悭悯惊惧惨惩惫惬惭惮惯愍愠愤愦愿慑慭憷懑懒懔戆戋戏戗战戬户扎扑扦执扩扪扫扬扰抚抛抟抠抡抢护报担拟拢拣拥拦拧拨择挂挚挛挜挝挞挟挠挡挢挣挤挥挦捞损捡换捣据捻掳掴掷掸掺掼揸揽揿搀搁搂搅携摄摅摆摇摈摊撄撑撵撷撸撺擞攒敌敛数斋斓斗斩断无旧时旷旸昙昼昽显晋晒晓晔晕晖暂暧札术朴机杀杂权条来杨杩杰极构枞枢枣枥枧枨枪枫枭柜柠柽栀栅标栈栉栊栋栌栎栏树栖样栾桊桠桡桢档桤桥桦桧桨桩梦梼梾检棂椁椟椠椤椭楼榄榇榈榉槚槛槟槠横樯樱橥橱橹橼檐檩欢欤欧歼殁殇残殒殓殚殡殴毁毂毕毙毡毵氇气氢氩氲汇汉污汤汹沓沟没沣沤沥沦沧沨沩沪沵泞泪泶泷泸泺泻泼泽泾洁洒洼浃浅浆浇浈浉浊测浍济浏浐浑浒浓浔浕涂涌涛涝涞涟涠涡涢涣涤润涧涨涩淀渊渌渍渎渐渑渔渖渗温游湾湿溃溅溆溇滗滚滞滟滠满滢滤滥滦滨滩滪漤潆潇潋潍潜潴澜濑濒灏灭灯灵灾灿炀炉炖炜炝点炼炽烁烂烃烛烟烦烧烨烩烫烬热焕焖焘煅煳熘爱爷牍牦牵牺犊犟状犷犸犹狈狍狝狞独狭狮狯狰狱狲猃猎猕猡猪猫猬献獭玑玙玚玛玮环现玱玺珉珏珐珑珰珲琎琏琐琼瑶瑷璇璎瓒瓮瓯电画畅畲畴疖疗疟疠疡疬疮疯疱疴痈痉痒痖痨痪痫痴瘅瘆瘗瘘瘪瘫瘾瘿癞癣癫癯皑皱皲盏盐监盖盗盘眍眦眬着睁睐睑瞒瞩矫矶矾矿砀码砖砗砚砜砺砻砾础硁硅硕硖硗硙硚确硷碍碛碜碱碹磙礼祎祢祯祷祸禀禄禅离秃秆种积称秽秾稆税稣稳穑穷窃窍窑窜窝窥窦窭竖竞笃笋笔笕笺笼笾筑筚筛筜筝筹签简箓箦箧箨箩箪箫篑篓篮篱簖籁籴类籼粜粝粤粪粮糁糇紧絷纟纠纡红纣纤纥约级纨纩纪纫纬纭纮纯纰纱纲纳纴纵纶纷纸纹纺纻纼纽纾线绀绁绂练组绅细织终绉绊绋绌绍绎经绐绑绒结绔绕绖绗绘给绚绛络绝绞统绠绡绢绣绤绥绦继绨绩绪绫绬续绮绯绰绱绲绳维绵绶绷绸绹绺绻综绽绾绿缀缁缂缃缄缅缆缇缈缉缊缋缌缍缎缏缐缑缒缓缔缕编缗缘缙缚缛缜缝缞缟缠缡缢缣缤缥缦缧缨缩缪缫缬缭缮缯缰缱缲缳缴缵罂网罗罚罢罴羁羟羡翘翙翚耢耧耸耻聂聋职聍联聩聪肃肠肤肷肾肿胀胁胆胜胧胨胪胫胶脉脍脏脐脑脓脔脚脱脶脸腊腌腘腭腻腼腽腾膑臜舆舣舰舱舻艰艳艹艺节芈芗芜芦苁苇苈苋苌苍苎苏苘苹茎茏茑茔茕茧荆荐荙荚荛荜荞荟荠荡荣荤荥荦荧荨荩荪荫荬荭荮药莅莜莱莲莳莴莶获莸莹莺莼萚萝萤营萦萧萨葱蒇蒉蒋蒌蓝蓟蓠蓣蓥蓦蔷蔹蔺蔼蕲蕴薮藁藓虏虑虚虫虬虮虽虾虿蚀蚁蚂蚕蚝蚬蛊蛎蛏蛮蛰蛱蛲蛳蛴蜕蜗蜡蝇蝈蝉蝎蝼蝾螀螨蟏衅衔补衬衮袄袅袆袜袭袯装裆裈裢裣裤裥褛褴襁襕见观觃规觅视觇览觉觊觋觌觍觎觏觐觑觞触觯詟誉誊讠计订讣认讥讦讧讨让讪讫训议讯记讱讲讳讴讵讶讷许讹论讻讼讽设访诀证诂诃评诅识诇诈诉诊诋诌词诎诏诐译诒诓诔试诖诗诘诙诚诛诜话诞诟诠诡询诣诤该详诧诨诩诪诫诬语诮误诰诱诲诳说诵诶请诸诹诺读诼诽课诿谀谁谂调谄谅谆谇谈谊谋谌谍谎谏谐谑谒谓谔谕谖谗谘谙谚谛谜谝谞谟谠谡谢谣谤谥谦谧谨谩谪谫谬谭谮谯谰谱谲谳谴谵谶谷豮贝贞负贠贡财责贤败账货质贩贪贫贬购贮贯贰贱贲贳贴贵贶贷贸费贺贻贼贽贾贿赀赁赂赃资赅赆赇赈赉赊赋赌赍赎赏赐赑赒赓赔赕赖赗赘赙赚赛赜赝赞赟赠赡赢赣赪赵赶趋趱趸跃跄跖跞践跶跷跸跹跻踊踌踪踬踯蹑蹒蹰蹿躏躜躯车轧轨轩轪轫转轭轮软轰轱轲轳轴轵轶轷轸轹轺轻轼载轾轿辀辁辂较辄辅辆辇辈辉辊辋辌辍辎辏辐辑辒输辔辕辖辗辘辙辚辞辩辫边辽达迁过迈运还这进远违连迟迩迳迹适选逊递逦逻遗遥邓邝邬邮邹邺邻郁郄郏郐郑郓郦郧郸酝酦酱酽酾酿释里鉅鉴銮錾钆钇针钉钊钋钌钍钎钏钐钑钒钓钔钕钖钗钘钙钚钛钝钞钟钠钡钢钣钤钥钦钧钨钩钪钫钬钭钮钯钰钱钲钳钴钵钶钷钸钹钺钻钼钽钾钿铀铁铂铃铄铅铆铈铉铊铋铍铎铏铐铑铒铕铗铘铙铚铛铜铝铞铟铠铡铢铣铤铥铦铧铨铪铫铬铭铮铯铰铱铲铳铴铵银铷铸铹铺铻铼铽链铿销锁锂锃锄锅锆锇锈锉锊锋锌锍锎锏锐锑锒锓锔锕锖锗错锚锜锞锟锠锡锢锣锤锥锦锨锩锫锬锭键锯锰锱锲锳锴锵锶锷锸锹锺锻锼锽锾锿镀镁镂镃镆镇镈镉镊镌镍镎镏镐镑镒镕镖镗镙镚镛镜镝镞镟镠镡镢镣镤镥镦镧镨镩镪镫镬镭镮镯镰镱镲镳镴镶长门闩闪闫闬闭问闯闰闱闲闳间闵闶闷闸闹闺闻闼闽闾闿阀阁阂阃阄阅阆阇阈阉阊阋阌阍阎阏阐阑阒阓阔阕阖阗阘阙阚阛队阳阴阵阶际陆陇陈陉陕陧陨险随隐隶隽难雏雠雳雾霁霉霭靓静靥鞑鞒鞯鞴韦韧韨韩韪韫韬韵页顶顷顸项顺须顼顽顾顿颀颁颂颃预颅领颇颈颉颊颋颌颍颎颏颐频颒颓颔颕颖颗题颙颚颛颜额颞颟颠颡颢颣颤颥颦颧风飏飐飑飒飓飔飕飖飗飘飙飚飞飨餍饤饥饦饧饨饩饪饫饬饭饮饯饰饱饲饳饴饵饶饷饸饹饺饻饼饽饾饿馀馁馂馃馄馅馆馇馈馉馊馋馌馍馎馏馐馑馒馓馔馕马驭驮驯驰驱驲驳驴驵驶驷驸驹驺驻驼驽驾驿骀骁骂骃骄骅骆骇骈骉骊骋验骍骎骏骐骑骒骓骔骕骖骗骘骙骚骛骜骝骞骟骠骡骢骣骤骥骦骧髅髋髌鬓魇魉鱼鱽鱾鱿鲀鲁鲂鲄鲅鲆鲇鲈鲉鲊鲋鲌鲍鲎鲏鲐鲑鲒鲓鲔鲕鲖鲗鲘鲙鲚鲛鲜鲝鲞鲟鲠鲡鲢鲣鲤鲥鲦鲧鲨鲩鲪鲫鲬鲭鲮鲯鲰鲱鲲鲳鲴鲵鲶鲷鲸鲹鲺鲻鲼鲽鲾鲿鳀鳁鳂鳃鳄鳅鳆鳇鳈鳉鳊鳋鳌鳍鳎鳏鳐鳑鳒鳓鳔鳕鳖鳗鳘鳙鳛鳜鳝鳞鳟鳠鳡鳢鳣鸟鸠鸡鸢鸣鸤鸥鸦鸧鸨鸩鸪鸫鸬鸭鸮鸯鸰鸱鸲鸳鸴鸵鸶鸷鸸鸹鸺鸻鸼鸽鸾鸿鹀鹁鹂鹃鹄鹅鹆鹇鹈鹉鹊鹋鹌鹍鹎鹏鹐鹑鹒鹓鹔鹕鹖鹗鹘鹚鹛鹜鹝鹞鹟鹠鹡鹢鹣鹤鹥鹦鹧鹨鹩鹪鹫鹬鹭鹯鹰鹱鹲鹳鹴鹾麦麸黄黉黡黩黪黾龙历志制一台皋准复猛钟注范签",a="萬與醜專業叢東絲丟兩嚴喪個爿豐臨為麗舉麼義烏樂喬習鄉書買亂爭於虧雲亙亞產畝親褻嚲億僅從侖倉儀們價眾優夥會傴傘偉傳傷倀倫傖偽佇體餘傭僉俠侶僥偵側僑儈儕儂俁儔儼倆儷儉債傾傯僂僨償儻儐儲儺兒兌兗黨蘭關興茲養獸囅內岡冊寫軍農塚馮衝決況凍淨淒涼淩減湊凜幾鳳鳧憑凱擊氹鑿芻劃劉則剛創刪別剗剄劊劌剴劑剮劍剝劇勸辦務勱動勵勁勞勢勳猛勩勻匭匱區醫華協單賣盧鹵臥衛卻巹廠廳曆厲壓厭厙廁廂厴廈廚廄廝縣參靉靆雙發變敘疊葉號歎嘰籲後嚇呂嗎唚噸聽啟吳嘸囈嘔嚦唄員咼嗆嗚詠哢嚨嚀噝吒噅鹹呱響啞噠嘵嗶噦嘩噲嚌噥喲嘜嗊嘮啢嗩唕喚呼嘖嗇囀齧囉嘽嘯噴嘍嚳囁嗬噯噓嚶囑嚕劈囂謔團園囪圍圇國圖圓聖壙場阪壞塊堅壇壢壩塢墳墜壟壟壚壘墾坰堊墊埡墶壋塏堖塒塤堝墊垵塹墮壪牆壯聲殼壺壼處備複夠頭誇夾奪奩奐奮獎奧妝婦媽嫵嫗媯姍薑婁婭嬈嬌孌娛媧嫻嫿嬰嬋嬸媼嬡嬪嬙嬤孫學孿寧寶實寵審憲宮寬賓寢對尋導壽將爾塵堯尷屍盡層屭屜屆屬屢屨嶼歲豈嶇崗峴嶴嵐島嶺嶽崠巋嶨嶧峽嶢嶠崢巒嶗崍嶮嶄嶸嶔崳嶁脊巔鞏巰幣帥師幃帳簾幟帶幀幫幬幘幗冪襆幹並廣莊慶廬廡庫應廟龐廢廎廩開異棄張彌弳彎彈強歸當錄彠彥徹徑徠禦憶懺憂愾懷態慫憮慪悵愴憐總懟懌戀懇惡慟懨愷惻惱惲悅愨懸慳憫驚懼慘懲憊愜慚憚慣湣慍憤憒願懾憖怵懣懶懍戇戔戲戧戰戩戶紮撲扡執擴捫掃揚擾撫拋摶摳掄搶護報擔擬攏揀擁攔擰撥擇掛摯攣掗撾撻挾撓擋撟掙擠揮撏撈損撿換搗據撚擄摑擲撣摻摜摣攬撳攙擱摟攪攜攝攄擺搖擯攤攖撐攆擷擼攛擻攢敵斂數齋斕鬥斬斷無舊時曠暘曇晝曨顯晉曬曉曄暈暉暫曖劄術樸機殺雜權條來楊榪傑極構樅樞棗櫪梘棖槍楓梟櫃檸檉梔柵標棧櫛櫳棟櫨櫟欄樹棲樣欒棬椏橈楨檔榿橋樺檜槳樁夢檮棶檢欞槨櫝槧欏橢樓欖櫬櫚櫸檟檻檳櫧橫檣櫻櫫櫥櫓櫞簷檁歡歟歐殲歿殤殘殞殮殫殯毆毀轂畢斃氈毿氌氣氫氬氳彙漢汙湯洶遝溝沒灃漚瀝淪滄渢溈滬濔濘淚澩瀧瀘濼瀉潑澤涇潔灑窪浹淺漿澆湞溮濁測澮濟瀏滻渾滸濃潯濜塗湧濤澇淶漣潿渦溳渙滌潤澗漲澀澱淵淥漬瀆漸澠漁瀋滲溫遊灣濕潰濺漵漊潷滾滯灩灄滿瀅濾濫灤濱灘澦濫瀠瀟瀲濰潛瀦瀾瀨瀕灝滅燈靈災燦煬爐燉煒熗點煉熾爍爛烴燭煙煩燒燁燴燙燼熱煥燜燾煆糊溜愛爺牘犛牽犧犢強狀獷獁猶狽麅獮獰獨狹獅獪猙獄猻獫獵獼玀豬貓蝟獻獺璣璵瑒瑪瑋環現瑲璽瑉玨琺瓏璫琿璡璉瑣瓊瑤璦璿瓔瓚甕甌電畫暢佘疇癤療瘧癘瘍鬁瘡瘋皰屙癰痙癢瘂癆瘓癇癡癉瘮瘞瘺癟癱癮癭癩癬癲臒皚皺皸盞鹽監蓋盜盤瞘眥矓著睜睞瞼瞞矚矯磯礬礦碭碼磚硨硯碸礪礱礫礎硜矽碩硤磽磑礄確鹼礙磧磣堿镟滾禮禕禰禎禱禍稟祿禪離禿稈種積稱穢穠穭稅穌穩穡窮竊竅窯竄窩窺竇窶豎競篤筍筆筧箋籠籩築篳篩簹箏籌簽簡籙簀篋籜籮簞簫簣簍籃籬籪籟糴類秈糶糲粵糞糧糝餱緊縶糸糾紆紅紂纖紇約級紈纊紀紉緯紜紘純紕紗綱納紝縱綸紛紙紋紡紵紖紐紓線紺絏紱練組紳細織終縐絆紼絀紹繹經紿綁絨結絝繞絰絎繪給絢絳絡絕絞統綆綃絹繡綌綏絛繼綈績緒綾緓續綺緋綽緔緄繩維綿綬繃綢綯綹綣綜綻綰綠綴緇緙緗緘緬纜緹緲緝縕繢緦綞緞緶線緱縋緩締縷編緡緣縉縛縟縝縫縗縞纏縭縊縑繽縹縵縲纓縮繆繅纈繚繕繒韁繾繰繯繳纘罌網羅罰罷羆羈羥羨翹翽翬耮耬聳恥聶聾職聹聯聵聰肅腸膚膁腎腫脹脅膽勝朧腖臚脛膠脈膾髒臍腦膿臠腳脫腡臉臘醃膕齶膩靦膃騰臏臢輿艤艦艙艫艱豔艸藝節羋薌蕪蘆蓯葦藶莧萇蒼苧蘇檾蘋莖蘢蔦塋煢繭荊薦薘莢蕘蓽蕎薈薺蕩榮葷滎犖熒蕁藎蓀蔭蕒葒葤藥蒞蓧萊蓮蒔萵薟獲蕕瑩鶯蓴蘀蘿螢營縈蕭薩蔥蕆蕢蔣蔞藍薊蘺蕷鎣驀薔蘞藺藹蘄蘊藪槁蘚虜慮虛蟲虯蟣雖蝦蠆蝕蟻螞蠶蠔蜆蠱蠣蟶蠻蟄蛺蟯螄蠐蛻蝸蠟蠅蟈蟬蠍螻蠑螿蟎蠨釁銜補襯袞襖嫋褘襪襲襏裝襠褌褳襝褲襇褸襤繈襴見觀覎規覓視覘覽覺覬覡覿覥覦覯覲覷觴觸觶讋譽謄訁計訂訃認譏訐訌討讓訕訖訓議訊記訒講諱謳詎訝訥許訛論訩訟諷設訪訣證詁訶評詛識詗詐訴診詆謅詞詘詔詖譯詒誆誄試詿詩詰詼誠誅詵話誕詬詮詭詢詣諍該詳詫諢詡譸誡誣語誚誤誥誘誨誑說誦誒請諸諏諾讀諑誹課諉諛誰諗調諂諒諄誶談誼謀諶諜謊諫諧謔謁謂諤諭諼讒諮諳諺諦謎諞諝謨讜謖謝謠謗諡謙謐謹謾謫譾謬譚譖譙讕譜譎讞譴譫讖穀豶貝貞負貟貢財責賢敗賬貨質販貪貧貶購貯貫貳賤賁貰貼貴貺貸貿費賀貽賊贄賈賄貲賃賂贓資賅贐賕賑賚賒賦賭齎贖賞賜贔賙賡賠賧賴賵贅賻賺賽賾贗讚贇贈贍贏贛赬趙趕趨趲躉躍蹌蹠躒踐躂蹺蹕躚躋踴躊蹤躓躑躡蹣躕躥躪躦軀車軋軌軒軑軔轉軛輪軟轟軲軻轤軸軹軼軤軫轢軺輕軾載輊轎輈輇輅較輒輔輛輦輩輝輥輞輬輟輜輳輻輯轀輸轡轅轄輾轆轍轔辭辯辮邊遼達遷過邁運還這進遠違連遲邇逕跡適選遜遞邐邏遺遙鄧鄺鄔郵鄒鄴鄰鬱郤郟鄶鄭鄆酈鄖鄲醞醱醬釅釃釀釋裏钜鑒鑾鏨釓釔針釘釗釙釕釷釺釧釤鈒釩釣鍆釹鍚釵鈃鈣鈈鈦鈍鈔鍾鈉鋇鋼鈑鈐鑰欽鈞鎢鉤鈧鈁鈥鈄鈕鈀鈺錢鉦鉗鈷缽鈳鉕鈽鈸鉞鑽鉬鉭鉀鈿鈾鐵鉑鈴鑠鉛鉚鈰鉉鉈鉍鈹鐸鉶銬銠鉺銪鋏鋣鐃銍鐺銅鋁銱銦鎧鍘銖銑鋌銩銛鏵銓鉿銚鉻銘錚銫鉸銥鏟銃鐋銨銀銣鑄鐒鋪鋙錸鋱鏈鏗銷鎖鋰鋥鋤鍋鋯鋨鏽銼鋝鋒鋅鋶鐦鐧銳銻鋃鋟鋦錒錆鍺錯錨錡錁錕錩錫錮鑼錘錐錦鍁錈錇錟錠鍵鋸錳錙鍥鍈鍇鏘鍶鍔鍤鍬鍾鍛鎪鍠鍰鎄鍍鎂鏤鎡鏌鎮鎛鎘鑷鐫鎳鎿鎦鎬鎊鎰鎔鏢鏜鏍鏰鏞鏡鏑鏃鏇鏐鐔钁鐐鏷鑥鐓鑭鐠鑹鏹鐙鑊鐳鐶鐲鐮鐿鑔鑣鑞鑲長門閂閃閆閈閉問闖閏闈閑閎間閔閌悶閘鬧閨聞闥閩閭闓閥閣閡閫鬮閱閬闍閾閹閶鬩閿閽閻閼闡闌闃闠闊闋闔闐闒闕闞闤隊陽陰陣階際陸隴陳陘陝隉隕險隨隱隸雋難雛讎靂霧霽黴靄靚靜靨韃鞽韉韝韋韌韍韓韙韞韜韻頁頂頃頇項順須頊頑顧頓頎頒頌頏預顱領頗頸頡頰頲頜潁熲頦頤頻頮頹頷頴穎顆題顒顎顓顏額顳顢顛顙顥纇顫顬顰顴風颺颭颮颯颶颸颼颻飀飄飆飆飛饗饜飣饑飥餳飩餼飪飫飭飯飲餞飾飽飼飿飴餌饒餉餄餎餃餏餅餑餖餓餘餒餕餜餛餡館餷饋餶餿饞饁饃餺餾饈饉饅饊饌饢馬馭馱馴馳驅馹駁驢駔駛駟駙駒騶駐駝駑駕驛駘驍罵駰驕驊駱駭駢驫驪騁驗騂駸駿騏騎騍騅騌驌驂騙騭騤騷騖驁騮騫騸驃騾驄驏驟驥驦驤髏髖髕鬢魘魎魚魛魢魷魨魯魴魺鮁鮃鯰鱸鮋鮓鮒鮊鮑鱟鮍鮐鮭鮚鮳鮪鮞鮦鰂鮜鱠鱭鮫鮮鮺鯗鱘鯁鱺鰱鰹鯉鰣鰷鯀鯊鯇鮶鯽鯒鯖鯪鯕鯫鯡鯤鯧鯝鯢鯰鯛鯨鯵鯴鯔鱝鰈鰏鱨鯷鰮鰃鰓鱷鰍鰒鰉鰁鱂鯿鰠鼇鰭鰨鰥鰩鰟鰜鰳鰾鱈鱉鰻鰵鱅鰼鱖鱔鱗鱒鱯鱤鱧鱣鳥鳩雞鳶鳴鳲鷗鴉鶬鴇鴆鴣鶇鸕鴨鴞鴦鴒鴟鴝鴛鴬鴕鷥鷙鴯鴰鵂鴴鵃鴿鸞鴻鵐鵓鸝鵑鵠鵝鵒鷳鵜鵡鵲鶓鵪鶤鵯鵬鵮鶉鶊鵷鷫鶘鶡鶚鶻鶿鶥鶩鷊鷂鶲鶹鶺鷁鶼鶴鷖鸚鷓鷚鷯鷦鷲鷸鷺鸇鷹鸌鸏鸛鸘鹺麥麩黃黌黶黷黲黽龍歷誌製壹臺臯準復勐鐘註範籤";for(let o=0;o1e4&&-1!==n.indexOf(t.charAt(o))?e+=a.charAt(n.indexOf(t.charAt(o))):e+=t.charAt(o);return e}(t):t}function u(t){let e;e="object"==typeof t?t.childNodes:document.body.childNodes;for(let t=0;t0||n===d||(""!==n.title&&null!=n.title&&(n.title=s(n.title)),""!==n.alt&&null!=n.alt&&(n.alt=s(n.alt)),""!==n.placeholder&&null!=n.placeholder&&(n.placeholder=s(n.placeholder)),"INPUT"===n.tagName&&""!==n.value&&"text"!==n.type&&"hidden"!==n.type&&(n.value=s(n.value)),3===n.nodeType?n.data=s(n.data):u(n))}}function f(){1===i?(l=1,i=2,d.textContent=n,r&&btf.snackbarShow(o.cht_to_chs)):2===i&&(l=2,i=1,d.textContent=a,r&&btf.snackbarShow(o.chs_to_cht)),saveToLocal.set(c,i,2),h(),u()}function m(){d=document.getElementById("translateLink"),d&&(l!==i&&(d.textContent=1===i?a:n,h(),setTimeout(u,e)),d.addEventListener("click",f,!1))}m(),document.addEventListener("pjax:complete",m)})); \ No newline at end of file diff --git a/js/utils.js b/js/utils.js new file mode 100644 index 000000000..1a4b6f524 --- /dev/null +++ b/js/utils.js @@ -0,0 +1 @@ +const btf={debounce:function(t,e,n){let o;return function(){const i=this,a=arguments,r=n&&!o;clearTimeout(o),o=setTimeout((function(){o=null,n||t.apply(i,a)}),e),r&&t.apply(i,a)}},throttle:function(t,e,n){let o,i,a,r=0;n||(n={});const s=function(){r=!1===n.leading?0:(new Date).getTime(),o=null,t.apply(i,a),o||(i=a=null)};return function(){const l=(new Date).getTime();r||!1!==n.leading||(r=l);const c=e-(l-r);i=this,a=arguments,c<=0||c>e?(o&&(clearTimeout(o),o=null),r=l,t.apply(i,a),o||(i=a=null)):o||!1===n.trailing||(o=setTimeout(s,c))}},sidebarPaddingR:()=>{const t=window.innerWidth,e=document.body.clientWidth,n=t-e;t!==e&&(document.body.style.paddingRight=n+"px")},snackbarShow:(t,e=!1,n=2e3)=>{const{position:o,bgLight:i,bgDark:a}=GLOBAL_CONFIG.Snackbar,r="light"===document.documentElement.getAttribute("data-theme")?i:a;Snackbar.show({text:t,backgroundColor:r,showAction:e,duration:n,pos:o,customClass:"snackbar-css"})},diffDate:(t,e=!1)=>{const n=new Date,o=new Date(t),i=n.getTime()-o.getTime(),a=36e5,r=24*a,{dateSuffix:s}=GLOBAL_CONFIG;if(!e)return parseInt(i/r);const l=i/2592e6,c=i/r,d=i/a,u=i/6e4;return l>12?o.toISOString().slice(0,10):l>=1?`${parseInt(l)} ${s.month}`:c>=1?`${parseInt(c)} ${s.day}`:d>=1?`${parseInt(d)} ${s.hour}`:u>=1?`${parseInt(u)} ${s.min}`:s.just},loadComment:(t,e)=>{if("IntersectionObserver"in window){const n=new IntersectionObserver((t=>{t[0].isIntersecting&&(e(),n.disconnect())}),{threshold:[0]});n.observe(t)}else e()},scrollToDest:(t,e=500)=>{const n=window.pageYOffset,o=document.getElementById("page-header").classList.contains("fixed");if((n>t||o)&&(t-=70),"scrollBehavior"in document.documentElement.style)return void window.scrollTo({top:t,behavior:"smooth"});let i=null;t=+t,window.requestAnimationFrame((function o(a){i=i||a;const r=a-i;n{t.style.display="block",t.style.animation=e},animateOut:(t,e)=>{t.addEventListener("animationend",(function e(){t.style.display="",t.style.animation="",t.removeEventListener("animationend",e)})),t.style.animation=e},getParents:(t,e)=>{for(;t&&t!==document;t=t.parentNode)if(t.matches(e))return t;return null},siblings:(t,e)=>[...t.parentNode.children].filter((n=>e?n!==t&&n.matches(e):n!==t)),wrap:(t,e,n)=>{const o=document.createElement(e);for(const[t,e]of Object.entries(n))o.setAttribute(t,e);t.parentNode.insertBefore(o,t),o.appendChild(t)},unwrap:t=>{const e=t.parentNode;e&&e!==document.body&&e.replaceChild(t,e)},isHidden:t=>0===t.offsetHeight&&0===t.offsetWidth,getEleTop:t=>{let e=t.offsetTop,n=t.offsetParent;for(;null!==n;)e+=n.offsetTop,n=n.offsetParent;return e},loadLightbox:t=>{const e=GLOBAL_CONFIG.lightbox;"mediumZoom"===e&&mediumZoom(t,{background:"var(--zoom-bg)"}),"fancybox"===e&&(t.forEach((t=>{if("A"!==t.parentNode.tagName){const e=t.dataset.lazySrc||t.src,n=t.title||t.alt||"";btf.wrap(t,"a",{href:e,"data-fancybox":"gallery","data-caption":n,"data-thumb":e})}})),window.fancyboxRun||(Fancybox.bind("[data-fancybox]",{Hash:!1,Thumbs:{showOnStart:!1},Images:{Panzoom:{maxScale:4}},Carousel:{transition:"slide"},Toolbar:{display:{left:["infobar"],middle:["zoomIn","zoomOut","toggle1to1","rotateCCW","rotateCW","flipX","flipY"],right:["slideshow","thumbs","close"]}}}),window.fancyboxRun=!0))},initJustifiedGallery:function(t){const e=t=>{btf.isHidden(t)||fjGallery(t,{itemSelector:".fj-gallery-item",rowHeight:t.getAttribute("data-rowHeight"),gutter:4,onJustify:function(){this.$container.style.opacity="1"}})};0===Array.from(t).length?e(t):t.forEach((t=>{e(t)}))},updateAnchor:t=>{if(t!==window.location.hash){t||(t=location.pathname);const e=GLOBAL_CONFIG_SITE.title;window.history.replaceState({url:location.href,title:e},e,t)}},getScrollPercent:(t,e)=>{const n=e.clientHeight,o=document.documentElement.clientHeight,i=(t-e.offsetTop)/(n>o?n-o:document.documentElement.scrollHeight-o),a=Math.round(100*i);return a>100?100:a<=0?0:a},addModeChange:(t,e)=>{window.themeChange&&window.themeChange[t]||(window.themeChange={...window.themeChange,[t]:e})}}; \ No newline at end of file diff --git a/link/index.html b/link/index.html new file mode 100644 index 000000000..2097f2415 --- /dev/null +++ b/link/index.html @@ -0,0 +1,430 @@ +link | 希亚的西红柿のBlog
\ No newline at end of file diff --git a/music/index.html b/music/index.html new file mode 100644 index 000000000..b68f50529 --- /dev/null +++ b/music/index.html @@ -0,0 +1,434 @@ +My Music List | 希亚的西红柿のBlog

My favorite music List❤️


评论
\ No newline at end of file diff --git a/page/2/index.html b/page/2/index.html new file mode 100644 index 000000000..2762f756d --- /dev/null +++ b/page/2/index.html @@ -0,0 +1,347 @@ +希亚的西红柿のBlog - 分享学习与生活
Numpy实现逻辑回归(Logistic Regression)算法
线性回归 (Linear Regression)
关于cloudflare对网站搭建的使用
\ No newline at end of file diff --git a/posts/170bc017/index.html b/posts/170bc017/index.html new file mode 100644 index 000000000..93401d145 --- /dev/null +++ b/posts/170bc017/index.html @@ -0,0 +1,430 @@ +使用numpy实现k-means聚类算法 | 希亚的西红柿のBlog

使用numpy实现k-means聚类算法

k-means 算法基础原理

本文注重对 k-means 算法的实现作出分析,基础原理不作赘述。

k-means 算法的特点

1. k-means 算法的基本概念:

  • k 代表分为几个簇
  • means 表示寻求新质心点的时候采用求均值的方法

2. k-means 算法的特点:

  • k-means 算法与 knn 算法类似,都是需要“聚类”
  • k-means 算法是无监督学习算法的一种

k-means 算法的实现步骤:

  1. 随机选取 K 个对象,并以它们为质心;
  2. 计算数据集样本点到质心的距离;
  3. 根据样本点距离质心的距离将其分簇(类),距离哪个近,划分到哪个簇(类);
  4. 以簇内所有样本点的均值重新计算质心,,然后重复第二步,直到划分的簇(类)不在变化后停止。

k-means 算法代码实现

模块的导入与 K 均值聚类算法类的定义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import random

import numpy as np
from matplotlib import pyplot as plt


class KMeans:
"""
K-means clustering(K均值聚类)
"""

def __init__(self, n_clusters: int, iterations=100, eps=1e-3):
"""
Args:
n_clusters (int): 聚类类别数.
iterations (int, optional): 迭代次数, 默认为100.
eps (float, optional): 中心点最小更新量, 默认为1e-3.
"""
self.n_clusters, self.iterations, self.eps, self.centers = n_clusters, iterations, eps, None

def fit(self, X: np.ndarray):
"""
Args:
X (np.ndarray): 输入
"""
# 随机选择k个点作为中心点
self.centers = X[random.sample(range(len(X)), self.n_clusters)] # range(len(X))返回一个迭代对象 random.sample截取一段数字返回一个列表

for _ in range(self.iterations):
y_pred = self(X)

# 各类别的均值作为新的中心点,
centers = np.stack(
[
# 存在元素属于类别i则计算类别i所有点的均值,否则随机选择一个点作为类别i的均值
np.mean(X[y_pred == i], axis=0) if np.any(y_pred == i) else random.choice(X) for i in range(self.n_clusters) # np.any()用于判读真假,
]
)

# 中心点最大更新值小于eps则停止迭代
if np.abs(self.centers - centers).max() < self.eps:
break

# 将更新后的均值作为各类别中心点
self.centers = centers

def __call__(self, X: np.ndarray):
return np.array([np.argmin(np.linalg.norm(self.centers - x, axis=1)) for x in X]) # 每一点类别为最近的中心点类别,返回下标

随机生成测试集

1
2
3
4
def load_data(n_samples_per_class=200, n_classes=5):
X = np.concatenate([np.random.randn(n_samples_per_class, 2) + 3 * np.random.randn(2) for _ in range(n_classes)])
y = np.concatenate([np.full(n_samples_per_class, label) for label in range(n_classes)])
return X, y

画出图像,实现聚类算法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
if __name__ == "__main__":
n_classes = 5
X, y = load_data(n_classes=n_classes)

plt.figure(figsize=[12, 6])
plt.subplot(1, 2, 1)
plt.title("Ground Truth")
for label in range(n_classes):
plt.scatter(X[y == label, 0], X[y == label, 1], marker=".")

kmeans = KMeans(n_clusters=n_classes)
kmeans.fit(X)
y_pred = kmeans(X)

plt.subplot(1, 2, 2)
plt.title("Clustering")
for label in range(n_classes):
plt.scatter(X[y_pred == label, 0], X[y_pred == label, 1], marker=".")

plt.scatter(kmeans.centers[:, 0], kmeans.centers[:, 1], marker="*")

plt.show()

完整代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/user/bin/env python3
# -*- coding: utf-8 -*-

import random

import numpy as np
from matplotlib import pyplot as plt


class KMeans:
"""
K-means clustering(K均值聚类)
"""

def __init__(self, n_clusters: int, iterations=100, eps=1e-3):
"""
Args:
n_clusters (int): 聚类类别数.
iterations (int, optional): 迭代次数, 默认为100.
eps (float, optional): 中心点最小更新量, 默认为1e-3.
"""
self.n_clusters, self.iterations, self.eps, self.centers = n_clusters, iterations, eps, None

def fit(self, X: np.ndarray):
"""
Args:
X (np.ndarray): 输入
"""
# 随机选择k个点作为中心点
self.centers = X[random.sample(range(len(X)), self.n_clusters)] # range(len(X))返回一个迭代对象 random.sample截取一段数字返回一个列表

for _ in range(self.iterations):
y_pred = self(X)

# 各类别的均值作为新的中心点,
centers = np.stack(
[
# 存在元素属于类别i则计算类别i所有点的均值,否则随机选择一个点作为类别i的均值
np.mean(X[y_pred == i], axis=0) if np.any(y_pred == i) else random.choice(X) for i in range(self.n_clusters) # np.any()用于判读真假,
]
)

# 中心点最大更新值小于eps则停止迭代
if np.abs(self.centers - centers).max() < self.eps:
break

# 将更新后的均值作为各类别中心点
self.centers = centers

def __call__(self, X: np.ndarray):
return np.array([np.argmin(np.linalg.norm(self.centers - x, axis=1)) for x in X]) # 每一点类别为最近的中心点类别,返回下标


def load_data(n_samples_per_class=200, n_classes=5):
X = np.concatenate([np.random.randn(n_samples_per_class, 2) + 3 * np.random.randn(2) for _ in range(n_classes)])
y = np.concatenate([np.full(n_samples_per_class, label) for label in range(n_classes)])
return X, y


if __name__ == "__main__":
n_classes = 5
X, y = load_data(n_classes=n_classes)

plt.figure(figsize=[12, 6])
plt.subplot(1, 2, 1)
plt.title("Ground Truth")
for label in range(n_classes):
plt.scatter(X[y == label, 0], X[y == label, 1], marker=".")

kmeans = KMeans(n_clusters=n_classes)
kmeans.fit(X)
y_pred = kmeans(X)

plt.subplot(1, 2, 2)
plt.title("Clustering")
for label in range(n_classes):
plt.scatter(X[y_pred == label, 0], X[y_pred == label, 1], marker=".")

plt.scatter(kmeans.centers[:, 0], kmeans.centers[:, 1], marker="*")

plt.show()

源码参考自 https://github.com/luokn/ml/blob/master/src/kmeans.py

文章作者:希亚的西红柿
文章链接:http://refrain.cf/posts/170bc017/
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

评论
\ No newline at end of file diff --git a/posts/20642/index.html b/posts/20642/index.html new file mode 100644 index 000000000..06a0a28b0 --- /dev/null +++ b/posts/20642/index.html @@ -0,0 +1,430 @@ +线性回归 (Linear Regression) | 希亚的西红柿のBlog

线性回归 (Linear Regression)

利用 Numpy 实现简单的机器学习算法

线性回归(Linear Regression) 可能是最流行的机器学习算法。线性回归就是要找一条直线,并且让这条直线尽可能地拟合散点图中的数据点。

前言

线性回归作为高中数学统计题比较重要的内容,先对其原理与推导过程不做详细讨论,重点通过代码来运用 python 模块实现线性回归算法。

线性回归算法的简单介绍

线性模型:给定由 d 个属性描述的示例,线性模型试图学得一个通过属性的线性组合来进行预测的函数。

线性回归试图学得一个线性模型以尽可能准确的预测实值输出标记,公式: $ f(x) = w^Tx+b $
$ f(x_i) = wx_i + b $,使得 $ f(x_i) ≈ y_i $

实现线性回归算法的目标与方法

我们的任务就是求出 w 和 b,可用均方误差最小化的方法,基于均方误差最小化来进行模型求解的方法称为最小二乘法,在线性回归中,最小二乘法就是试图找到一条直线,使得所有样本数据点到达直线的欧氏距离最小。总距离是所有数据点的垂直距离的平方和。其思想是通过最小化这个平方误差或距离来拟合模型。

代码具体实现过程

定义线性回归函数

  • np.mean()函数主要起对矩阵求均值的作用
  • for 循环中利用最小二乘法的基本公式求出分子与分母,进而求出回归直线的斜率
  • 值得注意的是分母转化为浮点数来保证计算的精确性
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def fitSLR(X, Y):
X_avg = np.mean(X) # 求取括号内数组矩阵的均值
Y_avg = np.mean(Y)
n = len(X) # 得到括号内列表长度即元素的个数
# 定义分子与分母
fen_zi = 0
fen_mu = 0
# 核心算法
for i in range(0, n):
fen_zi += (X[i] - X_avg) * (Y[i] - Y_avg)
fen_mu += (X[i] - X_avg) ** 2
b1 = fen_zi / float(fen_mu) # 计算w,即直线的斜率
b0 = Y_avg - b1 * X_avg
return b0, b1

引入具体的数据

1
2
X = [1.5, 0.8, 2.6, 1.0, 0.6, 2.8, 1.2, 0.9, 0.4, 1.3, 1.2, 2.0, 1.6, 1.8, 2.2]
Y = [3.1, 1.9, 4.2, 2.3, 1.6, 4.9, 2.8, 2.1, 1.4, 2.4, 2.4, 3.8, 3.0, 3.4, 4.0]

调用函数计算出斜率与截距

1
2
3
b0, b1 = fitSLR(X, Y)
print('w = ', b1)
print('b = ', b0)

生成画板,画图图像

  • 两点确定一条直线作出回归直线
  • plt.plot()'r'代表回归直线是红色的意思
1
2
3
4
5
6
7
8
9
10
11
# 生成画板
plt.figure()
# 画散点图
plt.scatter(X, Y)
X_min = min(X)
X_max = max(X)
Y_min = b0 + b1 * X_min
Y_max = b0 + b1 * X_max

plt.plot([X_min, X_max], [Y_min, Y_max], 'r')
plt.show()

画出图像


完整代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import numpy as np
from matplotlib import pyplot as plt


def fitSLR(X, Y):
X_avg = np.mean(X) # 求取括号内数组矩阵的均值
Y_avg = np.mean(Y)
n = len(X) # 得到括号内列表长度即元素的个数
# 定义分子与分母
fen_zi = 0
fen_mu = 0
# 核心算法
for i in range(0, n):
fen_zi += (X[i] - X_avg) * (Y[i] - Y_avg)
fen_mu += (X[i] - X_avg) ** 2
b1 = fen_zi / float(fen_mu) # 计算w,即直线的斜率
b0 = Y_avg - b1 * X_avg
return b0, b1


# 定义X,Y列表
X = [1.5, 0.8, 2.6, 1.0, 0.6, 2.8, 1.2, 0.9, 0.4, 1.3, 1.2, 2.0, 1.6, 1.8, 2.2]
Y = [3.1, 1.9, 4.2, 2.3, 1.6, 4.9, 2.8, 2.1, 1.4, 2.4, 2.4, 3.8, 3.0, 3.4, 4.0]

b0, b1 = fitSLR(X, Y)
print('w = ', b1)
print('b = ', b0)

# 生成画板
plt.figure()
# 画散点图
plt.scatter(X, Y)
X_min = min(X)
X_max = max(X)
Y_min = b0 + b1 * X_min
Y_max = b0 + b1 * X_max

plt.plot([X_min, X_max], [Y_min, Y_max], 'r')
plt.show()
文章作者:希亚的西红柿
文章链接:http://refrain.cf/posts/20642/
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

评论
\ No newline at end of file diff --git a/posts/355699d5/index.html b/posts/355699d5/index.html new file mode 100644 index 000000000..1d44d9603 --- /dev/null +++ b/posts/355699d5/index.html @@ -0,0 +1,529 @@ +Numpy实现逻辑回归(Logistic Regression)算法 | 希亚的西红柿のBlog

Numpy实现逻辑回归(Logistic Regression)算法

前言:本文旨在对如何使用 numpy 实现逻辑回归拟合的过程做具体分析,有关逻辑回归原理部分不做过多论述。

数据集准备

准备用于二分类的数据集,可直接复制到对应的 txt 文件
-0.017612 14.053064 0 + -1.395634 4.662541 1 + -0.752157 6.538620 0 + -1.322371 7.152853 0 + 0.423363 11.054677 0 + 0.406704 7.067335 1 + 0.667394 12.741452 0 + -2.460150 6.866805 1 + 0.569411 9.548755 0 + -0.026632 10.427743 0 + 0.850433 6.920334 1 + 1.347183 13.175500 0 + 1.176813 3.167020 1 + -1.781871 9.097953 0 + -0.566606 5.749003 1 + 0.931635 1.589505 1 + -0.024205 6.151823 1 + -0.036453 2.690988 1 + -0.196949 0.444165 1 + 1.014459 5.754399 1 + 1.985298 3.230619 1 + -1.693453 -0.557540 1 + -0.576525 11.778922 0 + -0.346811 -1.678730 1 + -2.124484 2.672471 1 + 1.217916 9.597015 0 + -0.733928 9.098687 0 + -3.642001 -1.618087 1 + 0.315985 3.523953 1 + 1.416614 9.619232 0 + -0.386323 3.989286 1 + 0.556921 8.294984 1 + 1.224863 11.587360 0 + -1.347803 -2.406051 1 + 1.196604 4.951851 1 + 0.275221 9.543647 0 + 0.470575 9.332488 0 + -1.889567 9.542662 0 + -1.527893 12.150579 0 + -1.185247 11.309318 0 + -0.445678 3.297303 1 + 1.042222 6.105155 1 + -0.618787 10.320986 0 + 1.152083 0.548467 1 + 0.828534 2.676045 1 + -1.237728 10.549033 0 + -0.683565 -2.166125 1 + 0.229456 5.921938 1 + -0.959885 11.555336 0 + 0.492911 10.993324 0 + 0.184992 8.721488 0 + -0.355715 10.325976 0 + -0.397822 8.058397 0 + 0.824839 13.730343 0 + 1.507278 5.027866 1 + 0.099671 6.835839 1 + -0.344008 10.717485 0 + 1.785928 7.718645 1 + -0.918801 11.560217 0 + -0.364009 4.747300 1 + -0.841722 4.119083 1 + 0.490426 1.960539 1 + -0.007194 9.075792 0 + 0.356107 12.447863 0 + 0.342578 12.281162 0 + -0.810823 -1.466018 1 + 2.530777 6.476801 1 + 1.296683 11.607559 0 + 0.475487 12.040035 0 + -0.783277 11.009725 0 + 0.074798 11.023650 0 + -1.337472 0.468339 1 + -0.102781 13.763651 0 + -0.147324 2.874846 1 + 0.518389 9.887035 0 + 1.015399 7.571882 0 + -1.658086 -0.027255 1 + 1.319944 2.171228 1 + 2.056216 5.019981 1 + -0.851633 4.375691 1 + -1.510047 6.061992 0 + -1.076637 -3.181888 1 + 1.821096 10.283990 0 + 3.010150 8.401766 1 + -1.099458 1.688274 1 + -0.834872 -1.733869 1 + -0.846637 3.849075 1 + 1.400102 12.628781 0 + 1.752842 5.468166 1 + 0.078557 0.059736 1 + 0.089392 -0.715300 1 + 1.825662 12.693808 0 + 0.197445 9.744638 0 + 0.126117 0.922311 1 + -0.679797 1.220530 1 + 0.677983 2.556666 1 + 0.761349 10.693862 0 + -2.168791 0.143632 1 + 1.388610 9.341997 0 + 0.317029 14.739025 0

读取数据

构造出[[1,data,data],][result,]两种矩阵

1
2
3
4
5
6
7
8
9
10
11
12
from numpy import *
filename = 'Resources/LogisticRegressionSet.txt'
def loadDataSet():
dataMat = []
labelMat = [] # 构造两个空列表
fr = open(filename)
for line in fr.readlines():
lineArr = line.strip().split() # 切割元素
dataMat.append([1.0, float(lineArr[0]), float(lineArr[1])])
# 前面的1,表示方程的常量。比如两个特征X1,X2,共需要三个参数,W1+W2*X1+W3*X2
labelMat.append(int(lineArr[2]))
return dataMat, labelMat

构造 Logistic(Sigmoid)函数

1
2
def sigmoid(inX):  # sigmoid函数
return 1.0 / (1 + exp(-inX))

构造梯度上升函数

普通梯度上升

通过矩阵乘法后算出差值反复迭代,利用梯度上升法求出结果,注意矩阵转置的意义

1
2
3
4
5
6
7
8
9
10
11
12
def gradAscent(dataMat, labelMat):  # 梯度上升求最优参数
dataMatrix = mat(dataMat) # 将读取的数据转换为矩阵
classLabels = mat(labelMat).transpose() # 将读取的数据转换为矩阵
m, n = shape(dataMatrix)
alpha = 0.001 # 设置梯度的阀值,该值越大梯度上升幅度越大
maxCycles = 500 # 设置迭代的次数,一般看实际数据进行设定,有些可能200次就够了
weights = ones((n, 1)) # 设置初始的参数,并都赋默认值为1。注意这里权重以矩阵形式表示三个参数。
for k in range(maxCycles):
h = sigmoid(dataMatrix * weights)
error = (classLabels - h) # 求导后差值
weights = weights + alpha * dataMatrix.transpose() * error # 迭代更新权重
return weights

随机梯度上升

与上述算法的区别在于只选择一行数据更新权重

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def stocGradAscent0(dataMat, labelMat):
# 随机梯度上升,当数据量比较大时,每次迭代都选择全量数据进行计算,
#计算量会非常大。所以采用每次迭代中一次只选择其中的一行数据进行更新权重。
dataMatrix = mat(dataMat)
classLabels = labelMat
m, n = shape(dataMatrix)
alpha = 0.01
maxCycles = 500
weights = ones((n, 1))
for k in range(maxCycles):
for i in range(m): # 遍历计算每一行
h = sigmoid(sum(dataMatrix[i] * weights))
error = classLabels[i] - h
weights = weights + alpha * error * dataMatrix[i].transpose()
return weights

改进版随机梯度上升

该算法与上述算法的区别在于两点:

  • 步长随迭代次数的增加而减小
  • 采用了随机抽样的方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def stocGradAscent1(dataMat, labelMat):
# 改进版随机梯度上升,在每次迭代中随机选择样本来更新权重,并且随迭代次数增加,权重变化越小。
dataMatrix = mat(dataMat)
classLabels = labelMat
m, n = shape(dataMatrix)
weights = ones((n, 1))
maxCycles = 500
for j in range(maxCycles): # 迭代
dataIndex = [i for i in range(m)]
for i in range(m): # 随机遍历每一行
alpha = 4 / (1 + j + i) + 0.0001 # 随迭代次数增加,权重变化越小。
randIndex = int(random.uniform(0, len(dataIndex))) # 随机抽样
h = sigmoid(sum(dataMatrix[randIndex] * weights))
error = classLabels[randIndex] - h
weights = weights + alpha * error * dataMatrix[randIndex].transpose()
del (dataIndex[randIndex]) # 去除已经抽取的样本
return weights

画出图像

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
def plotBestFit(weights):  # 画出最终分类的图
import matplotlib.pyplot as plt
dataMat, labelMat = loadDataSet()
dataArr = array(dataMat)
n = shape(dataArr)[0]
xcord1 = []
ycord1 = []
xcord2 = []
ycord2 = []
for i in range(n):
if int(labelMat[i]) == 1:
xcord1.append(dataArr[i, 1])
ycord1.append(dataArr[i, 2])
else:
xcord2.append(dataArr[i, 1])
ycord2.append(dataArr[i, 2])
fig = plt.figure()
ax = fig.add_subplot(111) # 一行一列一个格子
ax.scatter(xcord1, ycord1, s=30, c='red', marker='s')
ax.scatter(xcord2, ycord2, s=30, c='green') # 画出散点图
x = arange(-3.0, 3.0, 0.1) # 生成数组
y = (-weights[0] - weights[1] * x) / weights[2] # 决策边界
ax.plot(x, y)
plt.xlabel('X1')
plt.ylabel('X2')
plt.show()

定义主函数

1
2
3
4
def main():
dataMat, labelMat = loadDataSet()
weights = gradAscent(dataMat, labelMat).getA()
plotBestFit(weights)

调用主函数

1
2
if __name__ == '__main__':
main()

运行结果

  • 普通梯度上升
  • 随机梯度上升
  • 改进版随机梯度上升

本文源码参考自 逻辑回归原理(python 代码实现)

文章作者:希亚的西红柿
文章链接:http://refrain.cf/posts/355699d5/
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

评论
\ No newline at end of file diff --git a/posts/40f24371/index.html b/posts/40f24371/index.html new file mode 100644 index 000000000..50fd564ad --- /dev/null +++ b/posts/40f24371/index.html @@ -0,0 +1,430 @@ +线性表 | 希亚的西红柿のBlog

线性表

本篇文章将详细讲述数据结构 线性表 章节的内容,没想到距离上次更新已经快两个礼拜了

本教程编程语言采用 JAVA ,文章框架参考自 HUST数据结构PPT ,源码内容参考自 尚硅谷 JAVA 数据结构教程

线性表章节部分将简单讲述概念方面的问题,重点将放在具体的代码实现过程中。

线性表的定义

线性表的逻辑结构

  1. 线性表:由$n(n≥0)$个数据元素$(a_1,a_2,…, a_n)$构成的有限序列,记作: $L=(a_1,a_2,…,a_n)$,$a_1$称为首元素,$a_n$称为尾元素。
  2. 表长:线性表中数据元素的数目。
  3. 空表:不含数据元素的线性表。

在线性表$L=(a_1,a_2,…,a_n)$中:

  1. $a_{i-1}$是$a_i$的直接前驱(1<i<=n)
  2. $a_{i+1}$是$a_i$的直接后继(1<=i<n)
  3. $a_1$没有前驱,$a_n$没有后继,$a_i$有且仅有一个前驱和后继(1<i<n)

抽象数据类型线性表的定义

抽象类型的线性表主要定义几个属性和方法

  1. InitList(&L) //构造空表 L。
  2. LengthList(L) //求表 L 的长度
  3. GetElem(L,i,&e) //取元素 ai,由 e 返回 ai
  4. PriorElem(L,ce,&pre_e) //求 ce 的前驱,由 pre_e 返回
  5. InsertElem(&L,i,e) //在元素 ai 之前插入新元素 e
  6. DeleteElem(&L,i) //删除第 i 个元素
  7. EmptyList(L) //判断 L 是否为空表

线性表的顺序表示(顺序存储结构)

顺序分配

  1. 定义:将线性表中的数据元素依次存放到计算机存储器中一组地址连续的存储单元中, 这种分配方式称为顺序分配顺序映像。由此得到的存储结构称为顺序存储结构或向量(一维数组)
  2. 线性表的几个参数
    • a:首元素的地址。
    • sizeof(a[0]):线性表元素所占的储存空间的大小。
    • sizeof(a[n]):线性表的长度。

寻址公式

顺序储存方式的地址查询与数组类似,故不再赘述,感兴趣的读者可以自己查询相关资料。

顺序储存结构的评价

  1. 是一种随机存取结构,存取任何元素的时间是一个常数,速度快。
  2. 结构简单,逻辑上相邻的元素在物理上也是相邻的。
  3. 不使用指针,节省存储空间。
  1. 插入和删除元素要移动大量元素,消耗大量时间。
  2. 需要一个连续的存储空间。
  3. 插入元素可能发生“溢出”。
  4. 自由区中的存储空间不能被其它数据占用(共享)。

稀疏数组的实现

  1. 书写思路:

    二维数组转稀疏数组:

    1. 遍历原始二维数组得到,有效数字的个数sum
    2. 创建稀疏数组int[sum+1][3]
    3. 记录chessRowchessCol以及有效数字count
    4. 遍历数组,为稀疏数组sparseArr赋值。
    5. 返回稀疏数组。

稀疏数组转二维数组:

1. 创建原有大小的二维数组。 2. 将稀疏数组中的有效数字返回到原来的二维数组中。 3. 返回原来的二维矩阵。 2. 代码实现:
查看代码实现
  1. 编写函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
package DataStructure;

public class SparseArray {
// 主函数:负责打印原始数组,转换后的稀疏数组,以及在转换回来的二维数组
public static void main(String[] args) {
int[][] chessArr = new int[11][11];
chessArr[1][2] = 1;
chessArr[2][3] = 2;
chessArr[5][5] = 5;
System.out.println("Raw array preview:");
printChessArray(chessArr);

int[][] sparseArr = chessToSparse(chessArr);
System.out.println("chessArray to sparseArray:");
printChessArray(sparseArr);

int[][] chessArr2 = sparseToChess(sparseArr);
System.out.println("sparseArray to chessArray:");
printChessArray(chessArr2);
}

// 二维数组转稀疏数组:
// 1. 记录有效数字的个数sum
// 2. 创建稀疏数组int[sum+1][3]
// 3. 记录chessRow和chessCol以及有效数字count
// 4. 遍历数组,为稀疏数组sparseArr赋值
// 5. 返回稀疏数组
private static int[][] chessToSparse(int[][] chessArr) {
int sum = 0;
for (int[] row : chessArr) {
for (int chess : row) {
if (chess != 0) {
sum++;
}
}
}
int[][] sparseArr = new int[sum + 1][3];
int chessRow = chessArr.length;
int chessCol = 0;
int count = 0;
for (int i = 0; i < chessArr.length; i++) {
int[] rows = chessArr[i];
if (chessCol == 0) {
chessCol = rows.length;
}
for (int j = 0; j < rows.length; j++) {
int chess = rows[j];
if (chess == 0) {
continue;
}
count++;
sparseArr[count][0] = i;
sparseArr[count][1] = j;
sparseArr[count][2] = chess;
}
}
sparseArr[0][0] = chessRow;
sparseArr[0][1] = chessCol;
sparseArr[0][2] = sum;
return sparseArr;
}

/*
* 1. 创建原有大小的二维数组
* 2. 将稀疏数组中的有效数字返回到原来的二维数组中
* 3. 返回原来的二维矩阵
*/
private static int[][] sparseToChess(int[][] sparseArr) {
int[][] chessArr = new int[sparseArr[0][0]][sparseArr[0][1]];
for (int i = 1; i < sparseArr.length; i++) {
int[] rows = sparseArr[i];
chessArr[rows[0]][rows[1]] = rows[2];
}
return chessArr;
}

/*
* 通过两个for循环每行循环打印输出
*/
public static void printChessArray(int[][] chessArr) {
for (int[] row : chessArr) {
for (int data : row) {
System.out.printf("%-2d\t", data);
}
System.out.println("");
}
}
}
  1. 输出结果
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Raw array preview:
0 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0
0 0 0 2 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 5 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
chessArray to sparseArray:
11 11 3
1 2 1
2 3 2
5 5 5
sparseArray to chessArray:
0 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0
0 0 0 2 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 5 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0

线性表的链式存储结构

基本概念

  1. 链表是以 节点 的方式来存储,是 链式存储
  2. 每个节点包含 data 域next 域,next 域指向下一个节点。
  3. 链表还分:带头节点、不带头节点,根据实际需求来确定。
  4. 链表的各个节点 不一定是连续存储。

单链表

  1. 单链表的一般形式

  2. 单链表的代码实现(考虑一个这样的场景使用带头单链表实现P5R Phantom Thieves原教程是用的水浒传英雄的管理为啥我换成P5R呢?这是因为vscode Junit单元测试的时候输出中文乱码,我上网搜索了一下也没什么好的解决办法,索性全部用英文算了,正好最近我在打P5R就干脆拿来用了。的成员管理)

    查看代码实现
    1. 完成对怪盗团成员的增删查改操作。
    2. 第一种方法:在添加成员时,直接添加到链表的尾部。
    3. 第二种方法:在添加成员时,根据序号将成员添加到指定的位置,如果有这个序号,则添加失败并给出提示。
    1. 构造链表节点的类
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    // 构造链表中的一个节点
    class HeroNode {
    // 定义4个基本属性
    public int no; // 序号
    public String name; // 名字
    public String nickName; // 代号
    public HeroNode next; // 指针域

    // 书写构造函数
    public HeroNode(int no, String name, String nickName) {
    this.no = no;
    this.name = name;
    this.nickName = nickName;
    }

    // 为方便重新打印重写toString函数
    @Override
    public String toString() {
    return "HeroNode{" +
    "no=" + no +
    ", name='" + name + '\'' +
    ", nickName='" + nickName + '\'' +
    '}';
    }
    }

    1. 单链表反转思路
      1. 定义一个新的reverseHead节点。
      2. 从原链表中依次取出节点,并始终添加到reverseHead的第一个节点。
        next = cur.next;
        cur.next = reverseHead.next;
        reverseHead.next = cur;
        cur = next;
      3. head节点的next指向reverseHead节点的next

      4. </ol>
        </li>
        </ol>
        </div>

        1. 构造链表类
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        84
        85
        86
        87
        88
        89
        90
        91
        92
        93
        94
        95
        96
        97
        98
        99
        100
        101
        102
        103
        104
        105
        106
        107
        108
        109
        110
        111
        112
        113
        114
        115
        116
        117
        118
        119
        120
        121
        122
        123
        124
        125
        126
        127
        128
        129
        130
        131
        132
        133
        134
        135
        136
        137
        138
        139
        140
        141
        142
        143
        144
        145
        146
        147
        148
        149
        150
        151
        152
        153
        154
        155
        156
        157
        158
        159
        160
        161
        162
        163
        164
        165
        166
        167
        168
        169
        170
        171
        172
        173
        174
        175
        176
        177
        178
        179
        180
        181
        182
        183
        184
        185
        // 单向链表节点的书写
        class SingleLinkedList {
        // 创建一个头节点
        private HeroNode head = new HeroNode(0, "", "");

        // 添加节点,将新加入的元素添加至链表的最后

        public void add(HeroNode node) {
        HeroNode temp = head;
        while (true) {
        if (temp.next == null) {
        break;
        }
        temp = temp.next;
        }
        temp.next = node;
        }

        // 打印链表中的数据
        public void list() {
        if (head.next == null) {
        System.out.println("The linked list is empty!");
        return;
        }
        HeroNode temp = head.next;
        while (true) {
        if (temp == null) {
        break;
        }
        System.out.println(temp);
        temp = temp.next;
        }
        }

        // 有序插入元素
        public void addByOrder(HeroNode node) {
        // 分为节点为空 大于 相等三种情况来书写函数
        HeroNode temp = head; // 此处temp为辅助变量存放在栈中,指向堆空间的head
        boolean exist = false;
        while (true) {
        if (temp.next == null) {
        break;
        }
        if (temp.next.no > node.no) {
        break;
        }
        if (temp.next.no == node.no) {
        exist = true;
        break;
        }
        temp = temp.next;
        }
        if (exist) {
        System.out.printf("The phantom thief number %d to be inserted already exists and can't be added! \n",
        node.no);
        return;
        }
        node.next = temp.next;
        temp.next = node;
        }

        // 书写更新链表数据函数
        public void update(HeroNode newNode) {
        // 分为空和相等来区分计算
        if (head.next == null) {
        System.out.println("The linked list is empty!");
        return;
        }
        HeroNode temp = head.next;
        boolean exist = false;
        while (true) {
        if (temp == null) {
        System.out.println("The linked list is empty!");
        return;
        }
        if (temp.no == newNode.no) {
        exist = true;
        break;
        }
        temp = temp.next;
        }
        if (exist) {
        temp.name = newNode.name;
        temp.nickName = newNode.nickName;
        } else {
        System.out.printf("Phantom thief with number %d not found", newNode.no);
        }
        }

        // 删除节点操作
        public void delete(int no) {
        if (head.next == null) {
        System.out.println("The linked list is empty!");
        return;
        }
        HeroNode temp = head;
        boolean exist = false; // 是否找到要删除的节点
        while (true) {
        if (temp.next == null) {
        break;
        }
        if (temp.next.no == no) {
        exist = true;
        break;
        }
        temp = temp.next;
        }
        if (!exist) {
        System.out.printf("Phantom thief with number %d not found! \n", no);
        return;
        }
        // 删除操作
        temp.next = temp.next.next;
        }

        // 统计有效节点的个数,即遍历链表
        public int length() {
        HeroNode temp = head.next;
        int num = 0;
        if (head.next == null) {
        return 0;
        }
        while (temp != null) {
        num++;
        temp = temp.next;
        }
        return num;
        }

        // 查找单链表中的倒数第k个节点
        public HeroNode findLastIndexNode(int index) {
        // 通过size与index的大小来判断
        int size = length();
        if (size == 0) {
        return null;
        }
        if (index <= 0 || index > size) {
        return null;
        }
        HeroNode cur = head.next;
        for (int i = 0; i < size - index; i++) {
        cur = cur.next;
        }
        return cur;
        }

        // 单链表的反转
        public void reverse() {
        // 始终添加到第一个节点
        if (head.next == null) {
        return;
        }
        HeroNode cur = head.next;
        HeroNode next = null;
        HeroNode reverseHead = new HeroNode(0, "", "");

        while (cur != null) {
        next = cur.next; // 储存下一个元素的指针
        cur.next = reverseHead.next;
        reverseHead.next = cur;
        cur = next;
        }
        head.next = reverseHead.next;
        }

        public void reversePrint() {
        if (head.next == null) {
        System.out.println("The Linked List is Empty!");
        return;
        }

        Stack<HeroNode> stack = new Stack<>();
        HeroNode cur = head.next;
        // 遍历原链表,入栈
        while (cur != null) {
        stack.push(cur);
        cur = cur.next;
        }
        // 打印栈
        while (!stack.empty()) {
        System.out.println(stack.pop());
        }
        }
        }

        1. 测试函数
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        84
        85
        86
        87
        88
        89
        90
        91
        92
        93
        94
        95
        96
        97
        98
        99
        100
        101
        102
        103
        104
        105
        106
        107
        108
        109
        110
        111
        112
        113
        public static void main(String[] args) {
        SingleLinkedListDemo singleLinkedListDemo = new SingleLinkedListDemo();
        singleLinkedListDemo.test1();
        singleLinkedListDemo.test2();
        }

        public void test1() {
        HeroNode hero1 = new HeroNode(1, "Amamiya Ren", "Joker");
        HeroNode hero2 = new HeroNode(2, "Ryuji Sakamoto", "Skull");
        HeroNode hero3 = new HeroNode(3, "Anne Takamaki", "Panther");
        HeroNode hero4 = new HeroNode(4, "Yusuke Kitagawa", "Fox");
        SingleLinkedList singleLinkedList = new SingleLinkedList();
        singleLinkedList.add(hero1);
        singleLinkedList.add(hero2);
        singleLinkedList.add(hero3);
        singleLinkedList.add(hero4);
        singleLinkedList.list();
        }

        public void test2() {
        HeroNode hero1 = new HeroNode(1, "Amamiya Ren", "Joker");
        HeroNode hero2 = new HeroNode(2, "Ryuji Sakamoto", "Skull");
        HeroNode hero3 = new HeroNode(3, "Anne Takamaki", "Panther");
        HeroNode hero4 = new HeroNode(4, "Yusuke Kitagawa", "Fox");

        SingleLinkedList singleLinkedList = new SingleLinkedList();

        singleLinkedList.addByOrder(hero4); // 添加顺序提前
        singleLinkedList.addByOrder(hero2);
        singleLinkedList.addByOrder(hero1);
        singleLinkedList.addByOrder(hero3);
        singleLinkedList.addByOrder(hero3);
        singleLinkedList.list();
        }

        private SingleLinkedList singleLinkedList;

        @Before
        public void before() {
        HeroNode hero1 = new HeroNode(1, "Amamiya Ren", "Joker");
        HeroNode hero2 = new HeroNode(2, "Ryuji Sakamoto", "Skull");
        HeroNode hero3 = new HeroNode(3, "Anne Takamaki", "Panther");
        HeroNode hero4 = new HeroNode(4, "Yusuke Kitagawa", "Fox");

        singleLinkedList = new SingleLinkedList();

        singleLinkedList.addByOrder(hero4); // 添加顺序提前
        singleLinkedList.addByOrder(hero2);
        singleLinkedList.addByOrder(hero1);
        singleLinkedList.addByOrder(hero3);
        }

        @Test
        public void updateTest() {
        // 测试修改
        System.out.println("Before update:");
        singleLinkedList.list();
        HeroNode hero4New = new HeroNode(4, "Yusuke Kitagawa-Test", "Fox-Test");
        singleLinkedList.update(hero4New);

        System.out.println("After update:");
        singleLinkedList.list();
        }

        @Test
        public void deleteTest() {
        System.out.println("Before deletion:");
        singleLinkedList.list();
        singleLinkedList.delete(1);
        singleLinkedList.delete(4);
        System.out.println("After deletion:");
        singleLinkedList.list();
        }

        @Test
        public void lengthTest() {
        System.out.println(singleLinkedList.length());
        singleLinkedList.delete(1);
        System.out.println(singleLinkedList.length());
        }

        @Test
        public void findLastIndexNodeTest() {
        singleLinkedList.list();
        System.out.println("Search Test");
        HeroNode lastIndexNode = singleLinkedList.findLastIndexNode(1);
        System.out.println("Find the 1st last " + lastIndexNode);
        lastIndexNode = singleLinkedList.findLastIndexNode(4);
        System.out.println("Find the 4th last " + lastIndexNode);
        lastIndexNode = singleLinkedList.findLastIndexNode(2);
        System.out.println("Find the 2nd last " + lastIndexNode);
        lastIndexNode = singleLinkedList.findLastIndexNode(5);
        System.out.println("Find the 5th last " + lastIndexNode);
        }

        @Test
        public void reverseTest() {
        System.out.println("Before reversal:");
        singleLinkedList.list();

        singleLinkedList.reverse();

        System.out.println("After reversal:");
        singleLinkedList.list();
        }

        @Test
        public void reversePrintTest() {
        System.out.println("The data of the linked list:");
        singleLinkedList.list();
        System.out.println("Print in reverse order:");
        singleLinkedList.reversePrint();
        }
        1. 输出结果
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        Test1:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}

        Test2:
        The phantom thief number 3 to be inserted already exists and can't be added!
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}

        updateTest:
        Before update:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        After update:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa-Test', nickName='Fox-Test'}

        deleteTest:
        Before deletion:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        After deletion:
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}

        lengthTest:
        4
        3

        findLastIndexNodeTest:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        Search Test
        Find the 1st last HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        Find the 4th last HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        Find the 2nd last HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        Find the 5th last null

        reverseTest:
        Before reversal:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        After reversal:
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}

        reversePrintTest:
        The data of the linked list:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        Print in reverse order:
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}

      双向链表

      双向链表节点定义与单向链表大致相同,只不过多了一个指向前一个节点的指针域。

      1. 双向链表相关函数的实现思路

        基本实现思路与单向链表相同,可在前者的基础上作出修改

      2. 双向链表的代码实现
        查看代码实现
        1. 函数编写
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        84
        85
        86
        87
        88
        89
        90
        91
        92
        93
        94
        95
        96
        97
        98
        99
        100
        101
        102
        103
        104
        105
        106
        107
        108
        109
        110
        111
        112
        113
        114
        115
        116
        117
        118
        119
        120
        121
        122
        123
        124
        125
        126
        127
        128
        129
        130
        131
        132
        133
        134
        135
        136
        137
        138
        139
        140
        141
        142
        143
        144
        145
        146
        package DataStructure.DoubleLinkedListPackage;

        class HeroNode {
        // 基本的元素与构造元素与单链表基本相同,主要多了一个pre域
        public int no;
        public String name;
        public String nickName;
        public HeroNode next;
        public HeroNode pre;

        public HeroNode(int no, String name, String nickName) {
        this.no = no;
        this.name = name;
        this.nickName = nickName;
        }

        // 重写函数也基本一致
        @Override
        public String toString() {
        return "HeroNode{" +
        "no=" + no +
        ", name='" + name + '\'' +
        ", nickName='" + nickName + '\'' +
        '}';
        }
        }

        // 对双向链表类进行编写
        public class DoubleLinkedList {
        // 同样的,初始化一个最初的节点
        private HeroNode head = new HeroNode(0, "", "");

        // 将节点添加到链表的尾部
        public void add(HeroNode node) {
        HeroNode temp = head;
        while (temp.next != null) {
        temp = temp.next;
        }
        temp.next = node;
        node.pre = temp;
        }

        // 修改值的函数,与单向链表基本相同
        public void update(HeroNode newNode) {
        if (head.next == null) {
        System.out.println("The linked list is empty!");
        return;
        }

        HeroNode temp = head;
        boolean exist = false;
        while (true) {
        if (temp.next == null) {
        break;
        }
        if (temp.no == newNode.no) {
        exist = true;
        break;
        }
        temp = temp.next;
        }
        if (exist) {
        temp.name = newNode.name;
        temp.nickName = newNode.nickName;
        } else {
        System.out.printf("no element found with number: %d !", newNode.no);
        }
        }

        // 删除函数与单向链表的思路基本相同,需要注意删除的操作以及最后一位元素的删除处理
        public void delete(int no) {
        if (head.next == null) {
        System.out.println("The linked list is empty!");
        return;
        }

        HeroNode temp = head.next;
        boolean exist = false;
        while (true) {
        if (temp.next == null) {
        break;
        }
        if (temp.no == no) {
        exist = true;
        break;
        }
        temp = temp.next;
        }
        if (!exist) {
        System.out.printf("no element found with number: %d !", no);
        return;
        }
        if (temp.next != null) {
        temp.next.pre = temp.pre;
        }
        temp.pre.next = temp.next;
        }

        // 打印链表
        public void print() {
        if (head.next == null) {
        System.out.println("The linked list is empty!");
        return;
        }
        HeroNode cur = head.next;
        while (cur != null) {
        System.out.println(cur);
        cur = cur.next;
        }
        }

        // 按序添加
        public void addByOrder(HeroNode node) {
        HeroNode temp = head;
        boolean exist = false; // 添加的节点是否已经在链表中存在

        while (true) {
        // 已到列表尾部
        if (temp.next == null) {
        break;
        }
        // 已找到
        if (temp.next.no > node.no) {
        break;
        }

        // 已存在该编号
        if (temp.next.no == node.no) {
        exist = true;
        break;
        }
        temp = temp.next;
        }
        if (exist) {
        System.out.printf("The phantom thief number %d to be inserted already exists and can't be added! \n", node.no);
        return;
        }

        // 把节点插入到 temp 和 temp.next 之间
        // temp -> node -> temp.next
        node.next = temp.next;
        temp.next = node;
        node.pre = temp.next.pre;
        temp.next.pre = node;
        }
        }
        1. 测试用例
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        package DataStructure.DoubleLinkedListPackage;

        import org.junit.Before;
        import org.junit.Test;

        /**
        * 双向链表测试
        */
        public class DoubleLinkedListTest {
        DoubleLinkedList doubleLinkedList;

        @Before
        public void before() {
        HeroNode hero1 = new HeroNode(1, "Amamiya Ren", "Joker");
        HeroNode hero2 = new HeroNode(2, "Ryuji Sakamoto", "Skull");
        HeroNode hero3 = new HeroNode(3, "Anne Takamaki", "Panther");
        HeroNode hero4 = new HeroNode(4, "Yusuke Kitagawa", "Fox");

        // 测试新增
        doubleLinkedList = new DoubleLinkedList();
        doubleLinkedList.add(hero1);
        doubleLinkedList.add(hero4);
        doubleLinkedList.add(hero2);
        doubleLinkedList.add(hero3);
        }

        @Test
        public void addTest() {
        // before 中已测试
        }

        /**
        * 更新测试
        */
        @Test
        public void updateTest() {
        System.out.println("Before update:");
        doubleLinkedList.print();
        HeroNode hero4New = new HeroNode(4, "Yusuke Kitagawa-Test", "Fox-Test");
        doubleLinkedList.update(hero4New);
        System.out.println("After update:");
        doubleLinkedList.print();
        }

        /**
        * 删除测试
        */
        @Test
        public void deleteTest() {
        System.out.println("Before deletion:");
        doubleLinkedList.print();
        doubleLinkedList.delete(1);
        doubleLinkedList.delete(4);
        doubleLinkedList.delete(3);
        System.out.println("After deletion:");
        doubleLinkedList.print();
        }
        @Test
        public void addByOrderTest() {
        HeroNode hero1 = new HeroNode(1, "Amamiya Ren", "Joker");
        HeroNode hero2 = new HeroNode(2, "Ryuji Sakamoto", "Skull");
        HeroNode hero3 = new HeroNode(3, "Anne Takamaki", "Panther");
        HeroNode hero4 = new HeroNode(4, "Yusuke Kitagawa", "Fox");

        // 测试新增
        doubleLinkedList = new DoubleLinkedList();
        doubleLinkedList.addByOrder(hero1);
        doubleLinkedList.addByOrder(hero4);
        doubleLinkedList.addByOrder(hero2);
        doubleLinkedList.addByOrder(hero3);
        doubleLinkedList.addByOrder(hero3);
        doubleLinkedList.print();

        }
        }
        1. 输出结果
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        Before update:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        After update:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=4, name='Yusuke Kitagawa-Test', nickName='Fox-Test'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}


        Before deletion:
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        no element found with number: 3 !After deletion:
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}


        The phantom thief number 3 to be inserted already exists and can't be added!
        HeroNode{no=1, name='Amamiya Ren', nickName='Joker'}
        HeroNode{no=2, name='Ryuji Sakamoto', nickName='Skull'}
        HeroNode{no=3, name='Anne Takamaki', nickName='Panther'}
        HeroNode{no=4, name='Yusuke Kitagawa', nickName='Fox'}

      循环链表

      循环链表的讲解将与约瑟夫问题结合实现

      1. 实现基本思路
        1. 先构成一个有n个节点的单循环链表。
        2. 然后由k节点起从1开始计数。
        3. 计数到m时,对应节点从链表中删除,然后从下一个节点又从1开始计数
      2. 代码实现
        查看代码实现
        1. 函数编写
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        84
        85
        86
        87
        88
        89
        90
        91
        92
        93
        94
        95
        96
        97
        98
        99
        100
        101
        102
        103
        104
        105
        106
        107
        108
        package DataStructure;

        // 构造孩子节点
        class Boy {
        int no;
        Boy next;

        public Boy(int no) {
        this.no = no;
        }
        }

        public class CircleSingleLinkedList {
        Boy first = null;

        /*
        * 添加节点
        * 1. 检查num的输入是否在1及以上
        * 2. 通过cur指针循环前移,创建环形单链表
        * 3. 第一个节点为空的时候需要特殊考虑
        * 4. 添加节点的顺序为:cur指向boy,boy指向first,cur指针指向boy
        */
        public void add(int num) {
        if (num < 1) {
        System.out.println("Please input a number greater than 1! ");
        return;
        }
        Boy cur = null;
        for (int i = 1; i <= num; i++) {
        Boy boy = new Boy(i);
        if (first == null) {
        first = boy;
        boy.next = first;
        cur = first;
        continue;
        }
        cur.next = boy;
        boy.next = first;
        cur = boy;
        }
        }

        /**
        * 打印队列
        */
        public void print() {
        if (first == null) {
        System.out.println("Queue empty!");
        return;
        }
        Boy cur = first;
        while (true) {
        System.out.printf("Child number %d \n", cur.no);
        cur = cur.next;
        // 如果和 first 一致,则标识已经走了一圈了
        if (cur == first) {
        return;
        }
        }
        }

        public void countBoy(int startNo, int countNum, int nums) {
        // 进行一个数据校验
        if (first == null || // 环形队列没有构建
        countNum < 1 || // 每次至少数 1 下
        startNo > nums // 开始小孩不能大于参与游戏的人数
        ) {
        System.out.println("The parameter is incorrect.Please re-enter it!");
        }
        // 1. 初始化辅助变量到 first 的后面
        Boy helper = first;
        // 当 helper.next = first 时,就说明已经定位了
        while (helper.next != first) {
        helper = helper.next;
        }

        // 2. 定位 first 和 helper 在 startNo 位置
        // first 初始在最开始,移动到 startNo 位置
        for (int i = 0; i < startNo - 1; i++) {
        helper = first;
        first = first.next;
        }

        // 为了测试方便,这里添加一个日志输出
        System.out.printf("Localize: %d \n", startNo);
        print();

        // 3. 开始报数 和 出圈
        while (true) {
        // 当队列中只剩下一个人的时候,跳出循环,因为最后一个必然是他自己出队列
        if (helper == first) {
        break;
        }
        // 报数:每次报数 m-1
        for (int i = 0; i < countNum - 1; i++) {
        // 因为 helper 永远在 first 后面,只要在 first 移动时,指向 first 原来所在的位置即可
        helper = first;
        first = first.next;
        }
        // 出圈
        System.out.printf("The number of the child out of the circle %d \n", first.no);
        first = first.next; // first 重置为下一次报数的小孩节点上
        helper.next = first; // helper 重置为下一次报数的小孩节点上
        }
        System.out.printf("The number of the last child left %d \n", first.no);
        }
        }

        1. 测试用例
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        package DataStructure;

        import org.junit.Test;

        public class JosepfuTest {
        @Test
        public void addTest() {
        CircleSingleLinkedList circleSingleLinkedList = new CircleSingleLinkedList();
        circleSingleLinkedList.add(5);
        circleSingleLinkedList.print();
        }

        @Test
        public void countBoy() {
        CircleSingleLinkedList circleSingleLinkedList = new CircleSingleLinkedList();
        circleSingleLinkedList.add(5);
        System.out.println("Build Circle Queue:");
        circleSingleLinkedList.print();

        // 开始玩游戏
        // 正确的输出顺序为:2、4、1、5、3
        circleSingleLinkedList.countBoy(1, 2, 5);
        }
        }

        1. 输出结果
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        Child number 1
        Child number 2
        Child number 3
        Child number 4
        Child number 5

        Build Circle Queue:
        Child number 1
        Child number 2
        Child number 3
        Child number 4
        Child number 5
        Localize: 1
        Child number 1
        Child number 2
        Child number 3
        Child number 4
        Child number 5
      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/40f24371/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/47341/index.html b/posts/47341/index.html new file mode 100644 index 000000000..040eb456d --- /dev/null +++ b/posts/47341/index.html @@ -0,0 +1,430 @@ +关于cloudflare对网站搭建的使用 | 希亚的西红柿のBlog

      关于cloudflare对网站搭建的使用

      为 hexo 博客添加自定义域名

      域名注册方面不做赘述,下面详细讲述利用 cloudflare 中 DNS 解析域名至 hexo 博客站的过程

      cloudflare 中域名的解析

      1. 注册 cloudflare 账号(过程比较简单就不放图了,推荐使用 gmail 或者 outlook 邮箱)
      2. cloudflare 中添加站点
      • 注意此处添加的站点为你所购买的域名
      • 添加站点
      • 注意你需要在域名管理网站中设置好对应的 nameserver, 每个人分配的服务器都不一样,记得到注册域名的网站修改为对应的 nameserver!!!
      • 填写 DNS 解析域名的地址

      将域名添加到 github 中

      1. 进入到 github 项目中的 settings 中的 pages 中
      2. 此时项目 main 分支里会出现 CNAME 文件,内容为你的域名(如 xxx.com)

      3. 最后在本地的博客文件夹中hexo/source文件夹下新建 CNAME 文件,内容也为你所拥有的域名
      4. 最后输入域名博客站就可以正常访问啦!
      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/47341/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/54c08517/index.html b/posts/54c08517/index.html new file mode 100644 index 000000000..9cf408f6a --- /dev/null +++ b/posts/54c08517/index.html @@ -0,0 +1,430 @@ +Python实现决策树(Decision Tree)算法 | 希亚的西红柿のBlog

      Python实现决策树(Decision Tree)算法

      决策树算法基础原理分析

      信息的不纯度(决定决策树分支的指标)

      不纯度是在决策树中衡量特征分裂优异性的最主要的指标,用于衡量样本在根据某一特征的分类标准分裂后,样本是否被正确分类的准确程度。

      主要有 3 种计算方式,分别对应了 3 类决策树:

      决策树类别不纯度计算方式
      ID3信息增益(Information Gain)
      C4.5信息增益率(Information Gain Ratio)
      CART基尼系数(Gini index)
      • 信息熵的计算
        信息熵的计算公式为:

        $ H(D)=-\displaystyle\sum_{i=1}^n p_i log_2 p_i $

        其中$ n $为样本D的类别数,$ p_i $为该样本所占样本总数的比例

      • 信息增益的计算
        信息增益的计算公式:

        $ g(D,A)=H(D)-H(D|A) $

        其中,$ H(D|A) $代表在以$ A $为标准分类后的所有样本的信息熵之和

      • 信息增益率
        信息增益率的计算公式:

        $$ IGR=\frac{g(D,A)}{H(A)} $$

        其中 $ H(A) $代表 $ A $

      • 基尼系数
        基尼系数的计算公式:

        $ Gini(p)=\displaystyle\sum_{i=1}^n p_i (1-p_i) = 1 - \displaystyle\sum_{i=1}^n p_i ^2 $

        其中$ n $为样本D的类别数,$ p_i $为该样本所占样本总数的比例
        基尼系数值越小,表示该分类方法贡献的信息度越高,即不纯度越小

      特征的最佳切分点

      特征的类型分为两种情况:

      • 离散型变量
      • 连续性变量
      1. 对于离散型变量:
        可分为二叉树与多叉树
      2. 对于连续性变量
        1. 首先将样本的某一连续变量的值去重后按照升序进行排列
        2. 计算两两相邻的平均值
        3. 遍历,将的每一个点都作为该连续变量的切分点,并计算其分裂的不纯度,获得长度为 n − 1 的不纯度集
        4. 其中最大的不纯度,其切分点即为最佳切分点
      3. 特征在决策树中决策的先后顺序
        决策的先后顺序,即为根据不同变量进行分裂的顺序。在找出每个变量的最佳分裂点后,可以计算出以该点分裂所能获得的信息度(信息增益/信息增益率/基尼系数…等),以最大信息度的变量放在最前面进行分裂,最小的放在最后面分裂。这样就确定了在对样本进行区分的时候,越早分裂的样本能以最佳的区分方法进行划分。

      ID3, C4.5, CART 对比说明

      类型特点劣势
      ID3多叉树;特征只用一次;健壮性较好,能训练属性值有缺失的情况1.当特征取值类型较多时,信息增益会越大,容易造成过拟合;2. 只能用于分类;3. 只能处理离散变量;4. 对缺失值敏感
      C4.5多叉树;特征只用一次;使用信息增益比对特征值多的特征进行惩罚,减少过拟合;可以处理连续变量;可以处理缺失值处理连续值只是将其离散化,形成多个离散值
      CART二叉树;特征使用多次;可以用于回归任务-

      决策树算法 python 代码实现

      创建数据集

      1
      2
      3
      4
      5
      6
      7
      8
      def createDataSet():
      dataSet = [[1, 1, 'yes'],
      [1, 1, 'yes'],
      [1, 0, 'no'],
      [0, 1, 'no'],
      [0, 1, 'no']]
      labels = ['no surfaceing', 'flippers']
      return dataSet, labels

      计算香农熵

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      # 计算香农熵,分两步,第一步计算频率,第二部根据公式计算香农熵
      def calcShannonEnt(dataSet):
      numEntries = len(dataSet)
      labelCounts = {}
      for feaVec in dataSet:
      currentLabel = feaVec[-1]
      if currentLabel not in labelCounts:
      labelCounts[currentLabel] = 0
      labelCounts[currentLabel] += 1
      shannonEnt = 0.0
      for key in labelCounts:
      prob = float(labelCounts[key]) / numEntries
      shannonEnt -= prob * log(prob, 2)
      return shannonEnt

      划分数据集

      1
      2
      3
      4
      5
      6
      7
      8
      9
      # 划分数据集,将满足X[aixs]==value的值都划分到一起,返回一个划分好的集合(不包括用来划分的aixs属性,因为不需要)
      def splitDataSet(dataSet, axis, value):
      retDataSet = []
      for featVec in dataSet:
      if featVec[axis] == value:
      reducedFeatVec = featVec[:axis]
      reducedFeatVec.extend(featVec[axis + 1:])
      retDataSet.append(reducedFeatVec)
      return retDataSet

      选择划分的最佳属性

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      # 选择最好的属性进行划分,思路很简单就是对每个属性都划分下,看哪个好。这里使用到了一个set来选取列表中唯一的元素,这是一中很快的方法
      def chooseBestFeatureToSplit(dataSet):
      numFeatures = len(dataSet[0]) - 1 # 因为数据集的最后一项是标签
      baseEntropy = calcShannonEnt(dataSet)
      bestInfoGain = 0.0
      bestFeature = -1
      for i in range(numFeatures):
      featList = [example[i] for example in dataSet]
      uniqueVals = set(featList)
      newEntropy = 0.0
      for value in uniqueVals:
      subDataSet = splitDataSet(dataSet, i, value)
      prob = len(subDataSet) / float(len(dataSet))
      newEntropy += prob * calcShannonEnt(subDataSet)
      infoGain = baseEntropy - newEntropy
      if infoGain > bestInfoGain:
      bestInfoGain = infoGain
      bestFeature = i
      return bestFeature

      采用多数表决的方式计算结点分类

      1
      2
      3
      4
      5
      6
      7
      8
      9
      # 因为我们递归构建决策树是根据属性的消耗进行计算的,所以可能会存在最后属性用完了,但是分类
      # 还是没有算完,这时候就会采用多数表决的方式计算节点分类
      def majorityCnt(classList):
      classCount = {}
      for vote in classList:
      if vote not in classCount.keys():
      classCount[vote] = 0
      classCount[vote] += 1
      return max(classCount)

      基于递归构造决策树

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      # 基于递归构建决策树。这里的label更多是对于分类特征的名字,为了更好看和后面的理解。
      def createTree(dataSet, labels):
      classList = [example[-1] for example in dataSet]
      if classList.count(classList[0]) == len(classList): # 类别相同则停止划分
      return classList[0]
      if len(dataSet[0]) == 1: # 所有特征已经用完
      return majorityCnt(classList)
      bestFeat = chooseBestFeatureToSplit(dataSet)
      bestFeatLabel = labels[bestFeat]
      myTree = {bestFeatLabel: {}}
      del (labels[bestFeat])
      featValues = [example[bestFeat] for example in dataSet]
      uniqueVals = set(featValues)
      for value in uniqueVals:
      subLabels = labels[:] # 为了不改变原始列表的内容复制了一下
      myTree[bestFeatLabel][value] = createTree(splitDataSet(dataSet, bestFeat, value), subLabels)
      return myTree

      调用函数 构造主函数

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      def main():
      data, label = createDataSet()
      # t1 = time.clock()
      myTree = createTree(data, label)
      # t2 = time.clock()
      print(myTree)
      # print('execute for ',t2-t1)


      if __name__ == '__main__':
      main()

      完整源代码

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      74
      75
      76
      77
      78
      79
      80
      81
      82
      83
      84
      85
      86
      87
      88
      89
      90
      91
      92
      93
      94
      95
      96
      97
      98
      99
      100
      101
      102
      103
      104
      105
      106
      107
      108
      109
      110
      #!/user/bin/env python3
      # -*- coding: utf-8 -*-


      import operator
      from math import log
      import time


      def createDataSet():
      dataSet = [[1, 1, 'yes'],
      [1, 1, 'yes'],
      [1, 0, 'no'],
      [0, 1, 'no'],
      [0, 1, 'no']]
      labels = ['no surfaceing', 'flippers']
      return dataSet, labels


      # 计算香农熵,分两步,第一步计算频率,第二部根据公式计算香农熵
      def calcShannonEnt(dataSet):
      numEntries = len(dataSet)
      labelCounts = {}
      for feaVec in dataSet:
      currentLabel = feaVec[-1]
      if currentLabel not in labelCounts:
      labelCounts[currentLabel] = 0
      labelCounts[currentLabel] += 1
      shannonEnt = 0.0
      for key in labelCounts:
      prob = float(labelCounts[key]) / numEntries
      shannonEnt -= prob * log(prob, 2)
      return shannonEnt


      # 划分数据集,将满足X[aixs]==value的值都划分到一起,返回一个划分好的集合(不包括用来划分的aixs属性,因为不需要)
      def splitDataSet(dataSet, axis, value):
      retDataSet = []
      for featVec in dataSet:
      if featVec[axis] == value:
      reducedFeatVec = featVec[:axis]
      reducedFeatVec.extend(featVec[axis + 1:])
      retDataSet.append(reducedFeatVec)
      return retDataSet


      # 选择最好的属性进行划分,思路很简单就是对每个属性都划分下,看哪个好。这里使用到了一个set来选取列表中唯一的元素,这是一中很快的方法
      def chooseBestFeatureToSplit(dataSet):
      numFeatures = len(dataSet[0]) - 1 # 因为数据集的最后一项是标签
      baseEntropy = calcShannonEnt(dataSet)
      bestInfoGain = 0.0
      bestFeature = -1
      for i in range(numFeatures):
      featList = [example[i] for example in dataSet]
      uniqueVals = set(featList)
      newEntropy = 0.0
      for value in uniqueVals:
      subDataSet = splitDataSet(dataSet, i, value)
      prob = len(subDataSet) / float(len(dataSet))
      newEntropy += prob * calcShannonEnt(subDataSet)
      infoGain = baseEntropy - newEntropy
      if infoGain > bestInfoGain:
      bestInfoGain = infoGain
      bestFeature = i
      return bestFeature


      # 因为我们递归构建决策树是根据属性的消耗进行计算的,所以可能会存在最后属性用完了,但是分类
      # 还是没有算完,这时候就会采用多数表决的方式计算节点分类
      def majorityCnt(classList):
      classCount = {}
      for vote in classList:
      if vote not in classCount.keys():
      classCount[vote] = 0
      classCount[vote] += 1
      return max(classCount)


      # 基于递归构建决策树。这里的label更多是对于分类特征的名字,为了更好看和后面的理解。
      def createTree(dataSet, labels):
      classList = [example[-1] for example in dataSet]
      if classList.count(classList[0]) == len(classList): # 类别相同则停止划分
      return classList[0]
      if len(dataSet[0]) == 1: # 所有特征已经用完
      return majorityCnt(classList)
      bestFeat = chooseBestFeatureToSplit(dataSet)
      bestFeatLabel = labels[bestFeat]
      myTree = {bestFeatLabel: {}}
      del (labels[bestFeat])
      featValues = [example[bestFeat] for example in dataSet]
      uniqueVals = set(featValues)
      for value in uniqueVals:
      subLabels = labels[:] # 为了不改变原始列表的内容复制了一下
      myTree[bestFeatLabel][value] = createTree(splitDataSet(dataSet,
      bestFeat, value), subLabels)
      return myTree


      def main():
      data, label = createDataSet()
      # t1 = time.clock()
      myTree = createTree(data, label)
      # t2 = time.clock()
      print(myTree)
      # print('execute for ',t2-t1)


      if __name__ == '__main__':
      main()

      本文源代码参考自 机器学习——决策树 (Decision Tree)算法原理及 python 实现python 决策树算法原理及基于 numpy 的代码实现

      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/54c08517/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/6534ce06/index.html b/posts/6534ce06/index.html new file mode 100644 index 000000000..6852a01b3 --- /dev/null +++ b/posts/6534ce06/index.html @@ -0,0 +1,435 @@ +栈与队列 | 希亚的西红柿のBlog

      栈与队列

      本篇文章将详细讲述数据结构 栈与队列 章节的内容。

      本教程编程语言采用 JAVA ,文章框架参考自 HUST数据结构PPT ,源码内容参考自 尚硅谷 JAVA 数据结构教程

      栈与队列章节部分概念方面比较简单,重点将放在具体的代码实现过程中。

      栈的定义与操作

      定义与术语

      栈的基本操作

      1. Initstack(s) // 置 s 为空栈
      2. Push(s,e) // 元素 e 进栈 s
      3. Pop(s,e // 元素 e 出栈 s
      4. Gettop(s,e) // 顶元素拷贝到 e
      5. Empty(s) // 判断是否为空栈

      栈的应用场景:

      • 子程序的调用:
        在跳往子程序前,会先将下个指令的地址存到堆栈中,直到子程序执行完后再将地址取出,以回到原来的程序中
        如方法中调用方法。
      • 处理递归调用:
        和子程序调用类似,只是除了存储下一个指令的地址外,也将参数、区域变量等数据存入堆栈中。
      • 表达式的转换(中缀表达式转后缀表达式)与求值(实际解决)
      • 二叉树的遍历
      • 图形的深度优先(depth-first)搜索法

      栈的存储表示和操作实现

      顺序栈(用数组来模拟栈)
      1. 实现思路

        1. 定义一个数组,来模拟栈。
        2. 定义一个top变量表示栈顶,初始化为-1
        3. 入栈:stack[++top] = data
        4. 出栈:return stack[top--]
      2. 代码实现

        查看代码实现
        1. 编写ArrayStack
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        package DataStructure.Stack;

        public class ArrayStack {
        // 定义三个基本属性,堆栈,堆栈的大小,栈顶元素
        int[] stack;
        int maxSize;
        int top = -1;

        // 构造函数书写
        public ArrayStack(int maxSize) {
        this.maxSize = maxSize;
        stack = new int[maxSize];
        }

        // 判断堆栈是否已满,判断top是否到了最后一个元素
        public boolean isFull() {
        return top == maxSize - 1;
        }

        // 判断堆栈是否为空,即判断top的值是否等于-1
        public boolean isEmpty() {
        return top == -1;
        }

        // 入栈函数书写,先判断是否为满再入栈
        public void push(int element) {
        if (isFull()) {
        System.out.println("Stack full!");
        return;
        }
        stack[++top] = element;
        }

        // 出栈函数书写,先判断是否为空再出栈
        public int pop() {
        if (isEmpty()) {
        throw new RuntimeException("No data in stack!");
        }
        return stack[top--];
        }

        // 打印栈中元素
        public void print() {
        if (isEmpty()) {
        System.out.println("No data in stack!");
        return;
        }
        for (int i = top; i >= 0; i--) {
        System.out.printf("index=%d value=%d \n", i, stack[i]);
        }
        }
        }
        1. 编写测试函数
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        package DataStructure.Stack;

        import org.junit.Test;

        public class ArrayStackTest {
        @Test
        public void pushTest() {
        ArrayStack stack = new ArrayStack(4);
        stack.push(1);
        stack.push(2);
        stack.push(3);
        stack.push(4);
        stack.print();
        stack.push(5);
        }

        @Test
        public void popTest() {
        ArrayStack stack = new ArrayStack(4);
        stack.push(1);
        stack.push(2);
        stack.print();
        System.out.println("pop data:" + stack.pop());
        stack.print();
        System.out.println("pop data:" + stack.pop());
        stack.print();
        }
        }
        1. 测试结果
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        pushTest:
        index=3 value=4
        index=2 value=3
        index=1 value=2
        index=0 value=1
        Stack full!

        popTest:
        index=1 value=2
        index=0 value=1
        pop data:2
        index=0 value=1
        pop data:1
        No data in stack!
      链式栈(用链表来模拟栈)
      1. 实现思路
      2. 定义一个链表来模拟栈,成员变量有:
        • 最大存储量: maxSize
        • 栈中元素个数: size
        • 栈顶元素(同时作为表头): top
      3. 入栈:
        Node temp = top;
        top = new Node(value);
        top.next = temp;
        size++;
      4. 出栈
        Node temp = top;
        top = top.next
        size--;
        return temp.value;
      5. 代码实现
        查看代码实现
        1. 编写LinkedListStack
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        package DataStructure.Stack;

        public class LinkedListStack {
        // 构造三个基本属性
        int maxSize; // 栈中最多的元素
        int size; // 栈中现在具有的元素
        Node top; // 栈顶的元素

        // 构造函数
        public LinkedListStack(int maxSize) {
        this.maxSize = maxSize;
        }

        // 判断栈是否为满的元素
        public boolean isFull() {
        return size == maxSize;
        }

        // 判断栈是否为空的元素
        public boolean isEmpty() {
        return size == 0;
        }

        // 入栈函数,先判断是否为满,再将元素添加到链表的表头
        public void push(int value) {
        if (isFull()) {
        System.out.println("Stack full!");
        return;
        }
        // 储存top元素
        Node temp = top;
        // 更新top节点
        top = new Node(value);
        // 指向前一top节点
        top.next = temp;
        // 储存元素个数自增
        size++;
        }

        // 出栈函数书写
        public int pop() {
        if (isEmpty()) {
        throw new RuntimeException("Stack empty!");
        }
        Node temp = top;
        top = top.next; // 注意已经存在的变量加上int会新创建变量
        size--;
        return temp.value;
        }

        // 显示栈中的元素
        public void print() {
        if (isEmpty()) {
        System.out.println("Stack empty!");
        return;
        }
        Node cur = top;
        while (cur != null) {
        System.out.println(cur);
        cur = cur.next;
        }
        }
        }

        class Node {
        // 定义节点的两个基本属性
        int value;
        Node next;

        // 书写构造函数
        public Node(int value) {
        this.value = value;
        }

        // 重写toString函数
        @Override
        public String toString() {
        return "Node{" +
        "value=" + value +
        '}';

        }
        }
        1. 编写测试函数
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        package DataStructure.Stack;

        import org.junit.Test;

        public class LinkedListStackTest {
        @Test
        public void pushTest() {
        LinkedListStack stack = new LinkedListStack(4);
        stack.push(1);
        stack.push(2);
        stack.push(3);
        stack.push(4);
        stack.print();
        stack.push(5);
        }

        @Test
        public void popTest() {
        LinkedListStack stack = new LinkedListStack(4);
        stack.push(1);
        stack.push(2);
        stack.print();
        System.out.println("pop data:" + stack.pop());
        stack.print();
        System.out.println("pop data:" + stack.pop());
        stack.print();
        }
        }

        1. 测试结果
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        pushTest;
        Node{value=4}
        Node{value=3}
        Node{value=2}
        Node{value=1}
        Stack full!

        popTest;
        Node{value=2}
        Node{value=1}
        pop data:2
        Node{value=1}
        pop data:1
        Stack empty!

      栈的应用

      栈的一个十分经典的应用就是计算机如何计算表达式。

      中缀表达式

      1. 基本概念
        中缀表达式是一个通用的 算术逻辑公式表示方法操作符 是以 中缀形式 处于操作数的 中间 (例: 3 + 4 ),中缀表达式是人们常用的算数表达方式。

        中缀表达式就是 常见的运算表达式,如 (3+4)x5-6。
        中缀表达式的求值是人类最熟悉的,但是对于计算机来说却不好操作:

        • 需要计算运算符的优先级
        • 对于中括号来说,笔者想不出实现办法
          因此,在计算结果时,往往会将 中缀表达式 转成其他表达式,一般转成后缀表达式。
      2. 思路分析

      3. 代码实现

        如上图,代码实现的基本思路为:

        1. 先扫描字符串,可以通过一个 index 变量来辅助扫描。
        2. 如果发现是一个 数字 ,直接入栈。
        3. 如果发现是一个 操作符 ,分一下情况:
          1. 当前操作符 的优先级 大于栈顶符号 :将 当前操作符 入符号栈。
          2. 当前操作符 的优先级 小于或等于栈顶符号
            1. 弹出数栈中的 2 个数值。
            2. 弹出符号栈顶的元素。
            3. 2 个数字与符号进行运算。
            4. 将计算结果压入数栈。
            5. 将当前操作符压入符号栈。
        4. 当扫描完毕时:
          1. 顺序地从数栈中弹出 2 个数。
          2. 从符号栈中弹出 1 个操作符。
          3. 将他们进行计算,然后把计算结果压入数栈中。
        5. 最后数栈中只会存在一个数值,那就是计算结果。
        查看代码实现
        1. 使用前面实现的数组栈来做我们的容器,只增加了一个查看栈顶元素的peek()方法。
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        package DataStructure.Stack;

        public class ArrayStack {
        // 定义三个基本属性,堆栈,堆栈的大小,栈顶元素
        int[] stack;
        int maxSize;
        int top = -1;

        // 构造函数书写
        public ArrayStack(int maxSize) {
        this.maxSize = maxSize;
        stack = new int[maxSize];
        }

        // 判断堆栈是否已满,判断top是否到了最后一个元素
        public boolean isFull() {
        return top == maxSize - 1;
        }

        // 判断堆栈是否为空,即判断top的值是否等于-1
        public boolean isEmpty() {
        return top == -1;
        }

        // 入栈函数书写,先判断是否为满再入栈
        public void push(int element) {
        if (isFull()) {
        System.out.println("Stack full!");
        return;
        }
        stack[++top] = element;
        }

        // 出栈函数书写,先判断是否为空再出栈
        public int pop() {
        if (isEmpty()) {
        throw new RuntimeException("No data in stack!");
        }
        return stack[top--];
        }

        // 打印栈中元素
        public void print() {
        if (isEmpty()) {
        System.out.println("No data in stack!");
        return;
        }
        for (int i = top; i >= 0; i--) {
        System.out.printf("index=%d value=%d \n", i, stack[i]);
        }
        }

        // 添加显示栈顶元素的方法
        public int peek() {
        if (isEmpty()) {
        throw new RuntimeException("Stack empty!");
        }
        return stack[top];
        }
        }
        1. 计算器代码实现
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        84
        85
        86
        87
        88
        89
        90
        91
        92
        93
        94
        95
        96
        97
        98
        99
        100
        101
        102
        103
        104
        105
        106
        107
        108
        109
        110
        111
        112
        113
        114
        115
        116
        117
        118
        119
        120
        121
        122
        123
        124
        125
        126
        127
        128
        129
        130
        131
        132
        133
        134
        135
        136
        137
        138
        139
        140
        141
        142
        143
        144
        145
        146
        147
        148
        149
        150
        151
        152
        153
        154
        155
        156
        157
        158
        159
        package DataStructure.Stack;

        /**
        * 计算器代码实现
        */
        public class Calculator {
        // 使用前面章节实现过的 数组模拟栈,来当我们 计算器中用来存储数据和符号的 容器
        private ArrayStack numStack = new ArrayStack(10); // 数组栈
        private ArrayStack operStack = new ArrayStack(10); // 符号栈

        public static void main(String[] args) {
        String expression = "30-2*4+2";

        Calculator calculator = new Calculator();
        // 扫描表达式
        calculator.scan(expression);
        // 剩余数据进行计算
        int res = calculator.nextCal();
        System.out.printf("%s = %d \n", expression, res);
        }

        public void scan(String expression) {
        int index = 0;
        String keepNum = ""; // 用来保存数字,有可能是 = "1" 或则 "123" 的多位数
        while (true) {
        if (index == expression.length()) {
        break;
        }
        // 每次只截取一个数字
        // 要注意这里的 ch,使用 ch 做运算的时候要小心
        char ch = expression.substring(index, ++index).charAt(0);
        if (isOper(ch)) {
        subScan(ch);
        } else {
        // 是数字,直接入数栈
        // ch 被当成 int 的使用的话,需要特别注意
        // ASCII 码表中数字是从 48 开始的,这里的 ch 对应的数字是 ASCII 码表,所以要减掉 48
        // 当然也可以使用字符串解析的方式 Integer.valueOf(字符串) 来得到数字
        // numStack.push(ch - 48);
        keepNum += ch;
        // 已经是末尾了,则直接入栈
        if (index == expression.length()) {
        numStack.push(Integer.parseInt(keepNum));
        continue;
        }
        // 需要往后多看一位,如果是符号,才能将当前的数入栈
        char tempCh = expression.substring(index, index + 1).charAt(0);
        if (isOper(tempCh)) {
        numStack.push(Integer.parseInt(keepNum));
        keepNum = "";
        }
        }
        }
        }

        public void subScan(char ch) {
        // 当 当前操作符 的优先级 大于 栈顶符号:将 当前操作符入符号栈
        // 一定要大于,如果是同级的话,有可能前面一个也是 * 号,需要先在第一步进行计算
        if (operStack.isEmpty() || priority(ch) > priority((char) operStack.peek())) {
        operStack.push(ch);
        return;
        }
        // 小于栈顶操作符,则将栈顶符号取出,进行计算
        int num1 = numStack.pop();
        int num2 = numStack.pop();
        int oper = operStack.pop();
        int res = cal(num1, num2, oper);
        // 将结果入数栈
        numStack.push(res);
        // 递归调用
        subScan(ch);
        }

        /**
        * 第 2 步:从栈中取出来数据和符号,然后计算
        *
        * @return
        */
        private int nextCal() {
        System.out.println("符号栈中符号情况:");
        operStack.print();
        while (true) {
        // 当符号栈为空时,表示已经计算完了
        if (operStack.isEmpty()) {
        break;
        }
        int num1 = numStack.pop();
        int num2 = numStack.pop();
        int oper = operStack.pop();
        int res = cal(num1, num2, oper);
        // 将结果入数栈
        numStack.push(res);
        }
        // 计算完成之后,数栈中只有一个数据了,就是结果
        System.out.println("栈中数据是否只有一个结果数字:");
        numStack.print();
        return numStack.pop();
        }

        /**
        * 计算
        *
        * @param num1 依次从栈顶弹出来的数据
        * @param num2
        * @param oper 操作符
        * @return
        */
        private int cal(int num1, int num2, int oper) {
        switch (oper) {
        case '+':
        return num1 + num2;
        case '-':
        // 注意顺序,在栈底的数据,是先进去的,如果是减法,则是前面的数字减后面的数字
        return num2 - num1;
        case '*':
        return num1 * num2;
        case '/':
        return num2 / num1;
        }
        // 由于前面校验过操作符,不会走到这里来的
        return 0;
        }

        /**
        * 计算操作符号优先级,暂时只支持 + - * /
        *
        * @param ch
        * @return 优先级越高,数值越大
        */
        private int priority(char ch) {
        switch (ch) {
        case '+':
        case '-':
        return 0;
        case '*':
        case '/':
        return 1;
        default:
        return -1;
        }
        }

        /**
        * 是否是操作符
        *
        * @param ch
        * @return
        */
        private boolean isOper(char ch) {
        switch (ch) {
        case '+':
        case '-':
        case '*':
        case '/':
        return true;
        }
        return false;
        }
        }

      后缀表达式

      后缀表达式 又称为 逆波兰表达式 ,与前缀表达式类似,只是 运算符 位于 操作数 之后。

      1. 后缀表达式求值过程:

        1. 左到右 扫描表达式。
        2. 遇到 数字 时,将数字压入堆栈。
        3. 遇到 符号 时,将数字栈栈顶和次顶元素弹出,计算顺序为 次顶元素(符号)栈顶元素。
        4. 重复上述过程直至剩余最后一个结果。
      2. 中缀表达式转后缀表达式

        1. 初始化两个栈
        • 符号栈 s1
        • 中间结果栈 s2
        1. 从左到右扫描中缀表达式
        2. 遇到操作数直接压入 s2
        3. 遇到运算符时
          1. s1 为空,或者栈顶元素符号位 ( ,则将其压入符号栈 s1
          2. 若优先级比栈顶运算符 ,也将其压入符号栈 s1
          3. 若优先级比栈顶运算符 低或者相等 ,则弹出 s1栈顶元素,将其压入 s2 中,然后继续循环步骤 4,直至当前符号压入 s1
        4. 遇到括号时
          1. 如果是左括号 (:直接压入 s1
          2. 如果是右括号 )
            则依次弹出 s1栈顶的运算符,并压入 s2 直到遇到 左括号 为止,此时将这一对括号 丢弃
        5. 重复步骤 2 到 5 ,直到表达式的最右端
        6. 将 s1 的运算符依次弹出并压入 s2 ,结果的 逆序 即为:中缀表达式转后缀表达式的结果
      3. 中缀表达式转后缀表达式的举例说明

        查看举例

        将中缀表达式:1+((2+3)*4)-5转化为后缀表达式

        扫描到的元素s2(栈底->栈顶)s1(栈底->栈顶)说明
        11null遇到操作数直接压入 s2
        +1+s1为空,直接压入
        (1+ (运算符为(,直接压入
        (1+ ( (运算符为(,直接压入
        21 2+ ( (遇到操作数直接压入 s2
        +1 2+ ( ( +栈顶元素为(,直接压入 s1
        31 2 3+ ( ( +遇到操作数直接压入 s2
        )1 2 3 ++ (遇到)时,依次弹出 s1栈顶的运算符,并压入 s2 直到遇到 左括号 为止,此时将这一对括号 丢弃
        *1 2 3 ++ ( *栈顶元素为(,直接压入s1
        41 2 3 + 4+ ( *遇到操作数直接压入 s2
        )1 2 3 + 4 *+遇到)时,依次弹出 s1栈顶的运算符,并压入 s2 直到遇到 左括号 为止,此时将这一对括号 丢弃
        -1 2 3 + 4 * +-优先级比栈顶运算符 低或者相等 ,则弹出 s1栈顶元素,将其压入 s2 中,然后继续循环步骤 4,直至当前符号压入 s1
        51 2 3 + 4 * + 5-遇到操作数直接压入 s2
        null1 2 3 + 4 * + 5 -nulls1 的运算符依次弹出并压入 s2 ,结果的 逆序 即为:中缀表达式转后缀表达式的结果
      4. 代码实现

        查看代码实现
        1. 逆波兰表达式的计算器

          实现思路:

          1. 先将后缀表达式转化为一个 List
          2. 对这个 List 进行遍历然后进行计算
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        84
        85
        86
        87
        88
        89
        90
        91
        92
        93
        94
        95
        96
        97
        98
        99
        100
        101
        102
        103
        104
        105
        106
        package DataStructure.Stack;

        import java.util.Arrays;
        import java.util.List;
        import java.util.Stack;

        public class ReversePolishCalculator {
        public static void main(String[] args) {
        ReversePolishCalculator calculator = new ReversePolishCalculator();

        // (3+4)*5-6 => 对应的后缀表达式 `3 4 + 5 * 6 -`
        String postfixExpression = "3 4 + 5 * 6 -";
        System.out.println("(3+4)*5-6 = " + calculator.cal(postfixExpression));

        // (30+4)*5-6 => 对应的后缀表达式 `30 4 + 5 * 6 -`
        postfixExpression = "30 4 + 5 * 6 -";
        System.out.println("(30+4)*5-6 = " + calculator.cal(postfixExpression));

        // 4*5-8+60+8/2 => 对应的后缀表达式 `4 5 * 8 - 60 + 8 2 / +`
        postfixExpression = "4 5 * 8 - 60 + 8 2 / +";
        System.out.println("4*5-8+60+8/2 = " + calculator.cal(postfixExpression));

        // (3+4)-(3-4)*10,对应后缀表达式为:3 4 + 10 3 4 - * -
        postfixExpression = "3 4 + 10 3 4 - * -";
        System.out.println("(3+4)-(3-4)*10 = " + calculator.cal(postfixExpression));
        }

        /**
        * 计算一个后缀表达式的值
        *
        * @param postfixExpression
        * @return
        */
        public int cal(String postfixExpression) {
        return start(convert(postfixExpression));
        }

        /**
        * 将后缀表达式转换成 list
        *
        * @param postfixExpression 表达式中的每个元素都用空格隔开,是为了方便;这里重点不在于怎么去解析出每一个元素了
        * @return
        */
        private List<String> convert(String postfixExpression) {
        return Arrays.asList(postfixExpression.split(" "));
        }

        /**
        * 计算
        *
        * @param postfixElements
        * @return
        */
        private int start(List<String> postfixElements) {
        /*
        * 比如:`(3+4)x5-6` 对应的后缀表达式 `3 4 + 5 x 6 -`
        * 1. 从左到右扫描,将 3、4 压入堆栈
        * 2. 扫描到 `+` 运算符时
        * 将弹出 4 和 3,计算 `3 + 4 = 7`,将 7 压入栈
        * 3. 将 5 入栈
        * 4. 扫描到 `x` 运算符时
        * 将弹出 5 和 7 ,计算 `7 x 5 = 35`,将 35 入栈
        * 5. 将 6 入栈
        * 6. 扫描到 `-` 运算符时
        * 将弹出 6 和 35,计算 `35 - 6 = 29`,将 29 压入栈
        * 7. 扫描表达式结束,29 是表达式的值
        */
        Stack<Integer> stack = new Stack<>();
        for (String el : postfixElements) {
        // 如果是数字则入栈
        if (el.matches("\\d+")) {
        stack.push(Integer.parseInt(el));
        continue;
        }
        // 是运算符,则弹出两个数
        Integer num2 = stack.pop();
        Integer num1 = stack.pop();
        int res = cal(num1, num2, el.charAt(0));
        stack.push(res);
        }
        return stack.pop();
        }

        /**
        * 计算
        *
        * @param num1
        * @param num2
        * @param oper 操作符
        * @return
        */
        private int cal(int num1, int num2, char oper) {
        switch (oper) {
        case '+':
        return num1 + num2;
        case '-':
        return num1 - num2;
        case '*':
        return num1 * num2;
        case '/':
        return num1 / num2;
        }
        throw new IllegalArgumentException("不支持的运算符:" + oper);
        }

        }
        1. 中缀表达式转后缀表达式代码实现
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53
        54
        55
        56
        57
        58
        59
        60
        61
        62
        63
        64
        65
        66
        67
        68
        69
        70
        71
        72
        73
        74
        75
        76
        77
        78
        79
        80
        81
        82
        83
        84
        85
        86
        87
        88
        89
        90
        91
        92
        93
        94
        95
        96
        97
        98
        99
        100
        101
        102
        103
        104
        105
        106
        107
        108
        109
        110
        111
        112
        113
        114
        115
        116
        117
        118
        119
        120
        121
        122
        123
        124
        125
        126
        127
        128
        129
        130
        131
        package DataStructure.Stack;

        import java.util.ArrayList;
        import java.util.List;
        import java.util.Stack;

        /**
        * 中缀表达式转后缀表达式
        */
        public class InfixToSuffix {
        public static void main(String[] args) {
        InfixToSuffix infixToSuffix = new InfixToSuffix();
        // 目标:1+((2+3)*4)-5 转为 1 2 3 + 4 * + 5 -
        // 1. 将中缀表达式转成 List,方便在后续操作中获取数据
        String infixExpression = "1+((2+3)*4)-5";
        List<String> infixList = infixToSuffix.infix2List(infixExpression);
        System.out.println(infixList); // [1, +, (, (, 2, +, 3, ), *, 4, ), -, 5]
        // 2. 将中缀表达式转成后缀表达式
        ArrayList<String> suffixList = infixToSuffix.infixList2SuffixList(infixList);
        System.out.println(suffixList); // [1, 2, 3, +, 4, *, +, 5, -]
        }

        /**
        * 将中缀表达式解析成单个元素的 List,
        *
        * @param infixExpression
        * @return 1+((2+3)*4)-5 -> [1,+,(,(,2,+,3,),*,4,),5]
        */
        public List<String> infix2List(String infixExpression) {
        ArrayList<String> res = new ArrayList<>();
        // 扫描并解析
        int index = 0;
        char ch = 0;
        String tempNum = ""; // 支持多位数
        while (index < infixExpression.length()) {
        ch = infixExpression.charAt(index++);
        // 如果不是数字,就是符号,直接添加到容器中
        // 0 = 48, 9 = 57
        if (!(ch >= 48 && ch <= 57)) {
        // 如果拼接的多位数还有值,则添加到容器中
        if (!tempNum.isEmpty()) {
        res.add(tempNum);
        tempNum = "";
        }
        res.add(ch + "");
        continue;
        }
        // 如果是数字,则考虑处理多位数
        tempNum += ch;
        // 如果已经是最后一个字符了,则将这个多位数添加到容器中
        if (index == infixExpression.length()) {
        res.add(tempNum);
        tempNum = "";
        }
        }
        return res;
        }

        /**
        * 中缀表达式 List 转为后缀表达式 List
        *
        * @param infixList
        * @return
        */
        private ArrayList<String> infixList2SuffixList(List<String> infixList) {
        // 符号栈
        Stack<String> s1 = new Stack<>();
        // 思路是使用栈来存储表达式元素
        // 仔细观察他的解析步骤,会发现:只是在入栈,并未出现出栈操作
        // 而且,最后的结果还要逆序,所以这里使用 list,直接顺序读取出来就是最后的结果了
        ArrayList<String> s2 = new ArrayList<>();

        for (String item : infixList) {
        // 如果是数字,则加入 s2
        if (item.matches("\\d+")) {
        s2.add(item);
        }
        // 如果是左括号,直接压入 s1
        else if (item.equals("(")) {
        s1.push(item);
        }
        // 如果是右括号
        // 则依次弹出 s1 栈顶的运算符,并压入 s2,直到遇到 左括号 为止,此时将这一对括号 丢弃
        else if (item.equals(")")) {
        // 如果不是左括号,则取出 s1 中的符号,添加到 s2 中
        while (!s1.peek().equals("(")) {
        s2.add(s1.pop());
        }
        // 上面循环完之后,那么就是遇到了左括号
        // 则直接弹出这个左括号丢弃
        s1.pop();
        }
        // 剩下的则是运算符
        else {
        // 如果 s1 为空,或则栈顶运算符为 (,则压入符号栈 s1
        // 如果优先级比栈顶运算符 高,则压入符号栈 s1,否则,否则将 s1 栈顶的运算符弹出,压入 s2 中
        // 上面两句话,转换成下面的描述
        // 上面如果 s1 栈顶符号优先级比 当前符号高,则弹出加入到 s2 中。
        // 因为:如果栈顶符号是 ( 返回优先级为 -1.比当前符号低,则不会走该方法
        while (!s1.isEmpty() && priority(s1.peek().charAt(0)) >= priority(item.charAt(0))) {
        s2.add(s1.pop());
        }
        s1.push(item);
        }
        }
        // 将 s1 中的运算符依次弹出并加入 s2 中
        while (!s1.isEmpty()) {
        s2.add(s1.pop());
        }
        return s2;
        }

        /**
        * 计算操作符号优先级,暂时只支持 + - * /
        *
        * @param ch
        * @return 优先级越高,数值越大
        */
        private int priority(char ch) {
        switch (ch) {
        case '+':
        case '-':
        return 0;
        case '*':
        case '/':
        return 1;
        default:
        return -1;
        }
        }
        }

      前缀表达式

      1. 前缀表达式又称 波兰表达式 ,前缀表达式的 运算符位于操作数之前

      2. 前缀表达式求值过程:

        1. 右到左 扫描表达式。
        2. 遇到 数字 将数字压入栈。
        3. 遇到 符号 弹出数字栈的两个元素,与运算符计算,顺序为: 弹出的 (符号 弹出的。
        4. 重复上述过程直至剩余最后一个结果。
      3. 中缀表达式转前缀表达式

        查看思路

        (1) 初始化两个栈:运算符栈 S1 和储存中间结果的栈 S2;
        (2) 从右至左扫描中缀表达式;
        (3) 遇到操作数时,将其压入 S2;
        (4) 遇到运算符时,比较其与 S1 栈顶运算符的优先级:
        (4-1) 如果 S1 为空,或栈顶运算符为右括号“)”,则直接将此运算符入栈;
        (4-2) 否则,若优先级比栈顶运算符的较高或相等,也将运算符压入 S1;
        (4-3) 否则,将 S1 栈顶的运算符弹出并压入到 S2 中,再次转到(4-1)与 S1 中新的栈顶运算符相比较;
        (5) 遇到括号时:
        (5-1) 如果是右括号“)”,则直接压入 S1;
        (5-2) 如果是左括号“(”,则依次弹出 S1 栈顶的运算符,并压入 S2,直到遇到右括号为止,此时将这一对括号丢弃;
        (6) 重复步骤(2)至(5),直到表达式的最左边;
        (7) 将 S1 中剩余的运算符依次弹出并压入 S2;
        (8) 依次弹出 S2 中的元素并输出,结果即为中缀表达式对应的前缀表达式。

        值得注意的是 s2 输出结果 不需要 逆序

        代码实现思路与后缀表达式类似,且使用情况较少,故不再详细讲述。

      队列

      基本概念

      1. 队列:是一个 有序列表 ,可以用 数组链表 来实现。
      2. 特点:遵循 先入先出 的原则。
        示意图

      数组模拟队列

      声明 4 个变量:

      • arr:用来储存数据的数组
      • maxSize:该队列的最大容量
      • front:队首下标,随着数据输出而改变
      • rear:队尾下标,随着数据输入二改变

      队列中常用操作分析,以 add ,把数据存入队列为例,思路分析:

      1. 存入数据后将尾指针往后移:rear + 1,前提是当 front == rear时,队列是空的
      2. 若尾指针rear < maxSize - 1
        • 则将数据存入rear所指的数组元素中
        • 否则无法存入数据,rear = maxSize - 1表示队列满了
       {% folding green,查看代码实现 %}
      +
      +
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      74
      75
      76
      77
      78
      79
      80
      81
      82
      83
      84
      85
      86
      87
      88
      89
      package DataStructure;

      public class Queue {
      /*
      * 主函数:
      * 添加队列元素与展示队列元素
      */
      public static void main(String[] args) {
      ArrayQueue queue = new ArrayQueue(3);
      queue.add(1);
      queue.add(2);
      queue.add(3);
      System.out.println("查看队列中的数据:");
      queue.show();
      System.out.println("查看队列头数据:" + queue.head());
      System.out.println("查看队列尾数据:" + queue.tail());
      System.out.println("获取队列的数据:" + queue.get());
      System.out.println("查看队列中的数据:");
      queue.show();
      }
      }

      class ArrayQueue {
      // 确定队列的4个基本属性,使用private修饰符修饰成员变量
      private int maxSize;
      private int front;
      private int rear;
      private int arr[];

      // 创建队列,初始化成员变量,使用构造函数创建
      public ArrayQueue(int arrMaxSize) {
      maxSize = arrMaxSize;
      arr = new int[maxSize];
      front = -1;
      rear = -1;
      }

      // 取出队列的数据,同时使用isEmpty来判断队列是否为空
      public int get() {
      if (isEmpty()) {
      throw new RuntimeException("队列空");
      }
      return arr[++front];
      }

      // 往队列中放入数据,用isFull来判断队列是否已满
      public void add(int n) {
      if (isFull()) {
      System.out.println("队列已满!");
      return;
      }
      arr[++rear] = n;
      }

      // 显示队列中的数据,判断不为空之后采用循环遍历的方式显示数据
      public void show() {
      if (isEmpty()) {
      throw new RuntimeException("队列为空");
      }
      for (int i = 0; i < arr.length; i++) {
      System.out.printf("arr[%d]: %d\n", i, arr[i]);
      }
      }

      // 取出队头元素
      public int head() {
      if (isEmpty()) {
      throw new RuntimeException("队列为空");
      }
      return arr[front + 1];
      }

      // 取出队尾元素
      public int tail() {
      if (isEmpty()) {
      throw new RuntimeException("队列为空");
      }
      return arr[rear];
      }

      private boolean isFull() {
      return rear == maxSize - 1;
      }

      private boolean isEmpty() {
      return rear == front;
      }

      }
      + +{% endfolding %} +

      循环队列

      基本思路:

      1. front:队列的第一个元素
      2. rear:队列最后一个元素的下一个位置
      3. 队列 计算公式:(rear + 1) % maxSize == front
      4. 队列 计算公式:rear == front
      5. 队列中 有效元素个数 计算公式:(rear + maxSize -front) % maxSize
      查看代码实现
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      74
      75
      76
      77
      78
      79
      80
      81
      82
      83
      84
      85
      86
      87
      88
      89
      90
      91
      92
      93
      94
      95
      96
      97
      98
      99
      100
      101
      102
      103
      104
      105
      106
      107
      108
      109
      110
      111
      112
      113
      114
      115
      116
      117
      118
      119
      120
      121
      122
      123
      124
      125
      126
      127
      128
      129
      130
      131
      132
      133
      134
      135
      136
      137
      138
      139
      package DataStructure;

      import java.util.Scanner;

      public class CircleQueueDemo {
      // 写一个主函数内部写一个控制台输入的小程序
      public static void main(String[] args) {
      CircleQueue queue = new CircleQueue(3);

      Scanner scanner = new Scanner(System.in);
      boolean loop = true;
      char key = ' ';
      System.out.println("s(show): 显示队列");
      System.out.println("e(exit): 退出程序");
      System.out.println("a(add): 添加数据到队列");
      System.out.println("g(get): 从队列取出数据");
      System.out.println("h(head): 查看队列头的数据");
      System.out.println("t(tail): 查看队列尾的数据");
      System.out.println("p(isEmpty): 队列是否为空");
      while (loop) {
      key = scanner.next().charAt(0);
      switch (key) {
      case 's':
      queue.show();
      break;
      case 'e':
      loop = false;
      break;
      case 'a':
      System.out.println("请输入要添加到队列中的整数:");
      int value = scanner.nextInt();
      queue.add(value);
      break;
      case 'g':
      try {
      int res = queue.get();
      System.out.printf("取出的数据是:%d\n", res);
      } catch (Exception e) {
      System.out.println(e.getMessage());
      }
      break;
      case 'h':
      try {
      int res = queue.head();
      System.out.println("队头数据为:" + res);
      } catch (Exception e) {
      System.out.println(e.getMessage());
      }
      break;
      case 't':
      try {
      int res = queue.tail();
      System.out.println("队尾数据为:" + res);
      } catch (Exception e) {
      System.out.println(e.getMessage());
      }
      break;
      case 'p':
      System.out.printf("队列是否为空:%s", queue.isEmpty());
      break;
      }
      }
      }
      }

      // 开始编写环形队列这个类
      class CircleQueue {
      // 使用私有变量储存四个基本属性
      private int maxSize;
      private int front;
      private int rear;
      private int[] arr;

      // 初始化环形队列
      public CircleQueue(int arrMaxSize) {
      maxSize = arrMaxSize + 1; // 此处+1是因为需要给rear留出空的储存空间
      front = 0;
      rear = 0;
      arr = new int[maxSize];
      }

      // 取出队列的数据
      public int get() {
      if (isEmpty()) {
      throw new RuntimeException("队列空");
      }
      int value = arr[front];
      front = (front + 1) % maxSize;
      return value;
      }

      // 往队列中储存数据
      public void add(int n) {
      if (isFull()) {
      System.out.println("队列已满");
      return;
      }
      arr[rear] = n;
      rear = (rear + 1) % maxSize;
      }

      // 显示队列中的数据
      public void show() {
      if (isEmpty()) {
      System.out.println("队列为空");
      return;
      }
      for (int i = front; i < front + size(); i++) {
      int index = i % maxSize;
      System.out.printf("arr[%d] = %d\n", index, arr[index]);
      }
      }

      public int head() {
      if (isEmpty()) {
      throw new RuntimeException("队列空");
      }
      return arr[front];
      }

      public int tail() {
      if (isEmpty()) {
      throw new RuntimeException("队列空");
      }
      return rear - 1 < 0 ? arr[maxSize - 1] : arr[rear - 1];
      }

      private boolean isFull() {
      return (rear + 1) % maxSize == front;
      }

      public boolean isEmpty() {
      return rear == front;
      }

      public int size() {
      return (rear + maxSize - front) % maxSize;
      }
      }
      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/6534ce06/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/75378e04/index.html b/posts/75378e04/index.html new file mode 100644 index 000000000..35170b046 --- /dev/null +++ b/posts/75378e04/index.html @@ -0,0 +1,430 @@ +机器学习基本概念与知识 | 希亚的西红柿のBlog

      机器学习基本概念与知识

      本文主要介绍机器学习的基本概念与知识,文字比较简洁内容并不长,主要用于记录学习内容,方便之后复习

      主要任务

      • 分类(classification): 将实例数据划分到合适的类别中。
        • 应用实例: 判断网站是否被黑客入侵(二分类 ),手写数字的自动识别(多分类)
      • 回归(regression): 主要用于预测数值型数据。
        • 应用实例: 股票价格波动的预测,房屋价格的预测等。

      监督学习(supervised learning)

      • 特点:训练样本同时具有特征与目标变量的机器学习算法。
        • 特征通常是训练样本集的列,它们是独立测量得到的。
        • 目标变量: 目标变量是机器学习预测算法的测试结果。
      • 监督学习需要注意的问题:
        • 偏置方差权衡
        • 功能的复杂性和数量的训练数据
        • 输入空间的维数
        • 噪声中的输出值

      非监督学习(unsupervised learning)

      • 特点:训练样本没有目标变量,即是指在没有类别信息情况下,通过对所研究对象的大量样本的数据分析实现对样本分类的一种数据处理方法。
      • 非监督学习包括的类型:
        • 聚类: 在无监督学习中,将数据集分成由类似的对象组成多个类的过程称为聚类。
        • 密度估计: 通过样本分布的紧密程度,来估计与分组的相似性。
        • 此外,无监督学习还可以减少数据特征的维度,以便我们可以使用二维或三维图形更加直观地展示数据信息。

      强化学习

      这个算法可以训练程序做出某一决定。程序在某一情况下尝试所有的可能行动,记录不同行动的结果并试着找出最好的一次尝试来做决定。 属于这一类算法的有马尔可夫决策过程。
      训练过程

      算法汇总

      机器学习的使用

      选择算法需要考虑的两个问题

      1. 算法场景
        • 预测明天是否下雨,因为可以用历史的天气情况做预测,所以选择监督学习算法
        • 给一群陌生的人进行分组,但是我们并没有这些人的类别信息,所以选择无监督学习算法、通过他们身高、体重等特征进行处理。
      2. 需要收集或分析的数据是什么

      举例

      机器学习的开发流程

      1. 收集数据: 收集样本数据
      2. 准备数据: 注意数据的格式
      3. 分析数据: 为了确保数据集中没有垃圾数据;
        • 如果是算法可以处理的数据格式或可信任的数据源,则可以跳过该步骤;
        • 另外该步骤需要人工干预,会降低自动化系统的价值。
      4. 训练算法: [机器学习算法核心]如果使用无监督学习算法,由于不存在目标变量值,则可以跳过该步骤
      5. 测试算法: [机器学习算法核心]评估算法效果
      6. 使用算法: 将机器学习算法转为应用程序

      机器学习基础概念补充

      一个总结知识点很棒的链接 https://zhuanlan.zhihu.com/p/25197792

      机器学习基本术语

      • 模型(model): 计算机层面的认知
      • 学习算法(learning algorithm),从数据中产生模型的方法
      • 数据集(data set): 一组记录的合集
      • 示例(instance): 对于某个对象的描述
      • 样本(sample): 也叫示例
      • 属性(attribute): 对象的某方面表现或特征
      • 特征(feature): 同属性
      • 属性值(attribute value): 属性上的取值
      • 属性空间(attribute space): 属性张成的空间
      • 样本空间/输入空间(samplespace): 同属性空间
      • 特征向量(feature vector): 在属性空间里每个点对应一个- 坐标向量,把一个示例称作特征向量
      • 维数(dimensionality): 描述样本参数的个数(也就是空间- 是几维的)
      • 学习(learning)/训练(training): 从数据中学得模型
      • 训练数据(training data): 训练过程中用到的数据
      • 训练样本(training sample):训练用到的每个样本
      • 训练集(training set): 训练样本组成的集合
      • 假设(hypothesis): 学习模型对应了关于数据的某种潜在规则
      • 真相(ground-truth):真正存在的潜在规律
      • 学习器(learner): 模型的另一种叫法,把学习算法在给定数据和参数空间的实例化
      • 预测(prediction): 判断一个东西的属性
      • 标记(label): 关于示例的结果信息,比如我是一个“好人”。
      • 样例(example): 拥有标记的示例
      • 标记空间/输出空间(label space): 所有标记的集合
      • 分类(classification): 预测是离散值,比如把人分为好人和坏人之类的学习任务
      • 回归(regression): 预测值是连续值,比如你的好人程度达到了 0.9,0.6 之类的
      • 二分类(binary classification): 只涉及两个类别的分类任务
      • 正类(positive class): 二分类里的一个
      • 反类(negative class): 二分类里的另外一个
      • 多分类(multi-class classification): 涉及多个类别的分类
      • 测试(testing): 学习到模型之后对样本进行预测的过程
      • 测试样本(testing sample): 被预测的样本
      • 聚类(clustering): 把训练集中的对象分为若干组
      • 簇(cluster): 每一个组叫簇
      • 监督学习(supervised learning): 典范—分类和回归
      • 无监督学习(unsupervised learning): 典范—聚类
      • 未见示例(unseen instance): “新样本“,没训练过的样本
      • 泛化(generalization)能力: 学得的模型适用于新样本的能力
      • 分布(distribution): 样本空间的全体样本服从的一种规律
      • 独立同分布(independent and identically distributed,简称 i,i,d.):获得的每个样本都是独立地从这个分布上采样获得的。

      数据集的划分

      • 训练集(Training set) —— 学习样本数据集,通过匹配一些参数来建立一个模型,主要用来训练模型。类比考研前做的解题大全。
      • 验证集(validation set) —— 对学习出来的模型,调整模型的参数,如在神经网络中选择隐藏单元数。验证集还用来确定网络结构或者控制模型复杂程度的参数。类比 考研之前做的模拟考试。
      • 测试集(Test set) —— 测试训练好的模型的分辨能力。类比 考研。这次真的是一考定终身。

      模型拟合程度

      • 欠拟合(Underfitting): 模型没有很好地捕捉到数据特征,不能够很好地拟合数据,对训练样本的一般性质尚未学好。类比,光看书不做题觉得自己什么都会了,上了考场才知道自己啥都不会。
      • 过拟合(Overfitting): 模型把训练样本学习“太好了”,可能把一些训练样本自身的特性当做了所有潜在样本都有的一般性质,导致泛化能力下降。类比,做课后题全都做对了,超纲题也都认为是考试必考题目,上了考场还是啥都不会。

      通俗来说,欠拟合和过拟合都可以用一句话来说,欠拟合就是: “你太天真了!”,过拟合就是: “你想太多了!”。

      常见的模型指标

      • 正确率 —— 提取出的正确信息条数 / 提取出的信息条数
      • 召回率 —— 提取出的正确信息条数 / 样本中的信息条数
      • F 值 —— 正确率 召回率 2 / (正确率 + 召回率)(F 值即为正确率和召回率的调和平均值)

      举个例子如下:
      某池塘有 1400 条鲤鱼,300 只虾,300 只乌龟。现在以捕鲤鱼为目的。撒了一张网,逮住了 700 条鲤鱼,200 只 虾, 100 只乌龟。那么这些指标分别如下: 正确率 = 700 / (700 + 200 + 100) = 70% 召回率 = 700 / 1400 = 50% F 值 = 70% 50% 2 / (70% + 50%) = 58.3%

      模型

      • 分类问题 —— 说白了就是将一些未知类别的数据分到现在已知的类别中去。比如,根据你的一些信息,判断你是高富帅,还是穷屌丝。评判分类效果好坏的三个指标就是上面介绍的三个指标: 正确率,召回率,F 值。
      • 回归问题 —— 对数值型连续随机变量进行预测和建模的监督学习算法。回归往往会通过计算 误差(Error)来确定模型的精确性。
      • 聚类问题 —— 聚类是一种无监督学习任务,该算法基于数据的内部结构寻找观察样本的自然族群(即集群)。聚类问题的标准一般基于距离: 簇内距离(Intra-cluster Distance) 和 簇间距离(Inter-cluster Distance) 。簇内距离是越小越好,也就是簇内的元素越相似越好;而簇间距离越大越好,也就是说簇间(不同簇)元素越不相同越好。一般的,衡量聚类问题会给出一个结合簇内距离和簇间距离的公式。

      下面这个图可以比较直观地展示出来:

      特征工程的一些细节

      • 特征选择 —— 也叫特征子集选择(FSS,Feature Subset Selection)。是指从已有的 M 个特征(Feature)中选择 N 个特征使得系统的特定指标最优化,是从原始特征中选择出一些最有效特征以降低数据集维度的过程,是提高算法性能的一个重要手段,也是模式识别中关键的数据预处理步骤。

        模式识别(pattern recognition): 模式识别是最古老的(作为一个术语而言,可以说是很过时的)。

        • 我们把环境与客体统称为“模式”,识别是对模式的一种认知,是如何让一个计算机程序去做一些看起来很“智能”的事情。
        • 通过融于智慧和直觉后,通过构建程序,识别一些事物,而不是人,例如: 识别数字。
      • 特征提取 —— 特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点,连续的曲线或者连续的区域。

      下面给出特征工程的图:

      本文内容参考自AIlearning,想了解更多细节推荐阅读原文,项目地址为Github

      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/75378e04/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/775eb342/index.html b/posts/775eb342/index.html new file mode 100644 index 000000000..05074282f --- /dev/null +++ b/posts/775eb342/index.html @@ -0,0 +1,430 @@ +使用Numpy实现k-Nearest-Neighbor算法 | 希亚的西红柿のBlog

      使用Numpy实现k-Nearest-Neighbor算法

      KNN 算法基本原理

      kNN 算法的核心思想是用距离最近的 k 个样本数据的分类来代表目标数据的分类。 用俗话来说就是 “近朱者赤,近墨者黑”,采用距离最近的 k 个样本中占比最高的类别来代表测试数据的类别。

      注意 KNN 算法仍然是有监督学习算法的一种

      KNN 算法的特点

      • 优点:
        1. 监督学习:可以看到,kNN 算法首先需要一个训练样本集,这个集合中含有分类信息,因此它属于监督学习
        2. 通过计算距离来衡量样本之间相似度,算法简单,易于理解和实现。
        3. 对异常值不敏感
      • 缺点:
        1. 需要设定 k 值,结果会受到 k 值的影响,不同的 k 值,最后得到的分类结果不尽相同。k 一般不超过 20
        2. 计算量大,需要计算样本集中每个样本的距离,才能得到 k 个最近的数据样本。
        3. 训练样本集不平衡导致结果不准确问题。当样本集中主要是某个分类,该分类数量太大,导致近邻的 k 个样本总是该类,而不接近目标分类。

      KNN 算法的流程

      一般情况下,kNN 有如下流程:

      1. 收集数据:确定训练样本集合测试数据;
      2. 计算测试数据和训练样本集中每个样本数据的距离;
      • 常用的距离计算公式:

      欧式距离计算公式:
      曼哈顿距离公式:

      1. 按照距离递增的顺序排序;
      2. 选取距离最近的 k 个点(这个 k 一般小于等于 20);
      3. 确定这 k 个点中分类信息的频率;
      4. 返回前 k 个点中出现频率最高的分类,作为当前测试数据的分类。

      python 算法实现

      开发的基本流程如下:

      • 收集数据: 提供文本文件
      • 准备数据: 使用 Python 解析文本文件
      • 分析数据: 使用 Matplotlib 画二维散点图
      • 训练算法: 此步骤不适用于 k-近邻算法
      • 测试算法: 使用海伦提供的部分数据作为测试样本。

      测试样本和非测试样本的区别在于:
      测试样本是已经完成分类的数据,如果预测分类与实际类别不同,则标记为一个错误。

      • 使用算法: 产生简单的命令行程序,然后海伦可以输入一些特征数据以判断对方是否为自己喜欢的类型。
      1. KNN 算法分类器函数
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      # 定义KNN算法分类器函数
      # 函数参数包括: (测试数据, 训练数据, 分类, k值)
      def classify(inX, dataSet, labels, k):
      dataSetSize = dataSet.shape[0] # 读取矩阵有几层数据
      diffMat = tile(inX, (dataSetSize, 1)) - dataSet # 将测试数据转化为数值相同的行向量,再与训练集作差
      sqDiffMat = diffMat ** 2
      sqDistances = sqDiffMat.sum(axis=1) # axis=1 按行相加;axis=0 按列相加
      distances = sqDistances ** 0.5 # 计算欧式距离
      sortedDistIndicies = distances.argsort() # 排序并返回index,注意此处返回的是索引而不是具体值!
      # 选择距离最近的k个值
      classCount = {}
      for i in range(k):
      voteIlabel = labels[sortedDistIndicies[i]]
      classCount[voteIlabel] = classCount.get(voteIlabel, 0) + 1 # get()相当于将其赴初值0然后加1
      # 排序
      sortedClassCount = sorted(classCount.items(), key=operator.itemgetter(1), reverse=True) # items()返回一个元组,operator.itemgetter()按照value排序
      return sortedClassCount[0][0] #返回标签
      1. 定义生成训练样本集的函数
      1
      2
      3
      4
      def createDataSet():
      group = array([[1, 1.1], [1, 1], [0, 0], [0, 0.1]])
      labels = ['A', 'A', 'B', 'B']
      return group, labels
      1. 定义主函数运行代码
      1
      2
      3
      4
      5
      6
      7
      def main():
      group, labels = createDataSet()
      print(classify([0, 0], group, labels, 3))


      if __name__ == '__main__':
      main()

      完整源代码

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      #!/user/bin/env python3
      # -*- coding: utf-8 -*-

      from numpy import *
      import operator


      # 定义KNN算法分类器函数
      # 函数参数包括: (测试数据, 训练数据, 分类, k值)
      def classify(inX, dataSet, labels, k):
      dataSetSize = dataSet.shape[0] # 读取矩阵有几层数据
      diffMat = tile(inX, (dataSetSize, 1)) - dataSet # 将测试数据转化为数值相同的行向量,再与训练集作差
      sqDiffMat = diffMat ** 2
      sqDistances = sqDiffMat.sum(axis=1) # axis=1 按行相加;axis=0 按列相加
      distances = sqDistances ** 0.5 # 计算欧式距离
      sortedDistIndicies = distances.argsort() # 排序并返回index,注意此处返回的是索引而不是具体值!
      # 选择距离最近的k个值
      classCount = {}
      for i in range(k):
      voteIlabel = labels[sortedDistIndicies[i]]
      classCount[voteIlabel] = classCount.get(voteIlabel, 0) + 1 # get()相当于将其赴初值0然后加1
      # 排序
      sortedClassCount = sorted(classCount.items(), key=operator.itemgetter(1), reverse=True) # items()返回一个元组,operator.itemgetter()按照value排序
      return sortedClassCount[0][0] #返回标签


      # 定义一个生成"训练样本集"的函数,包含特征和分类信息
      def createDataSet():
      group = array([[1, 1.1], [1, 1], [0, 0], [0, 0.1]])
      labels = ['A', 'A', 'B', 'B']
      return group, labels


      def main():
      group, labels = createDataSet()
      print(classify([0, 0], group, labels, 3))


      if __name__ == '__main__':
      main()

      本文参考自 机器学习之 k-近邻(kNN)算法与 Python 实现

      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/775eb342/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/8d55d49a/index.html b/posts/8d55d49a/index.html new file mode 100644 index 000000000..cc9014f55 --- /dev/null +++ b/posts/8d55d49a/index.html @@ -0,0 +1,430 @@ +JAVA学习笔记 | 希亚的西红柿のBlog

      JAVA学习笔记

      本篇文章将作为编程语言 JAVA 的学习笔记,供以后查阅与复习使用。

      JAVA 学习笔记参考自 菜鸟 JAVA 教程

      本学习笔记以 查询和复习 为主要功能,文章内容应 短小精悍

      Java 主要特性

      查看Java 主要特性

      关于 Java 特性的介绍的文字可能比较多emm。。。主要因为我是照搬的,不过只需要简单了解,但需要特别注意的是 Java 与 C++的一个重要区别为 Java 不使用指针而是引用,这对后面理解 Java 程序有很大的帮助。

      • Java 语言是简单的:
        Java 语言的语法与 C 语言和 C++ 语言很接近,使得大多数程序员很容易学习和使用。另一方面,Java 丢弃了 C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针,而是引用。并提供了自动分配和回收内存空间,使得程序员不必为内存管理而担忧。
      • Java 语言是面向对象的:
        Java 语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为 implements)。Java 语言全面支持动态绑定,而 C++语言只对虚函数使用动态绑定。总之,Java 语言是一个纯的面向对象程序设计语言。
      • Java 语言是分布式的:
        Java 语言支持 Internet 应用的开发,在基本的 Java 应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括 URL、URLConnection、Socket、ServerSocket 等。Java 的 RMI(远程方法激活)机制也是开发分布式应用的重要手段。
      • Java 语言是健壮的:
        Java 的强类型机制、异常处理、垃圾的自动收集等是 Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。
      • Java 语言是安全的:
        Java 通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。除了 Java 语言具有的许多安全特性以外,Java 对通过网络下载的类具有一个安全防范机制(类 ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类 SecurityManager)让 Java 应用设置安全哨兵。
      • Java 语言是体系结构中立的:
        Java 程序(后缀为 java 的文件)在 Java 平台上被编译为体系结构中立的字节码格式(后缀为 class 的文件),然后可以在实现这个 Java 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。
      • Java 语言是可移植的:
        这种可移植性来源于体系结构中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可移植性,Java 编译器是用 Java 实现的,Java 的运行环境是用 ANSI C 实现的。
      • Java 语言是解释型的:
        如前所述,Java 程序在 Java 平台上被编译为字节码格式,然后可以在实现这个 Java 平台的任何系统中运行。在运行时,Java 平台中的 Java 解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
      • Java 是高性能的:
        与那些解释型的高级脚本语言相比,Java 的确是高性能的。事实上,Java 的运行速度随着 JIT(Just-In-Time)编译器技术的发展越来越接近于 C++。
      • Java 语言是多线程的:
        在 Java 语言中,线程是一种特殊的对象,它必须由 Thread 类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为 Thread(Runnable) 的构造子类将一个实现了 Runnable 接口的对象包装成一个线程,其二,从 Thread 类派生出子类并重写 run 方法,使用该子类创建的对象即为线程。值得注意的是 Thread 类已经实现了 Runnable 接口,因此,任何一个线程均有它的 run 方法,而 run 方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java 语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为 synchronized)。
      • Java 语言是动态的:
        Java 语言的设计目标之一是适应于动态变化的环境。Java 程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java 中的类有一个运行时刻的表示,能进行运行时刻的类型检查。

      Java 基础语法

      查看Java 基础语法

      此处对 Java 的基础语法只作简单的介绍,以便对 Java 语法有一个整体的印象,Java 语法的详细讲解在后面相应部分。

      一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面简要介绍下类、对象、方法和实例变量的概念。

      • 对象:对象是类的一个实例,有状态和行为。例如狗是一个类,而小狗包弟是类的一个实例。
      • 类:类是一个模板,它描述一类对象的行为和状态。
      • 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
      • 实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。

      第一个 Java 程序,分析主函数的构成

      1
      2
      3
      4
      5
      6
      7
      8
      public class HelloWorld {
      /* 第一个Java程序
      * 它将输出字符串 Hello World
      */
      public static void main(String[] args) {
      System.out.println("Hello World"); // 输出 Hello World
      }
      }

      主函数语句的构成

      编写 Java 程序时应注意一下几点:

      • 大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hellohello 是不同的。
      • 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass
      • 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
      • 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记 Java 是大小写敏感的),文件名的后缀为 .java 。(如果文件名和类名不相同则会导致编译错误)。
      • 主方法入口:所有的 Java 程序由 public static void main(String[] args) 方法开始执行。

      Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。

      关于 Java 标识符,有以下几点需要注意:

      • 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
      • 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
      • 关键字不能用作标识符
      • 标识符是大小写敏感的
      • 合法标识符举例:age、$salary、_value、__1_value
      • 非法标识符举例:123abc、-salary

      一言蔽之:即标识符可由字母,美元符,下划线和数字组成,其中数字不能放在标识符的开头。


      像其他语言一样,Java 可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:

      • 访问控制修饰符 : default, public, protected, private
      • 非访问控制修饰符 :final, abstract, static, synchronized


      Java 中主要有如下几种类型的变量

      • 局部变量
      • 类变量(静态变量)
      • 成员变量(非静态变量)


      数组是储存在堆上的对象,可以保存多个同类型变量。在后面的章节中,我们将会学到如何声明、构造以及初始化一个数组。

      Java 5.0 引入了枚举,枚举限制变量只能是预先设定好的值。使用枚举可以减少代码中的 bug。


      例如,我们为果汁店设计一个程序,它将限制果汁为小杯、中杯、大杯。这就意味着它不允许顾客点除了这三种尺寸外的果汁。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      class FreshJuice {
      enum FreshJuiceSize{ SMALL, MEDIUM , LARGE }
      FreshJuiceSize size;
      }

      public class FreshJuiceTest {
      public static void main(String[] args){
      FreshJuice juice = new FreshJuice();
      juice.size = FreshJuice.FreshJuiceSize.MEDIUM ;
      }
      }

      注意:枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。



      下面列出了 Java 关键字。这些保留字不能用于常量、变量、和任何标识符的名称。

      类别关键字说明
      访问控制private私有的
      protected受保护的
      public公共的
      default默认
      类、方法和变量修饰符abstract声明抽象
      class
      extends扩充,继承
      final最终值,不可改变的
      implements实现(接口)
      interface接口
      native本地,原生方法(非 Java 实现)
      new新,创建
      static静态
      strictfp严格,精准
      synchronized线程,同步
      transient短暂
      volatile易失
      程序控制语句break跳出循环
      case定义一个值以供 switch 选择
      continue继续
      do运行
      else否则
      for循环
      if如果
      instanceof实例
      return返回
      switch根据值选择执行
      while循环
      错误处理assert断言表达式是否为真
      catch捕捉异常
      finally有没有异常都执行
      throw抛出一个异常对象
      throws声明一个异常可能被抛出
      try捕获异常
      包相关import引入
      package
      基本类型boolean布尔型
      byte字节型
      char字符型
      double双精度浮点
      float单精度浮点
      int整型
      long长整型
      short短整型
      变量引用super父类,超类
      this本类
      void无返回值
      保留关键字goto是关键字,但不能使用
      const是关键字,但不能使用

      注意:Java 的 null 不是关键字,类似于 true 和 false,它是一个字面常量,不允许作为标识符使用。



      类似于 C/C++、Java 也支持单行以及多行注释。注释中的字符将被 Java 编译器忽略。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      public class HelloWorld {
      /* 这是第一个Java程序
      * 它将输出 Hello World
      * 这是一个多行注释的示例
      */
      public static void main(String[] args){
      // 这是单行注释的示例
      /* 这个也是单行注释的示例 */
      System.out.println("Hello World");
      }
      }


      空白行或者有注释的行,Java 编译器都会忽略掉。

      在 Java 中,一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。

      利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(sub class)。

      在 Java 中,接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。
      接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。

      区别如下图所示:
      JAVA源程序与编译型运行区别

      Java 对象和类

      查看Java 对象和类

      • 类(class):类是一个模板,它描述一类对象的行为和状态。
      • 对象(object):对象是类的一个实例,有状态和行为。

      一个类可以包含以下类型的变量:

      • 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
      • 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
      • 类变量:类变量也声明在类中,方法体之外,但必须声明为 static 类型。

      语句块:用一对{}包括起来的有着相同的变量作用域的相关一组语句的集合。


      每个类都有构造方法。如果没有显式地为类定义构造方法,Java 编译器将会为该类提供一个默认构造方法。
      在创建一个对象的时候,至少要调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法。


      下面是一个构造方法示例:

      1
      2
      3
      4
      5
      6
      7
      8
      public class Puppy {
      public Puppy() {
      }

      public Puppy(String name) {
      // 这个构造器仅有一个参数:name
      }
      }

      对象是根据类创建的。在 Java 中,使用关键字 new 来创建一个新的对象。创建对象需要以下三步:

      • 声明:声明一个对象,包括对象名称和对象类型。
      • 实例化:使用关键字 new 来创建一个对象。
      • 初始化:使用 new 创建对象时,会调用构造方法初始化对象。

      下面是一个创建对象的例子:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      public class Puppy {
      public Puppy(String name) {
      // 这个构造器仅有一个参数:name
      System.out.println("小狗的名字是 : " + name);
      }

      public static void main(String[] args) {
      // 下面的语句将创建一个Puppy对象
      Puppy myPuppy = new Puppy("tommy");
      }
      }

      输出结果为:

      1
      小狗的名字是 : tommy


      通过已创建的对象来访问成员变量和成员方法,如下所示:

      1
      2
      3
      4
      5
      6
      /* 实例化对象 */
      Object referenceVariable = new Constructor();
      /* 访问类中的变量 */
      referenceVariable.variableName;
      /* 访问类中的方法 */
      referenceVariable.methodName();


      在本节的最后部分,我们将学习源文件的声明规则。当在一个源文件中定义多个类,并且还有 import 语句和 package 语句时,要特别注意这些规则。

      • 一个源文件中只能有一个 public 类
      • 一个源文件可以有多个非 public 类
      • 源文件的名称应该和 public 类的类名保持一致。例如:源文件中 public 类的类名是 Employee,那么源文件应该命名为 Employee.java。
      • 如果一个类定义在某个包中,那么 package 语句应该在源文件的首行。
      • 如果源文件包含 import 语句,那么应该放在 package 语句和类定义之间。如果没有 package 语句,那么 import 语句应该在源文件中最前面。
      • import 语句和 package 语句对源文件中定义的所有类都有效。在同一源文件中,不能给不同的类不同的包声明。

      类有若干种访问级别,并且类也分不同的类型:抽象类和 final 类等。这些将在访问控制章节介绍。
      除了上面提到的几种类型,Java 还有一些特殊的类,如:内部类匿名类


      包主要用来对类和接口进行分类。当开发 Java 程序时,可能编写成百上千的类,因此很有必要对类和接口进行分类。


      在 Java 中,如果给出一个完整的限定名,包括包名、类名,那么 Java 编译器就可以很容易地定位到源代码或者类。import 语句就是用来提供一个合理的路径,使得编译器可以找到某个类。
      例如,下面的命令行将会命令编译器载入 java_installation/java/io 路径下的所有类

      1
      import java.io.*;

      Java 基本数据类型

      查看Java 基本数据类型

      变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。
      内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。
      Java 的两大数据类型:

      • 内置数据类型
      • 引用数据类型


      Java 语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

      1byte(字节)=8bit(比特)


      byte:

      • byte 数据类型是 8 位(1byte)、有符号的,以二进制补码表示的整数;
      • 取值范围:-128(-2^7)~127(2^7-1)
      • 默认值是 0

      short:

      • short 数据类型是 16 位(2byte)、有符号的以二进制补码表示的整数;
      • 取值范围:-32768(-2^15)~32767(2^15 - 1)
      • 默认值是 0

      int:

      • int 数据类型是 32 位(4byte)、有符号的以二进制补码表示的整数;
      • 取值范围:-2,147,483,648(-2^31)~2,147,483,647(2^31 - 1)
      • 默认值是 0

      long:

      • long 数据类型是 64 位(8byte)、有符号的以二进制补码表示的整数;
      • 取值范围:-9,223,372,036,854,775,808(-2^63)~9,223,372,036,854,775,807(2^63 -1)
      • 默认值是 0L

      float:

      • float 数据类型是单精度、32 位、符合 IEEE 754 标准的浮点数;
      • 默认值是 0.0f
      • 浮点数不能用来表示精确的值,如货币;

      double:

      • double 数据类型是双精度、64 位、符合 IEEE 754 标准的浮点数;
      • 浮点数的默认类型为 double 类型;
      • double 类型同样不能表示精确的值,如货币;
      • 默认值是 0.0d

      boolean:

      • boolean 数据类型表示一位的信息;
      • 只有两个取值:true 和 false;
      • 这种类型只作为一种标志来记录 true/false 情况;
      • 默认值是 false

      char:

      • char 类型是一个单一的 16 位 Unicode 字符;
      • 最小值是 \u0000(十进制等效值为 0)
      • 最大值是 \uffff(即为 65535)
      • char 数据类型可以储存任何字符;

      在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。

      对象、数组都是引用数据类型。

      所有引用类型的默认值都是null。

      一个引用变量可以用来引用任何与之兼容的类型。


      例子:Site site = new Site("Runoob")。


      常量在程序运行时是不能被修改的。
      在 Java 中使用 final 关键字来修饰常量,声明方式和变量类似:

      1
      2
      //虽然常量名也可以用小写,但为了便于识别,通常使用大写字母表示常量。
      final double PI = 3.1415927;

      Java 语言支持一些特殊的转义字符序列。

      符号字符含义
      \n换行 (0x0a)
      \r回车 (0x0d)
      \f换页符(0x0c)
      \b退格 (0x08)
      \0空字符 (0x0)
      \s空格 (0x20)
      \t制表符
      \"双引号
      \'单引号
      \\反斜杠
      \ddd八进制字符 (ddd)
      \uxxxx16进制Unicode字符 (xxxx)

      整型、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算。
      转换从低级到高级。

      1
      2
      3
      低  ------------------------------------>  高

      byte,short,char —> int —> long—> float —> double

      数据类型转换必须满足如下规则:

      • 不能对 boolean 类型进行类型转换。
      • 不能把对象类型转换成不相关类的对象。
      • 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
      • 转换过程中可能导致溢出或损失精度,例如:
      1
      2
      3
      int i = 128;
      byte b = (byte)i;
      // 因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢出。
      • 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入,例如:
      1
      2
      (int)23.7 == 23;
      (int)-45.89f == -45

      自动类型转换
      必须满足转换前的数据类型的位数要低于转换后的数据类型,例如: short 数据类型的位数为 16 位,就可以自动转换位数为 32 的 int 类型,同样 float 数据类型的位数为 32,可以自动转换为 64 位的 double 类型。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      public class ZiDongLeiZhuan {
      public static void main(String[] args) {
      char c1='a';//定义一个char类型
      int i1 = c1;//char自动类型转换为int
      System.out.println("char自动类型转换为int后的值等于"+i1);
      char c2 = 'A';//定义一个char类型
      int i2 = c2+1;//char 类型和 int 类型计算
      System.out.println("char类型和int计算后的值等于"+i2);
      }
      }

      运行结果为:

      1
      2
      char自动类型转换为int后的值等于97
      char类型和int计算后的值等于66

      强制类型转换

      • 条件是转换的数据类型必须是兼容的。
      • 格式:(type)value type 是要强制类型转换后的数据类型 实例:
      1
      2
      3
      4
      5
      6
      7
      public class QiangZhiZhuanHuan{
      public static void main(String[] args){
      int i1 = 123;
      byte b = (byte)i1;//强制类型转换为byte
      System.out.println("int强制类型转换为byte后的值等于"+b);
      }
      }

      运行结果:

      1
      int强制类型转换为byte后的值等于123

      隐含强制类型转换

      • 整数的默认类型是 int。
      • 小数默认是 double 类型浮点型,在定义 float 类型时必须在数字后面跟上 F 或者 f。

      Java 变量类型

      查看Java 变量类型

      在 Java 语言中,所有的变量在使用前必须声明。声明变量的基本格式如下:

      1
      type identifier [ = value][, identifier [= value] ...] ;

      以下列出了一些变量的声明实例。注意有些包含了初始化过程。

      1
      2
      int a, b, c;         // 声明三个int型整数:a、 b、c
      int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值

      Java 语言支持的变量类型有:

      • 类变量:独立于方法之外的变量,用 static 修饰。
      • 实例变量(成员变量):独立于方法之外的变量,不过没有 static 修饰。
      • 局部变量:类的方法中的变量。
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      public class Variable{
      static int allClicks=0; // 类变量

      String str="hello world"; // 实例变量

      public void method(){

      int i =0; // 局部变量

      }
      }

      1. 局部变量声明在方法、构造方法或者语句块中;
      2. 局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;
      3. 访问修饰符不能用于局部变量;
      4. 局部变量只在声明它的方法、构造方法或者语句块中可见;
      5. 局部变量是在栈上分配的;
      6. 局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。

      1. 实例变量声明在一个类中,但在方法、构造方法和语句块之外;
      2. 当一个对象被实例化之后,每个实例变量的值就跟着确定;
      3. 实例变量在对象创建的时候创建,在对象被销毁的时候销毁;
      4. 实例变量的值应该至少被一个方法、构造方法或者语句块引用,使得外部能够通过这些方式获取实例变量信息;
      5. 实例变量可以声明在使用前或者使用后;
      6. 访问修饰符可以修饰实例变量;
      7. 实例变量对于类中的方法、构造方法或者语句块是可见的。一般情况下应该把实例变量设为私有。通过使用访问修饰符可以使实例变量对子类可见;
      8. 实例变量具有默认值。数值型变量的默认值是 0,布尔型变量的默认值是 false,引用类型变量的默认值是 null。变量的值可以在声明时指定,也可以在构造方法中指定;
      9. 实例变量可以直接通过变量名访问。但在静态方法以及其他类中,就应该使用完全限定名: ObjectReference.VariableName

      1. 类变量也称为静态变量,在类中以 static 关键字声明,但必须在方法之外。
      2. 无论一个类创建了多少个对象,类只拥有类变量的一份拷贝。
      3. 静态变量除了被声明为常量外很少使用,静态变量是指声明为 public/private,final 和 static 类型的变量。静态变量初始化后不可改变。
      4. 静态变量储存在静态存储区。经常被声明为常量,很少单独使用 static 声明变量。
      5. 静态变量在第一次被访问时创建,在程序结束时销毁。
      6. 与实例变量具有相似的可见性。但为了对类的使用者可见,大多数静态变量声明为 public 类型。
      7. 默认值和实例变量相似。数值型变量默认值是 0,布尔型默认值是 false,引用类型默认值是 null。变量的值可以在声明的时候指定,也可以在构造方法中指定。此外,静态变量还可以在静态语句块中初始化。
      8. 静态变量可以通过:ClassName.VariableName 的方式访问。
      9. 类变量被声明为 public static final 类型时,类变量名称一般建议使用大写字母。如果静态变量不是 public 和 final 类型,其命名方式与实例变量以及局部变量的命名方式一致。
        实例:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      import java.io.*;

      public class Employee {
      //salary是静态的私有变量
      private static double salary;
      // DEPARTMENT是一个常量
      public static final String DEPARTMENT = "开发人员";
      public static void main(String[] args){
      salary = 10000;
      System.out.println(DEPARTMENT+"平均工资:"+salary);
      }
      }

      运行结果:

      1
      开发人员平均工资:10000.0

      Java 修饰符

      查看Java 修饰符

      Java 语言提供了很多修饰符,主要分为以下两类:

      • 访问修饰符
      • 非访问修饰符

      修饰符用来定义类、方法或者变量,通常放在语句的最前端。我们通过下面的例子来说明:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      public class ClassName {
      // ...
      }
      private boolean myFlag;
      static final double weeks = 9.5;
      protected static final int BOXWIDTH = 42;
      public static void main(String[] arguments) {
      // 方法体
      }

      Java 支持 4 种不同的访问权限:
      default & public:使用对象:类、接口、变量、方法。
      private & protected:使用对象:变量、方法。(PS:不过二者都能修饰内部类)

      修饰符当前类同一包内子孙类(同一包)子孙类(不同包)其它包
      publicYYYYY
      protectedYYYY/NN
      defaultYYYNN
      privateYNNNN

      default:接口里的变量隐式声明为:public static final,接口里的方法默认访问权限为:public
      protected:被 protected 修饰的成员对于本包和其子类可见。

      • 子类与基类在同一包中:被声明为 protected 的变量、方法和构造器能被同一个包中的任何其他类访问。
      • 子类与基类不在同一包中:那么在子类中,子类实例可以访问其从基类继承而来的 protected 方法,而不能访问基类实例的 protected 方法。
        (PS:在判断java.lang包中的clone()等方法是需要注意方法的来源,到底来自于当前包还是java.lang包。)

      请注意以下方法继承的规则:

      • 父类中声明为public的方法在子类中也必须为public
      • 父类中声明为protected的方法在子类中要么声明为protected,要么声明为public,不能声明为private
      • 父类中声明为private的方法,不能够被子类继承。

      • 静态变量:static 关键字用来声明独立于对象的静态变量,无论一个类实例化多少对象,它的静态变量只有一份拷贝。 静态变量也被称为类变量。局部变量不能被声明为 static 变量。
      • 静态方法:static 关键字用来声明独立于对象的静态方法。静态方法不能使用类的非静态变量。静态方法从参数列表得到数据,然后计算这些数据。

      对类变量和方法的访问可以直接使用classname.variablenameclassname.methodname的方式访问。

      final 变量:final 表示”最后的、最终的”含义,变量一旦赋值后,不能被重新赋值。被 final 修饰的实例变量必须显式指定初始值。final 修饰符通常和 static 修饰符一起使用来创建类常量。
      final 方法:父类中的 final 方法可以被子类继承,但是不能被子类重写。声明 final 方法的主要目的是防止该方法的内容被修改。
      final 类:final 类不能被继承,没有类能够继承 final 类的任何特性。

      抽象类:抽象类不能用来实例化对象,声明抽象类的唯一目的是为了将来对该类进行扩充。
      一个类不能同时被 abstract 和 final 修饰。如果一个类包含抽象方法,那么该类一定要声明为抽象类,否则将出现编译错误。
      抽象类可以包含抽象方法和非抽象方法。
      抽象方法:抽象方法是一种没有任何实现的方法,该方法的具体实现由子类提供。

      抽象方法不能被声明成 final 和 static。

      任何继承抽象类的子类必须实现父类的所有抽象方法,除非该子类也是抽象类。

      如果一个类包含若干个抽象方法,那么该类必须声明为抽象类。抽象类可以不包含抽象方法。

      抽象方法的声明以分号结尾,例如:public abstract sample();

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      public abstract class SuperClass{
      abstract void m(); //抽象方法
      }

      class SubClass extends SuperClass{
      //实现抽象方法
      void m(){
      .........
      }
      }

      synchronized 关键字声明的方法同一时间只能被一个线程访问。synchronized 修饰符可以应用于四个访问修饰符。

      1
      2
      3
      public synchronized void showDetails(){
      .......
      }

      序列化的对象包含被 transient 修饰的实例变量时,java 虚拟机(JVM)跳过该特定的变量。
      该修饰符包含在定义变量的语句中,用来预处理类和变量的数据类型。

      1
      2
      public transient int limit = 55;   // 不会持久化
      public int b; // 持久化

      volatile 修饰的成员变量在每次被线程访问时,都强制从共享内存中重新读取该成员变量的值。而且,当成员变量发生变化时,会强制线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。

      一个 volatile 对象引用可能是 null。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      public class MyRunnable implements Runnable
      {
      private volatile boolean active;
      public void run()
      {
      active = true;
      while (active) // 第一行
      {
      // 代码
      }
      }
      public void stop()
      {
      active = false; // 第二行
      }
      }
      /*
      通常情况下,在一个线程调用 run() 方法(在 Runnable 开启的线程),在另一个线程调用 stop() 方法。 如果 第一行 中缓冲区的 active 值被使用,那么在 第二行 的 active 值为 false 时循环不会停止。
      但是以上代码中我们使用了 volatile 修饰 active,所以该循环会停止。
      */

      Java 运算符

      查看Java 运算符

      Java 运算符方面与其他编程语言基本一致,故简单讲述。


      Java 中基本的算数运算符为+,-,*,/,%,++,--


      Java 中基本的关系运算符为==,!=,>,<,>=,<=

      操作符描述例子
      如果相对应位都是1,则结果为1,否则为0(A&B),得到12,即0000 1100
      |如果相对应位都是 0,则结果为 0,否则为 1(A | B)得到61,即 0011 1101
      ^如果相对应位值相同,则结果为0,否则为1(A ^ B)得到49,即 0011 0001
      按位取反运算符翻转操作数的每一位,即0变成1,1变成0。(〜A)得到-61,即1100 0011
      << 按位左移运算符。左操作数按位左移右操作数指定的位数。A << 2得到240,即 1111 0000
      >> 按位右移运算符。左操作数按位右移右操作数指定的位数。A >> 2得到15即 1111
      >>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。A>>>2得到15即0000 1111


      Java 支持的逻辑运算符有&&,||,!


      Java 支持的赋值运算符有=,+=,-=,*=,/=,%=,<<=,>>=,&=,^=,|=

      1
      2
      3
      4
      // 基本格式
      variable x = (expression) ? value if true : value if false
      // 实例
      b = (a == 1) ? 20 : 30;

      1
      2
      3
      4
      5
      // 基本格式
      ( Object reference variable ) instanceof (class/interface type)
      // 实例
      String name = "James";
      boolean result = name instanceof String; // 由于 name 是 String 类型,所以返回真

      Java 循环结构

      查看Java 循环结构

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      // 基本结构为
      while( 布尔表达式 ) {
      //循环内容
      }

      // 实例
      while( x < 20 ) {
      System.out.print("value of x : " + x );
      x++;
      System.out.print("\n");
      }


      do...while循环与while循环的区别在于do..while循环至少会执行一次。

      1
      2
      3
      4
      // 基本格式
      do {
      //代码语句
      }while(布尔表达式);

      注意do...while结尾有;


      for 循环语句基本格式与 C 语言完全一致。

      1
      2
      3
      4
      5
      // 实例
      for(int x = 10; x < 20; x = x+1) {
      System.out.print("value of x : " + x );
      System.out.print("\n");
      }


      通过 Java 增强 for 循环可快速便利数组元素。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      // 基本格式
      for(声明语句 : 表达式)
      {
      //代码句子
      }
      /*
      声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
      表达式:表达式是要访问的数组名,或者是返回值为数组的方法。
      */

      for(int x : numbers ){
      System.out.print( x );
      System.out.print(",");
      }


      break关键字用于跳出当前的循环语句或者switch语句。


      continue关键字用于直接进入下一次循环。

      Java 条件语句

      查看Java 条件语句

      Java 中的if-else条件语句与 C 语言中完全相同,故只做简单示例。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      public static void main(String args[]){
      int x = 30;
      int y = 10;

      if( x == 30 ){
      if( y == 10 ){
      System.out.print("X = 30 and Y = 10");
      }
      }
      }

      if( x == 10 ){
      System.out.print("Value of X is 10");
      }else if( x == 20 ){
      System.out.print("Value of X is 20");
      }else if( x == 30 ){
      System.out.print("Value of X is 30");
      }else{
      System.out.print("这是 else 语句");
      }

      Java switch case 语句

      查看Java switch case 语句

      Java 中switch case语句与 C 语言完全相同,故只做简单示例。

      switch case的语法格式如下

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      switch(expression){
      case value :
      //语句
      break; //可选
      case value :
      //语句
      break; //可选
      //你可以有任意数量的case语句
      default : //可选
      //语句
      }

      switch 语句中的变量类型可以是byte,short,int,char。从 Java SE 7 开始,支持字符串String类型,同时case标签必须是字符串常量或字面量。

      Java Number&Math 类

      查看Java Number&Math类

      Java 为每个内置数据类型提供了对应的包装类,与Number类和Object类的关系如下图。

      当内置数据类型被当作对象来使用时,编译器会把内置数据类型装箱为包装类,反之,编译器也可以把一个对象拆箱为内置类型。
      举例如下

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      public class Test {

      public static void main(String[] args) {
      Integer x = 5;
      x = x + 10;
      System.out.println(x);
      }
      }
      // 运行结果为15
      // 当 x 被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。然后,为了使x能进行加运算,所以要对x进行拆箱。


      Java 的 Math 包含了用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数。
      Math 的方法都被定义为 static 形式,通过 Math 类可以在主函数中直接调用。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      public class App {
      public static void main(String[] args) {
      System.out.println("90 度的正弦值:" + Math.sin(Math.PI / 2));
      System.out.println("0度的余弦值:" + Math.cos(0));
      System.out.println("60度的正切值:" + Math.tan(Math.PI / 3));
      System.out.println("1的反正切值: " + Math.atan(1));
      System.out.println("π/2的角度值:" + Math.toDegrees(Math.PI / 2));
      System.out.println(Math.PI);
      }
      }

      • Number 类的xxxValue()方法:将 Number 对象转换为 xxx 数据类型的值并返回。例:x.byteValue()
      • Number 类的compareTo()方法:该方法用于将 Number 对象与方法的参数进行比较,只能用于比较相同的两个数据类型。例:x.compareTo(3)。大于返回1,小于-1,等于0
      • Number 类的equals()方法:判断 Number 对象与参数是否相等。例:x.equals(y),相等返回true,否则返回false
      • Number 类的valueOf方法:返回一个 Number 对象指定的内置数据类型。例:Integer b = Integer.valueOf("444",16);444的十六进制表示。
      • parseInt():将字符串解析为 int 类型。
      • abs():返回参数的绝对值。
      • ceil():返回大于等于给定参数的最小整数,类型为双精度浮点型。
      • floor():返回小于等于给定参数的最大整数,类型为双精度浮点型。
      • rint():返回与参数最接近的整数。返回类型为 double。
      • round():表示四舍五入,数字+0.5后再向下取整。
      • min():返回两个参数中的最小值。
      • max():返回两个参数中的最大值。
      • exp():返回自然数底数 e 的参数次方。
      • log():返回参数的自然数底数的对数值。
      • pow():返回第一个参数的第二个参数次方。
      • sqrt():求参数的算数平方根。
      • sin():求指定 double 类型参数的正弦值。
      • cos():求指定 double 类型参数的余弦值。
      • tan():求指定 double 类型参数的正切值。
      • asin():求指定 double 类型参数的反正弦值。
      • acos():求指定 double 类型参数的反余弦值。
      • atan():求指定 double 类型参数的反正切值。
      • atan2():将笛卡尔坐标转变为极坐标,并返回极坐标的角度值。
      • toDegrees():将参数转化为角度。
      • toRadians():将角度转化为弧度。
      • random():返回一个随机数。

      Java Character 类

      查看 Java Character类

      同样的,内置数据类型char同样有它的包装类Character,同样也有装箱和拆箱操作。

      前面有反斜杠(\)的字符代表转义字符,它对编译器来说是有特殊含义的。
      下面列表展示了 Java 的转义序列:

      转义序列描述
      \t在文中该处插入一个tab键
      \b在文中该处插入一个后退键
      \n在文中该处换行
      \r在文中该处插入回车
      \f在文中该处插入换页符
      \'在文中该处插入单引号
      \"在文中该处插入双引号
      \\在文中该处插入反斜杠

      • isLetter():是否是一个字母。
      • isDigit():是否是一个数字字符。
      • isWhitespace():是否是一个空白字符。
      • isUpperCase():是否是大写字母。
      • isLowerCase():是否是小写字母。
      • toUpperCase():指定字母的大写形式。
      • toLowerCase():指定字母的小写形式。
      • toString():返回字符的字符串形式,字符串的长度为 1。

      Java String 类

      查看Java String 类

      字符串广泛应用 在 Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。


      String直接创建的字符串对象在公共池中,而对象创建的字符串对象在堆上:

      1
      2
      3
      4
      5
      String s1 = "Runoob";              // String 直接创建
      String s2 = "Runoob"; // String 直接创建
      String s3 = s1; // 相同引用
      String s4 = new String("Runoob"); // String 对象创建
      String s5 = new String("Runoob"); // String 对象创建

      String类有 11 种构造方法,这些方法提供不同的参数来初始化字符串。
      String类是不可更改的,一旦创建就不可修改。


      用于获取有关对象的信息的方法称为访问器方法。
      String 类的一个访问器方法是length()方法,它返回字符串对象包含的字符数。

      1
      2
      3
      4
      5
      6
      7
      public class StringDemo {
      public static void main(String args[]) {
      String site = "www.runoob.com";
      int len = site.length();
      System.out.println( "菜鸟教程网址长度 : " + len );
      }
      }


      String 类提供了连接两个字符串的方法:

      1
      string1.concat(string2);

      更常用的是使用+操作符来连接字符串,如:

      1
      "Hello," + " runoob" + "!";


      String类的format()方法能用来创建可复用的格式化字符串,而不是仅仅用来一次打印输出。

      1
      2
      3
      4
      5
      String fs;
      fs = String.format("浮点型变量的值为 " +
      "%f, 整型变量的值为 " +
      " %d, 字符串变量的值为 " +
      " %s", floatVar, intVar, stringVar);

      String类方法较多,请查看api 文档

      Java StringBuffer

      查看Java StringBuffer

      当对字符串进行修改的时候,需要使用StringBufferStringBuilder类,二者的对象能被多次修改,并且不产生新的未使用对象。

      由于StringBuilder相较于StringBuffer有速度优势,所以多数情况下建议使用StringBuilder类,然而StringBuilder的方法不是线程安全的(不能同步访问)。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      public class RunoobTest {
      public static void main(String args[]) {
      StringBuilder sb = new StringBuilder(10);
      sb.append("Runoob..");
      System.out.println(sb);
      sb.append("!");
      System.out.println(sb);
      sb.insert(8, "Java");
      System.out.println(sb);
      sb.delete(5, 8);
      System.out.println(sb);
      }
      }

      StringBuffer 类的方法:

      Java 数组

      查看Java 数组


      Java 有两种声明数组变量的语法

      1
      2
      3
      4
      // 首选
      dataType[] arrayRefVar;
      // 次选,只是符合C/C++的格式方便理解
      dataType arrayRefVar[];


      Java 使用new操作符来创建数组,数组是通过索引来访问的,索引值从0~arrayRefVar.length-1

      1
      2
      3
      4
      5
      // 模板
      dataType[] arrayRefVar = new dataType[arraySize];

      // 或者直接赋值
      dataType[] arrayRefVar = {value0, value1, ..., valuek};


      java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的。
      具有以下功能:

      • 给数组赋值:通过fill方法。
      • 对数组排序:通过sort方法,按升序。
      • 比较数组:通过equals方法比较数组中元素值是否相等。
      • 查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。

      Arrays 类还有很多方法,详情查看Java Api 文档

      Java 日期时间

      Java 日期时间

      Date类提供了两个构造函数来实例化Date对象。

      1
      2
      3
      4
      // 使用当前日期和时间来实例化对象
      Date date = new Date();
      // 接受第一个参数,该参数是从 1970 年 1 月 1 日起的毫秒数
      Date(long millisec);
      序号方法和描述
      1boolean after(Date date)
      若当调用此方法的Date对象在指定日期之后返回true,否则返回false。
      2boolean before(Date date)
      若当调用此方法的Date对象在指定日期之前返回true,否则返回false。
      3Object clone( )
      返回此对象的副本。
      4int compareTo(Date date)
      比较当调用此方法的Date对象和指定日期。两者相等时候返回0。调用对象在指定日期之前则返回负数。调用对象在指定日期之后则返回正数。
      5int compareTo(Object obj)
      若obj是Date类型则操作等同于compareTo(Date) 。否则它抛出ClassCastException。
      6boolean equals(Object date)
      当调用此方法的Date对象和指定日期相等时候返回true,否则返回false。
      7long getTime( )
      返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
      8int hashCode( )
       返回此对象的哈希码值。
      9void setTime(long time)
       
      用自1970年1月1日00:00:00 GMT以后time毫秒数设置时间和日期。
      10String toString( )
      把此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。

      1
      2
      Date date = new Date();
      System.out.println(date.toString());


      Java 使用以下三种方法来比较两个日期:

      • 使用getTime()方法获取两个日期(自 1970 年 1 月 1 日经历的毫秒数值),然后比较这两个值。
      • 使用方法before()after()equals()。例如,一个月的 12 号比 18 号早,则new Date(99, 2, 12).before(new Date (99, 2,18))返回 true。
      • 使用compareTo()方法,它是由Comparable接口定义的,Date类实现了这个接口。


      SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行。例如:

      1
      2
      3
      4
      Date dNow = new Date( );
      SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
      System.out.println("当前时间为: " + ft.format(dNow));
      // 运行结果为:当前时间为: 2018-09-06 10:16:34

      有的格式大写,有的格式小写,例如MM是月份,mm是分;HH是 24 小时制,而hh是 12 小时制。


      时间模式字符串用来指定时间格式。在此模式中,所有的 ASCII 字母被保留为模式字母,定义如下:


      Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,创建对象的过程对程序员来说是透明的,只需要使用getInstance方法创建即可。

      1
      2
      3
      4
      Calendar c = Calendar.getInstance();//默认是当前日期
      //创建一个代表2009年6月12日的Calendar对象
      Calendar c1 = Calendar.getInstance();
      c1.set(2009, 6 - 1, 12);


      Calendar 类实现了公历日历,GregorianCalendar 是 Calendar 类的一个具体实现。
      Calendar 的 getInstance()方法返回一个默认用当前的语言环境和时区初始化的 GregorianCalendar 对象。GregorianCalendar 定义了两个字段:AD 和 BC。这是代表公历定义的两个时代。

      Java 正则表达式

      Java 正则表达式

      正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个”规则字符串”,这个”规则字符串”用来表达对字符串的一种过滤逻辑。
      给定一个正则表达式和另一个字符串,我们可以达到如下的目的:

      • 给定的字符串是否符合正则表达式的过滤逻辑(称作”匹配”)。
      • 可以通过正则表达式,从字符串中获取我们想要的特定部分。

      正则表达式的特点是:

      • 灵活性、逻辑性和功能性非常的强。
      • 可以迅速地用极简单的方式达到字符串的复杂控制。

      Java 正则表达式的知识点较为繁琐,详情见Java 正则表达式

      Java 方法

      查看Java 方法



      可变参数,即参数的个数可变。方法的可变参数的声明如下所示:

      1
      typeName... parameterName

      在方法声明中,在指定参数类型后加一个省略号(…) 。
      一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。

      Java Stream, File, IO

      查看Java Stream

      Java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。
      Java.io 包中的流支持很多种格式,比如:基本类型、对象、本地化字符集等等。
      一个流可以理解为一个数据的序列。输入流表示从一个源读取数据,输出流表示向一个目标写数据。
      Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中。


      Java 的控制台输入由System.in完成。
      为了获得一个绑定到控制台的字符流,你可以把System.in包装在一个BufferedReader对象中来创建一个字符流。
      下面是创建BufferedReader的基本语法:

      1
      BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

      BufferedReader 对象创建后,我们便可以使用 read() 方法从控制台读取一个字符,或者用 readLine() 方法读取一个字符串。

      从 BufferedReader 对象读取一个字符要使用 read() 方法,它的语法如下:

      1
      int read( ) throws IOException

      每次调用 read() 方法,它从输入流读取一个字符并把该字符作为整数值返回。 当流结束的时候返回 -1。该方法抛出 IOException。


      从标准输入读取一个字符串需要使用BufferedReaderreadLine()方法。
      基本格式:

      1
      String readLine( ) throws IOException

      基本示例:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      //使用 BufferedReader 在控制台读取字符
      import java.io.*;

      public class BRReadLines {
      public static void main(String[] args) throws IOException {
      // 使用 System.in 创建 BufferedReader
      BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
      String str;
      System.out.println("Enter lines of text.");
      System.out.println("Enter 'end' to quit.");
      do {
      str = br.readLine();
      System.out.println(str);
      } while (!str.equals("end"));
      }
      }


      在此前已经介绍过,控制台的输出由print()println()完成。这些方法都由类PrintStream定义,System.out是该类对象的一个引用。
      PrintStream继承了OutputStream类,并且实现了方法write()。这样,write()也可以用来往控制台写操作。
      PrintStream定义write()的最简单格式如下所示:

      1
      void write(int byteval)

      该方法将 byteval 的低八位字节写到流中。


      如前所述,一个流被定义为一个数据序列。输入流用于从源读取数据,输出流用于向目标写数据。
      下图是一个描述输入流和输出流的类层次图。


      两种创建方法:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      InputStream f = new FileInputStream("C:/java/hello");

      File f = new File("C:/java/hello");
      InputStream in = new FileInputStream(f);

      OutputStream f = new FileOutputStream("C:/java/hello")

      File f = new File("C:/java/hello");
      OutputStream fOut = new FileOutputStream(f);

      使用实例

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      //文件名 :fileStreamTest2.java
      import java.io.*;

      public class fileStreamTest2 {
      public static void main(String[] args) throws IOException {

      File f = new File("a.txt");
      FileOutputStream fop = new FileOutputStream(f);
      // 构建FileOutputStream对象,文件不存在会自动新建

      OutputStreamWriter writer = new OutputStreamWriter(fop, "UTF-8");
      // 构建OutputStreamWriter对象,参数可以指定编码,默认为操作系统默认编码,windows上是gbk

      writer.append("中文输入");
      // 写入到缓冲区

      writer.append("\r\n");
      // 换行

      writer.append("English");
      // 刷新缓存冲,写入到文件,如果下面已经没有写入的内容了,直接close也会写入

      writer.close();
      // 关闭写入流,同时会把缓冲区内容写入文件,所以上面的注释掉

      fop.close();
      // 关闭输出流,释放系统资源

      FileInputStream fip = new FileInputStream(f);
      // 构建FileInputStream对象

      InputStreamReader reader = new InputStreamReader(fip, "UTF-8");
      // 构建InputStreamReader对象,编码与写入相同

      StringBuffer sb = new StringBuffer();
      while (reader.ready()) {
      sb.append((char) reader.read());
      // 转成char加到StringBuffer对象中
      }
      System.out.println(sb.toString());
      reader.close();
      // 关闭读取流

      fip.close();
      // 关闭输入流,释放系统资源

      }
      }

      Java Scanner 类

      查看Java Scanner 类

      使用next方法:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      import java.util.Scanner;

      public class ScannerDemo {
      public static void main(String[] args) {
      Scanner scan = new Scanner(System.in);
      // 从键盘接收数据

      // next方式接收字符串
      System.out.println("next方式接收:");
      // 判断是否还有输入
      if (scan.hasNext()) {
      String str1 = scan.next();
      System.out.println("输入的数据为:" + str1);
      }
      scan.close();
      }
      }

      输出结果:

      1
      2
      3
      next方式接收:
      runoob com
      输入的数据为:runoob

      使用nextLine方法:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      import java.util.Scanner;

      public class ScannerDemo {
      public static void main(String[] args) {
      Scanner scan = new Scanner(System.in);
      // 从键盘接收数据

      // nextLine方式接收字符串
      System.out.println("nextLine方式接收:");
      // 判断是否还有输入
      if (scan.hasNextLine()) {
      String str2 = scan.nextLine();
      System.out.println("输入的数据为:" + str2);
      }
      scan.close();
      }
      }

      输出结果为:

      1
      2
      3
      nextLine方式接收:
      runoob com
      输入的数据为:runoob com

      Java 异常处理

      查看Java 异常处理



      实例:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      // 文件名 : ExcepTest.java
      import java.io.*;
      public class ExcepTest{

      public static void main(String args[]){
      try{
      int a[] = new int[2];
      System.out.println("Access element three :" + a[3]);
      }catch(ArrayIndexOutOfBoundsException e){
      System.out.println("Exception thrown :" + e);
      }
      System.out.println("Out of the block");
      }
      }

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      import java.io.*;
      public class className
      {
      public void deposit(double amount) throws RemoteException
      {
      // Method implementation
      throw new RemoteException();
      }
      //Remainder of class definition
      }
      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/8d55d49a/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/b06cc6ec/index.html b/posts/b06cc6ec/index.html new file mode 100644 index 000000000..8dac0859f --- /dev/null +++ b/posts/b06cc6ec/index.html @@ -0,0 +1,430 @@ +数据结构绪论 | 希亚的西红柿のBlog

      数据结构绪论

      前言

      在数据结构课程结课之后,我打算重开之前一直搁置的数据结构教程书写,一方面为加深数据结构的学习印象,另一方面为以后复习做一个参考。

      本教程编程语言采用 JAVA ,文章框架参考自 HUST数据结构PPT ,源码内容参考自 尚硅谷 JAVA 数据结构教程

      绪论部分主要以定义介绍为主,掌握概念即可,复杂度方面将具体对复杂度进行分析,其中具体对时间复杂度进行分析

      数据结构的定义

      1. 数据结构本身概念的基本定义:
        数据结构是计算机中存储、组织数据的方式
      2. 数据结构这门学科的基本定义:
        数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等相关问题的学科。

      基本概念和术语

      1. 数据(data):所有能输入到计算机中并被计算机程序加工、处理的符号的总称。
        如:整数、实数、字符、声音、图象、图形等。
      2. 数据元素(data element):数据的基本单位。(元素、记录、结点、顶点)在计算机程序中通常作为一个整体进行考虑和处理。
      3. 数据项(data item):是数据的不可分割的最小单位。如:姓名、年龄等。一个数据元素可由一个或多个数据项组成。
        如: (姓名、年龄)
      4. 数据对象(data object): 由性质相同(类型相同)的数据元素组成的集合。

        数据对象是数据的一个子集。

      5. 数据结构(data structure):数据结构就是相互之间存在一种或多种特定关系的数据元素的集合。

        在任何问题中,数据元素都不是孤立存在的,而是在它们之间存在着某种关系,这种数据元素相互之间的关系称为结构(Structure)。
        按照研究角度来分,数据结构可分为:

        • 逻辑结构:面向数据之间的逻辑概念的关系。
        • 物理结构:面向数据之间的物理储存等面向计算机方面的关系。

        逻辑结构:
        数据之间的相互关系称为逻辑结构,即从逻辑关系上描述数据,与数据的存储无关,是独立于计算机的。通常分为四类基本结构:

        • 集合
        • 线性结构
        • 树形结构
        • 图(网)状结构

        物理结构:
        物理结构亦称存储结构,是数据的逻辑结构在计算机存储器内的表示(或映像),依赖于计算机。存储结构可以分为四大类:

        1. 顺序存储结构(向量,一维数组)
        2. 非顺序存储结构(链接表、链式存储结构)
        3. 索引存储结构
        4. 哈希(Hash)存储结构
        6. 数据类型(data type):是一个值的集合和定义在这个值上的一组操作的总称。数据类型可分为两类:
      • 原子类型(如:int,char,float 等)
      • 结构类型(如:数组,结构,联合体等)
      1. 抽象数据类型(Abstract Data Type):与计算机的实现无关的数据类型。

      抽象数据类型

      抽象数据类型(Abstract Data Type,ADT)是电脑科学中具有类似行为的特定类别的数据结构的数学模型;或者具有类似语义的一种或多种程序设计语言的数据类型。抽象数据类型是间接定义的,通过其上的可执行的操作以及这些操作的效果的数学约束(与可能的代价)。
      例如,抽象的堆栈(stack)由 3 个操作定义:推入 push,弹出 pop(接受约束:每次弹出返回的是最新被推入且没有被弹出的数据,也就是后进先出),查看堆栈顶端数据 peek。当分析使用堆栈算法的效率,所有这 3 个操作用时相同,无论堆栈中包含多少项数据;并且对每项数据栈使用了常量大小的存储。
      抽象数据类型(ADT)是纯粹理论实体,用于简化描述抽象算法,分类与评价数据结构,形式描述程序设计语言的类型系统。一个 ADT 可以用特定数据类型或数据结构实现,在许多程序设计语言中有许多种实现方式;或者用形式规范语言描述。ADT 常实现为模块(module):模块的接口声明了对应于 ADT 操作的例程(procedure),有时用注释描述了约束。

      算法与算法分析

      1. 算法定义:是对特定问题求解步骤的一种描述,算法是指令的有限序列,其中每一条指令表示一个或多个操作。
      2. 算法的五个特征:
        • 有穷性:在有限步(或有限时间)之后算法终止。
        • 确定性:无二义性。
        • 可行性:算法中的操作都是已经实现的基本运算执行有限次来实现的。
        • 输入:有 0 或多个输入量。
        • 输出:至少有一个输出量。
      3. 算法设计要求:

        1. 正确性:

          • 无语法错误
          • 对 n 组输入产生正确结果
          • 对特殊输入产生正确结果
          • 对所有输入产生正确结果
        2. 可读性:“算法主要是为了人的阅读与交流”

        3. 高效率与低存储量
      4. 算法效率的度量:

        • 事后统计: 收集此算法的执行时间和实际占用空间的统计资料
        • 事先分析: 求出该算法的时间复杂度
        • 将一个算法转换成程序并在计算机上执行时,其运行所需要的时间取决于下列因素:
          1. 硬件的速度。
          2. 书写程序的语言。
          3. 编译程序所生成目标代码的质量。
          4. 问题的规模。

      在各种因素都不能确定的情况下,很难比较出算法的执行时间。因此,使用执行算法的绝对时间来衡量算法的效率是不合适的。为此,将上述各种与计算机相关的软、硬件因素都确定下来,这样一个特定算法的运行工作量的大小就只依赖于问题的规模(通常用正整数 n 表示),或者说它是问题规模的函数。

      1. 算法的时间复杂度:

        1. 时间频度:一个算法中的原操作执行次数称为语句频度频度,记为 f(n)
        2. 时间复杂度:
          • T(n) = O(f(n))O(f(n))为算法的渐近时间复杂度,简称时间复杂度。大O(Order 的缩写,意指数量级)表示随问题规模 n 的增大,算法执行时间的增长率和f(n)的增长率相同。
          • 大 O 操作的本质是求f(n)的同阶无穷大。当 n 趋近于无穷大时,f(n)/g(n)的极限值为不等于零的常数,则称g(n)f(n)的同数量级函数。
      2. 算法的空间复杂度:
        一个算法在计算机存储器上所占用的存储空间,包括:

        1. 存储算法本身所占用的存储空间
        2. 算法的输入输出数据所占用的存储空间
        3. 算法在运行过程中临时占用的存储空间

      算法时间复杂度具体实例分析

      1. 常量阶

        1
        2
        3
        int s = 0;
        s++;
        System.out.println(s);
        1. 语句频度: f(n)=3
        2. 时间复杂度为:T(n)=O(f(n))=O(3)=O(1)
        3. O(1)称成为常量阶/常量数量级
      2. 线性阶

        1
        2
        3
        4
        5
        6
        7
        void sum(int a[], int n) {
        int s=0,i; // 1次
        for(i=0;i<n;i++){ // n次
        s = s + a[i]; // n次
        printf("%d",s);// 1次
        }
        }
        1. 语句频度: f(n)=1+n+n+1
        2. 时间复杂度为:T(n)=O(f(n))=O(2n+2)=O(n)
        3. O(n)称成为线性阶/线性数量级
        3. 平方阶
        1
        2
        3
        4
        5
        6
        7
        8
        9
        void sum(int n) {
        int i, j, s = 0; // 1次
        for(i = 1;i <= n; i++){ // n次
        for(j=1;j<=i;j++){ // n(n+1)/2 次
        s++; // n(n+1)/2次
        }
        System.out.println(s); // n次
        }
        }
        1. 语句频度: $ f(n)=1+n+n(n+1)+n = n^2+3n+1 $
        2. 时间复杂度为:$ T(n)=O(f(n))=O(n^2) $
        3. $ O(n^2) $ 称成为线性阶/线性数量级
      3. 复杂度比较

      常数阶对数阶线性阶线性对数阶平方阶立方阶k 次方阶指数阶
      $ O(1) $$ O(log_2 n) $$ O(n) $$ O(nlog_2 n) $$ O(n^2) $$ O(n^3) $$ O(n^k) $$ O(2^n) $

      平均时间复杂度与最坏时间复杂度

      1. 平均时间复杂度
        指所有可能的输入实例 均以等概率出现 的情况下,该算法的运行时间
      2. 最坏时间复杂度
        最坏情况下的世界复杂度称为最坏时间复杂度。

        一般讨论的时间复杂度均是最坏情况下的时间复杂度,因为:最坏情况下的时间复杂度是算法在 任何输入实例上运行时间的界限,这就保证了算法的运行时间不会比最坏情况更长

      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/b06cc6ec/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/b67f488/index.html b/posts/b67f488/index.html new file mode 100644 index 000000000..3c0a4be34 --- /dev/null +++ b/posts/b67f488/index.html @@ -0,0 +1,430 @@ +Win10/11任务栏透明美化 | 希亚的西红柿のBlog

      Win10/11任务栏透明美化

      本文主要通过 TranslucentTB 和 RoundedTB 两款轻量软件来实现 win10/11 的任务栏美化,在阅读本教程之前,请确保你的电脑安装了 Microsoft Store 并可以正常下载应用

      教程除任务栏透明化外还有进阶的边角美化教程,读者可根据需要自行选择阅读

      安装应用

      点击查看安装应用
      1. 打开 Microsoft Store(微软商店),搜索 TranslucentTB
        搜索TranslucentTB
      2. 安装 TranslucenTB
        安装TranslucentTB

      注意安装的是 TransclucentTB 原版而不是汉化版,汉化版本只适用与 win10 任务栏完全透明化

      TranslucentTB 在 2022 年 12 月的一次更新中添加了中文版本,并解决了之前版本任务栏透明顶部仍有一条细线的问题(之前此问题可配合RoundedTB解决),现阶段 TranslucentTB 支持中文并且可独立实现 Windows 任务栏透明美化

      基本设置介绍

      Normal:正常

      Opaque: 不透明

      Clear: 透明

      Acrylic: 亚克力(即毛玻璃样式)

      正常:

      不透明:

      透明:

      亚克力:

      Win11 推荐设置

      点击查看推荐设置

      返回桌面时:清晰

      开启任何窗口时:清晰

      窗口最大化时:亚克力

      开启开始菜单时:清晰

      其余三种情况可根据自己喜好自行设置,效果图我就不放了,自己设置完试试就知道了

      如果你只是追求任务栏透明的话,教程到此就可以不用看了,接下来讲任务栏的进阶美化教程

      进阶美化教程

      任务栏除透明美化外,还可以通过修改任务栏的边距和弧角来仿照 Mac 或 Linux 系统的任务栏

      点击查看进阶美化教程
      1. 打开微软商店,安装 RoundedTB
      2. 打开 RoundedTB
      3. 基本设置介绍

        Corner radius:角半径

        Top Margin: 任务栏顶部间距(Bottom Margin同理)

        Left Margin: 任务栏左侧间距(Right Margin同理)

        顶部间距设置为10:

        左侧间距设置为10:

      4. 进阶设置

        Dynamic mode:启用右下角任务栏系统托盘隐藏选项
        Show system tray:显示系统托盘
        Show system tray on hover:只在鼠标悬停时显示系统托盘
        Fill taskbar when maximised:最大化时填充任务栏,即复原
        Fill taskbar on alt + tab: atl+tab 切换程序时填充任务栏,即复原

        1. Corner Radius = 35
          Top Margin = 5
          Bottom Margin = 5
          Left Margin = 0
          Right Margin = 0

          Dynamic mode

          Show system tray

          Show system tray on hover

          预览效果
        2. Corner Radius = 35
          Top Margin = 5
          Bottom Margin = 5
          Left Margin = 0
          Right Margin = 0

          Dynamic mode

          Show system tray

          Show system tray on hover

          预览效果

        这里我也只是简单的做了个示例,具体的样式读者可自行调试获得

      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/b67f488/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/posts/d3748e5f/index.html b/posts/d3748e5f/index.html new file mode 100644 index 000000000..9285a8247 --- /dev/null +++ b/posts/d3748e5f/index.html @@ -0,0 +1,430 @@ +Windows/Ubuntu双系统安装教程 | 希亚的西红柿のBlog

      Windows/Ubuntu双系统安装教程

      本文主要记录笔者 PC 安装 Windows/Ubuntu 双系统的过程、Windows 平台下 VMware 虚拟机安装 Ubuntu 的配置过程、以及双系统 Ubuntu 卸载的注意事项。

      本文中 Ubuntu 安装环境:CPU:Intel i7-12700h,GPU:RTX 3060 laptop GPU,OS:Windows 11 Professional

      查看参考教程

      制作 Ubuntu 启动盘

      注意:制作Ubuntu启动盘将格式化 U 盘内的所有内容,U 盘内有文件请及时做好备份。

      1. 准备一个容量大于 5GB的 U 盘,此 U 盘将用来制作Ubuntu启动盘。
      2. 下载USB启动盘制作工具,前往Rufus - 轻松创建 USB 启动盘,在下载板块下载Rufus 3.21 (1.3 MB)
      3. 前往Ubuntu 官方网站下载 Ubuntu 镜像,下载Ubuntu 22.04.2 LTS版本。
      4. RufusUbuntu镜像下载完成后,打开Rufus,将下面五个选项值设置如下,其余值默认即可。
      选项
      设备所要制作成启动盘的 U 盘
      引导类型选择下载的Ubuntu镜像
      分区类型GPT
      目标系统类型UEFI(非CSM)
      文件系统FAT32

      最后点击开始,在弹出窗口界面选择以 ISO 镜像模式写入,即默认,等待写入完成。

      利用磁盘管理划分空间

      1. 打开Windows Search,搜索磁盘管理,打开创建并格式化硬盘分区。
      2. 在磁盘管理界面,找到一块剩余空间较大的一块盘,右键点击压缩卷,压缩出一块未分配的磁盘空间。

      分配给Ubuntu空间大小参考:

      • 简单学习:30GB
      • 软件开发:50GB
      • 学习 ROS:80GB+
      • AI 相关:100GB+

      准备工作

      准备工作十分重要且因机型而异,请读者严格按照教程进行操作,并记录 BIOS 设置更改项,方便回退。

      关闭 BitLocker

      BitLocker是微软出品的用于保护硬盘的加密系统,用于禁止任何非 windows 的系统或设备对硬盘进行写入操作。在Win10/11的家庭版中移除了该选项面板,改为设备加密作为替代。

      打开Windows Search搜索BitLocker将其关闭,家庭版则需要前往设置>更新与安全中关闭设备加密。

      前往 BIOS 关闭安全启动和快速启动

      不同的电脑进入 BIOS 的按键可能不同,请上网查询,一般是F2F12等按键。

      进入 BIOS 关闭安全启动(Secure Boot)和快速启动(Fast Boot)。戴尔电脑关闭安全启动参考如何启用戴尔设备的安全启动功能,另外启动模式必须调整为UEFI

      其他设置

      一般来说,此选项和Secure boot一起,在 Secure(安全)选项卡下。

      我在安装的时候没管这个似乎也没啥问题,如果有问题的再尝试关闭这项。

      进入 BIOS 关闭 Intel VMD 选项。

      目前Ubuntu 22.04.2 LTS已集成intel RST驱动,实际测试不关闭也能安装。

      PS:这玩意给重装系统带来了比较多的麻烦,WinPE 并没有集成这一驱动,导致进 PE 系统无法读盘,目前的解决办法只有进 BIOS 关闭 VMD,安装系统,打开 BIOS 中 vmd 设置,用工具注入 vmd 驱动,进系统安装 intel rts 驱动。

      安装配置

      1. 在确保上述步骤完成之后,重启电脑,按F12选择从 U 盘启动,进入 grub 界面,并且选择第一项try and install ubuntu
      2. 之后就会进入到ubuntu安装界面。
      3. 语言选择中文简体,键盘布局就默认的Chinese就好。
      4. 不要连接网络并选择最小安装。
      5. 安装类型选择其他选项
      6. 找到刚刚 Windows 上分出来的空闲空间,根据大小判断
      7. 选中选中空闲的空间,点击底下的 ➕,我们总共需要分 3 个分区,EFI系统分区根目录home目录,相关参数如下
      分区名大小新分区的类型新分区的位置用于分区描述挂载点
      EFI系统分区512MB逻辑分区空间起始位置EFI系统分区即启动分区,系统将从这里加载启动,内核文件也都放在这里-
      根目录磁盘1/2的空间多一点主分区空间起始位置Ext4 日志文件系统即根目录/
      home目录剩下的空间主分区空间起始位置Ext4 日志文件系统即用户自己的目录/home

      安装启动引导器(bootloader)的设备要选择刚刚新分配的 EFI 分区,千万别和windows的EFI分区(一般为 260MB)搞错了,不然直接凉凉。可以通过大小来区别两者(我们分配的大小会是 511MB)。

      之后点击现在安装,然后的事情就简单了,相关设置设置完之后会提示你重启,重启后会提示你移除 U 盘(installation medium),拔掉 U 盘再进入就好了。

      VMware 虚拟机安装 Ubuntu 的注意事项

      注意安装VMware Workstation前先要关闭内核隔离。

      安装 VMware Workstation 的注意事项:

      • 增强型键盘驱动程序和控制台工具添加的系统path两个选项都勾上。
      • 更新和提升计划两个别勾选。

      安装Ubuntu的注意事项:

      • 配置采用自定义。
      • 选择稍后安装操作系统。
      • 网络类型选择使用网络地址转换(NAT)(E)
      • 磁盘选择新建磁盘,将虚拟磁盘拆分成多个文件。
      • 自定义文件选择镜像。

      安装 VMware tools 的注意事项:

      • 安装完后需要重新安装vmware-tools

      Ubuntu EFI 分区的删除

      PC 安装双系统后,Ubuntu 的EFI分区无法删除,下文将讲述如何利用Windows系统下的diskpart来删除Ubuntu EFI分区和启动项。

      删除 EFI 分区

      1. 使用管理员权限打开 cmd,输入diskpart,利用list disk来查询磁盘信息。
      2. 选择安装了Ubuntu的硬盘,输入select disk 1
      3. 查看磁盘 1 下所有分区信息list partition,根据分区大小选择EFI分区,选择该分区select partition 4
      4. 删除该分区delete partition override

      修改 Windows 启动项

      如果这样结束,开机按F9F12会发现启动项里还会有Ubuntu启动项:这是因为在安装Ubuntu后,Ubuntu的引导信息也写在了win10EFI启动分区里。如果不删除的话,以后再安装Ubuntu会出现很多个Ubuntu启动项。

      1. 选择磁盘 0,即Windows系统所在的磁盘:select disk 0
      2. 查看磁盘 0 下所有分区信息:list partition
      3. 根据容量(Windows EFI分区的容量大概为 260MB)选择分区:select partition 1
      4. Windows EFI分区分配盘符:assign letter = p,此处p为盘符,注意不要与其他已存在的盘符重复。
      5. 使用管理员权限打开记事本,用记事本菜单栏里的打开来访问P盘,打开EFI文件夹,删除ubuntu文件夹。
      6. 删除EFI分区盘符Premove letter = p

      基本原理:P 盘需要管理员权限访问,采用管理员权限打开记事本后记事本就被赋予了管理员权限。

      文章作者:希亚的西红柿
      文章链接:http://refrain.cf/posts/d3748e5f/
      版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 希亚的西红柿のBlog

      评论
      \ No newline at end of file diff --git a/pwa/images/16.png b/pwa/images/16.png new file mode 100644 index 0000000000000000000000000000000000000000..19e0217f9418c2b2fdade8b8edb2faf21cd68e90 GIT binary patch literal 1424 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>E)%MttY3YC99_`?`*2;?4)97prEB?=jNW4k?rE@>){pT z;^v!@mKhS285kJntj+St%kR#IkfAE2RO zZDZ!7p<|(BWv=RKqaEw%Rg&jfoEMmvRghnppHtLaTi4#)(%#bAR9hP#6K`qh>gyY7 z@93rNVz1@zq8;iUP*?6-RUDX`SzcP!*VaC(t9$O0NmD2E)#sPg7L{hEXQw8nIs5x* zcsZEF1?a_lhql#*wAO?-Rp(TewKp^_F7Lc_aNqq~=hrn(p4QOWT-T7Ckn9~Es_txS z5a6Mk;+-Y2EUfo7T)-zkKPcSzQx*W1^z7lhP*EH^)cDCC4ZGMnpxXCThDnDB4-5IoT@M zTFhFtWX6WoGdHY0cXa2x{*I7<@bKV-^tgNnTX$ctAbTs9ytJ(3@*v3UDJ6P>H za&Z2-RlU=uHdWSiH8gd%b)7u4|H$rbH;?UUtf|x2v$ip@jSGp)DX)kw%n8X#-LPxN ztX0d~x_k07@@7w;cH-d92RF`MJ9GH{r4t5vR<@@0Azpz|38}qvW=&bKbj{L5E0-?n z>gkOPja#vF@#lAszkGP|>FvYSOBYz0*v15edN_NR)i%yrxqQ~*1^@s5pWk-C0+>A* zlf2zs{(5sxehK7o7I;J!Gcbs$f-s|Jkje+3AbW|YuPgg=PEk%p_6-^TJArznJzX3_ zBrY=wFuwl>maka3YW146>loH=*tlu)maW^i z@7TF(_ny7`81^4HcGGAU*RJ2VdF%F_yZ0FGKX~}) z@sp>|p5J)!^404%ZyDab|M2nC=PzHre*6C8=da&?uBg>5wkx{Q2MjsY64!{5l*E!$ ztK_0oAjM#0U}UUoV5w_l7-C>)Wo&F^V6JUoU}a#iP-I^$iiX_$l+3hB+!`);vONT9 z2(Jo>C<#g|S12gTPs_|nRVb+}NL9!zC`o2usF?Hk6AwpWn1;qF|I=qYp9V27D|725 za|bP0l+XkKs9qgG literal 0 HcmV?d00001 diff --git a/pwa/images/32.png b/pwa/images/32.png new file mode 100644 index 0000000000000000000000000000000000000000..db2b03dcbe27b9fea606bac6b0a08cb1ec41c8fb GIT binary patch literal 2813 zcmZ`*c{J327ygbVBZSFXel=n2G)P&phRleVV<@|9A!aaT%Mw$+!lW=N$2HT}0DyQE07$_Dz%GwUSp3joHC z0YDa8Q15(}mpE|6{=7A?|JRBeDLFhw7;ASq8USQqe;tHCDX;TLAsoWNMu;gaEqnqD z9hs5imEA*FTe{eF*|>H`du~Op?uBELS#bSNzD!?fi>sCD$UHgBJ>rCClZp{_Lufmz z8#dnqBYHR*eSeiMOYOOFp*LIo@liW4UhT@XD4hLeoPp`SRm1&fcVH4dxtZvLKBKeN zbSve6s2o3F2L@7fJLTY=ypaun*5x4UEBaEI_`FLM4=te2o!z?vccShH5Okv+zxv?Y z%95}^6PpY!sZfi=2*)tfCytwMvOzfrAmE_`-z}-@s8^RuY~wbg4vqoO zzaG)(Sb+=p2NcRy%a=$27RzqSdOdgvM80vIsqD~M#=mI0!J6n{#Gn)aR%(~Eb0Ubu z84Z&MBZY7C`HMnRK>RqrXu6tUr=0qA^pSE9=%GaW(XeHLdt)|n?L%sm*AkgXbbTXj z`MHiPmEMq)7i{O#n}+xO z6w<5oup{%Et-7^^a>d6hqFSeAWjsXCg)#NB?DG^vw!D97Zuhl?_`RnXhQgtoz2bop zQd-)xq?6{ROV8^hH{7J;{O@*!w1KQu6oe$Nqf>R=)veS^aLJgH*haQbfmu99t8Ca^ zWRn^n;GyU+IEq6Ri5Tn_B~6iEs-6^bLOGebAc^@VLjVd|e+o!B9q8!d{{$$1B{7N> z0HQNQmcy0}`k!71!ZbF6tMuoJ`vC4aUS^O&7OpQb^ z{nq?LSQ6xPIqx13ci+1hR%;97N`VF>fcto7EAV9e{^^ojJzKT;Jenyb#E9knptI87 zqrYi8N`_Jw-aJ_3q-Yqez~q$aYo0~Vx0O=bo}2tbxs1>rG4#!}1R(CNldxR9o*kbu zVTDW=hY>n*{`T3ujh^byowk#5UU@J8+_#~{ED-M+(HlXHULIT<-yzV%qDE<&>hcoy zQq@Dz3XkeZy=J6>79T&)Rz5#5A^!fX%vH%izAl~88Z8mY+5S*%$JYSc>W>5I!->V#GH5fzZ4A8;!#I%(h2bHo-yb-Msy^wrF=*KpD2`OQuB?Gj#HRf4qwy2vxkFm;-}--oar zTE2As-K$ZX`HG}kEqhmy3F_6ULxJcMiXhh0qMIuMwYwV%we71B?DeTMQbNDb2;IFc zY%P3rb?nL;qZRRd!eX~uKN*^ff*Hu-BO|n95fFM>R#OIE0!aEu0GDZoT-XRxUpTu% z%~ou3JePE2S!3e~GpHUSRy59+sh)jl8#Jbfpr~eLb&_{CX68Q=i8}NoPdP7@N*KQQ zV|JCAeR&PiVEn4i&`rh(YZqyoxuk%EYTN451(=rMMW6lU=FQluW@=+&qJKhSh(d5O zhfYr@G9UDv+8cYyU*yqVI=S2n>b6ya!4x4#Fr>Wpl)EPFo9B6XlI9adWY68lVL`8- z-M2D3GdHBX5mR(_cXQvg?B6}}#92~S)*jZ#KD2i1{pwBb+$d{yHaNk=j@q1IjM;M5%q(5sDT-{g z^>6>NA#L_T>&?Yoy4KN6p$apj1>uBjl?$3;&~Qr3t6lSt+Fz~IKz8s z10I(n_9nN?Ztnjv$zTy8C<#fUqwMu_49G;Cqj=WadeeSZ)di(gUE8Cx?s*!ouNZn& z2r@YT;it%;k(EBjr|dT-YOlS~5PEh@hCIi6(H+up?z_gyJc8B=HWb%+Z zGbcoD_vlY@w{jsZD3$edbN*|<>GT}e#dGM?WusfFwO2AFgAF~itI$%n0(rkO490Dl zTU=r_#F#%q3*x`~rQ||-)R;pM7i@9~wP7-8?N1BVa3)u$e?z_(2BdZHc_9jU8>yRuZ>iWkBS$01!5g)^DwR GQ~wLCLqXmE literal 0 HcmV?d00001 diff --git a/pwa/images/apple-touch-icon.png b/pwa/images/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c970286dece56353a9d9d2fd8cc2c462bccf4b12 GIT binary patch literal 55181 zcmV)%K#jkNP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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 o{M6V$?@%v)FAF}_=-nL|&DksaW?LKFB4hC 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

      7}c`G0^iZi@I=TOAU#P0%cvkCys+wAIza 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≤L^o# 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 Ef~CDwSO5S3 literal 0 HcmV?d00001 diff --git a/pwa/images/icons/icon-192x192.png b/pwa/images/icons/icon-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..58ae13f4cf39a0191db1fe3fd2b6918a2ea5fb7f GIT binary patch literal 83236 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

        xJa^Z-AU#z*r-bcbYb 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 TDK4_;00000NkvXXu0mjf43Jiz literal 0 HcmV?d00001 diff --git a/pwa/images/icons/icon-384x384.png b/pwa/images/icons/icon-384x384.png new file mode 100644 index 0000000000000000000000000000000000000000..c5cd2de121db110b02750b224df2d58dceca1b8c GIT binary patch literal 274849 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≤a&hD4)2^EZLX`1UUdW$cncJyWae;UW6 zX-VEo0tu)T4z9nS48MrC@TT!d?#mj2q=OpsZ?LTOD5?B>c?f&y>6L1tb*EpwI!0Dk z>@jhOI4dSZmI{JWxIW9(vmPRVT%}FVDV@@2s$ke6Q+W9xd<33*xZFK?+m(2aLe%;E z%doA%4t8@hM?SpEF8O%#bn3?oL(}z>DIj#OHko4QC&p8_?1el9niJ@&#W7;wemvdh zEwdU6Ql*QK1^cmExnf=f%Nuq1d54R;hnegVv5vIQMc`#=*xKdP_pnNwx|xV z8T9F+al=`$AZ^TSN1d+>{L=;p#>Fos1ZGHygQk$Yt07=Oo@|>U^)6a-Iyjtvb9##_7oNm*7+dGN06s_C<&$VNOFD*zA8+N2Pq121pH722wttWtEoyu2N9 zVpvur;-m3=i8!;TTs3R0`1sT0+L2nzF9oyeTdsjb@Q4=ml_XPlsdilqwX|KYu7t<0 z=C0N|)tsTtjXnBQ5_yVpH;vXCI9N0AxPG~dzng7bx0PNV2v!ulmj;#@n6z-z-#IZs z5BnT(z2%RJlUZ{qSmf6PIVGWK@sr7^UJaefQ@7UsRX@Teo1_NEm0V<95}V8L{TPGz zYUCS>ippknBY{hOML$h{qK~J}pV@x(!apOb;eJTu#Af$c^2<#Fsr!z;l@z2gTDOF0Mg)7RL9#>Ik#?F&(c)x1Tw({PKv`a*2P4UsTt2f@ic)E-?Jtl#k60@8EeJ2}520Q%d zAud*^z`qooih^{0B>}E@T<96;!4Go=YYBd=R-!?qlAykYGmxA&4&-Hu6}+=(s;jg5O1IT zAyA(b&RTb+HzHx(+}wF@WJlEiEdSEg?OD3>->k}{(WYo272g%XaQ`FKi;GR;i<2{7 zm5HDI4Uo&)`3>jiV^M9DmBm8xg2CD=YQm4+2BtVw^hnbz^YfKS*NQ2KKC_51=W;&| z#V7@pW?m*=-l&A7e^w0eb{FDmqmw|iThoX6MCiHgEFGM1lV_7IfhY;jYPKvPMi?&NqIj%}CZxb*7c(Uk#EC)39 z*Gp-pyAI+0@dN$)7o9bSJ<~5{7bW8L^Jn6U8+7IP2V?K95fe1!`{brL(SAmnw?{^G zG9?N7;`;h#%gkCUw8Jj3 zI5L4i_+dP%qh-#p!gRv9(rX;sTmPj}^J!}8+Z+cs+PHvl@XO46vpx3ML&dxNL*lP$ zZ|I~YsN@cGTscCEXNY&xUn77`LWf`hT>sib9W~&S&K3U5NJoR-u*?g6`ZcE@chNb$%yHDd}$8n8m~d08)hv1I6LD>=FF-tc=F$O$WVFl zT@F1;L&jT=JTwAdL0>tl^`YUOzdH30(sPb|BR7+`S(c>2*o?=YYTT`BZ=U2R<|-wiWHIzir0sIK(nhB4rGfP`0j09 zfzu7W!V6}#U0f;~>xX77GPBM*L{0kBo*aw*L90^8fr_+IQYu0fm=bb?uwTkTY%@GP zmhJnGh0No-^jlq`>@PTT%9u5OWr^MSHk!)!Dos~Wb2JXLbfgTKxQE8xhuXnz46!2N zA@61aPqx0kfp6|t2OjO>MM#gouG5HT4Sbx=WgOwf)FEgYQQG64h7+TGBq6w~#A}5W z@|-t_;Ul|JV9-}x0EIlyQVrPnqtF>~$@8QuB)vPKw)@WGWfjZ@+A%xF`ols{-o?e6 z&AENvbMD^ry-<~i3q@jdy{0`f@H?chcPwR~+O6EMN*omYgsKgjByf`$pJtT#>2b}O zRE^7_=v)^_ZE!%TO_kmCb`CHOc)O001OIqg*tklP1?(acs*x@GoMZddJSfA1l?ynT ze>@LD61VO7*BKw?&Ty@){xK|E7@{$UM|F$tYGu+*D$9IoKOUXIw?e&*zmU>z=z7Y= zv$x9S(1_-?I zi}}B+F=|MW_^0)3r;<8w4b^^16m z^z_#P17mhx7Nsp+O*zX*{nnkj|pyUTTr8N%uO~|k$I71xpu*|hFH<2oHi%C z%VeVtIFtM93~{Vt^C*X>^Yj`OLN8Mb8`lZ1TTez!TjULoAE);f)<%#%=L7xnZmDo{ zei`TeJA8BL4%bJ4cH-{Me^|TX_3{U#fhat_qE2ZBNJIPvTA*#bYUOs`%N6mnJ`;U0 z)y+-F$eCNGZr;9$19|CF%kaB!F4fV0Vm<0F^CR|nG1%g%N#=myQZ^oP1a0Mh-HBp_i|>iKqcb69qn=J&bsU?ODVg6>i8tzR~c+YPno z>%u(qgh;m(X?1xE`aOpF`@+~p?5CMtQL zhW94k^%-j!ziOe5l&(bKYuAlj&!4`%VeOCVzGNhAbw@w*HuwCl@mAjW2-pn~h>`4J z=+4D}?&^xBN55;fyu1bo7K<6>e@r>>vE}eGiQ9Y6i`&#pO3E{69^au4e4vBQ5?}s) zZT^2bPWU4fa`pI{NTtj%1>pabTD{qDI(3ouDkSd z%vQ(*Rq=d}QL4_{v}Nf%6C7`Vyxf+!*xocwVht*Yw8oaqJ?K-Zh78pZ1b4Do>4o@> zBF4k_%D>L=`Kq@T-2x-1ix=PbRkqTj{}ar(B|9I-0LY`jpx+i?l;j~V1HyCV?>V6W z?8uI&a@EU{e-Cz7>q%ZW!&*3xu*^j8c zuWV7Eh-~GD&B*Q<59;?KDd6Ek!|gOfYT1ha>a%YM+VeWSmrVlBIIVw8%`NB_V@JRY zuU6X!hVOt{8HV_Ht)~Eb?Rjz@^zSYw+CIwLMySKd&qo6kdvXL_*djs;Oo5){&B-t8 z)0&nhFzi!vot`>j9iqRP#sS}4B`Y4GX=iMWV3|nsCpChwjBznKwNro}#wn_elX1TJ z)#J{!lWNRYb^C&y0h)5Fc=lxQ420>4^$={NkT-5iD8vy6-2r^>6{FgU1*5RXgM~aQ z5i3x<->HW6sx$u1Yq2bGMTMpzmLTX=K7b+FeHi*Q(|IFvYX(0k_PSUQt)GJaY!q<% z$8=#q#h%gf$?`LM?BAP1$GrK>XIx%)1F>5Yoxwzkf?mJqzpS$#k@nd=7uV4qu|PWV zrzADaEcN|;I^N3{p?Yi>EvySCz3LoO2k`1{C&sr+g{#RN(#Wl>&bVK*0s7aLQM1P} zVec8o9r#gl!oU>3ERI^nQ_&Rz1lw!flvi_&7Pqm*7FZe8K?)FhzlC*iN7@2PYdn^C ziJ#!B?5+rhsMmjurxSYayLy2bQ6exu`cO&(U`6@4CjgOyq>zJq+i4eiPp-B$ri`cv zdKHF6X{N_S9q@ep>fam8Y5*_kl_4-gR>e_66r{U{F)F+V4orV7Imgxadz;jTgYqE7 z0%jepM8n3*uww^WoNXhlcjkM1anKi_D{&tQX{hJ2|GWoCBVbfJ{DU5(J_&2 zUmd}X!J=f?)vEuJY(@a*|NY0&l54t6(v@}TP`OGWc{Pj8aq`BW#NL`Yb#;4@UJe5; zeztL_%3}L;VT@V_jD^yLsGixjy@t|p_7`lLe#1LS6b zD;J7l>pN}agqh*PNA7>GU)_w1IgAizSSpH=o)SO?TK*0(&%~xgfG#fo&qEE-<-2!Az`*+Q0#UBV2oqQ z_={s^ZZHZKu3cuPlsl=%w0mnp`fVxPf8MP+_SyN%&3vjl{x=hO#KDMrgMaDeoKbOf zFTR9&c5v$mCrgu%FdkFgJKkL(|#65=Zx&XS5`yK-OxuZHEC!YFU%nvcuk1F@8G!$2k*P1_JTV!W=5G zks9h1WBDb^JaETF;`yb~5oTT@x6o>>c<Zc^L29Ugyd;`5acOY`)P(9 zc3h`JOPg@ODlOX&FK*5@#{}Y%Z%oIqFLn7AdRiAmJ}VFY=IY>0wu4_go!qOs4?y&Q zJEjjv_2_}w>xcNGEEF&ugbnn=0}MYXhz|B|)9shTl5JM_wFT4GC~ZC2-EmYYY90Ba z;2Wz&WmrVaa!hoK>%%v&;{{2Yy6@w-NktkNgNgCqf;1&Li_B3Au3n3n7lq3xYa44x zL>C|oQtYzMa<^ORm6YPmmi@pN?}lT=zzbKN$XAdwM&fQW%{PnUonUmyuy`gx%qV#1 z8EAW#M-SXk_ppkW9RC^&s`o7OchFfxNI!c;%lrRc0B$RcQu?d6Ze=V8+R1T-rUSWL z2X)$}z4$^cZ@dKh{{XH)QNJ7To2L-AZ5Y z0gMx{N6%nfKt99_STfN4L*e|P;335Q#bI#>$vP6tA7F&OI2*hB^zy^+o^|u=%?En@ z`A_brQ>i!Dg8lK#=`27Ty^oyO5(&g$a&g4k4OqtTHqgcyRzIHq>f`Tp<;HEAoSJ7) z#t^{Y6`)rVko~*v6|6W(?9$ZK0?p5_(Cr7}1qk2+oP`Md^K!8FBVD?3gH~3yB#rdh zD>=?2phOVk0PaPEbtQ-B5kSU5@OXM|k-q-=Yx?`Q-?C+B#f(`7R%jZS<@Se}+%f|2 zBC~LQRuCA2!rEjm5&T?jzy0Hh0OXb2aIyri{*6nKf{uamW# z<$qK9`9Sg+h2@Vp1X@z;!0Ml;()yglDbTQPahisaximXTLl`p?G=zXQ+FAqrnE;xc z$-^E3yZ~edfdF_2`17Rq%WD0rCxPn*CmP%)L#+R*{B7zwkq*~!jEg?6(~r8fZM6Xg z{s!hu1ko$dAhJtDmPRU7zI{cISAq}{C}a=mzDNKA@DQ6VX(3URjyzsqg=j_wDh+A& zP)s3J0st5Tm~|NdJgv)d+n+#whsJ%soww^C?|`r80Q55w*x6;P9CHaki-%?2l?1fn z(sgqsfw8r24 z=6*TR!e<}};BVheR^gfjtnF`-Vm3(q{JFoMi>%IGxJ)lU{K4-5BG}nKPm9azw6V4C zBw&CKu$T3{v=2m}M1g&aOB>WyFTj940se<y@gF*QMhaT~D!)HfhLz!TkAYAAqzO2FTwAG7`;9f3UD z`UjZm#5p$W8|qcU+|vyD8u0aafTf7qF%Jrd?Qk9dKl36qjkH);mIaE7+mLvI;txG+@S}uA3AufP-iC%(}lMzuMiD-cvAtd6^^;(^dpE^agMvERkf6YMuTtW9a z2;dFY#rg#yy#DkLI=FC|;{x9vI~Kf&M1)D23eOK@=-*dJ5#{f3e4OX`-F@_o zUcCRz0~R=fz5w&}O#$`<{?Y31JO(1L?WxImT3A@6yAPi!$(a`*Qjl5y@H+7MAH8@( z2L~5vePfSqJ$S-Wl!3l`4SbKV9=r+565_z~+awL~`R_l`&e`)`JHXY%!2?LCu|fW^ z?w|_r{5|VD1dv1zSt6}J4*ibBADjz-o5{7Z{dG(11WR{t<8et`UB zn}#Q4DeEov1eh4+Cd5m?b&$7U>0`hX(7{ zckoYrm=Y0ap_qCH>D=TAWXp98$C%l;h9cXYXz?qe2zVO87fj_MKv(tV7;^ajn*+Bkc%=$jwD*Y8E*8u@1p1m@pSBp>yzxPD@sJ6Zni>#wOfF)1YU z{u2|@&EFo<>Y7;c`4FAIC=0nX6avAh7g$`};8?)n#j8$o&)y+e8^GV!KhTR0ztjDv zFKK7zEa&+{24j!NNkcsdmCDQ;knbt1NAJPn26}&x>G2;=@aH}?Fc`ehR9Kg07_*pw z^!gF<4TX?dN^b1yl&{ORUm$=PB>Cb?R?Y`hb@1Qe zS;jcqhrxf9(@(h(oq~U9b&g8QGgMlbrr|jSe}Mbc1Oxx@M5{1B1TFOdCfHLbElg2q zX_`v-e9J}zQZK;ZzhG6rEe?po`bUx6&_s)d+AZms#01c3{bR}Pw!4slWd?bsP>_96 z;aI2?)^k#IvB*JL%pk}_vHgU^3uJ0ZCILJ@)*A$wD9a||6jPjEEyzN7Vc8J|<=wr^ zT5s-t*^;+)yQZ<5Bp+Po=j^8Y__DBW#DRO&*Va7C1_4_p0L~DSK0cDRn0l^A21?AL z(READEEZ3({F8`7NI;1Iz-?A|kbw-~qeLX<1`nWa1du!cKes3Y`8}-BTq8Wsq#^S@ zq7E<5_4C5>Ew>;2?|(Xdnhq~rrPm(;{+}598FcSGV(>)Zb$(%$_Re0U-yS_@uRuuP zpLFfkZ*=11N&5DOV?k;PpCx!GPL}-c`aQZ#1u3pUr!dj`*I(1l{yEnDK}Ij%f2J$H z+;R}lhgtgF){Pis+s4$?Jk8I+3wX|w76+Lb^pUaikw2g86L1Ge-?{&oHaGX_>W#a} zb9kqgKfHzDIk-3B9zq^l@N<+H@Liw3a-DuU`7{0XZ(q^Ref=zp8Sp1BpmTONGc>%$ zB+M~k%TyGYj2+dDA$ zqrC%KO5D>te}F%#doK$3mk)yMvpUP*KWyMXgJAE3So#wJ{s3qhO&K5o9G`Bpm%xN! zUcmA+mC){bd79f^aK?{?xztWRQcumX%cKO_Unajdl_MuFZnQ#U^!SI?~(| zP;TwXuGu66d>o+n=JTI){nlMN@zY7}lF1~XolrgQ;KV2d%EP{|@U9~N zoS+jw{X{qJ+@n{BIj}eKkw6q5kn zEs%o+j~)0!4S~!z0Iv|_Q7=eFp?MuV00wg#y9VxQpoj}IgdtFiEFJ)P%gzHCgmZa6 zgZv&hVXG`GP-StEs+cEub(IOhpRu>cB!M(gRO=!|69X1M26Fp(fCOe{Qm#IlU1cC{ z&D6AGs9K_KF)`>TqHwS>a!{f$Jw9dQsI?!h|AHot{U9Zt@l4xP4_Tm@uMJu~+;bxa zmwzI$_k=|m#F_`PNE2OG(w!ZnaJzWV#$X=JoQk6*rFP{ey7E`eu8 zFc*+dU>`?1FL?>+x;>5wOtj``X<>sNK6}mJp1>bqpTIvZ@!cRZ=LI$rs{z2Dn-l5+90s1RQ;7m`JjNqWI!0vIVtbi$%CQja&URM<@NS^o!#_zr-rm71e*}EZ@(1{1Zeh&ZiwfV% z3jXLmido1o8BGL#fcNyINIn3527dv3nM1tEjqQe7%|rq?$Kn7pk||UIi7*KW@G}{J z0OlrTG8{-h+V+79E-Xn4=jCNCxfVrH@=VQqvu+M}6V2?#!NcXI-ta2c^ zwST}KfLZ@c77Ggw{FV6ys?5(*c~aUm2-r&2O_Fr#3b?@&@D|9a1+!TFNj53r2Znz# zzeh^Ri~-n=0Bz9s&58#xfuz`ju=|-jMw^yBH% z5|}i?a;YZ;sEY(4a?}v(;K(v!LVAyY^B+8e7dn3;2#j}NkZ17Mb?l2n!C#K=$+Eh)ZfdC}?iNRh;z?QNu{fN$AxW+LF4wk!gB*SH-OiI#oIHO9ksw}uJ zUPSUVKms@J+^50e5ze$aapsJ+cgTB1S?Af<2{*R%$ZA?bOd+P+O8g)cfwdZ}mk-ah zyAl9<05_x?D1aL|`?VKRz{S%+aw_P#0Q?I6uY% zeQRMlS*_O2CgxG#x3=8^{>e-5iF^V<*mRvn0u1ON>@bsI^d2NzCwLMzxsQ?)tbd!B zCa+1b3gk3zLDqjLb{{PSj$`H!djPEf`aX0UK+XiPw9Ev+mO5ma`FY;QWU#r#0bPK9 zdvBjdYiE}Wt^nkaafA$JIS(H|kNe{O@C-l<4F2o|2=KEvFf*e;-CWQ26v+VkP6i6h zF)M`uDl|odC&9tx!u1w>^>dXRipQJ)8VxBT!w=N6h+>|8l7hVMfR|P%6o*;(YVpUJ z$;KlI$hp|YL?$PGK1I7{&$I6T>izF*^}qTc1b}__pS)npe|~nEr%y!cCLAnLcmc~xJJhJo(A@MY-F=W^0qg}S2|N!= z*(ZAa!)LG96L_Rv3QI&C5>oCt0<{`|p=N;qFd=*g0myv7)(#p#UVC{?1~Pg8 z_9*OP;FmN{-j81XG0z|I17!Qa^1rDWKe#t$98>TgQSj%Eq@3eFCBO|3pNin0tbKsL zS^rK7Z4Cq?K7jZJ+FYR08L6&_b4)b}sLA&xRli{- zw!*y8#laqdX8#EAOU!`10{09QY(w%vfVR3M9)QU-)X0G4v5ruZJ#CumHqe*=Ca1CdsujvizP1La_KTNSMRBV`tT0C@{GyZi%? zH~B{8pl<8#O}G{xQXnl=(uks#OF!-rc(0hao%+Y5;|ls+y#T2cJ$~{eP0h}8AQP7M zOIX^x{Omw}``$xZTv(%pg%t+>^{qW700d(epQaJ?{1D{b!n6T&BN& z^9`LI9P%b|F^x42_N=s$8Y!hepE^yq?>}Nv!N9$zrM^9up!GOoV|$bV+g20){6+>M*}a-zsQh9D`qXQ5t( z?q^RxJp%U%0trB78?DypuYdg;{q?VZ<=P0$JAiQ%p4OQ&+_NcmZnfWYl#0AM+l%f( zC)v7X!6gD1`T_xX5STpxoe=){S*pDd3!h~k9bVnb6S?f?y?yR(aV8NOyNzLj85DXk z_%Bm=Pr)A*z5svd^N@Z}+{M{G3H(Lt7ptEKH(^u{psB|+4&Xq}QjXL+7#VQIFjox+ zf|$^ucJ|vnb>sNO`dmIXJ3=1eL))XJbw!ko7JCy-{l~zYejb+GYA<) z!NTV_k{ac&Ce~<;^LZG|9e6L z8Vj&utcl54mWm)}$hCja(^v1P)@ah#-yY>3mw8qx%~jqR10V&WICfInCy!RD^yJlB zexJ9$|4G+w{6_W46sLgNv(rf18zxaXF{o!?=d!1eB%;-|U7BufQhjuarrS$&`<}>I z9tTk}1UYh0oR>xlvhUX2M|A)33-+F(=fGs~J}xb`pzDD!xL1&FTdd%DB!LHyX|z(O zufF~}ojTP+_3;*ew`eYR{Kp@;UlOW`(K-X^yuGCnw({d|wxjAgwi0I#V4Q}UlHcCx z0nFtRkktX)QvyJ*{^u$K0r0J%n@!rz!QTB4?A;d0=Z1j)D2mH2tkCFLE%d_llU(6D zn}PoqEr0H^tDSaL|L2}c8V_L4fb;ex&M~MYz*AphOoY*vfG-aaB8Gl1G4p3o+r0Z6 z95 zbbna?47ixx3;F&tGc>-j!Sw|-NK7gP`OulXaBeO^B+J_+83pZbpr7TaTfjHUNu14M zK>ww6^ExEZEZ}a%WB_}}AN8(!evAij+Gxiy^9UM#Uzw2%jpuZFO8gUO3ohyF#4}}WDgi(O5+V>V-P}H)mDMe3x2Ngw(lrK9 zkjUFlf70DYPr0@LR=sz-WT^+>KhCA)=rH=-v18owc?_880ceteQQ^jdTu-(&RbpEqnY+LH7m!+IfQj14Zo)z*K?kCxkh3LAOWP~KIDn&zyJORYERD6 zjXMvxN#CXGzjC9#Mr(rl`UmLP@#EaN_50&Lig$p*GLS*Y4ohtzLX*G(0d)5O!h8TM z0bx@3T@L8_yubi{1bHpX2gi6K7wG-l-rivhByv^2AH97>(PwCHk;(vnJdZ8^8PVqr z{3p>@tL>RR!$|RL$?to(*`Q%~FU{onIw7z$giI+^?`o`rIo!}S90KE3hLGh+^lvb0Fi^#1K^RY{{F57W=0f}-IcP3 ztkpzlQ*GCH^E#;!kZR^}Cyz9>rA=>Hj2Dd2k@f)q{y;nc8@%sqzE1}{0hWLi8rh>-!K&sd^ z@UMSa+mGv--YD1Bx)VSI|8d=BBEYZ|PXM~Mj8F@II9m924qunN0zSvBAGLtk6KF9I z96R|F&CD;dB@3Cyz@Nv5KUl^A0RVvZ&t9bI>3LdR-J;E{0|nkh0-L(MwS7Pfi)%DF zF-tdY-=jC5|G^-Mpzzfjx9Q}`Q>>M2& zUgT>L`~_f6O)gP=be1+Y57+})cTdFDgOzXK@39J9Hxk$=5I}2-+SN^}l_zPcy-0WO zKTlqO0<;0XjJWD=_&awYz4P!19bUdh3(ISK9;7so>vx#IUZo-5oW2nSUfRyt_5O8k?||Muqvu8QXW3_afkrmw8T?0J z`OgQ-f3lr}KY$+@J}Lq6?_6tY*x<2DAeMoI00g)-;0-T8f!<^xUb5D&8Brh%CIFq_ zh`Y7g421PG&8Y`@Q@~ebAR8$_Y~ag{`fxq&g_KS60L)X!Mv4*SGEy;()Pl}7Z?F}0 zg}H=vVEzIWh%tGgm`%w|;s`9uPF%>u@e_CA3AEKP*r`vMV6U>qEj@fxRn8UgIn=GLBi1p7(?`+OWN z7G`Ic>EY9tOacH$0Qv60Ir{$CG0r+dkryn~{=p&I+B@KP!FeD5{CC#m+OVD+_U$XGkqp)YFXAz~RVk`nA;MqY#CHn5W z?|Hrgw8ud38t38otB;b+g=TYCZ``7F^xJB-si(IukU@`5@*_oLo^b{OXy*ig?39L$9b^kk1^9=7-)_dG5%bz{9>dil%Ty(!PXj6DA>SpFjW2>8SDpP~|i zzR2O{K(3^80{o@HVlr}4HkAC9<{cm`0{UOqelj`sACrAkD0j<$Q2U@v;< zfFvO=84=iA-y;7cz)u71x|s~r8{qTU>c?|J%kN6jQ%I7L%R%lT=(1RK9O4He?F0|O zipF^I8f__!v{HOdfPbSw{X9ShXmF>K+*GZiIC&9FD3vif0^p5659=S>0DK3227ft^ zfqG|`f!TBRc_`q!2Y_wMmIBmtFp1o(4FD1pD~{uv=i zhEJ){Vy_28fZ!_DAqD(&>J**3c$wb){!a&ecmW`RHyFJBJH7k;PX;sq|Mb)xZEWl^ zz%%e~E4X6VI=q3c1J11Ywj8HUpW)UKh`l^{^TqP!r1IYZ%n6Ehv(f@5u1})|b1&=;4l%|muV+BbrvS6}FN}T~? zt1sYfuKum&!{!mNdALp5!kotZnc)El`18KHPIki+-s@mOko(~KI5K(mEXy+>00H^4 z)Yk2|4`VW{H@CM`o&mt8)5Yij03ZNKL_t(5_|GM8fR|jzCA9$92FSx3NPTz&OwsCr zJ%z=kltHwMz%#so1?>lvA`rAQEJ{o5ZN_k{kR zu1)m{?g0eJ$AY_(;bZ5HX9MS#0Q_wI2>9bickHL1XnJm*K?K_W>rV#$Sn2>NeEOY% z_uk{@w79rV(^K;TvhV;H^u^kjB|ug81Dv5y2<%BpB>X1~N&hyTs()MDQT2@NVzy1=jn|^z=$m+M5r-TL>`)E$ZW1jSs)m z<5zF#+OM~1erbhzFw@(2-_lWJUJVW~2r~Fjw`h1)2>@FBW=I270vP*sgR6mA27;B3 z0nlgQPbr>U*~^lTHg&_q?cCa7Ui$j*#4FQWjf**mhq;?)nK^OyisLIQax5g6FBq@%!RgZJ|sAv$Xt{=XV68XU(!Od)h%4KuH~ z^&e-=^VDwh{F9W##d+G;&x6MX>^}dmfNz@TTw11koFHTkF_1&bL91%63qYJAd?q70 zbT;i6HR{8_Y-cv>nGX;`&Bu|6b0C0oJSKI35NuyuFCK%XjzF!;KAi7wOSS%aTSx#_ zeRW|m15MjuE-l3% zwDx!67!NX-9z3Sit!?VZ%xm9&M@NtUKqrR>xbF>GC7?34v^t#=z@-(oshukMu$8Qqvh`Easa|DD*HC;HNgx#B@w&G{*U6D$#da_R zjVLk#Khh5HPaf)VCWAvJ1IhDOD_^U4F}s(Lf-aQ+F#RH80M^35t4c%8 zykyvjmCe&Ia&=^Ce3tdWiLDy|zy)ibfjw(iAoq6At_SN~*NelhpukeKLh-+uG^pf z!4~^3x9-vG^di>)Ajq48tCE0v0JhJMZSGUMInDip5KDOf`=3lMAcKSR7pZ?>i1rUJ z(rW~YKZ0=nK{xL{+7jARL?a2{ zyp4UDo!p_;*ao#LHnwPNXoh-D4bX*4H#ioO13re3mJz$w?iITo1qc3U*6RqFbLr4DrfOP(>D@8YY6rTOzX#SmV7XM z<1$|>lFwWKfAsMe;D_YIg;xN7&F&GoMgZF9)K=}?!Pv6gG!?Ws^{Ow6aRUw@3mFIz z*u4$3!@SkN7EPo`B-GNH1KXB;vechQdzmJwWh(M)df#4I+`kC=5!FwQS6Q)#43SFYb; znFQ~3`RcE1$zHnp3xofMfBYNW`t2bN^o>ztWQ7)Ic7tVa&q)LXGC)Dt*5)ql?;OzO z!%KAK{AD_~dyaOM7}i3-dSzvgW?S2|w{)H!{&Jrl-ndVP8<%LVu|+3;?59R!iX|QM z0wh>&;BUa50_a$GqA+6MAw(f$AyN#>F&aFUI6|nxR+4~M;2s2nxW*MiFq+dt?>?Z? z$QXT#pzz8jJ$kM^om6rXuR_Vh;}5Yi`4eXmJ^%2DZa;ZStNVM@H&𝔳pPQLuaUW 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%0Dd-w0)`#+xJ$)C^h=T775l?(X#mmgT)ClVk} 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

        ZSyQDYcMUPJ&y1ndE% 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

        ~pi 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 BuAKk? literal 0 HcmV?d00001 diff --git a/pwa/images/icons/icon-512x512.png b/pwa/images/icons/icon-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..4e0fd0dde4c647b1c30459c7ca54733d7a944451 GIT binary patch literal 389026 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]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 FV1g&pjHv(s literal 0 HcmV?d00001 diff --git a/pwa/images/icons/icon-72x72.png b/pwa/images/icons/icon-72x72.png new file mode 100644 index 0000000000000000000000000000000000000000..8994342b3fce37593f97101d0fc3a95d3706448d GIT binary patch literal 14979 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 N002ovPDHLkV1mKRo09+l literal 0 HcmV?d00001 diff --git a/pwa/images/icons/icon-96x96.png b/pwa/images/icons/icon-96x96.png new file mode 100644 index 0000000000000000000000000000000000000000..7ddfd0ca4bb8118ea35f05cba030a80075061c7f GIT binary patch literal 24978 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 h) + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pwa/manifest.json b/pwa/manifest.json new file mode 100644 index 000000000..13073e9ec --- /dev/null +++ b/pwa/manifest.json @@ -0,0 +1 @@ +{"name":"希亚的西红柿のBlog","short_name":"Nova's Blog","theme_color":"#6dc1f7","background_color":"#6dc1f7","display":"standalone","scope":"/","start_url":"/","icons":[{"src":"images/icons/icon-72x72.png","sizes":"72x72","type":"image/png"},{"src":"images/icons/icon-96x96.png","sizes":"96x96","type":"image/png"},{"src":"images/icons/icon-128x128.png","sizes":"128x128","type":"image/png"},{"src":"images/icons/icon-144x144.png","sizes":"144x144","type":"image/png"},{"src":"images/icons/icon-152x152.png","sizes":"152x152","type":"image/png"},{"src":"images/icons/icon-192x192.png","sizes":"192x192","type":"image/png"},{"src":"images/icons/icon-384x384.png","sizes":"384x384","type":"image/png"},{"src":"images/icons/icon-512x512.png","sizes":"512x512","type":"image/png"}]} \ No newline at end of file diff --git a/service-worker.js b/service-worker.js new file mode 100644 index 000000000..ca2ce29c9 --- /dev/null +++ b/service-worker.js @@ -0,0 +1 @@ +if(!self.define){let e,i={};const a=(a,d)=>(a=new URL(a+".js",d).href,i[a]||new Promise((i=>{if("document"in self){const e=document.createElement("script");e.src=a,e.onload=i,document.head.appendChild(e)}else e=a,importScripts(a),i()})).then((()=>{let e=i[a];if(!e)throw new Error(`Module ${a} didn’t register its module`);return e})));self.define=(d,c)=>{const s=e||("document"in self?document.currentScript.src:"")||location.href;if(i[s])return;let r={};const n=e=>a(e,s),f={module:{uri:s},exports:r,require:n};i[s]=Promise.all(d.map((e=>f[e]||n(e)))).then((e=>(c(...e),r)))}}define(["./workbox-f2630e7e"],(function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"404.html",revision:"c2a4dc9fd4ba9af6d3b363b83a404c9b"},{url:"about/index.html",revision:"be6c5e4f5e028c52fd0b3d174fd834d6"},{url:"archives/2022/07/index.html",revision:"d5ae24d4dac6720cec5f5621713cf2b4"},{url:"archives/2022/08/index.html",revision:"a1c21e1f9552791171585259b55f242e"},{url:"archives/2022/09/index.html",revision:"ec8d4da8c7c2f89a4c4561e4f592ebf2"},{url:"archives/2022/12/index.html",revision:"520c620ac081df87112130e7fe280364"},{url:"archives/2022/index.html",revision:"5fdce1eece76789356a99434008aa4db"},{url:"archives/2022/page/2/index.html",revision:"16fb6a1d6403ef39f8c7d604def3389e"},{url:"archives/2023/01/index.html",revision:"b5cdbcaddc04c38289f3941bdf9b3262"},{url:"archives/2023/03/index.html",revision:"eec44700f44404ad30c3a46b631b4e0a"},{url:"archives/2023/index.html",revision:"11af7d2daf1f3d589f6858c788e28a7c"},{url:"archives/index.html",revision:"2b41c43c9fc85300295b1da3abb0b21a"},{url:"archives/page/2/index.html",revision:"8b0537d07cc2abd5191efd39b1e9cef8"},{url:"categories/DNS/index.html",revision:"ea28b2738cf6d416d5ccba688e3fa259"},{url:"categories/index.html",revision:"44b0ce32b762e37e7839f0915e4901b1"},{url:"categories/Java/index.html",revision:"9ba3d3145e7f7c789715326c64663988"},{url:"categories/数据结构/index.html",revision:"26f8ba6575a397cb4636be96bab7e770"},{url:"categories/机器学习/index.html",revision:"31a758fa439e091b146f53da988af1b7"},{url:"categories/百宝箱/index.html",revision:"15dc69546cf14d8ba07d417888d429db"},{url:"comments/index.html",revision:"e826194ad0a0232d6e279b7922238d47"},{url:"css/custom.css",revision:"313034157bb0232f4457e132c4d3ebec"},{url:"css/index.css",revision:"80089a3e79ce22dec3e33bb06cc496c9"},{url:"css/var.css",revision:"d41d8cd98f00b204e9800998ecf8427e"},{url:"drive/index.html",revision:"c8e80ee5c4febed7667395201df2826a"},{url:"img/404.jpg",revision:"4ef3cfb882b6dd4128da4c8745e9a507"},{url:"img/favicon.png",revision:"7a8c47cb5a2149c1a1af21e90ecd9ca7"},{url:"img/friend_404.gif",revision:"68af0be9d22722e74665ef44dd532ba8"},{url:"index.html",revision:"c8d3ccb52c9a43ad657b7d3269dfc789"},{url:"js/hideLrc.js",revision:"3a66bb6874a4e2cf19da266b21639f0f"},{url:"js/main.js",revision:"c1abc98ff6aa69f598f43b8604fb7b3e"},{url:"js/search/algolia.js",revision:"5e2a2c65f28bddbb3d94529453e91716"},{url:"js/search/local-search.js",revision:"2e3ff3d156bb208f752d95375ebca557"},{url:"js/tw_cn.js",revision:"fd395fc3b4df9c7da17e730d173cfbea"},{url:"js/utils.js",revision:"2fd35bd141fd541a188ef52dd30108d5"},{url:"link/index.html",revision:"924db4f166acab8bfbe3ea8348317613"},{url:"music/index.html",revision:"923c1415ab21b643e1f70d059a39a414"},{url:"page/2/index.html",revision:"593e3322f979e731b1b2596e836777bc"},{url:"posts/170bc017/index.html",revision:"f7a2538e422cff9ebb705ee3f09aca6b"},{url:"posts/20642/index.html",revision:"acfb91ba6ed28cc1e29f3230b0952c9a"},{url:"posts/355699d5/index.html",revision:"e79685473a7856a046b806b93258fc47"},{url:"posts/40f24371/index.html",revision:"1e964ccc0e93fc6c4573d119a9e24a5f"},{url:"posts/47341/index.html",revision:"d222d4996f3278775f55fa64dd81da5b"},{url:"posts/54c08517/index.html",revision:"db67fbe1915c88cb19e13468a56b8afe"},{url:"posts/6534ce06/index.html",revision:"7e56b6a0bb3a9771b8c5d03d15b090df"},{url:"posts/75378e04/index.html",revision:"02913043f0d942ed162b8ccf0edf49ee"},{url:"posts/775eb342/index.html",revision:"ce1075d689622d81bce5f711de1fad44"},{url:"posts/8d55d49a/index.html",revision:"ecd2aabe691a1cadadde344b02ac164f"},{url:"posts/b06cc6ec/index.html",revision:"2ebe92d720b48ff38d43013e826d394e"},{url:"posts/b67f488/index.html",revision:"e532d9b805698a8add7c2ee35cfe2e67"},{url:"posts/d3748e5f/index.html",revision:"f81fab5fd1774affdcfcd002836b4f9a"},{url:"pwa/images/16.png",revision:"a371ff1dcf1e58c4b363b4d15a2c4b32"},{url:"pwa/images/32.png",revision:"eca9d7c23cc8aac4e5b5bef7b3040909"},{url:"pwa/images/apple-touch-icon.png",revision:"97191e0537f84803438df9c37b031107"},{url:"pwa/images/icons/icon-128x128.png",revision:"5132c926d5b019070f0228c53b69d5bf"},{url:"pwa/images/icons/icon-144x144.png",revision:"713d19f7487337b6d78b932f43082ea1"},{url:"pwa/images/icons/icon-152x152.png",revision:"24a0aab809179697db91023821046a16"},{url:"pwa/images/icons/icon-192x192.png",revision:"eea0e91aec11d2e735bd688bb55757e3"},{url:"pwa/images/icons/icon-384x384.png",revision:"9ab4db6f3c16121ee01506cadc687c95"},{url:"pwa/images/icons/icon-512x512.png",revision:"e5b5cde78f88b6ff2215275a7a4eebea"},{url:"pwa/images/icons/icon-72x72.png",revision:"1db80c3d1043caecc6f56a6f0f3aa0b1"},{url:"pwa/images/icons/icon-96x96.png",revision:"f69aa52fa6e21c6cfb9fa2e06d9079e3"},{url:"pwa/images/safari-pinned-tab.svg",revision:"c3fe0ab7adb65a2a631d99aced3894ca"},{url:"tags/cloudflare/index.html",revision:"40893a1f397a475750aa972b8e96f80c"},{url:"tags/index.html",revision:"871041145de9ed46441bfd07fb96189d"},{url:"tags/Java/index.html",revision:"7aa893f31b7783fd14cddc32f43151ba"},{url:"tags/k-means/index.html",revision:"438862c1f0361c22e87786be4e25a03e"},{url:"tags/kNN算法/index.html",revision:"2507f7de63468b78dc9c838cf8ac1d55"},{url:"tags/Numpy/index.html",revision:"d57dee216281df93354ae58c74daaf06"},{url:"tags/python/index.html",revision:"07ef77cb3b63b259e965c3dd3b2a1d88"},{url:"tags/Python/index.html",revision:"a947926f6fcc23a44fb8b5dbf74739f3"},{url:"tags/Ubuntu/index.html",revision:"dfca93495ade2af593cf5a253f765e86"},{url:"tags/Windows/index.html",revision:"2d598c945d0ca9bbedfac3024c042206"},{url:"tags/任务栏/index.html",revision:"183a89c64a5ee31e472a9fb15bc069ec"},{url:"tags/决策树/index.html",revision:"9d8f92a0f5df6d59ab25cda46bd1c45b"},{url:"tags/域名/index.html",revision:"efb0d52a52546c722cd825f5c9670d30"},{url:"tags/数据结构/index.html",revision:"1fb4df7493e6cf362042e7ae8ddc5055"},{url:"tags/机器学习/index.html",revision:"27c53cb0717b1df365afb17a4772fcf1"},{url:"tags/栈/index.html",revision:"b095d99f88f9fa28dc0d2419707634f2"},{url:"tags/线性回归/index.html",revision:"982b20a61e1ab01bbd71bef636bead1f"},{url:"tags/线性表/index.html",revision:"573699d4a589e182379835a999f42f9e"},{url:"tags/绪论/index.html",revision:"cd3cf1a1c77860726e7325a2a92de5ce"},{url:"tags/编程学习/index.html",revision:"4265d2c0c61897a62329155706d44cc8"},{url:"tags/美化/index.html",revision:"36c1cd625bddbaf354b3387a08e35930"},{url:"tags/虚拟机/index.html",revision:"d91d916ab1759a6eeebbeb56b46f3d5b"},{url:"tags/逻辑回归/index.html",revision:"29e940740ade0e09758d01a4bc4fbbfa"},{url:"tags/队列/index.html",revision:"e7c574fe38671dcc56dc89500f547afd"}],{}),e.registerRoute(/^https:\/\/npm\.elemecdn\.com\/.*/,new e.CacheFirst,"GET"),e.registerRoute(/^https:\/\/cdn\.jsdelivr\.com\/.*/,new e.CacheFirst,"GET"),e.registerRoute(/^https:\/\/unpkg\.com\/.*/,new e.CacheFirst,"GET")})); \ No newline at end of file diff --git a/service-worker.js.map b/service-worker.js.map new file mode 100644 index 000000000..2bf5a3a89 --- /dev/null +++ b/service-worker.js.map @@ -0,0 +1 @@ +{"version":3,"file":"service-worker.js","sources":["../../../../../tmp/e712247b986c43d8982cb76ec9855f64/service-worker.js"],"sourcesContent":["import {registerRoute as workbox_routing_registerRoute} from '/home/runner/work/HEXO/HEXO/node_modules/workbox-routing/registerRoute.mjs';\nimport {CacheFirst as workbox_strategies_CacheFirst} from '/home/runner/work/HEXO/HEXO/node_modules/workbox-strategies/CacheFirst.mjs';\nimport {clientsClaim as workbox_core_clientsClaim} from '/home/runner/work/HEXO/HEXO/node_modules/workbox-core/clientsClaim.mjs';\nimport {precacheAndRoute as workbox_precaching_precacheAndRoute} from '/home/runner/work/HEXO/HEXO/node_modules/workbox-precaching/precacheAndRoute.mjs';/**\n * Welcome to your Workbox-powered service worker!\n *\n * You'll need to register this file in your web app.\n * See https://goo.gl/nhQhGp\n *\n * The rest of the code is auto-generated. Please don't update this file\n * directly; instead, make changes to your Workbox build configuration\n * and re-run your build process.\n * See https://goo.gl/2aRDsh\n */\n\n\n\n\n\n\n\n\nself.skipWaiting();\n\nworkbox_core_clientsClaim();\n\n\n/**\n * The precacheAndRoute() method efficiently caches and responds to\n * requests for URLs in the manifest.\n * See https://goo.gl/S9QRab\n */\nworkbox_precaching_precacheAndRoute([\n {\n \"url\": \"404.html\",\n \"revision\": \"c2a4dc9fd4ba9af6d3b363b83a404c9b\"\n },\n {\n \"url\": \"about/index.html\",\n \"revision\": \"be6c5e4f5e028c52fd0b3d174fd834d6\"\n },\n {\n \"url\": \"archives/2022/07/index.html\",\n \"revision\": \"d5ae24d4dac6720cec5f5621713cf2b4\"\n },\n {\n \"url\": \"archives/2022/08/index.html\",\n \"revision\": \"a1c21e1f9552791171585259b55f242e\"\n },\n {\n \"url\": \"archives/2022/09/index.html\",\n \"revision\": \"ec8d4da8c7c2f89a4c4561e4f592ebf2\"\n },\n {\n \"url\": \"archives/2022/12/index.html\",\n \"revision\": \"520c620ac081df87112130e7fe280364\"\n },\n {\n \"url\": \"archives/2022/index.html\",\n \"revision\": \"5fdce1eece76789356a99434008aa4db\"\n },\n {\n \"url\": \"archives/2022/page/2/index.html\",\n \"revision\": \"16fb6a1d6403ef39f8c7d604def3389e\"\n },\n {\n \"url\": \"archives/2023/01/index.html\",\n \"revision\": \"b5cdbcaddc04c38289f3941bdf9b3262\"\n },\n {\n \"url\": \"archives/2023/03/index.html\",\n \"revision\": \"eec44700f44404ad30c3a46b631b4e0a\"\n },\n {\n \"url\": \"archives/2023/index.html\",\n \"revision\": \"11af7d2daf1f3d589f6858c788e28a7c\"\n },\n {\n \"url\": \"archives/index.html\",\n \"revision\": \"2b41c43c9fc85300295b1da3abb0b21a\"\n },\n {\n \"url\": \"archives/page/2/index.html\",\n \"revision\": \"8b0537d07cc2abd5191efd39b1e9cef8\"\n },\n {\n \"url\": \"categories/DNS/index.html\",\n \"revision\": \"ea28b2738cf6d416d5ccba688e3fa259\"\n },\n {\n \"url\": \"categories/index.html\",\n \"revision\": \"44b0ce32b762e37e7839f0915e4901b1\"\n },\n {\n \"url\": \"categories/Java/index.html\",\n \"revision\": \"9ba3d3145e7f7c789715326c64663988\"\n },\n {\n \"url\": \"categories/数据结构/index.html\",\n \"revision\": \"26f8ba6575a397cb4636be96bab7e770\"\n },\n {\n \"url\": \"categories/机器学习/index.html\",\n \"revision\": \"31a758fa439e091b146f53da988af1b7\"\n },\n {\n \"url\": \"categories/百宝箱/index.html\",\n \"revision\": \"15dc69546cf14d8ba07d417888d429db\"\n },\n {\n \"url\": \"comments/index.html\",\n \"revision\": \"e826194ad0a0232d6e279b7922238d47\"\n },\n {\n \"url\": \"css/custom.css\",\n \"revision\": \"313034157bb0232f4457e132c4d3ebec\"\n },\n {\n \"url\": \"css/index.css\",\n \"revision\": \"80089a3e79ce22dec3e33bb06cc496c9\"\n },\n {\n \"url\": \"css/var.css\",\n \"revision\": \"d41d8cd98f00b204e9800998ecf8427e\"\n },\n {\n \"url\": \"drive/index.html\",\n \"revision\": \"c8e80ee5c4febed7667395201df2826a\"\n },\n {\n \"url\": \"img/404.jpg\",\n \"revision\": \"4ef3cfb882b6dd4128da4c8745e9a507\"\n },\n {\n \"url\": \"img/favicon.png\",\n \"revision\": \"7a8c47cb5a2149c1a1af21e90ecd9ca7\"\n },\n {\n \"url\": \"img/friend_404.gif\",\n \"revision\": \"68af0be9d22722e74665ef44dd532ba8\"\n },\n {\n \"url\": \"index.html\",\n \"revision\": \"c8d3ccb52c9a43ad657b7d3269dfc789\"\n },\n {\n \"url\": \"js/hideLrc.js\",\n \"revision\": \"3a66bb6874a4e2cf19da266b21639f0f\"\n },\n {\n \"url\": \"js/main.js\",\n \"revision\": \"c1abc98ff6aa69f598f43b8604fb7b3e\"\n },\n {\n \"url\": \"js/search/algolia.js\",\n \"revision\": \"5e2a2c65f28bddbb3d94529453e91716\"\n },\n {\n \"url\": \"js/search/local-search.js\",\n \"revision\": \"2e3ff3d156bb208f752d95375ebca557\"\n },\n {\n \"url\": \"js/tw_cn.js\",\n \"revision\": \"fd395fc3b4df9c7da17e730d173cfbea\"\n },\n {\n \"url\": \"js/utils.js\",\n \"revision\": \"2fd35bd141fd541a188ef52dd30108d5\"\n },\n {\n \"url\": \"link/index.html\",\n \"revision\": \"924db4f166acab8bfbe3ea8348317613\"\n },\n {\n \"url\": \"music/index.html\",\n \"revision\": \"923c1415ab21b643e1f70d059a39a414\"\n },\n {\n \"url\": \"page/2/index.html\",\n \"revision\": \"593e3322f979e731b1b2596e836777bc\"\n },\n {\n \"url\": \"posts/170bc017/index.html\",\n \"revision\": \"f7a2538e422cff9ebb705ee3f09aca6b\"\n },\n {\n \"url\": \"posts/20642/index.html\",\n \"revision\": \"acfb91ba6ed28cc1e29f3230b0952c9a\"\n },\n {\n \"url\": \"posts/355699d5/index.html\",\n \"revision\": \"e79685473a7856a046b806b93258fc47\"\n },\n {\n \"url\": \"posts/40f24371/index.html\",\n \"revision\": \"1e964ccc0e93fc6c4573d119a9e24a5f\"\n },\n {\n \"url\": \"posts/47341/index.html\",\n \"revision\": \"d222d4996f3278775f55fa64dd81da5b\"\n },\n {\n \"url\": \"posts/54c08517/index.html\",\n \"revision\": \"db67fbe1915c88cb19e13468a56b8afe\"\n },\n {\n \"url\": \"posts/6534ce06/index.html\",\n \"revision\": \"7e56b6a0bb3a9771b8c5d03d15b090df\"\n },\n {\n \"url\": \"posts/75378e04/index.html\",\n \"revision\": \"02913043f0d942ed162b8ccf0edf49ee\"\n },\n {\n \"url\": \"posts/775eb342/index.html\",\n \"revision\": \"ce1075d689622d81bce5f711de1fad44\"\n },\n {\n \"url\": \"posts/8d55d49a/index.html\",\n \"revision\": \"ecd2aabe691a1cadadde344b02ac164f\"\n },\n {\n \"url\": \"posts/b06cc6ec/index.html\",\n \"revision\": \"2ebe92d720b48ff38d43013e826d394e\"\n },\n {\n \"url\": \"posts/b67f488/index.html\",\n \"revision\": \"e532d9b805698a8add7c2ee35cfe2e67\"\n },\n {\n \"url\": \"posts/d3748e5f/index.html\",\n \"revision\": \"f81fab5fd1774affdcfcd002836b4f9a\"\n },\n {\n \"url\": \"pwa/images/16.png\",\n \"revision\": \"a371ff1dcf1e58c4b363b4d15a2c4b32\"\n },\n {\n \"url\": \"pwa/images/32.png\",\n \"revision\": \"eca9d7c23cc8aac4e5b5bef7b3040909\"\n },\n {\n \"url\": \"pwa/images/apple-touch-icon.png\",\n \"revision\": \"97191e0537f84803438df9c37b031107\"\n },\n {\n \"url\": \"pwa/images/icons/icon-128x128.png\",\n \"revision\": \"5132c926d5b019070f0228c53b69d5bf\"\n },\n {\n \"url\": \"pwa/images/icons/icon-144x144.png\",\n \"revision\": \"713d19f7487337b6d78b932f43082ea1\"\n },\n {\n \"url\": \"pwa/images/icons/icon-152x152.png\",\n \"revision\": \"24a0aab809179697db91023821046a16\"\n },\n {\n \"url\": \"pwa/images/icons/icon-192x192.png\",\n \"revision\": \"eea0e91aec11d2e735bd688bb55757e3\"\n },\n {\n \"url\": \"pwa/images/icons/icon-384x384.png\",\n \"revision\": \"9ab4db6f3c16121ee01506cadc687c95\"\n },\n {\n \"url\": \"pwa/images/icons/icon-512x512.png\",\n \"revision\": \"e5b5cde78f88b6ff2215275a7a4eebea\"\n },\n {\n \"url\": \"pwa/images/icons/icon-72x72.png\",\n \"revision\": \"1db80c3d1043caecc6f56a6f0f3aa0b1\"\n },\n {\n \"url\": \"pwa/images/icons/icon-96x96.png\",\n \"revision\": \"f69aa52fa6e21c6cfb9fa2e06d9079e3\"\n },\n {\n \"url\": \"pwa/images/safari-pinned-tab.svg\",\n \"revision\": \"c3fe0ab7adb65a2a631d99aced3894ca\"\n },\n {\n \"url\": \"tags/cloudflare/index.html\",\n \"revision\": \"40893a1f397a475750aa972b8e96f80c\"\n },\n {\n \"url\": \"tags/index.html\",\n \"revision\": \"871041145de9ed46441bfd07fb96189d\"\n },\n {\n \"url\": \"tags/Java/index.html\",\n \"revision\": \"7aa893f31b7783fd14cddc32f43151ba\"\n },\n {\n \"url\": \"tags/k-means/index.html\",\n \"revision\": \"438862c1f0361c22e87786be4e25a03e\"\n },\n {\n \"url\": \"tags/kNN算法/index.html\",\n \"revision\": \"2507f7de63468b78dc9c838cf8ac1d55\"\n },\n {\n \"url\": \"tags/Numpy/index.html\",\n \"revision\": \"d57dee216281df93354ae58c74daaf06\"\n },\n {\n \"url\": \"tags/python/index.html\",\n \"revision\": \"07ef77cb3b63b259e965c3dd3b2a1d88\"\n },\n {\n \"url\": \"tags/Python/index.html\",\n \"revision\": \"a947926f6fcc23a44fb8b5dbf74739f3\"\n },\n {\n \"url\": \"tags/Ubuntu/index.html\",\n \"revision\": \"dfca93495ade2af593cf5a253f765e86\"\n },\n {\n \"url\": \"tags/Windows/index.html\",\n \"revision\": \"2d598c945d0ca9bbedfac3024c042206\"\n },\n {\n \"url\": \"tags/任务栏/index.html\",\n \"revision\": \"183a89c64a5ee31e472a9fb15bc069ec\"\n },\n {\n \"url\": \"tags/决策树/index.html\",\n \"revision\": \"9d8f92a0f5df6d59ab25cda46bd1c45b\"\n },\n {\n \"url\": \"tags/域名/index.html\",\n \"revision\": \"efb0d52a52546c722cd825f5c9670d30\"\n },\n {\n \"url\": \"tags/数据结构/index.html\",\n \"revision\": \"1fb4df7493e6cf362042e7ae8ddc5055\"\n },\n {\n \"url\": \"tags/机器学习/index.html\",\n \"revision\": \"27c53cb0717b1df365afb17a4772fcf1\"\n },\n {\n \"url\": \"tags/栈/index.html\",\n \"revision\": \"b095d99f88f9fa28dc0d2419707634f2\"\n },\n {\n \"url\": \"tags/线性回归/index.html\",\n \"revision\": \"982b20a61e1ab01bbd71bef636bead1f\"\n },\n {\n \"url\": \"tags/线性表/index.html\",\n \"revision\": \"573699d4a589e182379835a999f42f9e\"\n },\n {\n \"url\": \"tags/绪论/index.html\",\n \"revision\": \"cd3cf1a1c77860726e7325a2a92de5ce\"\n },\n {\n \"url\": \"tags/编程学习/index.html\",\n \"revision\": \"4265d2c0c61897a62329155706d44cc8\"\n },\n {\n \"url\": \"tags/美化/index.html\",\n \"revision\": \"36c1cd625bddbaf354b3387a08e35930\"\n },\n {\n \"url\": \"tags/虚拟机/index.html\",\n \"revision\": \"d91d916ab1759a6eeebbeb56b46f3d5b\"\n },\n {\n \"url\": \"tags/逻辑回归/index.html\",\n \"revision\": \"29e940740ade0e09758d01a4bc4fbbfa\"\n },\n {\n \"url\": \"tags/队列/index.html\",\n \"revision\": \"e7c574fe38671dcc56dc89500f547afd\"\n }\n], {});\n\n\n\n\nworkbox_routing_registerRoute(/^https:\\/\\/npm\\.elemecdn\\.com\\/.*/, new workbox_strategies_CacheFirst(), 'GET');\nworkbox_routing_registerRoute(/^https:\\/\\/cdn\\.jsdelivr\\.com\\/.*/, new workbox_strategies_CacheFirst(), 'GET');\nworkbox_routing_registerRoute(/^https:\\/\\/unpkg\\.com\\/.*/, new workbox_strategies_CacheFirst(), 'GET');\n\n\n\n\n"],"names":["self","skipWaiting","workbox_core_clientsClaim","workbox_precaching_precacheAndRoute","url","revision","workbox","registerRoute","workbox_strategies_CacheFirst"],"mappings":"0nBAsBAA,KAAKC,cAELC,EAAAA,eAQAC,EAAAA,iBAAoC,CAClC,CACEC,IAAO,WACPC,SAAY,oCAEd,CACED,IAAO,mBACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,oCAEd,CACED,IAAO,2BACPC,SAAY,oCAEd,CACED,IAAO,kCACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,oCAEd,CACED,IAAO,2BACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,wBACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,iBACPC,SAAY,oCAEd,CACED,IAAO,gBACPC,SAAY,oCAEd,CACED,IAAO,cACPC,SAAY,oCAEd,CACED,IAAO,mBACPC,SAAY,oCAEd,CACED,IAAO,cACPC,SAAY,oCAEd,CACED,IAAO,kBACPC,SAAY,oCAEd,CACED,IAAO,qBACPC,SAAY,oCAEd,CACED,IAAO,aACPC,SAAY,oCAEd,CACED,IAAO,gBACPC,SAAY,oCAEd,CACED,IAAO,aACPC,SAAY,oCAEd,CACED,IAAO,uBACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,cACPC,SAAY,oCAEd,CACED,IAAO,cACPC,SAAY,oCAEd,CACED,IAAO,kBACPC,SAAY,oCAEd,CACED,IAAO,mBACPC,SAAY,oCAEd,CACED,IAAO,oBACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,yBACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,yBACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,2BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,oBACPC,SAAY,oCAEd,CACED,IAAO,oBACPC,SAAY,oCAEd,CACED,IAAO,kCACPC,SAAY,oCAEd,CACED,IAAO,oCACPC,SAAY,oCAEd,CACED,IAAO,oCACPC,SAAY,oCAEd,CACED,IAAO,oCACPC,SAAY,oCAEd,CACED,IAAO,oCACPC,SAAY,oCAEd,CACED,IAAO,oCACPC,SAAY,oCAEd,CACED,IAAO,oCACPC,SAAY,oCAEd,CACED,IAAO,kCACPC,SAAY,oCAEd,CACED,IAAO,kCACPC,SAAY,oCAEd,CACED,IAAO,mCACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,kBACPC,SAAY,oCAEd,CACED,IAAO,uBACPC,SAAY,oCAEd,CACED,IAAO,0BACPC,SAAY,oCAEd,CACED,IAAO,wBACPC,SAAY,oCAEd,CACED,IAAO,wBACPC,SAAY,oCAEd,CACED,IAAO,yBACPC,SAAY,oCAEd,CACED,IAAO,yBACPC,SAAY,oCAEd,CACED,IAAO,yBACPC,SAAY,oCAEd,CACED,IAAO,0BACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,qBACPC,SAAY,oCAEd,CACED,IAAO,uBACPC,SAAY,oCAEd,CACED,IAAO,uBACPC,SAAY,oCAEd,CACED,IAAO,oBACPC,SAAY,oCAEd,CACED,IAAO,uBACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,qBACPC,SAAY,oCAEd,CACED,IAAO,uBACPC,SAAY,oCAEd,CACED,IAAO,qBACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,uBACPC,SAAY,oCAEd,CACED,IAAO,qBACPC,SAAY,qCAEb,CAAE,GAKwBC,EAAAC,cAAC,oCAAqC,IAAIC,aAAiC,OAC3EF,EAAAC,cAAC,oCAAqC,IAAIC,aAAiC,OAC3EF,EAAAC,cAAC,4BAA6B,IAAIC,aAAiC"} \ No newline at end of file diff --git a/sitemap.txt b/sitemap.txt new file mode 100644 index 000000000..bf00bb691 --- /dev/null +++ b/sitemap.txt @@ -0,0 +1,50 @@ +http://refrain.cf/pwa/manifest.json +http://refrain.cf/comments/index.html +http://refrain.cf/posts/d3748e5f/ +http://refrain.cf/music/index.html +http://refrain.cf/drive/index.html +http://refrain.cf/about/index.html +http://refrain.cf/link/index.html +http://refrain.cf/categories/index.html +http://refrain.cf/tags/index.html +http://refrain.cf/posts/8d55d49a/ +http://refrain.cf/posts/6534ce06/ +http://refrain.cf/posts/40f24371/ +http://refrain.cf/posts/b06cc6ec/ +http://refrain.cf/posts/b67f488/ +http://refrain.cf/posts/75378e04/ +http://refrain.cf/posts/170bc017/ +http://refrain.cf/posts/775eb342/ +http://refrain.cf/posts/54c08517/ +http://refrain.cf/posts/355699d5/ +http://refrain.cf/posts/20642/ +http://refrain.cf/posts/47341/ +http://refrain.cf/ +http://refrain.cf/tags/cloudflare/ +http://refrain.cf/tags/%E5%9F%9F%E5%90%8D/ +http://refrain.cf/tags/Windows/ +http://refrain.cf/tags/%E4%BB%BB%E5%8A%A1%E6%A0%8F/ +http://refrain.cf/tags/%E7%BE%8E%E5%8C%96/ +http://refrain.cf/tags/Ubuntu/ +http://refrain.cf/tags/%E8%99%9A%E6%8B%9F%E6%9C%BA/ +http://refrain.cf/tags/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/ +http://refrain.cf/tags/%E7%BA%BF%E6%80%A7%E8%A1%A8/ +http://refrain.cf/tags/%E6%A0%88/ +http://refrain.cf/tags/%E9%98%9F%E5%88%97/ +http://refrain.cf/tags/%E7%BB%AA%E8%AE%BA/ +http://refrain.cf/tags/Java/ +http://refrain.cf/tags/%E7%BC%96%E7%A8%8B%E5%AD%A6%E4%B9%A0/ +http://refrain.cf/tags/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/ +http://refrain.cf/tags/python/ +http://refrain.cf/tags/%E5%86%B3%E7%AD%96%E6%A0%91/ +http://refrain.cf/tags/Numpy/ +http://refrain.cf/tags/Python/ +http://refrain.cf/tags/k-means/ +http://refrain.cf/tags/kNN%E7%AE%97%E6%B3%95/ +http://refrain.cf/tags/%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92/ +http://refrain.cf/tags/%E9%80%BB%E8%BE%91%E5%9B%9E%E5%BD%92/ +http://refrain.cf/categories/DNS/ +http://refrain.cf/categories/%E7%99%BE%E5%AE%9D%E7%AE%B1/ +http://refrain.cf/categories/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/ +http://refrain.cf/categories/Java/ +http://refrain.cf/categories/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/ diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 000000000..b12299b66 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,400 @@ + + + + + http://refrain.cf/pwa/manifest.json + + 2023-09-27 + + monthly + 0.6 + + + + http://refrain.cf/comments/index.html + + 2023-09-27 + + monthly + 0.6 + + + + http://refrain.cf/posts/d3748e5f/ + + 2023-09-26 + + monthly + 0.6 + + + + http://refrain.cf/music/index.html + + 2023-09-22 + + monthly + 0.6 + + + + http://refrain.cf/drive/index.html + + 2023-09-22 + + monthly + 0.6 + + + + http://refrain.cf/about/index.html + + 2023-09-11 + + monthly + 0.6 + + + + http://refrain.cf/link/index.html + + 2023-05-01 + + monthly + 0.6 + + + + http://refrain.cf/categories/index.html + + 2023-05-01 + + monthly + 0.6 + + + + http://refrain.cf/tags/index.html + + 2023-05-01 + + monthly + 0.6 + + + + http://refrain.cf/posts/8d55d49a/ + + 2023-03-07 + + monthly + 0.6 + + + + http://refrain.cf/posts/6534ce06/ + + 2023-01-09 + + monthly + 0.6 + + + + http://refrain.cf/posts/40f24371/ + + 2022-12-31 + + monthly + 0.6 + + + + http://refrain.cf/posts/b06cc6ec/ + + 2022-12-12 + + monthly + 0.6 + + + + http://refrain.cf/posts/b67f488/ + + 2022-12-02 + + monthly + 0.6 + + + + http://refrain.cf/posts/75378e04/ + + 2022-08-20 + + monthly + 0.6 + + + + http://refrain.cf/posts/170bc017/ + + 2022-08-17 + + monthly + 0.6 + + + + http://refrain.cf/posts/775eb342/ + + 2022-08-14 + + monthly + 0.6 + + + + http://refrain.cf/posts/54c08517/ + + 2022-08-07 + + monthly + 0.6 + + + + http://refrain.cf/posts/355699d5/ + + 2022-08-06 + + monthly + 0.6 + + + + http://refrain.cf/posts/20642/ + + 2022-07-22 + + monthly + 0.6 + + + + http://refrain.cf/posts/47341/ + + 2022-07-18 + + monthly + 0.6 + + + + + http://refrain.cf/ + 2023-09-27 + daily + 1.0 + + + + + http://refrain.cf/tags/cloudflare/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E5%9F%9F%E5%90%8D/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/Windows/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E4%BB%BB%E5%8A%A1%E6%A0%8F/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E7%BE%8E%E5%8C%96/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/Ubuntu/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E8%99%9A%E6%8B%9F%E6%9C%BA/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E7%BA%BF%E6%80%A7%E8%A1%A8/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E6%A0%88/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E9%98%9F%E5%88%97/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E7%BB%AA%E8%AE%BA/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/Java/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E7%BC%96%E7%A8%8B%E5%AD%A6%E4%B9%A0/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/python/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E5%86%B3%E7%AD%96%E6%A0%91/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/Numpy/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/Python/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/k-means/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/kNN%E7%AE%97%E6%B3%95/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%BD%92/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/tags/%E9%80%BB%E8%BE%91%E5%9B%9E%E5%BD%92/ + 2023-09-27 + weekly + 0.2 + + + + + + http://refrain.cf/categories/DNS/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/categories/%E7%99%BE%E5%AE%9D%E7%AE%B1/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/categories/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/categories/Java/ + 2023-09-27 + weekly + 0.2 + + + + http://refrain.cf/categories/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/ + 2023-09-27 + weekly + 0.2 + + + diff --git a/tags/Java/index.html b/tags/Java/index.html new file mode 100644 index 000000000..ab2166bfe --- /dev/null +++ b/tags/Java/index.html @@ -0,0 +1,347 @@ +标签: Java | 希亚的西红柿のBlog

        \ No newline at end of file diff --git a/tags/Numpy/index.html b/tags/Numpy/index.html new file mode 100644 index 000000000..8593c107e --- /dev/null +++ b/tags/Numpy/index.html @@ -0,0 +1,347 @@ +标签: Numpy | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/tags/Python/index.html b/tags/Python/index.html new file mode 100644 index 000000000..9db5ca766 --- /dev/null +++ b/tags/Python/index.html @@ -0,0 +1,347 @@ +标签: Python | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/tags/Ubuntu/index.html b/tags/Ubuntu/index.html new file mode 100644 index 000000000..f2d68507b --- /dev/null +++ b/tags/Ubuntu/index.html @@ -0,0 +1,347 @@ +标签: Ubuntu | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/tags/Windows/index.html b/tags/Windows/index.html new file mode 100644 index 000000000..97188969c --- /dev/null +++ b/tags/Windows/index.html @@ -0,0 +1,347 @@ +标签: Windows | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/tags/cloudflare/index.html b/tags/cloudflare/index.html new file mode 100644 index 000000000..7b653eb73 --- /dev/null +++ b/tags/cloudflare/index.html @@ -0,0 +1,347 @@ +标签: cloudflare | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/tags/index.html b/tags/index.html new file mode 100644 index 000000000..1f5907743 --- /dev/null +++ b/tags/index.html @@ -0,0 +1,430 @@ +tags | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/tags/k-means/index.html b/tags/k-means/index.html new file mode 100644 index 000000000..921210969 --- /dev/null +++ b/tags/k-means/index.html @@ -0,0 +1,347 @@ +标签: k-means | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/kNN\347\256\227\346\263\225/index.html" "b/tags/kNN\347\256\227\346\263\225/index.html" new file mode 100644 index 000000000..d2069b073 --- /dev/null +++ "b/tags/kNN\347\256\227\346\263\225/index.html" @@ -0,0 +1,347 @@ +标签: kNN算法 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/tags/python/index.html b/tags/python/index.html new file mode 100644 index 000000000..a078424a7 --- /dev/null +++ b/tags/python/index.html @@ -0,0 +1,347 @@ +标签: python | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\344\273\273\345\212\241\346\240\217/index.html" "b/tags/\344\273\273\345\212\241\346\240\217/index.html" new file mode 100644 index 000000000..58280e5bc --- /dev/null +++ "b/tags/\344\273\273\345\212\241\346\240\217/index.html" @@ -0,0 +1,347 @@ +标签: 任务栏 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\345\206\263\347\255\226\346\240\221/index.html" "b/tags/\345\206\263\347\255\226\346\240\221/index.html" new file mode 100644 index 000000000..36b942a18 --- /dev/null +++ "b/tags/\345\206\263\347\255\226\346\240\221/index.html" @@ -0,0 +1,347 @@ +标签: 决策树 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\345\237\237\345\220\215/index.html" "b/tags/\345\237\237\345\220\215/index.html" new file mode 100644 index 000000000..0ba4b5e9d --- /dev/null +++ "b/tags/\345\237\237\345\220\215/index.html" @@ -0,0 +1,347 @@ +标签: 域名 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" "b/tags/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" new file mode 100644 index 000000000..90d34f151 --- /dev/null +++ "b/tags/\346\225\260\346\215\256\347\273\223\346\236\204/index.html" @@ -0,0 +1,347 @@ +标签: 数据结构 | 希亚的西红柿のBlog
        标签 - 数据结构
        2022
        栈与队列
        栈与队列
        线性表
        线性表
        数据结构绪论
        数据结构绪论
        \ No newline at end of file diff --git "a/tags/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" "b/tags/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" new file mode 100644 index 000000000..b965bf438 --- /dev/null +++ "b/tags/\346\234\272\345\231\250\345\255\246\344\271\240/index.html" @@ -0,0 +1,347 @@ +标签: 机器学习 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\346\240\210/index.html" "b/tags/\346\240\210/index.html" new file mode 100644 index 000000000..b6bfb2441 --- /dev/null +++ "b/tags/\346\240\210/index.html" @@ -0,0 +1,347 @@ +标签: 栈 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\347\272\277\346\200\247\345\233\236\345\275\222/index.html" "b/tags/\347\272\277\346\200\247\345\233\236\345\275\222/index.html" new file mode 100644 index 000000000..31dfa6f21 --- /dev/null +++ "b/tags/\347\272\277\346\200\247\345\233\236\345\275\222/index.html" @@ -0,0 +1,347 @@ +标签: 线性回归 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\347\272\277\346\200\247\350\241\250/index.html" "b/tags/\347\272\277\346\200\247\350\241\250/index.html" new file mode 100644 index 000000000..1277d2476 --- /dev/null +++ "b/tags/\347\272\277\346\200\247\350\241\250/index.html" @@ -0,0 +1,347 @@ +标签: 线性表 | 希亚的西红柿のBlog
        标签 - 线性表
        2022
        线性表
        线性表
        \ No newline at end of file diff --git "a/tags/\347\273\252\350\256\272/index.html" "b/tags/\347\273\252\350\256\272/index.html" new file mode 100644 index 000000000..8dbc55742 --- /dev/null +++ "b/tags/\347\273\252\350\256\272/index.html" @@ -0,0 +1,347 @@ +标签: 绪论 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\347\274\226\347\250\213\345\255\246\344\271\240/index.html" "b/tags/\347\274\226\347\250\213\345\255\246\344\271\240/index.html" new file mode 100644 index 000000000..fd4c4499b --- /dev/null +++ "b/tags/\347\274\226\347\250\213\345\255\246\344\271\240/index.html" @@ -0,0 +1,347 @@ +标签: 编程学习 | 希亚的西红柿のBlog
        标签 - 编程学习
        2023
        JAVA学习笔记
        JAVA学习笔记
        \ No newline at end of file diff --git "a/tags/\347\276\216\345\214\226/index.html" "b/tags/\347\276\216\345\214\226/index.html" new file mode 100644 index 000000000..5e5234b1a --- /dev/null +++ "b/tags/\347\276\216\345\214\226/index.html" @@ -0,0 +1,347 @@ +标签: 美化 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\350\231\232\346\213\237\346\234\272/index.html" "b/tags/\350\231\232\346\213\237\346\234\272/index.html" new file mode 100644 index 000000000..d6a57b3af --- /dev/null +++ "b/tags/\350\231\232\346\213\237\346\234\272/index.html" @@ -0,0 +1,347 @@ +标签: 虚拟机 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\351\200\273\350\276\221\345\233\236\345\275\222/index.html" "b/tags/\351\200\273\350\276\221\345\233\236\345\275\222/index.html" new file mode 100644 index 000000000..2e0463062 --- /dev/null +++ "b/tags/\351\200\273\350\276\221\345\233\236\345\275\222/index.html" @@ -0,0 +1,347 @@ +标签: 逻辑回归 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git "a/tags/\351\230\237\345\210\227/index.html" "b/tags/\351\230\237\345\210\227/index.html" new file mode 100644 index 000000000..fd07d167c --- /dev/null +++ "b/tags/\351\230\237\345\210\227/index.html" @@ -0,0 +1,347 @@ +标签: 队列 | 希亚的西红柿のBlog
        \ No newline at end of file diff --git a/workbox-f2630e7e.js b/workbox-f2630e7e.js new file mode 100644 index 000000000..78f7b95c0 --- /dev/null +++ b/workbox-f2630e7e.js @@ -0,0 +1 @@ +define(["exports"],(function(e){"use strict";try{self["workbox:core:6.6.0"]&&_()}catch(e){}class t extends Error{constructor(e,t){super(((e,...t)=>{let s=e;return t.length>0&&(s+=` :: ${JSON.stringify(t)}`),s})(e,t)),this.name=e,this.details=t}}try{self["workbox:routing:6.6.0"]&&_()}catch(e){}const s=e=>e&&"object"==typeof e?e:{handle:e};class n{constructor(e,t,n="GET"){this.handler=s(t),this.match=e,this.method=n}setCatchHandler(e){this.catchHandler=s(e)}}class r extends n{constructor(e,t,s){super((({url:t})=>{const s=e.exec(t.href);if(s&&(t.origin===location.origin||0===s.index))return s.slice(1)}),t,s)}}class a{constructor(){this.t=new Map,this.i=new Map}get routes(){return this.t}addFetchListener(){self.addEventListener("fetch",(e=>{const{request:t}=e,s=this.handleRequest({request:t,event:e});s&&e.respondWith(s)}))}addCacheListener(){self.addEventListener("message",(e=>{if(e.data&&"CACHE_URLS"===e.data.type){const{payload:t}=e.data,s=Promise.all(t.urlsToCache.map((t=>{"string"==typeof t&&(t=[t]);const s=new Request(...t);return this.handleRequest({request:s,event:e})})));e.waitUntil(s),e.ports&&e.ports[0]&&s.then((()=>e.ports[0].postMessage(!0)))}}))}handleRequest({request:e,event:t}){const s=new URL(e.url,location.href);if(!s.protocol.startsWith("http"))return;const n=s.origin===location.origin,{params:r,route:a}=this.findMatchingRoute({event:t,request:e,sameOrigin:n,url:s});let i=a&&a.handler;const c=e.method;if(!i&&this.i.has(c)&&(i=this.i.get(c)),!i)return;let o;try{o=i.handle({url:s,request:e,event:t,params:r})}catch(e){o=Promise.reject(e)}const h=a&&a.catchHandler;return o instanceof Promise&&(this.o||h)&&(o=o.catch((async n=>{if(h)try{return await h.handle({url:s,request:e,event:t,params:r})}catch(e){e instanceof Error&&(n=e)}if(this.o)return this.o.handle({url:s,request:e,event:t});throw n}))),o}findMatchingRoute({url:e,sameOrigin:t,request:s,event:n}){const r=this.t.get(s.method)||[];for(const a of r){let r;const i=a.match({url:e,sameOrigin:t,request:s,event:n});if(i)return r=i,(Array.isArray(r)&&0===r.length||i.constructor===Object&&0===Object.keys(i).length||"boolean"==typeof i)&&(r=void 0),{route:a,params:r}}return{}}setDefaultHandler(e,t="GET"){this.i.set(t,s(e))}setCatchHandler(e){this.o=s(e)}registerRoute(e){this.t.has(e.method)||this.t.set(e.method,[]),this.t.get(e.method).push(e)}unregisterRoute(e){if(!this.t.has(e.method))throw new t("unregister-route-but-not-found-with-method",{method:e.method});const s=this.t.get(e.method).indexOf(e);if(!(s>-1))throw new t("unregister-route-route-not-registered");this.t.get(e.method).splice(s,1)}}let i;const c=()=>(i||(i=new a,i.addFetchListener(),i.addCacheListener()),i);function o(e,s,a){let i;if("string"==typeof e){const t=new URL(e,location.href);i=new n((({url:e})=>e.href===t.href),s,a)}else if(e instanceof RegExp)i=new r(e,s,a);else if("function"==typeof e)i=new n(e,s,a);else{if(!(e instanceof n))throw new t("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});i=e}return c().registerRoute(i),i}const h={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!=typeof registration?registration.scope:""},l=e=>[h.prefix,e,h.suffix].filter((e=>e&&e.length>0)).join("-"),u=e=>e||l(h.precache);function f(e,t){const s=new URL(e);for(const e of t)s.searchParams.delete(e);return s.href}class d{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}const p=new Set;try{self["workbox:strategies:6.6.0"]&&_()}catch(e){}function w(e){return"string"==typeof e?new Request(e):e}class g{constructor(e,t){this.h={},Object.assign(this,t),this.event=t.event,this.u=e,this.l=new d,this.p=[],this.R=[...e.plugins],this.m=new Map;for(const e of this.R)this.m.set(e,{});this.event.waitUntil(this.l.promise)}async fetch(e){const{event:s}=this;let n=w(e);if("navigate"===n.mode&&s instanceof FetchEvent&&s.preloadResponse){const e=await s.preloadResponse;if(e)return e}const r=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const e of this.iterateCallbacks("requestWillFetch"))n=await e({request:n.clone(),event:s})}catch(e){if(e instanceof Error)throw new t("plugin-error-request-will-fetch",{thrownErrorMessage:e.message})}const a=n.clone();try{let e;e=await fetch(n,"navigate"===n.mode?void 0:this.u.fetchOptions);for(const t of this.iterateCallbacks("fetchDidSucceed"))e=await t({event:s,request:a,response:e});return e}catch(e){throw r&&await this.runCallbacks("fetchDidFail",{error:e,event:s,originalRequest:r.clone(),request:a.clone()}),e}}async fetchAndCachePut(e){const t=await this.fetch(e),s=t.clone();return this.waitUntil(this.cachePut(e,s)),t}async cacheMatch(e){const t=w(e);let s;const{cacheName:n,matchOptions:r}=this.u,a=await this.getCacheKey(t,"read"),i=Object.assign(Object.assign({},r),{cacheName:n});s=await caches.match(a,i);for(const e of this.iterateCallbacks("cachedResponseWillBeUsed"))s=await e({cacheName:n,matchOptions:r,cachedResponse:s,request:a,event:this.event})||void 0;return s}async cachePut(e,s){const n=w(e);await(0,new Promise((e=>setTimeout(e,0))));const r=await this.getCacheKey(n,"write");if(!s)throw new t("cache-put-with-no-response",{url:(a=r.url,new URL(String(a),location.href).href.replace(new RegExp(`^${location.origin}`),""))});var a;const i=await this.v(s);if(!i)return!1;const{cacheName:c,matchOptions:o}=this.u,h=await self.caches.open(c),l=this.hasCallback("cacheDidUpdate"),u=l?await async function(e,t,s,n){const r=f(t.url,s);if(t.url===r)return e.match(t,n);const a=Object.assign(Object.assign({},n),{ignoreSearch:!0}),i=await e.keys(t,a);for(const t of i)if(r===f(t.url,s))return e.match(t,n)}(h,r.clone(),["__WB_REVISION__"],o):null;try{await h.put(r,l?i.clone():i)}catch(e){if(e instanceof Error)throw"QuotaExceededError"===e.name&&await async function(){for(const e of p)await e()}(),e}for(const e of this.iterateCallbacks("cacheDidUpdate"))await e({cacheName:c,oldResponse:u,newResponse:i.clone(),request:r,event:this.event});return!0}async getCacheKey(e,t){const s=`${e.url} | ${t}`;if(!this.h[s]){let n=e;for(const e of this.iterateCallbacks("cacheKeyWillBeUsed"))n=w(await e({mode:t,request:n,event:this.event,params:this.params}));this.h[s]=n}return this.h[s]}hasCallback(e){for(const t of this.u.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const s of this.iterateCallbacks(e))await s(t)}*iterateCallbacks(e){for(const t of this.u.plugins)if("function"==typeof t[e]){const s=this.m.get(t),n=n=>{const r=Object.assign(Object.assign({},n),{state:s});return t[e](r)};yield n}}waitUntil(e){return this.p.push(e),e}async doneWaiting(){let e;for(;e=this.p.shift();)await e}destroy(){this.l.resolve(null)}async v(e){let t=e,s=!1;for(const e of this.iterateCallbacks("cacheWillUpdate"))if(t=await e({request:this.request,response:t,event:this.event})||void 0,s=!0,!t)break;return s||t&&200!==t.status&&(t=void 0),t}}class y{constructor(e={}){this.cacheName=(e=>e||l(h.runtime))(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,s="string"==typeof e.request?new Request(e.request):e.request,n="params"in e?e.params:void 0,r=new g(this,{event:t,request:s,params:n}),a=this.q(r,s,t);return[a,this.U(a,r,s,t)]}async q(e,s,n){let r;await e.runCallbacks("handlerWillStart",{event:n,request:s});try{if(r=await this.L(s,e),!r||"error"===r.type)throw new t("no-response",{url:s.url})}catch(t){if(t instanceof Error)for(const a of e.iterateCallbacks("handlerDidError"))if(r=await a({error:t,event:n,request:s}),r)break;if(!r)throw t}for(const t of e.iterateCallbacks("handlerWillRespond"))r=await t({event:n,request:s,response:r});return r}async U(e,t,s,n){let r,a;try{r=await e}catch(a){}try{await t.runCallbacks("handlerDidRespond",{event:n,request:s,response:r}),await t.doneWaiting()}catch(e){e instanceof Error&&(a=e)}if(await t.runCallbacks("handlerDidComplete",{event:n,request:s,response:r,error:a}),t.destroy(),a)throw a}}function m(e,t){const s=t();return e.waitUntil(s),s}try{self["workbox:precaching:6.6.0"]&&_()}catch(e){}function R(e){if(!e)throw new t("add-to-cache-list-unexpected-type",{entry:e});if("string"==typeof e){const t=new URL(e,location.href);return{cacheKey:t.href,url:t.href}}const{revision:s,url:n}=e;if(!n)throw new t("add-to-cache-list-unexpected-type",{entry:e});if(!s){const e=new URL(n,location.href);return{cacheKey:e.href,url:e.href}}const r=new URL(n,location.href),a=new URL(n,location.href);return r.searchParams.set("__WB_REVISION__",s),{cacheKey:r.href,url:a.href}}class v{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:s})=>{if("install"===e.type&&t&&t.originalRequest&&t.originalRequest instanceof Request){const e=t.originalRequest.url;s?this.notUpdatedURLs.push(e):this.updatedURLs.push(e)}return s}}}class b{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:e,params:t})=>{const s=(null==t?void 0:t.cacheKey)||this._.getCacheKeyForURL(e.url);return s?new Request(s,{headers:e.headers}):e},this._=e}}let q,U;class C extends y{constructor(e={}){e.cacheName=u(e.cacheName),super(e),this.C=!1!==e.fallbackToNetwork,this.plugins.push(C.copyRedirectedCacheableResponsesPlugin)}async L(e,t){return await t.cacheMatch(e)||(t.event&&"install"===t.event.type?await this.O(e,t):await this.N(e,t))}async N(e,s){let n;const r=s.params||{};if(!this.C)throw new t("missing-precache-entry",{cacheName:this.cacheName,url:e.url});{const t=r.integrity,a=e.integrity,i=!a||a===t;n=await s.fetch(new Request(e,{integrity:"no-cors"!==e.mode?a||t:void 0})),t&&i&&"no-cors"!==e.mode&&(this.k(),await s.cachePut(e,n.clone()))}return n}async O(e,s){this.k();const n=await s.fetch(e);if(!await s.cachePut(e,n.clone()))throw new t("bad-precaching-response",{url:e.url,status:n.status});return n}k(){let e=null,t=0;for(const[s,n]of this.plugins.entries())n!==C.copyRedirectedCacheableResponsesPlugin&&(n===C.defaultPrecacheCacheabilityPlugin&&(e=s),n.cacheWillUpdate&&t++);0===t?this.plugins.push(C.defaultPrecacheCacheabilityPlugin):t>1&&null!==e&&this.plugins.splice(e,1)}}C.defaultPrecacheCacheabilityPlugin={cacheWillUpdate:async({response:e})=>!e||e.status>=400?null:e},C.copyRedirectedCacheableResponsesPlugin={cacheWillUpdate:async({response:e})=>e.redirected?await async function(e,s){let n=null;if(e.url&&(n=new URL(e.url).origin),n!==self.location.origin)throw new t("cross-origin-copy-response",{origin:n});const r=e.clone(),a={headers:new Headers(r.headers),status:r.status,statusText:r.statusText},i=s?s(a):a,c=function(){if(void 0===q){const e=new Response("");if("body"in e)try{new Response(e.body),q=!0}catch(e){q=!1}q=!1}return q}()?r.body:await r.blob();return new Response(c,i)}(e):e};class L{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:s=!0}={}){this.K=new Map,this.T=new Map,this.W=new Map,this.u=new C({cacheName:u(e),plugins:[...t,new b({precacheController:this})],fallbackToNetwork:s}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this.u}precache(e){this.addToCacheList(e),this.j||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this.j=!0)}addToCacheList(e){const s=[];for(const n of e){"string"==typeof n?s.push(n):n&&void 0===n.revision&&s.push(n.url);const{cacheKey:e,url:r}=R(n),a="string"!=typeof n&&n.revision?"reload":"default";if(this.K.has(r)&&this.K.get(r)!==e)throw new t("add-to-cache-list-conflicting-entries",{firstEntry:this.K.get(r),secondEntry:e});if("string"!=typeof n&&n.integrity){if(this.W.has(e)&&this.W.get(e)!==n.integrity)throw new t("add-to-cache-list-conflicting-integrities",{url:r});this.W.set(e,n.integrity)}if(this.K.set(r,e),this.T.set(r,a),s.length>0){const e=`Workbox is precaching URLs without revision info: ${s.join(", ")}\nThis is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(e)}}}install(e){return m(e,(async()=>{const t=new v;this.strategy.plugins.push(t);for(const[t,s]of this.K){const n=this.W.get(s),r=this.T.get(t),a=new Request(t,{integrity:n,cache:r,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:s},request:a,event:e}))}const{updatedURLs:s,notUpdatedURLs:n}=t;return{updatedURLs:s,notUpdatedURLs:n}}))}activate(e){return m(e,(async()=>{const e=await self.caches.open(this.strategy.cacheName),t=await e.keys(),s=new Set(this.K.values()),n=[];for(const r of t)s.has(r.url)||(await e.delete(r),n.push(r.url));return{deletedURLs:n}}))}getURLsToCacheKeys(){return this.K}getCachedURLs(){return[...this.K.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this.K.get(t.href)}getIntegrityForCacheKey(e){return this.W.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const s=this.getCacheKeyForURL(e);if(!s)throw new t("non-precached-url",{url:e});return t=>(t.request=new Request(e),t.params=Object.assign({cacheKey:s},t.params),this.strategy.handle(t))}}const k=()=>(U||(U=new L),U);class K extends n{constructor(e,t){super((({request:s})=>{const n=e.getURLsToCacheKeys();for(const r of function*(e,{ignoreURLParametersMatching:t=[/^utm_/,/^fbclid$/],directoryIndex:s="index.html",cleanURLs:n=!0,urlManipulation:r}={}){const a=new URL(e,location.href);a.hash="",yield a.href;const i=function(e,t=[]){for(const s of[...e.searchParams.keys()])t.some((e=>e.test(s)))&&e.searchParams.delete(s);return e}(a,t);if(yield i.href,s&&i.pathname.endsWith("/")){const e=new URL(i.href);e.pathname+=s,yield e.href}if(n){const e=new URL(i.href);e.pathname+=".html",yield e.href}if(r){const e=r({url:a});for(const t of e)yield t.href}}(s.url,t)){const t=n.get(r);if(t)return{cacheKey:t,integrity:e.getIntegrityForCacheKey(t)}}}),e.strategy)}}e.CacheFirst=class extends y{async L(e,s){let n,r=await s.cacheMatch(e);if(!r)try{r=await s.fetchAndCachePut(e)}catch(e){e instanceof Error&&(n=e)}if(!r)throw new t("no-response",{url:e.url,error:n});return r}},e.clientsClaim=function(){self.addEventListener("activate",(()=>self.clients.claim()))},e.precacheAndRoute=function(e,t){!function(e){k().precache(e)}(e),function(e){const t=k();o(new K(t,e))}(t)},e.registerRoute=o})); \ No newline at end of file diff --git a/workbox-f2630e7e.js.map b/workbox-f2630e7e.js.map new file mode 100644 index 000000000..9cccf173e --- /dev/null +++ b/workbox-f2630e7e.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workbox-f2630e7e.js","sources":["node_modules/workbox-core/_version.js","node_modules/workbox-core/_private/logger.js","node_modules/workbox-core/models/messages/messageGenerator.js","node_modules/workbox-core/_private/WorkboxError.js","node_modules/workbox-routing/_version.js","node_modules/workbox-routing/utils/constants.js","node_modules/workbox-routing/utils/normalizeHandler.js","node_modules/workbox-routing/Route.js","node_modules/workbox-routing/RegExpRoute.js","node_modules/workbox-routing/Router.js","node_modules/workbox-routing/utils/getOrCreateDefaultRouter.js","node_modules/workbox-routing/registerRoute.js","node_modules/workbox-core/_private/cacheNames.js","node_modules/workbox-core/_private/cacheMatchIgnoreParams.js","node_modules/workbox-core/_private/Deferred.js","node_modules/workbox-core/models/quotaErrorCallbacks.js","node_modules/workbox-strategies/_version.js","node_modules/workbox-strategies/StrategyHandler.js","node_modules/workbox-core/_private/timeout.js","node_modules/workbox-core/_private/getFriendlyURL.js","node_modules/workbox-core/_private/executeQuotaErrorCallbacks.js","node_modules/workbox-strategies/Strategy.js","node_modules/workbox-core/_private/waitUntil.js","node_modules/workbox-precaching/_version.js","node_modules/workbox-precaching/utils/createCacheKey.js","node_modules/workbox-precaching/utils/PrecacheInstallReportPlugin.js","node_modules/workbox-precaching/utils/PrecacheCacheKeyPlugin.js","node_modules/workbox-core/_private/canConstructResponseFromBodyStream.js","node_modules/workbox-precaching/utils/getOrCreatePrecacheController.js","node_modules/workbox-core/copyResponse.js","node_modules/workbox-precaching/PrecacheStrategy.js","node_modules/workbox-precaching/PrecacheController.js","node_modules/workbox-precaching/PrecacheRoute.js","node_modules/workbox-precaching/utils/generateURLVariations.js","node_modules/workbox-precaching/utils/removeIgnoredSearchParams.js","node_modules/workbox-strategies/CacheFirst.js","node_modules/workbox-core/clientsClaim.js","node_modules/workbox-precaching/precacheAndRoute.js","node_modules/workbox-precaching/precache.js","node_modules/workbox-precaching/addRoute.js"],"sourcesContent":["\"use strict\";\n// @ts-ignore\ntry {\n self['workbox:core:6.6.0'] && _();\n}\ncatch (e) { }\n","/*\n Copyright 2019 Google LLC\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\nconst logger = (process.env.NODE_ENV === 'production'\n ? null\n : (() => {\n // Don't overwrite this value if it's already set.\n // See https://github.com/GoogleChrome/workbox/pull/2284#issuecomment-560470923\n if (!('__WB_DISABLE_DEV_LOGS' in globalThis)) {\n self.__WB_DISABLE_DEV_LOGS = false;\n }\n let inGroup = false;\n const methodToColorMap = {\n debug: `#7f8c8d`,\n log: `#2ecc71`,\n warn: `#f39c12`,\n error: `#c0392b`,\n groupCollapsed: `#3498db`,\n groupEnd: null, // No colored prefix on groupEnd\n };\n const print = function (method, args) {\n if (self.__WB_DISABLE_DEV_LOGS) {\n return;\n }\n if (method === 'groupCollapsed') {\n // Safari doesn't print all console.groupCollapsed() arguments:\n // https://bugs.webkit.org/show_bug.cgi?id=182754\n if (/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n console[method](...args);\n return;\n }\n }\n const styles = [\n `background: ${methodToColorMap[method]}`,\n `border-radius: 0.5em`,\n `color: white`,\n `font-weight: bold`,\n `padding: 2px 0.5em`,\n ];\n // When in a group, the workbox prefix is not displayed.\n const logPrefix = inGroup ? [] : ['%cworkbox', styles.join(';')];\n console[method](...logPrefix, ...args);\n if (method === 'groupCollapsed') {\n inGroup = true;\n }\n if (method === 'groupEnd') {\n inGroup = false;\n }\n };\n // eslint-disable-next-line @typescript-eslint/ban-types\n const api = {};\n const loggerMethods = Object.keys(methodToColorMap);\n for (const key of loggerMethods) {\n const method = key;\n api[method] = (...args) => {\n print(method, args);\n };\n }\n return api;\n })());\nexport { logger };\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { messages } from './messages.js';\nimport '../../_version.js';\nconst fallback = (code, ...args) => {\n let msg = code;\n if (args.length > 0) {\n msg += ` :: ${JSON.stringify(args)}`;\n }\n return msg;\n};\nconst generatorFunction = (code, details = {}) => {\n const message = messages[code];\n if (!message) {\n throw new Error(`Unable to find message for code '${code}'.`);\n }\n return message(details);\n};\nexport const messageGenerator = process.env.NODE_ENV === 'production' ? fallback : generatorFunction;\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { messageGenerator } from '../models/messages/messageGenerator.js';\nimport '../_version.js';\n/**\n * Workbox errors should be thrown with this class.\n * This allows use to ensure the type easily in tests,\n * helps developers identify errors from workbox\n * easily and allows use to optimise error\n * messages correctly.\n *\n * @private\n */\nclass WorkboxError extends Error {\n /**\n *\n * @param {string} errorCode The error code that\n * identifies this particular error.\n * @param {Object=} details Any relevant arguments\n * that will help developers identify issues should\n * be added as a key on the context object.\n */\n constructor(errorCode, details) {\n const message = messageGenerator(errorCode, details);\n super(message);\n this.name = errorCode;\n this.details = details;\n }\n}\nexport { WorkboxError };\n","\"use strict\";\n// @ts-ignore\ntry {\n self['workbox:routing:6.6.0'] && _();\n}\ncatch (e) { }\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n/**\n * The default HTTP method, 'GET', used when there's no specific method\n * configured for a route.\n *\n * @type {string}\n *\n * @private\n */\nexport const defaultMethod = 'GET';\n/**\n * The list of valid HTTP methods associated with requests that could be routed.\n *\n * @type {Array}\n *\n * @private\n */\nexport const validMethods = [\n 'DELETE',\n 'GET',\n 'HEAD',\n 'PATCH',\n 'POST',\n 'PUT',\n];\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { assert } from 'workbox-core/_private/assert.js';\nimport '../_version.js';\n/**\n * @param {function()|Object} handler Either a function, or an object with a\n * 'handle' method.\n * @return {Object} An object with a handle method.\n *\n * @private\n */\nexport const normalizeHandler = (handler) => {\n if (handler && typeof handler === 'object') {\n if (process.env.NODE_ENV !== 'production') {\n assert.hasMethod(handler, 'handle', {\n moduleName: 'workbox-routing',\n className: 'Route',\n funcName: 'constructor',\n paramName: 'handler',\n });\n }\n return handler;\n }\n else {\n if (process.env.NODE_ENV !== 'production') {\n assert.isType(handler, 'function', {\n moduleName: 'workbox-routing',\n className: 'Route',\n funcName: 'constructor',\n paramName: 'handler',\n });\n }\n return { handle: handler };\n }\n};\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { assert } from 'workbox-core/_private/assert.js';\nimport { defaultMethod, validMethods } from './utils/constants.js';\nimport { normalizeHandler } from './utils/normalizeHandler.js';\nimport './_version.js';\n/**\n * A `Route` consists of a pair of callback functions, \"match\" and \"handler\".\n * The \"match\" callback determine if a route should be used to \"handle\" a\n * request by returning a non-falsy value if it can. The \"handler\" callback\n * is called when there is a match and should return a Promise that resolves\n * to a `Response`.\n *\n * @memberof workbox-routing\n */\nclass Route {\n /**\n * Constructor for Route class.\n *\n * @param {workbox-routing~matchCallback} match\n * A callback function that determines whether the route matches a given\n * `fetch` event by returning a non-falsy value.\n * @param {workbox-routing~handlerCallback} handler A callback\n * function that returns a Promise resolving to a Response.\n * @param {string} [method='GET'] The HTTP method to match the Route\n * against.\n */\n constructor(match, handler, method = defaultMethod) {\n if (process.env.NODE_ENV !== 'production') {\n assert.isType(match, 'function', {\n moduleName: 'workbox-routing',\n className: 'Route',\n funcName: 'constructor',\n paramName: 'match',\n });\n if (method) {\n assert.isOneOf(method, validMethods, { paramName: 'method' });\n }\n }\n // These values are referenced directly by Router so cannot be\n // altered by minificaton.\n this.handler = normalizeHandler(handler);\n this.match = match;\n this.method = method;\n }\n /**\n *\n * @param {workbox-routing-handlerCallback} handler A callback\n * function that returns a Promise resolving to a Response\n */\n setCatchHandler(handler) {\n this.catchHandler = normalizeHandler(handler);\n }\n}\nexport { Route };\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { assert } from 'workbox-core/_private/assert.js';\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { Route } from './Route.js';\nimport './_version.js';\n/**\n * RegExpRoute makes it easy to create a regular expression based\n * {@link workbox-routing.Route}.\n *\n * For same-origin requests the RegExp only needs to match part of the URL. For\n * requests against third-party servers, you must define a RegExp that matches\n * the start of the URL.\n *\n * @memberof workbox-routing\n * @extends workbox-routing.Route\n */\nclass RegExpRoute extends Route {\n /**\n * If the regular expression contains\n * [capture groups]{@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#grouping-back-references},\n * the captured values will be passed to the\n * {@link workbox-routing~handlerCallback} `params`\n * argument.\n *\n * @param {RegExp} regExp The regular expression to match against URLs.\n * @param {workbox-routing~handlerCallback} handler A callback\n * function that returns a Promise resulting in a Response.\n * @param {string} [method='GET'] The HTTP method to match the Route\n * against.\n */\n constructor(regExp, handler, method) {\n if (process.env.NODE_ENV !== 'production') {\n assert.isInstance(regExp, RegExp, {\n moduleName: 'workbox-routing',\n className: 'RegExpRoute',\n funcName: 'constructor',\n paramName: 'pattern',\n });\n }\n const match = ({ url }) => {\n const result = regExp.exec(url.href);\n // Return immediately if there's no match.\n if (!result) {\n return;\n }\n // Require that the match start at the first character in the URL string\n // if it's a cross-origin request.\n // See https://github.com/GoogleChrome/workbox/issues/281 for the context\n // behind this behavior.\n if (url.origin !== location.origin && result.index !== 0) {\n if (process.env.NODE_ENV !== 'production') {\n logger.debug(`The regular expression '${regExp.toString()}' only partially matched ` +\n `against the cross-origin URL '${url.toString()}'. RegExpRoute's will only ` +\n `handle cross-origin requests if they match the entire URL.`);\n }\n return;\n }\n // If the route matches, but there aren't any capture groups defined, then\n // this will return [], which is truthy and therefore sufficient to\n // indicate a match.\n // If there are capture groups, then it will return their values.\n return result.slice(1);\n };\n super(match, handler, method);\n }\n}\nexport { RegExpRoute };\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { assert } from 'workbox-core/_private/assert.js';\nimport { getFriendlyURL } from 'workbox-core/_private/getFriendlyURL.js';\nimport { defaultMethod } from './utils/constants.js';\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { normalizeHandler } from './utils/normalizeHandler.js';\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport './_version.js';\n/**\n * The Router can be used to process a `FetchEvent` using one or more\n * {@link workbox-routing.Route}, responding with a `Response` if\n * a matching route exists.\n *\n * If no route matches a given a request, the Router will use a \"default\"\n * handler if one is defined.\n *\n * Should the matching Route throw an error, the Router will use a \"catch\"\n * handler if one is defined to gracefully deal with issues and respond with a\n * Request.\n *\n * If a request matches multiple routes, the **earliest** registered route will\n * be used to respond to the request.\n *\n * @memberof workbox-routing\n */\nclass Router {\n /**\n * Initializes a new Router.\n */\n constructor() {\n this._routes = new Map();\n this._defaultHandlerMap = new Map();\n }\n /**\n * @return {Map>} routes A `Map` of HTTP\n * method name ('GET', etc.) to an array of all the corresponding `Route`\n * instances that are registered.\n */\n get routes() {\n return this._routes;\n }\n /**\n * Adds a fetch event listener to respond to events when a route matches\n * the event's request.\n */\n addFetchListener() {\n // See https://github.com/Microsoft/TypeScript/issues/28357#issuecomment-436484705\n self.addEventListener('fetch', ((event) => {\n const { request } = event;\n const responsePromise = this.handleRequest({ request, event });\n if (responsePromise) {\n event.respondWith(responsePromise);\n }\n }));\n }\n /**\n * Adds a message event listener for URLs to cache from the window.\n * This is useful to cache resources loaded on the page prior to when the\n * service worker started controlling it.\n *\n * The format of the message data sent from the window should be as follows.\n * Where the `urlsToCache` array may consist of URL strings or an array of\n * URL string + `requestInit` object (the same as you'd pass to `fetch()`).\n *\n * ```\n * {\n * type: 'CACHE_URLS',\n * payload: {\n * urlsToCache: [\n * './script1.js',\n * './script2.js',\n * ['./script3.js', {mode: 'no-cors'}],\n * ],\n * },\n * }\n * ```\n */\n addCacheListener() {\n // See https://github.com/Microsoft/TypeScript/issues/28357#issuecomment-436484705\n self.addEventListener('message', ((event) => {\n // event.data is type 'any'\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (event.data && event.data.type === 'CACHE_URLS') {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const { payload } = event.data;\n if (process.env.NODE_ENV !== 'production') {\n logger.debug(`Caching URLs from the window`, payload.urlsToCache);\n }\n const requestPromises = Promise.all(payload.urlsToCache.map((entry) => {\n if (typeof entry === 'string') {\n entry = [entry];\n }\n const request = new Request(...entry);\n return this.handleRequest({ request, event });\n // TODO(philipwalton): TypeScript errors without this typecast for\n // some reason (probably a bug). The real type here should work but\n // doesn't: `Array | undefined>`.\n })); // TypeScript\n event.waitUntil(requestPromises);\n // If a MessageChannel was used, reply to the message on success.\n if (event.ports && event.ports[0]) {\n void requestPromises.then(() => event.ports[0].postMessage(true));\n }\n }\n }));\n }\n /**\n * Apply the routing rules to a FetchEvent object to get a Response from an\n * appropriate Route's handler.\n *\n * @param {Object} options\n * @param {Request} options.request The request to handle.\n * @param {ExtendableEvent} options.event The event that triggered the\n * request.\n * @return {Promise|undefined} A promise is returned if a\n * registered route can handle the request. If there is no matching\n * route and there's no `defaultHandler`, `undefined` is returned.\n */\n handleRequest({ request, event, }) {\n if (process.env.NODE_ENV !== 'production') {\n assert.isInstance(request, Request, {\n moduleName: 'workbox-routing',\n className: 'Router',\n funcName: 'handleRequest',\n paramName: 'options.request',\n });\n }\n const url = new URL(request.url, location.href);\n if (!url.protocol.startsWith('http')) {\n if (process.env.NODE_ENV !== 'production') {\n logger.debug(`Workbox Router only supports URLs that start with 'http'.`);\n }\n return;\n }\n const sameOrigin = url.origin === location.origin;\n const { params, route } = this.findMatchingRoute({\n event,\n request,\n sameOrigin,\n url,\n });\n let handler = route && route.handler;\n const debugMessages = [];\n if (process.env.NODE_ENV !== 'production') {\n if (handler) {\n debugMessages.push([`Found a route to handle this request:`, route]);\n if (params) {\n debugMessages.push([\n `Passing the following params to the route's handler:`,\n params,\n ]);\n }\n }\n }\n // If we don't have a handler because there was no matching route, then\n // fall back to defaultHandler if that's defined.\n const method = request.method;\n if (!handler && this._defaultHandlerMap.has(method)) {\n if (process.env.NODE_ENV !== 'production') {\n debugMessages.push(`Failed to find a matching route. Falling ` +\n `back to the default handler for ${method}.`);\n }\n handler = this._defaultHandlerMap.get(method);\n }\n if (!handler) {\n if (process.env.NODE_ENV !== 'production') {\n // No handler so Workbox will do nothing. If logs is set of debug\n // i.e. verbose, we should print out this information.\n logger.debug(`No route found for: ${getFriendlyURL(url)}`);\n }\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // We have a handler, meaning Workbox is going to handle the route.\n // print the routing details to the console.\n logger.groupCollapsed(`Router is responding to: ${getFriendlyURL(url)}`);\n debugMessages.forEach((msg) => {\n if (Array.isArray(msg)) {\n logger.log(...msg);\n }\n else {\n logger.log(msg);\n }\n });\n logger.groupEnd();\n }\n // Wrap in try and catch in case the handle method throws a synchronous\n // error. It should still callback to the catch handler.\n let responsePromise;\n try {\n responsePromise = handler.handle({ url, request, event, params });\n }\n catch (err) {\n responsePromise = Promise.reject(err);\n }\n // Get route's catch handler, if it exists\n const catchHandler = route && route.catchHandler;\n if (responsePromise instanceof Promise &&\n (this._catchHandler || catchHandler)) {\n responsePromise = responsePromise.catch(async (err) => {\n // If there's a route catch handler, process that first\n if (catchHandler) {\n if (process.env.NODE_ENV !== 'production') {\n // Still include URL here as it will be async from the console group\n // and may not make sense without the URL\n logger.groupCollapsed(`Error thrown when responding to: ` +\n ` ${getFriendlyURL(url)}. Falling back to route's Catch Handler.`);\n logger.error(`Error thrown by:`, route);\n logger.error(err);\n logger.groupEnd();\n }\n try {\n return await catchHandler.handle({ url, request, event, params });\n }\n catch (catchErr) {\n if (catchErr instanceof Error) {\n err = catchErr;\n }\n }\n }\n if (this._catchHandler) {\n if (process.env.NODE_ENV !== 'production') {\n // Still include URL here as it will be async from the console group\n // and may not make sense without the URL\n logger.groupCollapsed(`Error thrown when responding to: ` +\n ` ${getFriendlyURL(url)}. Falling back to global Catch Handler.`);\n logger.error(`Error thrown by:`, route);\n logger.error(err);\n logger.groupEnd();\n }\n return this._catchHandler.handle({ url, request, event });\n }\n throw err;\n });\n }\n return responsePromise;\n }\n /**\n * Checks a request and URL (and optionally an event) against the list of\n * registered routes, and if there's a match, returns the corresponding\n * route along with any params generated by the match.\n *\n * @param {Object} options\n * @param {URL} options.url\n * @param {boolean} options.sameOrigin The result of comparing `url.origin`\n * against the current origin.\n * @param {Request} options.request The request to match.\n * @param {Event} options.event The corresponding event.\n * @return {Object} An object with `route` and `params` properties.\n * They are populated if a matching route was found or `undefined`\n * otherwise.\n */\n findMatchingRoute({ url, sameOrigin, request, event, }) {\n const routes = this._routes.get(request.method) || [];\n for (const route of routes) {\n let params;\n // route.match returns type any, not possible to change right now.\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const matchResult = route.match({ url, sameOrigin, request, event });\n if (matchResult) {\n if (process.env.NODE_ENV !== 'production') {\n // Warn developers that using an async matchCallback is almost always\n // not the right thing to do.\n if (matchResult instanceof Promise) {\n logger.warn(`While routing ${getFriendlyURL(url)}, an async ` +\n `matchCallback function was used. Please convert the ` +\n `following route to use a synchronous matchCallback function:`, route);\n }\n }\n // See https://github.com/GoogleChrome/workbox/issues/2079\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n params = matchResult;\n if (Array.isArray(params) && params.length === 0) {\n // Instead of passing an empty array in as params, use undefined.\n params = undefined;\n }\n else if (matchResult.constructor === Object && // eslint-disable-line\n Object.keys(matchResult).length === 0) {\n // Instead of passing an empty object in as params, use undefined.\n params = undefined;\n }\n else if (typeof matchResult === 'boolean') {\n // For the boolean value true (rather than just something truth-y),\n // don't set params.\n // See https://github.com/GoogleChrome/workbox/pull/2134#issuecomment-513924353\n params = undefined;\n }\n // Return early if have a match.\n return { route, params };\n }\n }\n // If no match was found above, return and empty object.\n return {};\n }\n /**\n * Define a default `handler` that's called when no routes explicitly\n * match the incoming request.\n *\n * Each HTTP method ('GET', 'POST', etc.) gets its own default handler.\n *\n * Without a default handler, unmatched requests will go against the\n * network as if there were no service worker present.\n *\n * @param {workbox-routing~handlerCallback} handler A callback\n * function that returns a Promise resulting in a Response.\n * @param {string} [method='GET'] The HTTP method to associate with this\n * default handler. Each method has its own default.\n */\n setDefaultHandler(handler, method = defaultMethod) {\n this._defaultHandlerMap.set(method, normalizeHandler(handler));\n }\n /**\n * If a Route throws an error while handling a request, this `handler`\n * will be called and given a chance to provide a response.\n *\n * @param {workbox-routing~handlerCallback} handler A callback\n * function that returns a Promise resulting in a Response.\n */\n setCatchHandler(handler) {\n this._catchHandler = normalizeHandler(handler);\n }\n /**\n * Registers a route with the router.\n *\n * @param {workbox-routing.Route} route The route to register.\n */\n registerRoute(route) {\n if (process.env.NODE_ENV !== 'production') {\n assert.isType(route, 'object', {\n moduleName: 'workbox-routing',\n className: 'Router',\n funcName: 'registerRoute',\n paramName: 'route',\n });\n assert.hasMethod(route, 'match', {\n moduleName: 'workbox-routing',\n className: 'Router',\n funcName: 'registerRoute',\n paramName: 'route',\n });\n assert.isType(route.handler, 'object', {\n moduleName: 'workbox-routing',\n className: 'Router',\n funcName: 'registerRoute',\n paramName: 'route',\n });\n assert.hasMethod(route.handler, 'handle', {\n moduleName: 'workbox-routing',\n className: 'Router',\n funcName: 'registerRoute',\n paramName: 'route.handler',\n });\n assert.isType(route.method, 'string', {\n moduleName: 'workbox-routing',\n className: 'Router',\n funcName: 'registerRoute',\n paramName: 'route.method',\n });\n }\n if (!this._routes.has(route.method)) {\n this._routes.set(route.method, []);\n }\n // Give precedence to all of the earlier routes by adding this additional\n // route to the end of the array.\n this._routes.get(route.method).push(route);\n }\n /**\n * Unregisters a route with the router.\n *\n * @param {workbox-routing.Route} route The route to unregister.\n */\n unregisterRoute(route) {\n if (!this._routes.has(route.method)) {\n throw new WorkboxError('unregister-route-but-not-found-with-method', {\n method: route.method,\n });\n }\n const routeIndex = this._routes.get(route.method).indexOf(route);\n if (routeIndex > -1) {\n this._routes.get(route.method).splice(routeIndex, 1);\n }\n else {\n throw new WorkboxError('unregister-route-route-not-registered');\n }\n }\n}\nexport { Router };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { Router } from '../Router.js';\nimport '../_version.js';\nlet defaultRouter;\n/**\n * Creates a new, singleton Router instance if one does not exist. If one\n * does already exist, that instance is returned.\n *\n * @private\n * @return {Router}\n */\nexport const getOrCreateDefaultRouter = () => {\n if (!defaultRouter) {\n defaultRouter = new Router();\n // The helpers that use the default Router assume these listeners exist.\n defaultRouter.addFetchListener();\n defaultRouter.addCacheListener();\n }\n return defaultRouter;\n};\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport { Route } from './Route.js';\nimport { RegExpRoute } from './RegExpRoute.js';\nimport { getOrCreateDefaultRouter } from './utils/getOrCreateDefaultRouter.js';\nimport './_version.js';\n/**\n * Easily register a RegExp, string, or function with a caching\n * strategy to a singleton Router instance.\n *\n * This method will generate a Route for you if needed and\n * call {@link workbox-routing.Router#registerRoute}.\n *\n * @param {RegExp|string|workbox-routing.Route~matchCallback|workbox-routing.Route} capture\n * If the capture param is a `Route`, all other arguments will be ignored.\n * @param {workbox-routing~handlerCallback} [handler] A callback\n * function that returns a Promise resulting in a Response. This parameter\n * is required if `capture` is not a `Route` object.\n * @param {string} [method='GET'] The HTTP method to match the Route\n * against.\n * @return {workbox-routing.Route} The generated `Route`.\n *\n * @memberof workbox-routing\n */\nfunction registerRoute(capture, handler, method) {\n let route;\n if (typeof capture === 'string') {\n const captureUrl = new URL(capture, location.href);\n if (process.env.NODE_ENV !== 'production') {\n if (!(capture.startsWith('/') || capture.startsWith('http'))) {\n throw new WorkboxError('invalid-string', {\n moduleName: 'workbox-routing',\n funcName: 'registerRoute',\n paramName: 'capture',\n });\n }\n // We want to check if Express-style wildcards are in the pathname only.\n // TODO: Remove this log message in v4.\n const valueToCheck = capture.startsWith('http')\n ? captureUrl.pathname\n : capture;\n // See https://github.com/pillarjs/path-to-regexp#parameters\n const wildcards = '[*:?+]';\n if (new RegExp(`${wildcards}`).exec(valueToCheck)) {\n logger.debug(`The '$capture' parameter contains an Express-style wildcard ` +\n `character (${wildcards}). Strings are now always interpreted as ` +\n `exact matches; use a RegExp for partial or wildcard matches.`);\n }\n }\n const matchCallback = ({ url }) => {\n if (process.env.NODE_ENV !== 'production') {\n if (url.pathname === captureUrl.pathname &&\n url.origin !== captureUrl.origin) {\n logger.debug(`${capture} only partially matches the cross-origin URL ` +\n `${url.toString()}. This route will only handle cross-origin requests ` +\n `if they match the entire URL.`);\n }\n }\n return url.href === captureUrl.href;\n };\n // If `capture` is a string then `handler` and `method` must be present.\n route = new Route(matchCallback, handler, method);\n }\n else if (capture instanceof RegExp) {\n // If `capture` is a `RegExp` then `handler` and `method` must be present.\n route = new RegExpRoute(capture, handler, method);\n }\n else if (typeof capture === 'function') {\n // If `capture` is a function then `handler` and `method` must be present.\n route = new Route(capture, handler, method);\n }\n else if (capture instanceof Route) {\n route = capture;\n }\n else {\n throw new WorkboxError('unsupported-route-type', {\n moduleName: 'workbox-routing',\n funcName: 'registerRoute',\n paramName: 'capture',\n });\n }\n const defaultRouter = getOrCreateDefaultRouter();\n defaultRouter.registerRoute(route);\n return route;\n}\nexport { registerRoute };\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\nconst _cacheNameDetails = {\n googleAnalytics: 'googleAnalytics',\n precache: 'precache-v2',\n prefix: 'workbox',\n runtime: 'runtime',\n suffix: typeof registration !== 'undefined' ? registration.scope : '',\n};\nconst _createCacheName = (cacheName) => {\n return [_cacheNameDetails.prefix, cacheName, _cacheNameDetails.suffix]\n .filter((value) => value && value.length > 0)\n .join('-');\n};\nconst eachCacheNameDetail = (fn) => {\n for (const key of Object.keys(_cacheNameDetails)) {\n fn(key);\n }\n};\nexport const cacheNames = {\n updateDetails: (details) => {\n eachCacheNameDetail((key) => {\n if (typeof details[key] === 'string') {\n _cacheNameDetails[key] = details[key];\n }\n });\n },\n getGoogleAnalyticsName: (userCacheName) => {\n return userCacheName || _createCacheName(_cacheNameDetails.googleAnalytics);\n },\n getPrecacheName: (userCacheName) => {\n return userCacheName || _createCacheName(_cacheNameDetails.precache);\n },\n getPrefix: () => {\n return _cacheNameDetails.prefix;\n },\n getRuntimeName: (userCacheName) => {\n return userCacheName || _createCacheName(_cacheNameDetails.runtime);\n },\n getSuffix: () => {\n return _cacheNameDetails.suffix;\n },\n};\n","/*\n Copyright 2020 Google LLC\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\nfunction stripParams(fullURL, ignoreParams) {\n const strippedURL = new URL(fullURL);\n for (const param of ignoreParams) {\n strippedURL.searchParams.delete(param);\n }\n return strippedURL.href;\n}\n/**\n * Matches an item in the cache, ignoring specific URL params. This is similar\n * to the `ignoreSearch` option, but it allows you to ignore just specific\n * params (while continuing to match on the others).\n *\n * @private\n * @param {Cache} cache\n * @param {Request} request\n * @param {Object} matchOptions\n * @param {Array} ignoreParams\n * @return {Promise}\n */\nasync function cacheMatchIgnoreParams(cache, request, ignoreParams, matchOptions) {\n const strippedRequestURL = stripParams(request.url, ignoreParams);\n // If the request doesn't include any ignored params, match as normal.\n if (request.url === strippedRequestURL) {\n return cache.match(request, matchOptions);\n }\n // Otherwise, match by comparing keys\n const keysOptions = Object.assign(Object.assign({}, matchOptions), { ignoreSearch: true });\n const cacheKeys = await cache.keys(request, keysOptions);\n for (const cacheKey of cacheKeys) {\n const strippedCacheKeyURL = stripParams(cacheKey.url, ignoreParams);\n if (strippedRequestURL === strippedCacheKeyURL) {\n return cache.match(cacheKey, matchOptions);\n }\n }\n return;\n}\nexport { cacheMatchIgnoreParams };\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n/**\n * The Deferred class composes Promises in a way that allows for them to be\n * resolved or rejected from outside the constructor. In most cases promises\n * should be used directly, but Deferreds can be necessary when the logic to\n * resolve a promise must be separate.\n *\n * @private\n */\nclass Deferred {\n /**\n * Creates a promise and exposes its resolve and reject functions as methods.\n */\n constructor() {\n this.promise = new Promise((resolve, reject) => {\n this.resolve = resolve;\n this.reject = reject;\n });\n }\n}\nexport { Deferred };\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n// Callbacks to be executed whenever there's a quota error.\n// Can't change Function type right now.\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst quotaErrorCallbacks = new Set();\nexport { quotaErrorCallbacks };\n","\"use strict\";\n// @ts-ignore\ntry {\n self['workbox:strategies:6.6.0'] && _();\n}\ncatch (e) { }\n","/*\n Copyright 2020 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { assert } from 'workbox-core/_private/assert.js';\nimport { cacheMatchIgnoreParams } from 'workbox-core/_private/cacheMatchIgnoreParams.js';\nimport { Deferred } from 'workbox-core/_private/Deferred.js';\nimport { executeQuotaErrorCallbacks } from 'workbox-core/_private/executeQuotaErrorCallbacks.js';\nimport { getFriendlyURL } from 'workbox-core/_private/getFriendlyURL.js';\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { timeout } from 'workbox-core/_private/timeout.js';\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport './_version.js';\nfunction toRequest(input) {\n return typeof input === 'string' ? new Request(input) : input;\n}\n/**\n * A class created every time a Strategy instance instance calls\n * {@link workbox-strategies.Strategy~handle} or\n * {@link workbox-strategies.Strategy~handleAll} that wraps all fetch and\n * cache actions around plugin callbacks and keeps track of when the strategy\n * is \"done\" (i.e. all added `event.waitUntil()` promises have resolved).\n *\n * @memberof workbox-strategies\n */\nclass StrategyHandler {\n /**\n * Creates a new instance associated with the passed strategy and event\n * that's handling the request.\n *\n * The constructor also initializes the state that will be passed to each of\n * the plugins handling this request.\n *\n * @param {workbox-strategies.Strategy} strategy\n * @param {Object} options\n * @param {Request|string} options.request A request to run this strategy for.\n * @param {ExtendableEvent} options.event The event associated with the\n * request.\n * @param {URL} [options.url]\n * @param {*} [options.params] The return value from the\n * {@link workbox-routing~matchCallback} (if applicable).\n */\n constructor(strategy, options) {\n this._cacheKeys = {};\n /**\n * The request the strategy is performing (passed to the strategy's\n * `handle()` or `handleAll()` method).\n * @name request\n * @instance\n * @type {Request}\n * @memberof workbox-strategies.StrategyHandler\n */\n /**\n * The event associated with this request.\n * @name event\n * @instance\n * @type {ExtendableEvent}\n * @memberof workbox-strategies.StrategyHandler\n */\n /**\n * A `URL` instance of `request.url` (if passed to the strategy's\n * `handle()` or `handleAll()` method).\n * Note: the `url` param will be present if the strategy was invoked\n * from a workbox `Route` object.\n * @name url\n * @instance\n * @type {URL|undefined}\n * @memberof workbox-strategies.StrategyHandler\n */\n /**\n * A `param` value (if passed to the strategy's\n * `handle()` or `handleAll()` method).\n * Note: the `param` param will be present if the strategy was invoked\n * from a workbox `Route` object and the\n * {@link workbox-routing~matchCallback} returned\n * a truthy value (it will be that value).\n * @name params\n * @instance\n * @type {*|undefined}\n * @memberof workbox-strategies.StrategyHandler\n */\n if (process.env.NODE_ENV !== 'production') {\n assert.isInstance(options.event, ExtendableEvent, {\n moduleName: 'workbox-strategies',\n className: 'StrategyHandler',\n funcName: 'constructor',\n paramName: 'options.event',\n });\n }\n Object.assign(this, options);\n this.event = options.event;\n this._strategy = strategy;\n this._handlerDeferred = new Deferred();\n this._extendLifetimePromises = [];\n // Copy the plugins list (since it's mutable on the strategy),\n // so any mutations don't affect this handler instance.\n this._plugins = [...strategy.plugins];\n this._pluginStateMap = new Map();\n for (const plugin of this._plugins) {\n this._pluginStateMap.set(plugin, {});\n }\n this.event.waitUntil(this._handlerDeferred.promise);\n }\n /**\n * Fetches a given request (and invokes any applicable plugin callback\n * methods) using the `fetchOptions` (for non-navigation requests) and\n * `plugins` defined on the `Strategy` object.\n *\n * The following plugin lifecycle methods are invoked when using this method:\n * - `requestWillFetch()`\n * - `fetchDidSucceed()`\n * - `fetchDidFail()`\n *\n * @param {Request|string} input The URL or request to fetch.\n * @return {Promise}\n */\n async fetch(input) {\n const { event } = this;\n let request = toRequest(input);\n if (request.mode === 'navigate' &&\n event instanceof FetchEvent &&\n event.preloadResponse) {\n const possiblePreloadResponse = (await event.preloadResponse);\n if (possiblePreloadResponse) {\n if (process.env.NODE_ENV !== 'production') {\n logger.log(`Using a preloaded navigation response for ` +\n `'${getFriendlyURL(request.url)}'`);\n }\n return possiblePreloadResponse;\n }\n }\n // If there is a fetchDidFail plugin, we need to save a clone of the\n // original request before it's either modified by a requestWillFetch\n // plugin or before the original request's body is consumed via fetch().\n const originalRequest = this.hasCallback('fetchDidFail')\n ? request.clone()\n : null;\n try {\n for (const cb of this.iterateCallbacks('requestWillFetch')) {\n request = await cb({ request: request.clone(), event });\n }\n }\n catch (err) {\n if (err instanceof Error) {\n throw new WorkboxError('plugin-error-request-will-fetch', {\n thrownErrorMessage: err.message,\n });\n }\n }\n // The request can be altered by plugins with `requestWillFetch` making\n // the original request (most likely from a `fetch` event) different\n // from the Request we make. Pass both to `fetchDidFail` to aid debugging.\n const pluginFilteredRequest = request.clone();\n try {\n let fetchResponse;\n // See https://github.com/GoogleChrome/workbox/issues/1796\n fetchResponse = await fetch(request, request.mode === 'navigate' ? undefined : this._strategy.fetchOptions);\n if (process.env.NODE_ENV !== 'production') {\n logger.debug(`Network request for ` +\n `'${getFriendlyURL(request.url)}' returned a response with ` +\n `status '${fetchResponse.status}'.`);\n }\n for (const callback of this.iterateCallbacks('fetchDidSucceed')) {\n fetchResponse = await callback({\n event,\n request: pluginFilteredRequest,\n response: fetchResponse,\n });\n }\n return fetchResponse;\n }\n catch (error) {\n if (process.env.NODE_ENV !== 'production') {\n logger.log(`Network request for ` +\n `'${getFriendlyURL(request.url)}' threw an error.`, error);\n }\n // `originalRequest` will only exist if a `fetchDidFail` callback\n // is being used (see above).\n if (originalRequest) {\n await this.runCallbacks('fetchDidFail', {\n error: error,\n event,\n originalRequest: originalRequest.clone(),\n request: pluginFilteredRequest.clone(),\n });\n }\n throw error;\n }\n }\n /**\n * Calls `this.fetch()` and (in the background) runs `this.cachePut()` on\n * the response generated by `this.fetch()`.\n *\n * The call to `this.cachePut()` automatically invokes `this.waitUntil()`,\n * so you do not have to manually call `waitUntil()` on the event.\n *\n * @param {Request|string} input The request or URL to fetch and cache.\n * @return {Promise}\n */\n async fetchAndCachePut(input) {\n const response = await this.fetch(input);\n const responseClone = response.clone();\n void this.waitUntil(this.cachePut(input, responseClone));\n return response;\n }\n /**\n * Matches a request from the cache (and invokes any applicable plugin\n * callback methods) using the `cacheName`, `matchOptions`, and `plugins`\n * defined on the strategy object.\n *\n * The following plugin lifecycle methods are invoked when using this method:\n * - cacheKeyWillByUsed()\n * - cachedResponseWillByUsed()\n *\n * @param {Request|string} key The Request or URL to use as the cache key.\n * @return {Promise} A matching response, if found.\n */\n async cacheMatch(key) {\n const request = toRequest(key);\n let cachedResponse;\n const { cacheName, matchOptions } = this._strategy;\n const effectiveRequest = await this.getCacheKey(request, 'read');\n const multiMatchOptions = Object.assign(Object.assign({}, matchOptions), { cacheName });\n cachedResponse = await caches.match(effectiveRequest, multiMatchOptions);\n if (process.env.NODE_ENV !== 'production') {\n if (cachedResponse) {\n logger.debug(`Found a cached response in '${cacheName}'.`);\n }\n else {\n logger.debug(`No cached response found in '${cacheName}'.`);\n }\n }\n for (const callback of this.iterateCallbacks('cachedResponseWillBeUsed')) {\n cachedResponse =\n (await callback({\n cacheName,\n matchOptions,\n cachedResponse,\n request: effectiveRequest,\n event: this.event,\n })) || undefined;\n }\n return cachedResponse;\n }\n /**\n * Puts a request/response pair in the cache (and invokes any applicable\n * plugin callback methods) using the `cacheName` and `plugins` defined on\n * the strategy object.\n *\n * The following plugin lifecycle methods are invoked when using this method:\n * - cacheKeyWillByUsed()\n * - cacheWillUpdate()\n * - cacheDidUpdate()\n *\n * @param {Request|string} key The request or URL to use as the cache key.\n * @param {Response} response The response to cache.\n * @return {Promise} `false` if a cacheWillUpdate caused the response\n * not be cached, and `true` otherwise.\n */\n async cachePut(key, response) {\n const request = toRequest(key);\n // Run in the next task to avoid blocking other cache reads.\n // https://github.com/w3c/ServiceWorker/issues/1397\n await timeout(0);\n const effectiveRequest = await this.getCacheKey(request, 'write');\n if (process.env.NODE_ENV !== 'production') {\n if (effectiveRequest.method && effectiveRequest.method !== 'GET') {\n throw new WorkboxError('attempt-to-cache-non-get-request', {\n url: getFriendlyURL(effectiveRequest.url),\n method: effectiveRequest.method,\n });\n }\n // See https://github.com/GoogleChrome/workbox/issues/2818\n const vary = response.headers.get('Vary');\n if (vary) {\n logger.debug(`The response for ${getFriendlyURL(effectiveRequest.url)} ` +\n `has a 'Vary: ${vary}' header. ` +\n `Consider setting the {ignoreVary: true} option on your strategy ` +\n `to ensure cache matching and deletion works as expected.`);\n }\n }\n if (!response) {\n if (process.env.NODE_ENV !== 'production') {\n logger.error(`Cannot cache non-existent response for ` +\n `'${getFriendlyURL(effectiveRequest.url)}'.`);\n }\n throw new WorkboxError('cache-put-with-no-response', {\n url: getFriendlyURL(effectiveRequest.url),\n });\n }\n const responseToCache = await this._ensureResponseSafeToCache(response);\n if (!responseToCache) {\n if (process.env.NODE_ENV !== 'production') {\n logger.debug(`Response '${getFriendlyURL(effectiveRequest.url)}' ` +\n `will not be cached.`, responseToCache);\n }\n return false;\n }\n const { cacheName, matchOptions } = this._strategy;\n const cache = await self.caches.open(cacheName);\n const hasCacheUpdateCallback = this.hasCallback('cacheDidUpdate');\n const oldResponse = hasCacheUpdateCallback\n ? await cacheMatchIgnoreParams(\n // TODO(philipwalton): the `__WB_REVISION__` param is a precaching\n // feature. Consider into ways to only add this behavior if using\n // precaching.\n cache, effectiveRequest.clone(), ['__WB_REVISION__'], matchOptions)\n : null;\n if (process.env.NODE_ENV !== 'production') {\n logger.debug(`Updating the '${cacheName}' cache with a new Response ` +\n `for ${getFriendlyURL(effectiveRequest.url)}.`);\n }\n try {\n await cache.put(effectiveRequest, hasCacheUpdateCallback ? responseToCache.clone() : responseToCache);\n }\n catch (error) {\n if (error instanceof Error) {\n // See https://developer.mozilla.org/en-US/docs/Web/API/DOMException#exception-QuotaExceededError\n if (error.name === 'QuotaExceededError') {\n await executeQuotaErrorCallbacks();\n }\n throw error;\n }\n }\n for (const callback of this.iterateCallbacks('cacheDidUpdate')) {\n await callback({\n cacheName,\n oldResponse,\n newResponse: responseToCache.clone(),\n request: effectiveRequest,\n event: this.event,\n });\n }\n return true;\n }\n /**\n * Checks the list of plugins for the `cacheKeyWillBeUsed` callback, and\n * executes any of those callbacks found in sequence. The final `Request`\n * object returned by the last plugin is treated as the cache key for cache\n * reads and/or writes. If no `cacheKeyWillBeUsed` plugin callbacks have\n * been registered, the passed request is returned unmodified\n *\n * @param {Request} request\n * @param {string} mode\n * @return {Promise}\n */\n async getCacheKey(request, mode) {\n const key = `${request.url} | ${mode}`;\n if (!this._cacheKeys[key]) {\n let effectiveRequest = request;\n for (const callback of this.iterateCallbacks('cacheKeyWillBeUsed')) {\n effectiveRequest = toRequest(await callback({\n mode,\n request: effectiveRequest,\n event: this.event,\n // params has a type any can't change right now.\n params: this.params, // eslint-disable-line\n }));\n }\n this._cacheKeys[key] = effectiveRequest;\n }\n return this._cacheKeys[key];\n }\n /**\n * Returns true if the strategy has at least one plugin with the given\n * callback.\n *\n * @param {string} name The name of the callback to check for.\n * @return {boolean}\n */\n hasCallback(name) {\n for (const plugin of this._strategy.plugins) {\n if (name in plugin) {\n return true;\n }\n }\n return false;\n }\n /**\n * Runs all plugin callbacks matching the given name, in order, passing the\n * given param object (merged ith the current plugin state) as the only\n * argument.\n *\n * Note: since this method runs all plugins, it's not suitable for cases\n * where the return value of a callback needs to be applied prior to calling\n * the next callback. See\n * {@link workbox-strategies.StrategyHandler#iterateCallbacks}\n * below for how to handle that case.\n *\n * @param {string} name The name of the callback to run within each plugin.\n * @param {Object} param The object to pass as the first (and only) param\n * when executing each callback. This object will be merged with the\n * current plugin state prior to callback execution.\n */\n async runCallbacks(name, param) {\n for (const callback of this.iterateCallbacks(name)) {\n // TODO(philipwalton): not sure why `any` is needed. It seems like\n // this should work with `as WorkboxPluginCallbackParam[C]`.\n await callback(param);\n }\n }\n /**\n * Accepts a callback and returns an iterable of matching plugin callbacks,\n * where each callback is wrapped with the current handler state (i.e. when\n * you call each callback, whatever object parameter you pass it will\n * be merged with the plugin's current state).\n *\n * @param {string} name The name fo the callback to run\n * @return {Array}\n */\n *iterateCallbacks(name) {\n for (const plugin of this._strategy.plugins) {\n if (typeof plugin[name] === 'function') {\n const state = this._pluginStateMap.get(plugin);\n const statefulCallback = (param) => {\n const statefulParam = Object.assign(Object.assign({}, param), { state });\n // TODO(philipwalton): not sure why `any` is needed. It seems like\n // this should work with `as WorkboxPluginCallbackParam[C]`.\n return plugin[name](statefulParam);\n };\n yield statefulCallback;\n }\n }\n }\n /**\n * Adds a promise to the\n * [extend lifetime promises]{@link https://w3c.github.io/ServiceWorker/#extendableevent-extend-lifetime-promises}\n * of the event event associated with the request being handled (usually a\n * `FetchEvent`).\n *\n * Note: you can await\n * {@link workbox-strategies.StrategyHandler~doneWaiting}\n * to know when all added promises have settled.\n *\n * @param {Promise} promise A promise to add to the extend lifetime promises\n * of the event that triggered the request.\n */\n waitUntil(promise) {\n this._extendLifetimePromises.push(promise);\n return promise;\n }\n /**\n * Returns a promise that resolves once all promises passed to\n * {@link workbox-strategies.StrategyHandler~waitUntil}\n * have settled.\n *\n * Note: any work done after `doneWaiting()` settles should be manually\n * passed to an event's `waitUntil()` method (not this handler's\n * `waitUntil()` method), otherwise the service worker thread my be killed\n * prior to your work completing.\n */\n async doneWaiting() {\n let promise;\n while ((promise = this._extendLifetimePromises.shift())) {\n await promise;\n }\n }\n /**\n * Stops running the strategy and immediately resolves any pending\n * `waitUntil()` promises.\n */\n destroy() {\n this._handlerDeferred.resolve(null);\n }\n /**\n * This method will call cacheWillUpdate on the available plugins (or use\n * status === 200) to determine if the Response is safe and valid to cache.\n *\n * @param {Request} options.request\n * @param {Response} options.response\n * @return {Promise}\n *\n * @private\n */\n async _ensureResponseSafeToCache(response) {\n let responseToCache = response;\n let pluginsUsed = false;\n for (const callback of this.iterateCallbacks('cacheWillUpdate')) {\n responseToCache =\n (await callback({\n request: this.request,\n response: responseToCache,\n event: this.event,\n })) || undefined;\n pluginsUsed = true;\n if (!responseToCache) {\n break;\n }\n }\n if (!pluginsUsed) {\n if (responseToCache && responseToCache.status !== 200) {\n responseToCache = undefined;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (responseToCache) {\n if (responseToCache.status !== 200) {\n if (responseToCache.status === 0) {\n logger.warn(`The response for '${this.request.url}' ` +\n `is an opaque response. The caching strategy that you're ` +\n `using will not cache opaque responses by default.`);\n }\n else {\n logger.debug(`The response for '${this.request.url}' ` +\n `returned a status code of '${response.status}' and won't ` +\n `be cached as a result.`);\n }\n }\n }\n }\n }\n return responseToCache;\n }\n}\nexport { StrategyHandler };\n","/*\n Copyright 2019 Google LLC\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n/**\n * Returns a promise that resolves and the passed number of milliseconds.\n * This utility is an async/await-friendly version of `setTimeout`.\n *\n * @param {number} ms\n * @return {Promise}\n * @private\n */\nexport function timeout(ms) {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\nconst getFriendlyURL = (url) => {\n const urlObj = new URL(String(url), location.href);\n // See https://github.com/GoogleChrome/workbox/issues/2323\n // We want to include everything, except for the origin if it's same-origin.\n return urlObj.href.replace(new RegExp(`^${location.origin}`), '');\n};\nexport { getFriendlyURL };\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { logger } from '../_private/logger.js';\nimport { quotaErrorCallbacks } from '../models/quotaErrorCallbacks.js';\nimport '../_version.js';\n/**\n * Runs all of the callback functions, one at a time sequentially, in the order\n * in which they were registered.\n *\n * @memberof workbox-core\n * @private\n */\nasync function executeQuotaErrorCallbacks() {\n if (process.env.NODE_ENV !== 'production') {\n logger.log(`About to run ${quotaErrorCallbacks.size} ` +\n `callbacks to clean up caches.`);\n }\n for (const callback of quotaErrorCallbacks) {\n await callback();\n if (process.env.NODE_ENV !== 'production') {\n logger.log(callback, 'is complete.');\n }\n }\n if (process.env.NODE_ENV !== 'production') {\n logger.log('Finished running callbacks.');\n }\n}\nexport { executeQuotaErrorCallbacks };\n","/*\n Copyright 2020 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { cacheNames } from 'workbox-core/_private/cacheNames.js';\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { getFriendlyURL } from 'workbox-core/_private/getFriendlyURL.js';\nimport { StrategyHandler } from './StrategyHandler.js';\nimport './_version.js';\n/**\n * An abstract base class that all other strategy classes must extend from:\n *\n * @memberof workbox-strategies\n */\nclass Strategy {\n /**\n * Creates a new instance of the strategy and sets all documented option\n * properties as public instance properties.\n *\n * Note: if a custom strategy class extends the base Strategy class and does\n * not need more than these properties, it does not need to define its own\n * constructor.\n *\n * @param {Object} [options]\n * @param {string} [options.cacheName] Cache name to store and retrieve\n * requests. Defaults to the cache names provided by\n * {@link workbox-core.cacheNames}.\n * @param {Array} [options.plugins] [Plugins]{@link https://developers.google.com/web/tools/workbox/guides/using-plugins}\n * to use in conjunction with this caching strategy.\n * @param {Object} [options.fetchOptions] Values passed along to the\n * [`init`](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch#Parameters)\n * of [non-navigation](https://github.com/GoogleChrome/workbox/issues/1796)\n * `fetch()` requests made by this strategy.\n * @param {Object} [options.matchOptions] The\n * [`CacheQueryOptions`]{@link https://w3c.github.io/ServiceWorker/#dictdef-cachequeryoptions}\n * for any `cache.match()` or `cache.put()` calls made by this strategy.\n */\n constructor(options = {}) {\n /**\n * Cache name to store and retrieve\n * requests. Defaults to the cache names provided by\n * {@link workbox-core.cacheNames}.\n *\n * @type {string}\n */\n this.cacheName = cacheNames.getRuntimeName(options.cacheName);\n /**\n * The list\n * [Plugins]{@link https://developers.google.com/web/tools/workbox/guides/using-plugins}\n * used by this strategy.\n *\n * @type {Array}\n */\n this.plugins = options.plugins || [];\n /**\n * Values passed along to the\n * [`init`]{@link https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch#Parameters}\n * of all fetch() requests made by this strategy.\n *\n * @type {Object}\n */\n this.fetchOptions = options.fetchOptions;\n /**\n * The\n * [`CacheQueryOptions`]{@link https://w3c.github.io/ServiceWorker/#dictdef-cachequeryoptions}\n * for any `cache.match()` or `cache.put()` calls made by this strategy.\n *\n * @type {Object}\n */\n this.matchOptions = options.matchOptions;\n }\n /**\n * Perform a request strategy and returns a `Promise` that will resolve with\n * a `Response`, invoking all relevant plugin callbacks.\n *\n * When a strategy instance is registered with a Workbox\n * {@link workbox-routing.Route}, this method is automatically\n * called when the route matches.\n *\n * Alternatively, this method can be used in a standalone `FetchEvent`\n * listener by passing it to `event.respondWith()`.\n *\n * @param {FetchEvent|Object} options A `FetchEvent` or an object with the\n * properties listed below.\n * @param {Request|string} options.request A request to run this strategy for.\n * @param {ExtendableEvent} options.event The event associated with the\n * request.\n * @param {URL} [options.url]\n * @param {*} [options.params]\n */\n handle(options) {\n const [responseDone] = this.handleAll(options);\n return responseDone;\n }\n /**\n * Similar to {@link workbox-strategies.Strategy~handle}, but\n * instead of just returning a `Promise` that resolves to a `Response` it\n * it will return an tuple of `[response, done]` promises, where the former\n * (`response`) is equivalent to what `handle()` returns, and the latter is a\n * Promise that will resolve once any promises that were added to\n * `event.waitUntil()` as part of performing the strategy have completed.\n *\n * You can await the `done` promise to ensure any extra work performed by\n * the strategy (usually caching responses) completes successfully.\n *\n * @param {FetchEvent|Object} options A `FetchEvent` or an object with the\n * properties listed below.\n * @param {Request|string} options.request A request to run this strategy for.\n * @param {ExtendableEvent} options.event The event associated with the\n * request.\n * @param {URL} [options.url]\n * @param {*} [options.params]\n * @return {Array} A tuple of [response, done]\n * promises that can be used to determine when the response resolves as\n * well as when the handler has completed all its work.\n */\n handleAll(options) {\n // Allow for flexible options to be passed.\n if (options instanceof FetchEvent) {\n options = {\n event: options,\n request: options.request,\n };\n }\n const event = options.event;\n const request = typeof options.request === 'string'\n ? new Request(options.request)\n : options.request;\n const params = 'params' in options ? options.params : undefined;\n const handler = new StrategyHandler(this, { event, request, params });\n const responseDone = this._getResponse(handler, request, event);\n const handlerDone = this._awaitComplete(responseDone, handler, request, event);\n // Return an array of promises, suitable for use with Promise.all().\n return [responseDone, handlerDone];\n }\n async _getResponse(handler, request, event) {\n await handler.runCallbacks('handlerWillStart', { event, request });\n let response = undefined;\n try {\n response = await this._handle(request, handler);\n // The \"official\" Strategy subclasses all throw this error automatically,\n // but in case a third-party Strategy doesn't, ensure that we have a\n // consistent failure when there's no response or an error response.\n if (!response || response.type === 'error') {\n throw new WorkboxError('no-response', { url: request.url });\n }\n }\n catch (error) {\n if (error instanceof Error) {\n for (const callback of handler.iterateCallbacks('handlerDidError')) {\n response = await callback({ error, event, request });\n if (response) {\n break;\n }\n }\n }\n if (!response) {\n throw error;\n }\n else if (process.env.NODE_ENV !== 'production') {\n logger.log(`While responding to '${getFriendlyURL(request.url)}', ` +\n `an ${error instanceof Error ? error.toString() : ''} error occurred. Using a fallback response provided by ` +\n `a handlerDidError plugin.`);\n }\n }\n for (const callback of handler.iterateCallbacks('handlerWillRespond')) {\n response = await callback({ event, request, response });\n }\n return response;\n }\n async _awaitComplete(responseDone, handler, request, event) {\n let response;\n let error;\n try {\n response = await responseDone;\n }\n catch (error) {\n // Ignore errors, as response errors should be caught via the `response`\n // promise above. The `done` promise will only throw for errors in\n // promises passed to `handler.waitUntil()`.\n }\n try {\n await handler.runCallbacks('handlerDidRespond', {\n event,\n request,\n response,\n });\n await handler.doneWaiting();\n }\n catch (waitUntilError) {\n if (waitUntilError instanceof Error) {\n error = waitUntilError;\n }\n }\n await handler.runCallbacks('handlerDidComplete', {\n event,\n request,\n response,\n error: error,\n });\n handler.destroy();\n if (error) {\n throw error;\n }\n }\n}\nexport { Strategy };\n/**\n * Classes extending the `Strategy` based class should implement this method,\n * and leverage the {@link workbox-strategies.StrategyHandler}\n * arg to perform all fetching and cache logic, which will ensure all relevant\n * cache, cache options, fetch options and plugins are used (per the current\n * strategy instance).\n *\n * @name _handle\n * @instance\n * @abstract\n * @function\n * @param {Request} request\n * @param {workbox-strategies.StrategyHandler} handler\n * @return {Promise}\n *\n * @memberof workbox-strategies.Strategy\n */\n","/*\n Copyright 2020 Google LLC\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n/**\n * A utility method that makes it easier to use `event.waitUntil` with\n * async functions and return the result.\n *\n * @param {ExtendableEvent} event\n * @param {Function} asyncFn\n * @return {Function}\n * @private\n */\nfunction waitUntil(event, asyncFn) {\n const returnPromise = asyncFn();\n event.waitUntil(returnPromise);\n return returnPromise;\n}\nexport { waitUntil };\n","\"use strict\";\n// @ts-ignore\ntry {\n self['workbox:precaching:6.6.0'] && _();\n}\ncatch (e) { }\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport '../_version.js';\n// Name of the search parameter used to store revision info.\nconst REVISION_SEARCH_PARAM = '__WB_REVISION__';\n/**\n * Converts a manifest entry into a versioned URL suitable for precaching.\n *\n * @param {Object|string} entry\n * @return {string} A URL with versioning info.\n *\n * @private\n * @memberof workbox-precaching\n */\nexport function createCacheKey(entry) {\n if (!entry) {\n throw new WorkboxError('add-to-cache-list-unexpected-type', { entry });\n }\n // If a precache manifest entry is a string, it's assumed to be a versioned\n // URL, like '/app.abcd1234.js'. Return as-is.\n if (typeof entry === 'string') {\n const urlObject = new URL(entry, location.href);\n return {\n cacheKey: urlObject.href,\n url: urlObject.href,\n };\n }\n const { revision, url } = entry;\n if (!url) {\n throw new WorkboxError('add-to-cache-list-unexpected-type', { entry });\n }\n // If there's just a URL and no revision, then it's also assumed to be a\n // versioned URL.\n if (!revision) {\n const urlObject = new URL(url, location.href);\n return {\n cacheKey: urlObject.href,\n url: urlObject.href,\n };\n }\n // Otherwise, construct a properly versioned URL using the custom Workbox\n // search parameter along with the revision info.\n const cacheKeyURL = new URL(url, location.href);\n const originalURL = new URL(url, location.href);\n cacheKeyURL.searchParams.set(REVISION_SEARCH_PARAM, revision);\n return {\n cacheKey: cacheKeyURL.href,\n url: originalURL.href,\n };\n}\n","/*\n Copyright 2020 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n/**\n * A plugin, designed to be used with PrecacheController, to determine the\n * of assets that were updated (or not updated) during the install event.\n *\n * @private\n */\nclass PrecacheInstallReportPlugin {\n constructor() {\n this.updatedURLs = [];\n this.notUpdatedURLs = [];\n this.handlerWillStart = async ({ request, state, }) => {\n // TODO: `state` should never be undefined...\n if (state) {\n state.originalRequest = request;\n }\n };\n this.cachedResponseWillBeUsed = async ({ event, state, cachedResponse, }) => {\n if (event.type === 'install') {\n if (state &&\n state.originalRequest &&\n state.originalRequest instanceof Request) {\n // TODO: `state` should never be undefined...\n const url = state.originalRequest.url;\n if (cachedResponse) {\n this.notUpdatedURLs.push(url);\n }\n else {\n this.updatedURLs.push(url);\n }\n }\n }\n return cachedResponse;\n };\n }\n}\nexport { PrecacheInstallReportPlugin };\n","/*\n Copyright 2020 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n/**\n * A plugin, designed to be used with PrecacheController, to translate URLs into\n * the corresponding cache key, based on the current revision info.\n *\n * @private\n */\nclass PrecacheCacheKeyPlugin {\n constructor({ precacheController }) {\n this.cacheKeyWillBeUsed = async ({ request, params, }) => {\n // Params is type any, can't change right now.\n /* eslint-disable */\n const cacheKey = (params === null || params === void 0 ? void 0 : params.cacheKey) ||\n this._precacheController.getCacheKeyForURL(request.url);\n /* eslint-enable */\n return cacheKey\n ? new Request(cacheKey, { headers: request.headers })\n : request;\n };\n this._precacheController = precacheController;\n }\n}\nexport { PrecacheCacheKeyPlugin };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\nlet supportStatus;\n/**\n * A utility function that determines whether the current browser supports\n * constructing a new `Response` from a `response.body` stream.\n *\n * @return {boolean} `true`, if the current browser can successfully\n * construct a `Response` from a `response.body` stream, `false` otherwise.\n *\n * @private\n */\nfunction canConstructResponseFromBodyStream() {\n if (supportStatus === undefined) {\n const testResponse = new Response('');\n if ('body' in testResponse) {\n try {\n new Response(testResponse.body);\n supportStatus = true;\n }\n catch (error) {\n supportStatus = false;\n }\n }\n supportStatus = false;\n }\n return supportStatus;\n}\nexport { canConstructResponseFromBodyStream };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { PrecacheController } from '../PrecacheController.js';\nimport '../_version.js';\nlet precacheController;\n/**\n * @return {PrecacheController}\n * @private\n */\nexport const getOrCreatePrecacheController = () => {\n if (!precacheController) {\n precacheController = new PrecacheController();\n }\n return precacheController;\n};\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { canConstructResponseFromBodyStream } from './_private/canConstructResponseFromBodyStream.js';\nimport { WorkboxError } from './_private/WorkboxError.js';\nimport './_version.js';\n/**\n * Allows developers to copy a response and modify its `headers`, `status`,\n * or `statusText` values (the values settable via a\n * [`ResponseInit`]{@link https://developer.mozilla.org/en-US/docs/Web/API/Response/Response#Syntax}\n * object in the constructor).\n * To modify these values, pass a function as the second argument. That\n * function will be invoked with a single object with the response properties\n * `{headers, status, statusText}`. The return value of this function will\n * be used as the `ResponseInit` for the new `Response`. To change the values\n * either modify the passed parameter(s) and return it, or return a totally\n * new object.\n *\n * This method is intentionally limited to same-origin responses, regardless of\n * whether CORS was used or not.\n *\n * @param {Response} response\n * @param {Function} modifier\n * @memberof workbox-core\n */\nasync function copyResponse(response, modifier) {\n let origin = null;\n // If response.url isn't set, assume it's cross-origin and keep origin null.\n if (response.url) {\n const responseURL = new URL(response.url);\n origin = responseURL.origin;\n }\n if (origin !== self.location.origin) {\n throw new WorkboxError('cross-origin-copy-response', { origin });\n }\n const clonedResponse = response.clone();\n // Create a fresh `ResponseInit` object by cloning the headers.\n const responseInit = {\n headers: new Headers(clonedResponse.headers),\n status: clonedResponse.status,\n statusText: clonedResponse.statusText,\n };\n // Apply any user modifications.\n const modifiedResponseInit = modifier ? modifier(responseInit) : responseInit;\n // Create the new response from the body stream and `ResponseInit`\n // modifications. Note: not all browsers support the Response.body stream,\n // so fall back to reading the entire body into memory as a blob.\n const body = canConstructResponseFromBodyStream()\n ? clonedResponse.body\n : await clonedResponse.blob();\n return new Response(body, modifiedResponseInit);\n}\nexport { copyResponse };\n","/*\n Copyright 2020 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { copyResponse } from 'workbox-core/copyResponse.js';\nimport { cacheNames } from 'workbox-core/_private/cacheNames.js';\nimport { getFriendlyURL } from 'workbox-core/_private/getFriendlyURL.js';\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport { Strategy } from 'workbox-strategies/Strategy.js';\nimport './_version.js';\n/**\n * A {@link workbox-strategies.Strategy} implementation\n * specifically designed to work with\n * {@link workbox-precaching.PrecacheController}\n * to both cache and fetch precached assets.\n *\n * Note: an instance of this class is created automatically when creating a\n * `PrecacheController`; it's generally not necessary to create this yourself.\n *\n * @extends workbox-strategies.Strategy\n * @memberof workbox-precaching\n */\nclass PrecacheStrategy extends Strategy {\n /**\n *\n * @param {Object} [options]\n * @param {string} [options.cacheName] Cache name to store and retrieve\n * requests. Defaults to the cache names provided by\n * {@link workbox-core.cacheNames}.\n * @param {Array} [options.plugins] {@link https://developers.google.com/web/tools/workbox/guides/using-plugins|Plugins}\n * to use in conjunction with this caching strategy.\n * @param {Object} [options.fetchOptions] Values passed along to the\n * {@link https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch#Parameters|init}\n * of all fetch() requests made by this strategy.\n * @param {Object} [options.matchOptions] The\n * {@link https://w3c.github.io/ServiceWorker/#dictdef-cachequeryoptions|CacheQueryOptions}\n * for any `cache.match()` or `cache.put()` calls made by this strategy.\n * @param {boolean} [options.fallbackToNetwork=true] Whether to attempt to\n * get the response from the network if there's a precache miss.\n */\n constructor(options = {}) {\n options.cacheName = cacheNames.getPrecacheName(options.cacheName);\n super(options);\n this._fallbackToNetwork =\n options.fallbackToNetwork === false ? false : true;\n // Redirected responses cannot be used to satisfy a navigation request, so\n // any redirected response must be \"copied\" rather than cloned, so the new\n // response doesn't contain the `redirected` flag. See:\n // https://bugs.chromium.org/p/chromium/issues/detail?id=669363&desc=2#c1\n this.plugins.push(PrecacheStrategy.copyRedirectedCacheableResponsesPlugin);\n }\n /**\n * @private\n * @param {Request|string} request A request to run this strategy for.\n * @param {workbox-strategies.StrategyHandler} handler The event that\n * triggered the request.\n * @return {Promise}\n */\n async _handle(request, handler) {\n const response = await handler.cacheMatch(request);\n if (response) {\n return response;\n }\n // If this is an `install` event for an entry that isn't already cached,\n // then populate the cache.\n if (handler.event && handler.event.type === 'install') {\n return await this._handleInstall(request, handler);\n }\n // Getting here means something went wrong. An entry that should have been\n // precached wasn't found in the cache.\n return await this._handleFetch(request, handler);\n }\n async _handleFetch(request, handler) {\n let response;\n const params = (handler.params || {});\n // Fall back to the network if we're configured to do so.\n if (this._fallbackToNetwork) {\n if (process.env.NODE_ENV !== 'production') {\n logger.warn(`The precached response for ` +\n `${getFriendlyURL(request.url)} in ${this.cacheName} was not ` +\n `found. Falling back to the network.`);\n }\n const integrityInManifest = params.integrity;\n const integrityInRequest = request.integrity;\n const noIntegrityConflict = !integrityInRequest || integrityInRequest === integrityInManifest;\n // Do not add integrity if the original request is no-cors\n // See https://github.com/GoogleChrome/workbox/issues/3096\n response = await handler.fetch(new Request(request, {\n integrity: request.mode !== 'no-cors'\n ? integrityInRequest || integrityInManifest\n : undefined,\n }));\n // It's only \"safe\" to repair the cache if we're using SRI to guarantee\n // that the response matches the precache manifest's expectations,\n // and there's either a) no integrity property in the incoming request\n // or b) there is an integrity, and it matches the precache manifest.\n // See https://github.com/GoogleChrome/workbox/issues/2858\n // Also if the original request users no-cors we don't use integrity.\n // See https://github.com/GoogleChrome/workbox/issues/3096\n if (integrityInManifest &&\n noIntegrityConflict &&\n request.mode !== 'no-cors') {\n this._useDefaultCacheabilityPluginIfNeeded();\n const wasCached = await handler.cachePut(request, response.clone());\n if (process.env.NODE_ENV !== 'production') {\n if (wasCached) {\n logger.log(`A response for ${getFriendlyURL(request.url)} ` +\n `was used to \"repair\" the precache.`);\n }\n }\n }\n }\n else {\n // This shouldn't normally happen, but there are edge cases:\n // https://github.com/GoogleChrome/workbox/issues/1441\n throw new WorkboxError('missing-precache-entry', {\n cacheName: this.cacheName,\n url: request.url,\n });\n }\n if (process.env.NODE_ENV !== 'production') {\n const cacheKey = params.cacheKey || (await handler.getCacheKey(request, 'read'));\n // Workbox is going to handle the route.\n // print the routing details to the console.\n logger.groupCollapsed(`Precaching is responding to: ` + getFriendlyURL(request.url));\n logger.log(`Serving the precached url: ${getFriendlyURL(cacheKey instanceof Request ? cacheKey.url : cacheKey)}`);\n logger.groupCollapsed(`View request details here.`);\n logger.log(request);\n logger.groupEnd();\n logger.groupCollapsed(`View response details here.`);\n logger.log(response);\n logger.groupEnd();\n logger.groupEnd();\n }\n return response;\n }\n async _handleInstall(request, handler) {\n this._useDefaultCacheabilityPluginIfNeeded();\n const response = await handler.fetch(request);\n // Make sure we defer cachePut() until after we know the response\n // should be cached; see https://github.com/GoogleChrome/workbox/issues/2737\n const wasCached = await handler.cachePut(request, response.clone());\n if (!wasCached) {\n // Throwing here will lead to the `install` handler failing, which\n // we want to do if *any* of the responses aren't safe to cache.\n throw new WorkboxError('bad-precaching-response', {\n url: request.url,\n status: response.status,\n });\n }\n return response;\n }\n /**\n * This method is complex, as there a number of things to account for:\n *\n * The `plugins` array can be set at construction, and/or it might be added to\n * to at any time before the strategy is used.\n *\n * At the time the strategy is used (i.e. during an `install` event), there\n * needs to be at least one plugin that implements `cacheWillUpdate` in the\n * array, other than `copyRedirectedCacheableResponsesPlugin`.\n *\n * - If this method is called and there are no suitable `cacheWillUpdate`\n * plugins, we need to add `defaultPrecacheCacheabilityPlugin`.\n *\n * - If this method is called and there is exactly one `cacheWillUpdate`, then\n * we don't have to do anything (this might be a previously added\n * `defaultPrecacheCacheabilityPlugin`, or it might be a custom plugin).\n *\n * - If this method is called and there is more than one `cacheWillUpdate`,\n * then we need to check if one is `defaultPrecacheCacheabilityPlugin`. If so,\n * we need to remove it. (This situation is unlikely, but it could happen if\n * the strategy is used multiple times, the first without a `cacheWillUpdate`,\n * and then later on after manually adding a custom `cacheWillUpdate`.)\n *\n * See https://github.com/GoogleChrome/workbox/issues/2737 for more context.\n *\n * @private\n */\n _useDefaultCacheabilityPluginIfNeeded() {\n let defaultPluginIndex = null;\n let cacheWillUpdatePluginCount = 0;\n for (const [index, plugin] of this.plugins.entries()) {\n // Ignore the copy redirected plugin when determining what to do.\n if (plugin === PrecacheStrategy.copyRedirectedCacheableResponsesPlugin) {\n continue;\n }\n // Save the default plugin's index, in case it needs to be removed.\n if (plugin === PrecacheStrategy.defaultPrecacheCacheabilityPlugin) {\n defaultPluginIndex = index;\n }\n if (plugin.cacheWillUpdate) {\n cacheWillUpdatePluginCount++;\n }\n }\n if (cacheWillUpdatePluginCount === 0) {\n this.plugins.push(PrecacheStrategy.defaultPrecacheCacheabilityPlugin);\n }\n else if (cacheWillUpdatePluginCount > 1 && defaultPluginIndex !== null) {\n // Only remove the default plugin; multiple custom plugins are allowed.\n this.plugins.splice(defaultPluginIndex, 1);\n }\n // Nothing needs to be done if cacheWillUpdatePluginCount is 1\n }\n}\nPrecacheStrategy.defaultPrecacheCacheabilityPlugin = {\n async cacheWillUpdate({ response }) {\n if (!response || response.status >= 400) {\n return null;\n }\n return response;\n },\n};\nPrecacheStrategy.copyRedirectedCacheableResponsesPlugin = {\n async cacheWillUpdate({ response }) {\n return response.redirected ? await copyResponse(response) : response;\n },\n};\nexport { PrecacheStrategy };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { assert } from 'workbox-core/_private/assert.js';\nimport { cacheNames } from 'workbox-core/_private/cacheNames.js';\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport { waitUntil } from 'workbox-core/_private/waitUntil.js';\nimport { createCacheKey } from './utils/createCacheKey.js';\nimport { PrecacheInstallReportPlugin } from './utils/PrecacheInstallReportPlugin.js';\nimport { PrecacheCacheKeyPlugin } from './utils/PrecacheCacheKeyPlugin.js';\nimport { printCleanupDetails } from './utils/printCleanupDetails.js';\nimport { printInstallDetails } from './utils/printInstallDetails.js';\nimport { PrecacheStrategy } from './PrecacheStrategy.js';\nimport './_version.js';\n/**\n * Performs efficient precaching of assets.\n *\n * @memberof workbox-precaching\n */\nclass PrecacheController {\n /**\n * Create a new PrecacheController.\n *\n * @param {Object} [options]\n * @param {string} [options.cacheName] The cache to use for precaching.\n * @param {string} [options.plugins] Plugins to use when precaching as well\n * as responding to fetch events for precached assets.\n * @param {boolean} [options.fallbackToNetwork=true] Whether to attempt to\n * get the response from the network if there's a precache miss.\n */\n constructor({ cacheName, plugins = [], fallbackToNetwork = true, } = {}) {\n this._urlsToCacheKeys = new Map();\n this._urlsToCacheModes = new Map();\n this._cacheKeysToIntegrities = new Map();\n this._strategy = new PrecacheStrategy({\n cacheName: cacheNames.getPrecacheName(cacheName),\n plugins: [\n ...plugins,\n new PrecacheCacheKeyPlugin({ precacheController: this }),\n ],\n fallbackToNetwork,\n });\n // Bind the install and activate methods to the instance.\n this.install = this.install.bind(this);\n this.activate = this.activate.bind(this);\n }\n /**\n * @type {workbox-precaching.PrecacheStrategy} The strategy created by this controller and\n * used to cache assets and respond to fetch events.\n */\n get strategy() {\n return this._strategy;\n }\n /**\n * Adds items to the precache list, removing any duplicates and\n * stores the files in the\n * {@link workbox-core.cacheNames|\"precache cache\"} when the service\n * worker installs.\n *\n * This method can be called multiple times.\n *\n * @param {Array} [entries=[]] Array of entries to precache.\n */\n precache(entries) {\n this.addToCacheList(entries);\n if (!this._installAndActiveListenersAdded) {\n self.addEventListener('install', this.install);\n self.addEventListener('activate', this.activate);\n this._installAndActiveListenersAdded = true;\n }\n }\n /**\n * This method will add items to the precache list, removing duplicates\n * and ensuring the information is valid.\n *\n * @param {Array} entries\n * Array of entries to precache.\n */\n addToCacheList(entries) {\n if (process.env.NODE_ENV !== 'production') {\n assert.isArray(entries, {\n moduleName: 'workbox-precaching',\n className: 'PrecacheController',\n funcName: 'addToCacheList',\n paramName: 'entries',\n });\n }\n const urlsToWarnAbout = [];\n for (const entry of entries) {\n // See https://github.com/GoogleChrome/workbox/issues/2259\n if (typeof entry === 'string') {\n urlsToWarnAbout.push(entry);\n }\n else if (entry && entry.revision === undefined) {\n urlsToWarnAbout.push(entry.url);\n }\n const { cacheKey, url } = createCacheKey(entry);\n const cacheMode = typeof entry !== 'string' && entry.revision ? 'reload' : 'default';\n if (this._urlsToCacheKeys.has(url) &&\n this._urlsToCacheKeys.get(url) !== cacheKey) {\n throw new WorkboxError('add-to-cache-list-conflicting-entries', {\n firstEntry: this._urlsToCacheKeys.get(url),\n secondEntry: cacheKey,\n });\n }\n if (typeof entry !== 'string' && entry.integrity) {\n if (this._cacheKeysToIntegrities.has(cacheKey) &&\n this._cacheKeysToIntegrities.get(cacheKey) !== entry.integrity) {\n throw new WorkboxError('add-to-cache-list-conflicting-integrities', {\n url,\n });\n }\n this._cacheKeysToIntegrities.set(cacheKey, entry.integrity);\n }\n this._urlsToCacheKeys.set(url, cacheKey);\n this._urlsToCacheModes.set(url, cacheMode);\n if (urlsToWarnAbout.length > 0) {\n const warningMessage = `Workbox is precaching URLs without revision ` +\n `info: ${urlsToWarnAbout.join(', ')}\\nThis is generally NOT safe. ` +\n `Learn more at https://bit.ly/wb-precache`;\n if (process.env.NODE_ENV === 'production') {\n // Use console directly to display this warning without bloating\n // bundle sizes by pulling in all of the logger codebase in prod.\n console.warn(warningMessage);\n }\n else {\n logger.warn(warningMessage);\n }\n }\n }\n }\n /**\n * Precaches new and updated assets. Call this method from the service worker\n * install event.\n *\n * Note: this method calls `event.waitUntil()` for you, so you do not need\n * to call it yourself in your event handlers.\n *\n * @param {ExtendableEvent} event\n * @return {Promise}\n */\n install(event) {\n // waitUntil returns Promise\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return waitUntil(event, async () => {\n const installReportPlugin = new PrecacheInstallReportPlugin();\n this.strategy.plugins.push(installReportPlugin);\n // Cache entries one at a time.\n // See https://github.com/GoogleChrome/workbox/issues/2528\n for (const [url, cacheKey] of this._urlsToCacheKeys) {\n const integrity = this._cacheKeysToIntegrities.get(cacheKey);\n const cacheMode = this._urlsToCacheModes.get(url);\n const request = new Request(url, {\n integrity,\n cache: cacheMode,\n credentials: 'same-origin',\n });\n await Promise.all(this.strategy.handleAll({\n params: { cacheKey },\n request,\n event,\n }));\n }\n const { updatedURLs, notUpdatedURLs } = installReportPlugin;\n if (process.env.NODE_ENV !== 'production') {\n printInstallDetails(updatedURLs, notUpdatedURLs);\n }\n return { updatedURLs, notUpdatedURLs };\n });\n }\n /**\n * Deletes assets that are no longer present in the current precache manifest.\n * Call this method from the service worker activate event.\n *\n * Note: this method calls `event.waitUntil()` for you, so you do not need\n * to call it yourself in your event handlers.\n *\n * @param {ExtendableEvent} event\n * @return {Promise}\n */\n activate(event) {\n // waitUntil returns Promise\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return waitUntil(event, async () => {\n const cache = await self.caches.open(this.strategy.cacheName);\n const currentlyCachedRequests = await cache.keys();\n const expectedCacheKeys = new Set(this._urlsToCacheKeys.values());\n const deletedURLs = [];\n for (const request of currentlyCachedRequests) {\n if (!expectedCacheKeys.has(request.url)) {\n await cache.delete(request);\n deletedURLs.push(request.url);\n }\n }\n if (process.env.NODE_ENV !== 'production') {\n printCleanupDetails(deletedURLs);\n }\n return { deletedURLs };\n });\n }\n /**\n * Returns a mapping of a precached URL to the corresponding cache key, taking\n * into account the revision information for the URL.\n *\n * @return {Map} A URL to cache key mapping.\n */\n getURLsToCacheKeys() {\n return this._urlsToCacheKeys;\n }\n /**\n * Returns a list of all the URLs that have been precached by the current\n * service worker.\n *\n * @return {Array} The precached URLs.\n */\n getCachedURLs() {\n return [...this._urlsToCacheKeys.keys()];\n }\n /**\n * Returns the cache key used for storing a given URL. If that URL is\n * unversioned, like `/index.html', then the cache key will be the original\n * URL with a search parameter appended to it.\n *\n * @param {string} url A URL whose cache key you want to look up.\n * @return {string} The versioned URL that corresponds to a cache key\n * for the original URL, or undefined if that URL isn't precached.\n */\n getCacheKeyForURL(url) {\n const urlObject = new URL(url, location.href);\n return this._urlsToCacheKeys.get(urlObject.href);\n }\n /**\n * @param {string} url A cache key whose SRI you want to look up.\n * @return {string} The subresource integrity associated with the cache key,\n * or undefined if it's not set.\n */\n getIntegrityForCacheKey(cacheKey) {\n return this._cacheKeysToIntegrities.get(cacheKey);\n }\n /**\n * This acts as a drop-in replacement for\n * [`cache.match()`](https://developer.mozilla.org/en-US/docs/Web/API/Cache/match)\n * with the following differences:\n *\n * - It knows what the name of the precache is, and only checks in that cache.\n * - It allows you to pass in an \"original\" URL without versioning parameters,\n * and it will automatically look up the correct cache key for the currently\n * active revision of that URL.\n *\n * E.g., `matchPrecache('index.html')` will find the correct precached\n * response for the currently active service worker, even if the actual cache\n * key is `'/index.html?__WB_REVISION__=1234abcd'`.\n *\n * @param {string|Request} request The key (without revisioning parameters)\n * to look up in the precache.\n * @return {Promise}\n */\n async matchPrecache(request) {\n const url = request instanceof Request ? request.url : request;\n const cacheKey = this.getCacheKeyForURL(url);\n if (cacheKey) {\n const cache = await self.caches.open(this.strategy.cacheName);\n return cache.match(cacheKey);\n }\n return undefined;\n }\n /**\n * Returns a function that looks up `url` in the precache (taking into\n * account revision information), and returns the corresponding `Response`.\n *\n * @param {string} url The precached URL which will be used to lookup the\n * `Response`.\n * @return {workbox-routing~handlerCallback}\n */\n createHandlerBoundToURL(url) {\n const cacheKey = this.getCacheKeyForURL(url);\n if (!cacheKey) {\n throw new WorkboxError('non-precached-url', { url });\n }\n return (options) => {\n options.request = new Request(url);\n options.params = Object.assign({ cacheKey }, options.params);\n return this.strategy.handle(options);\n };\n }\n}\nexport { PrecacheController };\n","/*\n Copyright 2020 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { getFriendlyURL } from 'workbox-core/_private/getFriendlyURL.js';\nimport { Route } from 'workbox-routing/Route.js';\nimport { generateURLVariations } from './utils/generateURLVariations.js';\nimport './_version.js';\n/**\n * A subclass of {@link workbox-routing.Route} that takes a\n * {@link workbox-precaching.PrecacheController}\n * instance and uses it to match incoming requests and handle fetching\n * responses from the precache.\n *\n * @memberof workbox-precaching\n * @extends workbox-routing.Route\n */\nclass PrecacheRoute extends Route {\n /**\n * @param {PrecacheController} precacheController A `PrecacheController`\n * instance used to both match requests and respond to fetch events.\n * @param {Object} [options] Options to control how requests are matched\n * against the list of precached URLs.\n * @param {string} [options.directoryIndex=index.html] The `directoryIndex` will\n * check cache entries for a URLs ending with '/' to see if there is a hit when\n * appending the `directoryIndex` value.\n * @param {Array} [options.ignoreURLParametersMatching=[/^utm_/, /^fbclid$/]] An\n * array of regex's to remove search params when looking for a cache match.\n * @param {boolean} [options.cleanURLs=true] The `cleanURLs` option will\n * check the cache for the URL with a `.html` added to the end of the end.\n * @param {workbox-precaching~urlManipulation} [options.urlManipulation]\n * This is a function that should take a URL and return an array of\n * alternative URLs that should be checked for precache matches.\n */\n constructor(precacheController, options) {\n const match = ({ request, }) => {\n const urlsToCacheKeys = precacheController.getURLsToCacheKeys();\n for (const possibleURL of generateURLVariations(request.url, options)) {\n const cacheKey = urlsToCacheKeys.get(possibleURL);\n if (cacheKey) {\n const integrity = precacheController.getIntegrityForCacheKey(cacheKey);\n return { cacheKey, integrity };\n }\n }\n if (process.env.NODE_ENV !== 'production') {\n logger.debug(`Precaching did not find a match for ` + getFriendlyURL(request.url));\n }\n return;\n };\n super(match, precacheController.strategy);\n }\n}\nexport { PrecacheRoute };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { removeIgnoredSearchParams } from './removeIgnoredSearchParams.js';\nimport '../_version.js';\n/**\n * Generator function that yields possible variations on the original URL to\n * check, one at a time.\n *\n * @param {string} url\n * @param {Object} options\n *\n * @private\n * @memberof workbox-precaching\n */\nexport function* generateURLVariations(url, { ignoreURLParametersMatching = [/^utm_/, /^fbclid$/], directoryIndex = 'index.html', cleanURLs = true, urlManipulation, } = {}) {\n const urlObject = new URL(url, location.href);\n urlObject.hash = '';\n yield urlObject.href;\n const urlWithoutIgnoredParams = removeIgnoredSearchParams(urlObject, ignoreURLParametersMatching);\n yield urlWithoutIgnoredParams.href;\n if (directoryIndex && urlWithoutIgnoredParams.pathname.endsWith('/')) {\n const directoryURL = new URL(urlWithoutIgnoredParams.href);\n directoryURL.pathname += directoryIndex;\n yield directoryURL.href;\n }\n if (cleanURLs) {\n const cleanURL = new URL(urlWithoutIgnoredParams.href);\n cleanURL.pathname += '.html';\n yield cleanURL.href;\n }\n if (urlManipulation) {\n const additionalURLs = urlManipulation({ url: urlObject });\n for (const urlToAttempt of additionalURLs) {\n yield urlToAttempt.href;\n }\n }\n}\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport '../_version.js';\n/**\n * Removes any URL search parameters that should be ignored.\n *\n * @param {URL} urlObject The original URL.\n * @param {Array} ignoreURLParametersMatching RegExps to test against\n * each search parameter name. Matches mean that the search parameter should be\n * ignored.\n * @return {URL} The URL with any ignored search parameters removed.\n *\n * @private\n * @memberof workbox-precaching\n */\nexport function removeIgnoredSearchParams(urlObject, ignoreURLParametersMatching = []) {\n // Convert the iterable into an array at the start of the loop to make sure\n // deletion doesn't mess up iteration.\n for (const paramName of [...urlObject.searchParams.keys()]) {\n if (ignoreURLParametersMatching.some((regExp) => regExp.test(paramName))) {\n urlObject.searchParams.delete(paramName);\n }\n }\n return urlObject;\n}\n","/*\n Copyright 2018 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { assert } from 'workbox-core/_private/assert.js';\nimport { logger } from 'workbox-core/_private/logger.js';\nimport { WorkboxError } from 'workbox-core/_private/WorkboxError.js';\nimport { Strategy } from './Strategy.js';\nimport { messages } from './utils/messages.js';\nimport './_version.js';\n/**\n * An implementation of a [cache-first](https://developer.chrome.com/docs/workbox/caching-strategies-overview/#cache-first-falling-back-to-network)\n * request strategy.\n *\n * A cache first strategy is useful for assets that have been revisioned,\n * such as URLs like `/styles/example.a8f5f1.css`, since they\n * can be cached for long periods of time.\n *\n * If the network request fails, and there is no cache match, this will throw\n * a `WorkboxError` exception.\n *\n * @extends workbox-strategies.Strategy\n * @memberof workbox-strategies\n */\nclass CacheFirst extends Strategy {\n /**\n * @private\n * @param {Request|string} request A request to run this strategy for.\n * @param {workbox-strategies.StrategyHandler} handler The event that\n * triggered the request.\n * @return {Promise}\n */\n async _handle(request, handler) {\n const logs = [];\n if (process.env.NODE_ENV !== 'production') {\n assert.isInstance(request, Request, {\n moduleName: 'workbox-strategies',\n className: this.constructor.name,\n funcName: 'makeRequest',\n paramName: 'request',\n });\n }\n let response = await handler.cacheMatch(request);\n let error = undefined;\n if (!response) {\n if (process.env.NODE_ENV !== 'production') {\n logs.push(`No response found in the '${this.cacheName}' cache. ` +\n `Will respond with a network request.`);\n }\n try {\n response = await handler.fetchAndCachePut(request);\n }\n catch (err) {\n if (err instanceof Error) {\n error = err;\n }\n }\n if (process.env.NODE_ENV !== 'production') {\n if (response) {\n logs.push(`Got response from network.`);\n }\n else {\n logs.push(`Unable to get a response from the network.`);\n }\n }\n }\n else {\n if (process.env.NODE_ENV !== 'production') {\n logs.push(`Found a cached response in the '${this.cacheName}' cache.`);\n }\n }\n if (process.env.NODE_ENV !== 'production') {\n logger.groupCollapsed(messages.strategyStart(this.constructor.name, request));\n for (const log of logs) {\n logger.log(log);\n }\n messages.printFinalResponse(response);\n logger.groupEnd();\n }\n if (!response) {\n throw new WorkboxError('no-response', { url: request.url, error });\n }\n return response;\n }\n}\nexport { CacheFirst };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport './_version.js';\n/**\n * Claim any currently available clients once the service worker\n * becomes active. This is normally used in conjunction with `skipWaiting()`.\n *\n * @memberof workbox-core\n */\nfunction clientsClaim() {\n self.addEventListener('activate', () => self.clients.claim());\n}\nexport { clientsClaim };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { addRoute } from './addRoute.js';\nimport { precache } from './precache.js';\nimport './_version.js';\n/**\n * This method will add entries to the precache list and add a route to\n * respond to fetch events.\n *\n * This is a convenience method that will call\n * {@link workbox-precaching.precache} and\n * {@link workbox-precaching.addRoute} in a single call.\n *\n * @param {Array} entries Array of entries to precache.\n * @param {Object} [options] See the\n * {@link workbox-precaching.PrecacheRoute} options.\n *\n * @memberof workbox-precaching\n */\nfunction precacheAndRoute(entries, options) {\n precache(entries);\n addRoute(options);\n}\nexport { precacheAndRoute };\n","/*\n Copyright 2019 Google LLC\n\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { getOrCreatePrecacheController } from './utils/getOrCreatePrecacheController.js';\nimport './_version.js';\n/**\n * Adds items to the precache list, removing any duplicates and\n * stores the files in the\n * {@link workbox-core.cacheNames|\"precache cache\"} when the service\n * worker installs.\n *\n * This method can be called multiple times.\n *\n * Please note: This method **will not** serve any of the cached files for you.\n * It only precaches files. To respond to a network request you call\n * {@link workbox-precaching.addRoute}.\n *\n * If you have a single array of files to precache, you can just call\n * {@link workbox-precaching.precacheAndRoute}.\n *\n * @param {Array} [entries=[]] Array of entries to precache.\n *\n * @memberof workbox-precaching\n */\nfunction precache(entries) {\n const precacheController = getOrCreatePrecacheController();\n precacheController.precache(entries);\n}\nexport { precache };\n","/*\n Copyright 2019 Google LLC\n Use of this source code is governed by an MIT-style\n license that can be found in the LICENSE file or at\n https://opensource.org/licenses/MIT.\n*/\nimport { registerRoute } from 'workbox-routing/registerRoute.js';\nimport { getOrCreatePrecacheController } from './utils/getOrCreatePrecacheController.js';\nimport { PrecacheRoute } from './PrecacheRoute.js';\nimport './_version.js';\n/**\n * Add a `fetch` listener to the service worker that will\n * respond to\n * [network requests]{@link https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/Using_Service_Workers#Custom_responses_to_requests}\n * with precached assets.\n *\n * Requests for assets that aren't precached, the `FetchEvent` will not be\n * responded to, allowing the event to fall through to other `fetch` event\n * listeners.\n *\n * @param {Object} [options] See the {@link workbox-precaching.PrecacheRoute}\n * options.\n *\n * @memberof workbox-precaching\n */\nfunction addRoute(options) {\n const precacheController = getOrCreatePrecacheController();\n const precacheRoute = new PrecacheRoute(precacheController, options);\n registerRoute(precacheRoute);\n}\nexport { addRoute };\n"],"names":["self","_","e","messageGenerator","fallback","code","args","msg","length","JSON","stringify","WorkboxError","Error","constructor","errorCode","details","super","this","name","normalizeHandler","handler","handle","Route","match","method","setCatchHandler","catchHandler","RegExpRoute","regExp","url","result","exec","href","origin","location","index","slice","Router","_routes","Map","_defaultHandlerMap","routes","addFetchListener","addEventListener","event","request","responsePromise","handleRequest","respondWith","addCacheListener","data","type","payload","requestPromises","Promise","all","urlsToCache","map","entry","Request","waitUntil","ports","then","postMessage","URL","protocol","startsWith","sameOrigin","params","route","findMatchingRoute","has","get","err","reject","_catchHandler","catch","async","catchErr","matchResult","Array","isArray","Object","keys","undefined","setDefaultHandler","set","registerRoute","push","unregisterRoute","routeIndex","indexOf","splice","defaultRouter","getOrCreateDefaultRouter","capture","captureUrl","matchCallback","RegExp","moduleName","funcName","paramName","_cacheNameDetails","googleAnalytics","precache","prefix","runtime","suffix","registration","scope","_createCacheName","cacheName","filter","value","join","cacheNames","userCacheName","stripParams","fullURL","ignoreParams","strippedURL","param","searchParams","delete","Deferred","promise","resolve","quotaErrorCallbacks","Set","toRequest","input","StrategyHandler","strategy","options","_cacheKeys","assign","_strategy","_handlerDeferred","_extendLifetimePromises","_plugins","plugins","_pluginStateMap","plugin","fetch","mode","FetchEvent","preloadResponse","possiblePreloadResponse","originalRequest","hasCallback","clone","cb","iterateCallbacks","thrownErrorMessage","message","pluginFilteredRequest","fetchResponse","fetchOptions","callback","response","error","runCallbacks","fetchAndCachePut","responseClone","cachePut","cacheMatch","key","cachedResponse","matchOptions","effectiveRequest","getCacheKey","multiMatchOptions","caches","ms","setTimeout","String","replace","responseToCache","_ensureResponseSafeToCache","cache","open","hasCacheUpdateCallback","oldResponse","strippedRequestURL","keysOptions","ignoreSearch","cacheKeys","cacheKey","cacheMatchIgnoreParams","put","executeQuotaErrorCallbacks","newResponse","state","statefulCallback","statefulParam","doneWaiting","shift","destroy","pluginsUsed","status","Strategy","responseDone","handleAll","_getResponse","_awaitComplete","_handle","waitUntilError","asyncFn","returnPromise","createCacheKey","urlObject","revision","cacheKeyURL","originalURL","PrecacheInstallReportPlugin","updatedURLs","notUpdatedURLs","handlerWillStart","cachedResponseWillBeUsed","PrecacheCacheKeyPlugin","precacheController","cacheKeyWillBeUsed","_precacheController","getCacheKeyForURL","headers","supportStatus","copyResponse","modifier","clonedResponse","responseInit","Headers","statusText","modifiedResponseInit","body","testResponse","Response","canConstructResponseFromBodyStream","blob","PrecacheStrategy","_fallbackToNetwork","fallbackToNetwork","copyRedirectedCacheableResponsesPlugin","_handleInstall","_handleFetch","integrityInManifest","integrity","integrityInRequest","noIntegrityConflict","_useDefaultCacheabilityPluginIfNeeded","defaultPluginIndex","cacheWillUpdatePluginCount","entries","defaultPrecacheCacheabilityPlugin","cacheWillUpdate","redirected","PrecacheController","_urlsToCacheKeys","_urlsToCacheModes","_cacheKeysToIntegrities","install","bind","activate","addToCacheList","_installAndActiveListenersAdded","urlsToWarnAbout","cacheMode","firstEntry","secondEntry","warningMessage","console","warn","installReportPlugin","credentials","currentlyCachedRequests","expectedCacheKeys","values","deletedURLs","getURLsToCacheKeys","getCachedURLs","getIntegrityForCacheKey","matchPrecache","createHandlerBoundToURL","getOrCreatePrecacheController","PrecacheRoute","urlsToCacheKeys","possibleURL","ignoreURLParametersMatching","directoryIndex","cleanURLs","urlManipulation","hash","urlWithoutIgnoredParams","some","test","removeIgnoredSearchParams","pathname","endsWith","directoryURL","cleanURL","additionalURLs","urlToAttempt","generateURLVariations","clients","claim","addRoute"],"mappings":"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"} \ No newline at end of file

        &KOu$-b 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

      =v(rTCp7A;jWPd;O4EtO7aW1)zMd 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