diff --git a/docsify/buble.css b/docsify/buble.css
index 99a5c00..a825663 100644
--- a/docsify/buble.css
+++ b/docsify/buble.css
@@ -1,819 +1 @@
-* {
- -webkit-font-smoothing: antialiased;
- -webkit-overflow-scrolling: touch;
- -webkit-tap-highlight-color: rgba(0,0,0,0);
- -webkit-text-size-adjust: none;
- -webkit-touch-callout: none;
- -webkit-box-sizing: border-box;
- box-sizing: border-box;
-}
-body:not(.ready) {
- overflow: hidden;
-}
-body:not(.ready) [data-cloak],
-body:not(.ready) .app-nav,
-body:not(.ready) > nav {
- display: none;
-}
-div#app {
- font-size: 30px;
- font-weight: lighter;
- margin: 40vh auto;
- text-align: center;
-}
-div#app:empty::before {
- content: 'Loading...';
-}
-.emoji {
- height: 1.2rem;
- vertical-align: middle;
-}
-.progress {
- background-color: var(--theme-color, #0074d9);
- height: 2px;
- left: 0px;
- position: fixed;
- right: 0px;
- top: 0px;
- -webkit-transition: width 0.2s, opacity 0.4s;
- transition: width 0.2s, opacity 0.4s;
- width: 0%;
- z-index: 999999;
-}
-.search a:hover {
- color: var(--theme-color, #0074d9);
-}
-.search .search-keyword {
- color: var(--theme-color, #0074d9);
- font-style: normal;
- font-weight: bold;
-}
-html,
-body {
- height: 100%;
-}
-body {
- -moz-osx-font-smoothing: grayscale;
- -webkit-font-smoothing: antialiased;
- color: #34495e;
- font-family: 'Helvetica Neue', Arial, sans-serif;
- font-size: 15px;
- letter-spacing: 0;
- margin: 0;
- overflow-x: hidden;
-}
-img {
- max-width: 100%;
-}
-a[disabled] {
- cursor: not-allowed;
- opacity: 0.6;
-}
-kbd {
- border: solid 1px #ccc;
- border-radius: 3px;
- display: inline-block;
- font-size: 12px !important;
- line-height: 12px;
- margin-bottom: 3px;
- padding: 3px 5px;
- vertical-align: middle;
-}
-li input[type='checkbox'] {
- margin: 0 0.2em 0.25em 0;
- vertical-align: middle;
-}
-.app-nav {
- margin: 25px 60px 0 0;
- position: absolute;
- right: 0;
- text-align: right;
- z-index: 10;
-/* navbar dropdown */
-}
-.app-nav.no-badge {
- margin-right: 25px;
-}
-.app-nav p {
- margin: 0;
-}
-.app-nav > a {
- margin: 0 1rem;
- padding: 5px 0;
-}
-.app-nav ul,
-.app-nav li {
- display: inline-block;
- list-style: none;
- margin: 0;
-}
-.app-nav a {
- color: inherit;
- font-size: 16px;
- text-decoration: none;
- -webkit-transition: color 0.3s;
- transition: color 0.3s;
-}
-.app-nav a:hover {
- color: var(--theme-color, #0074d9);
-}
-.app-nav a.active {
- border-bottom: 2px solid var(--theme-color, #0074d9);
- color: var(--theme-color, #0074d9);
-}
-.app-nav li {
- display: inline-block;
- margin: 0 1rem;
- padding: 5px 0;
- position: relative;
-}
-.app-nav li ul {
- background-color: #fff;
- border: 1px solid #ddd;
- border-bottom-color: #ccc;
- border-radius: 4px;
- -webkit-box-sizing: border-box;
- box-sizing: border-box;
- display: none;
- max-height: calc(100vh - 61px);
- overflow-y: auto;
- padding: 10px 0;
- position: absolute;
- right: -15px;
- text-align: left;
- top: 100%;
- white-space: nowrap;
-}
-.app-nav li ul li {
- display: block;
- font-size: 14px;
- line-height: 1rem;
- margin: 0;
- margin: 8px 14px;
- white-space: nowrap;
-}
-.app-nav li ul a {
- display: block;
- font-size: inherit;
- margin: 0;
- padding: 0;
-}
-.app-nav li ul a.active {
- border-bottom: 0;
-}
-.app-nav li:hover ul {
- display: block;
-}
-.github-corner {
- border-bottom: 0;
- position: fixed;
- right: 0;
- text-decoration: none;
- top: 0;
- z-index: 1;
-}
-.github-corner:hover .octo-arm {
- -webkit-animation: octocat-wave 560ms ease-in-out;
- animation: octocat-wave 560ms ease-in-out;
-}
-.github-corner svg {
- color: #fff;
- fill: var(--theme-color, #0074d9);
- height: 80px;
- width: 80px;
-}
-main {
- display: block;
- position: relative;
- width: 100vw;
- height: 100%;
- z-index: 0;
-}
-main.hidden {
- display: none;
-}
-.anchor {
- display: inline-block;
- text-decoration: none;
- -webkit-transition: all 0.3s;
- transition: all 0.3s;
-}
-.anchor span {
- color: #34495e;
-}
-.anchor:hover {
- text-decoration: underline;
-}
-.sidebar {
- border-right: 1px solid rgba(0,0,0,0.07);
- overflow-y: auto;
- padding: 40px 0 0;
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- -webkit-transition: -webkit-transform 250ms ease-out;
- transition: -webkit-transform 250ms ease-out;
- transition: transform 250ms ease-out;
- transition: transform 250ms ease-out, -webkit-transform 250ms ease-out;
- width: 16rem;
- z-index: 20;
-}
-.sidebar > h1 {
- margin: 0 auto 1rem;
- font-size: 1.5rem;
- font-weight: 300;
- text-align: center;
-}
-.sidebar > h1 a {
- color: inherit;
- text-decoration: none;
-}
-.sidebar > h1 .app-nav {
- display: block;
- position: static;
-}
-.sidebar .sidebar-nav {
- line-height: 2em;
- padding-bottom: 40px;
-}
-.sidebar li.collapse .app-sub-sidebar {
- display: none;
-}
-.sidebar ul {
- margin: 0 0 0 15px;
- padding: 0;
-}
-.sidebar li > p {
- font-weight: 700;
- margin: 0;
-}
-.sidebar ul,
-.sidebar ul li {
- list-style: none;
-}
-.sidebar ul li a {
- border-bottom: none;
- display: block;
-}
-.sidebar ul li ul {
- padding-left: 20px;
-}
-.sidebar::-webkit-scrollbar {
- width: 4px;
-}
-.sidebar::-webkit-scrollbar-thumb {
- background: transparent;
- border-radius: 4px;
-}
-.sidebar:hover::-webkit-scrollbar-thumb {
- background: rgba(136,136,136,0.4);
-}
-.sidebar:hover::-webkit-scrollbar-track {
- background: rgba(136,136,136,0.1);
-}
-.sidebar-toggle {
- background-color: transparent;
- background-color: rgba(255,255,255,0.8);
- border: 0;
- outline: none;
- padding: 10px;
- position: absolute;
- bottom: 0;
- left: 0;
- text-align: center;
- -webkit-transition: opacity 0.3s;
- transition: opacity 0.3s;
- width: 0rem;
- z-index: 30;
-}
-.sidebar-toggle .sidebar-toggle-button:hover {
- opacity: 0.4;
-}
-.sidebar-toggle span {
- background-color: var(--theme-color, #0074d9);
- display: block;
- margin-bottom: 4px;
- width: 16px;
- height: 2px;
-}
-body.sticky .sidebar,
-body.sticky .sidebar-toggle {
- position: fixed;
-}
-.content {
- padding-top: 60px;
- position: absolute;
- top: 0;
- right: 0;
- bottom: 0;
- left: 16rem;
- -webkit-transition: left 250ms ease;
- transition: left 250ms ease;
-}
-.markdown-section {
- margin: 0 auto;
- max-width: 800px;
- padding: 30px 15px 40px 15px;
- position: relative;
-}
-.markdown-section > * {
- -webkit-box-sizing: border-box;
- box-sizing: border-box;
- font-size: inherit;
-}
-.markdown-section > :first-child {
- margin-top: 0 !important;
-}
-.markdown-section hr {
- border: none;
- border-bottom: 1px solid #eee;
- margin: 2em 0;
-}
-.markdown-section iframe {
- border: 1px solid #eee;
-/* fix horizontal overflow on iOS Safari */
- width: 1px;
- min-width: 100%;
-}
-.markdown-section table {
- border-collapse: collapse;
- border-spacing: 0;
- display: block;
- margin-bottom: 1rem;
- overflow: auto;
- width: 100%;
-}
-.markdown-section th {
- border: 1px solid #ddd;
- font-weight: bold;
- padding: 6px 13px;
-}
-.markdown-section td {
- border: 1px solid #ddd;
- padding: 6px 13px;
-}
-.markdown-section tr {
- border-top: 1px solid #ccc;
-}
-.markdown-section tr:nth-child(2n) {
- background-color: #f8f8f8;
-}
-.markdown-section p.tip {
- background-color: #f8f8f8;
- border-bottom-right-radius: 2px;
- border-left: 4px solid #f66;
- border-top-right-radius: 2px;
- margin: 2em 0;
- padding: 12px 24px 12px 30px;
- position: relative;
-}
-.markdown-section p.tip:before {
- background-color: #f66;
- border-radius: 100%;
- color: #fff;
- content: '!';
- font-family: 'Dosis', 'Helvetica Neue', Arial, sans-serif;
- font-size: 14px;
- font-weight: bold;
- left: -12px;
- line-height: 20px;
- position: absolute;
- height: 20px;
- width: 20px;
- text-align: center;
- top: 14px;
-}
-.markdown-section p.tip code {
- background-color: #efefef;
-}
-.markdown-section p.tip em {
- color: #34495e;
-}
-.markdown-section p.warn {
- background: rgba(0,116,217,0.1);
- border-radius: 2px;
- padding: 1rem;
-}
-.markdown-section ul.task-list > li {
- list-style-type: none;
-}
-body.close .sidebar {
- -webkit-transform: translateX(-16rem);
- transform: translateX(-16rem);
-}
-body.close .sidebar-toggle {
- width: auto;
-}
-body.close .content {
- left: 0;
-}
-@media print {
- .github-corner,
- .sidebar-toggle,
- .sidebar,
- .app-nav {
- display: none;
- }
-}
-@media screen and (max-width: 768px) {
- .github-corner,
- .sidebar-toggle,
- .sidebar {
- position: fixed;
- }
- .app-nav {
- margin-top: 16px;
- }
- .app-nav li ul {
- top: 30px;
- }
- main {
- height: auto;
- overflow-x: hidden;
- }
- .sidebar {
- left: -16rem;
- -webkit-transition: -webkit-transform 250ms ease-out;
- transition: -webkit-transform 250ms ease-out;
- transition: transform 250ms ease-out;
- transition: transform 250ms ease-out, -webkit-transform 250ms ease-out;
- }
- .content {
- left: 0;
- max-width: 100vw;
- position: static;
- padding-top: 20px;
- -webkit-transition: -webkit-transform 250ms ease;
- transition: -webkit-transform 250ms ease;
- transition: transform 250ms ease;
- transition: transform 250ms ease, -webkit-transform 250ms ease;
- }
- .app-nav,
- .github-corner {
- -webkit-transition: -webkit-transform 250ms ease-out;
- transition: -webkit-transform 250ms ease-out;
- transition: transform 250ms ease-out;
- transition: transform 250ms ease-out, -webkit-transform 250ms ease-out;
- }
- .sidebar-toggle {
- background-color: transparent;
- width: auto;
- padding: 30px 30px 10px 10px;
- }
- body.close .sidebar {
- -webkit-transform: translateX(16rem);
- transform: translateX(16rem);
- }
- body.close .sidebar-toggle {
- background-color: rgba(255,255,255,0.8);
- -webkit-transition: 1s background-color;
- transition: 1s background-color;
- width: 0rem;
- padding: 10px;
- }
- body.close .content {
- -webkit-transform: translateX(16rem);
- transform: translateX(16rem);
- }
- body.close .app-nav,
- body.close .github-corner {
- display: none;
- }
- .github-corner:hover .octo-arm {
- -webkit-animation: none;
- animation: none;
- }
- .github-corner .octo-arm {
- -webkit-animation: octocat-wave 560ms ease-in-out;
- animation: octocat-wave 560ms ease-in-out;
- }
-}
-@-webkit-keyframes octocat-wave {
- 0%, 100% {
- -webkit-transform: rotate(0);
- transform: rotate(0);
- }
- 20%, 60% {
- -webkit-transform: rotate(-25deg);
- transform: rotate(-25deg);
- }
- 40%, 80% {
- -webkit-transform: rotate(10deg);
- transform: rotate(10deg);
- }
-}
-@keyframes octocat-wave {
- 0%, 100% {
- -webkit-transform: rotate(0);
- transform: rotate(0);
- }
- 20%, 60% {
- -webkit-transform: rotate(-25deg);
- transform: rotate(-25deg);
- }
- 40%, 80% {
- -webkit-transform: rotate(10deg);
- transform: rotate(10deg);
- }
-}
-section.cover {
- -webkit-box-align: center;
- -ms-flex-align: center;
- align-items: center;
- background-position: center center;
- background-repeat: no-repeat;
- background-size: cover;
- height: 100vh;
- display: none;
-}
-section.cover.show {
- display: -webkit-box;
- display: -ms-flexbox;
- display: flex;
-}
-section.cover.has-mask .mask {
- background-color: #fff;
- opacity: 0.8;
- position: absolute;
- top: 0;
- height: 100%;
- width: 100%;
-}
-section.cover .cover-main {
- -webkit-box-flex: 1;
- -ms-flex: 1;
- flex: 1;
- margin: -20px 16px 0;
- text-align: center;
- z-index: 1;
-}
-section.cover a {
- color: inherit;
- text-decoration: none;
-}
-section.cover a:hover {
- text-decoration: none;
-}
-section.cover p {
- line-height: 1.5rem;
- margin: 1em 0;
-}
-section.cover h1 {
- color: inherit;
- font-size: 2.5rem;
- font-weight: 300;
- margin: 0.625rem 0 2.5rem;
- position: relative;
- text-align: center;
-}
-section.cover h1 a {
- display: block;
-}
-section.cover h1 small {
- bottom: -0.4375rem;
- font-size: 1rem;
- position: absolute;
-}
-section.cover blockquote {
- font-size: 1.5rem;
- text-align: center;
-}
-section.cover ul {
- line-height: 1.8;
- list-style-type: none;
- margin: 1em auto;
- max-width: 500px;
- padding: 0;
-}
-section.cover .cover-main > p:last-child a {
- border-color: var(--theme-color, #0074d9);
- border-radius: 2rem;
- border-style: solid;
- border-width: 1px;
- -webkit-box-sizing: border-box;
- box-sizing: border-box;
- color: var(--theme-color, #0074d9);
- display: inline-block;
- font-size: 1.05rem;
- letter-spacing: 0.1rem;
- margin: 0.5rem 1rem;
- padding: 0.75em 2rem;
- text-decoration: none;
- -webkit-transition: all 0.15s ease;
- transition: all 0.15s ease;
-}
-section.cover .cover-main > p:last-child a:last-child {
- background-color: var(--theme-color, #0074d9);
- color: #fff;
-}
-section.cover .cover-main > p:last-child a:last-child:hover {
- color: inherit;
- opacity: 0.8;
-}
-section.cover .cover-main > p:last-child a:hover {
- color: inherit;
-}
-section.cover blockquote > p > a {
- border-bottom: 2px solid var(--theme-color, #0074d9);
- -webkit-transition: color 0.3s;
- transition: color 0.3s;
-}
-section.cover blockquote > p > a:hover {
- color: var(--theme-color, #0074d9);
-}
-/* sidebar */
-.sidebar {
- color: #364149;
- background-color: #fff;
-}
-.sidebar a {
- color: #666;
- text-decoration: none;
-}
-.sidebar li {
- list-style: none;
- margin: 0;
- padding: 0.2em 0 0.2em 0;
-}
-.sidebar ul li ul {
- padding: 0;
-}
-.sidebar li.active {
- background-color: #eee;
-}
-.sidebar li.active a {
- color: #333;
-}
-.markdown-section h1,
-.markdown-section h2,
-.markdown-section h3,
-.markdown-section h4,
-.markdown-section strong {
- color: #333;
- font-weight: 400;
-}
-.markdown-section a {
- color: var(--theme-color, #0074d9);
- font-weight: 400;
-}
-.markdown-section p,
-.markdown-section ul,
-.markdown-section ol {
- line-height: 1.6rem;
- margin: 0 0 1em 0;
- word-spacing: 0.05rem;
-}
-.markdown-section h1 {
- font-size: 2rem;
- font-weight: 500;
- margin: 0 0 1rem;
-}
-.markdown-section h2 {
- font-size: 1.8rem;
- font-weight: 400;
- margin: 0 0 1rem 0;
- padding: 1rem 0 0 0;
-}
-.markdown-section h3 {
- font-size: 1.5rem;
- margin: 52px 0 1.2rem;
-}
-.markdown-section h4 {
- font-size: 1.25rem;
-}
-.markdown-section h5 {
- font-size: 1rem;
-}
-.markdown-section h6 {
- color: #777;
- font-size: 1rem;
-}
-.markdown-section figure,
-.markdown-section p,
-.markdown-section ul,
-.markdown-section ol {
- margin: 1.2em 0;
-}
-.markdown-section ul,
-.markdown-section ol {
- padding-left: 1.5rem;
-}
-.markdown-section li {
- line-height: 1.5;
- margin: 0;
-}
-.markdown-section blockquote {
- border-left: 4px solid var(--theme-color, #0074d9);
- color: #858585;
- margin: 2em 0;
- padding-left: 20px;
-}
-.markdown-section blockquote p {
- font-weight: 600;
- margin-left: 0;
-}
-.markdown-section iframe {
- margin: 1em 0;
-}
-.markdown-section em {
- color: #7f8c8d;
-}
-.markdown-section code {
- background-color: #f9f9f9;
- border-radius: 3px;
- font-family: Monaco, courier, monospace;
- padding: 0.2em 0.4rem;
- white-space: nowrap;
-}
-.markdown-section pre {
- background-color: #f9f9f9;
- border-left: 2px solid #eee;
- font-family: Monaco, courier, monospace;
- font-size: 16px;
- margin: 0 0 1em 0;
- padding: 8px;
- padding: 0 10px 12px 0;
- overflow: auto;
- word-wrap: normal;
- position: relative;
-}
-/* code highlight */
-.token.cdata,
-.token.comment,
-.token.doctype,
-.token.prolog {
- color: #93a1a1 /* base1 */;
-}
-.token.punctuation {
- color: #586e75 /* base01 */;
-}
-.namespace {
- opacity: 0.7;
-}
-.token.property,
-.token.tag,
-.token.boolean,
-.token.number,
-.token.constant,
-.token.symbol,
-.token.deleted {
- color: #268bd2 /* blue */;
-}
-.token.selector,
-.token.attr-name,
-.token.string,
-.token.char,
-.token.builtin,
-.token.url,
-.token.inserted {
- color: #2aa198 /* cyan */;
-}
-.token.entity {
- color: #657b83 /* base00 */;
- background: #eee8d5 /* base2 */;
-}
-.token.atrule,
-.token.attr-value,
-.token.keyword {
- color: #a11 /* green */;
-}
-.token.function {
- color: #b58900 /* yellow */;
-}
-.token.regex,
-.token.important,
-.token.variable {
- color: #cb4b16 /* orange */;
-}
-.token.important,
-.token.bold {
- font-weight: bold;
-}
-.token.italic {
- font-style: italic;
-}
-.token.entity {
- cursor: help;
-}
-.markdown-section pre > code {
- background-color: #f8f8f8;
- border-radius: 2px;
- display: block;
- font-family: Monaco, courier, monospace;
- line-height: 1.1rem;
- max-width: inherit;
- overflow: inherit;
- padding: 20px 0.8em 20px;
- position: relative;
- white-space: inherit;
-}
-.markdown-section code::after,
-.markdown-section code::before {
- letter-spacing: 0.05rem;
-}
-code .token {
- -webkit-font-smoothing: initial;
- -moz-osx-font-smoothing: initial;
- min-height: 1.5rem;
-}
+*{-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:none;-webkit-touch-callout:none;box-sizing:border-box}body:not(.ready){overflow:hidden}body:not(.ready) .app-nav,body:not(.ready)>nav,body:not(.ready) [data-cloak]{display:none}div#app{font-size:30px;font-weight:lighter;margin:40vh auto;text-align:center}div#app:empty:before{content:"Loading..."}.emoji{height:1.2rem;vertical-align:middle}.progress{background-color:var(--theme-color,#0074d9);height:2px;left:0;position:fixed;right:0;top:0;transition:width .2s,opacity .4s;width:0;z-index:999999}.search .search-keyword,.search a:hover{color:var(--theme-color,#0074d9)}.search .search-keyword{font-style:normal;font-weight:700}body,html{height:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:#34495e;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:15px;letter-spacing:0;margin:0;overflow-x:hidden}img{max-width:100%}a[disabled]{cursor:not-allowed;opacity:.6}kbd{border:1px solid #ccc;border-radius:3px;display:inline-block;font-size:12px!important;line-height:12px;margin-bottom:3px;padding:3px 5px;vertical-align:middle}li input[type=checkbox]{margin:0 .2em .25em 0;vertical-align:middle}.app-nav{margin:25px 60px 0 0;position:absolute;right:0;text-align:right;z-index:10}.app-nav.no-badge{margin-right:25px}.app-nav p{margin:0}.app-nav>a{margin:0 1rem;padding:5px 0}.app-nav li,.app-nav ul{display:inline-block;list-style:none;margin:0}.app-nav a{color:inherit;font-size:16px;text-decoration:none;transition:color .3s}.app-nav a.active,.app-nav a:hover{color:var(--theme-color,#0074d9)}.app-nav a.active{border-bottom:2px solid var(--theme-color,#0074d9)}.app-nav li{display:inline-block;margin:0 1rem;padding:5px 0;position:relative;cursor:pointer}.app-nav li ul{background-color:#fff;border:1px solid;border-color:#ddd #ddd #ccc;border-radius:4px;box-sizing:border-box;display:none;max-height:calc(100vh - 61px);overflow-y:auto;padding:10px 0;position:absolute;right:-15px;text-align:left;top:100%;white-space:nowrap}.app-nav li ul li{display:block;font-size:14px;line-height:1rem;margin:8px 14px;white-space:nowrap}.app-nav li ul a{display:block;font-size:inherit;margin:0;padding:0}.app-nav li ul a.active{border-bottom:0}.app-nav li:hover ul{display:block}.github-corner{border-bottom:0;position:fixed;right:0;text-decoration:none;top:0;z-index:1}.github-corner:hover .octo-arm{-webkit-animation:octocat-wave .56s ease-in-out;animation:octocat-wave .56s ease-in-out}.github-corner svg{color:#fff;fill:var(--theme-color,#0074d9);height:80px;width:80px}main{display:block;position:relative;width:100vw;height:100%;z-index:0}main.hidden{display:none}.anchor{display:inline-block;text-decoration:none;transition:all .3s}.anchor span{color:#34495e}.anchor:hover{text-decoration:underline}.sidebar{border-right:1px solid rgba(0,0,0,.07);overflow-y:auto;padding:40px 0 0;position:absolute;top:0;bottom:0;left:0;transition:transform .25s ease-out;width:16rem;z-index:20}.sidebar>h1{margin:0 auto 1rem;font-size:1.5rem;font-weight:300;text-align:center}.sidebar>h1 a{color:inherit;text-decoration:none}.sidebar>h1 .app-nav{display:block;position:static}.sidebar .sidebar-nav{line-height:2em;padding-bottom:40px}.sidebar li.collapse .app-sub-sidebar{display:none}.sidebar ul{margin:0 0 0 15px;padding:0}.sidebar li>p{font-weight:700;margin:0}.sidebar ul,.sidebar ul li{list-style:none}.sidebar ul li a{border-bottom:none;display:block}.sidebar ul li ul{padding-left:20px}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.sidebar:hover::-webkit-scrollbar-thumb{background:hsla(0,0%,53.3%,.4)}.sidebar:hover::-webkit-scrollbar-track{background:hsla(0,0%,53.3%,.1)}.sidebar-toggle{background-color:transparent;background-color:hsla(0,0%,100%,.8);border:0;outline:none;padding:10px;position:absolute;bottom:0;left:0;text-align:center;transition:opacity .3s;width:0;z-index:30;cursor:pointer}.sidebar-toggle:hover .sidebar-toggle-button{opacity:.4}.sidebar-toggle span{background-color:var(--theme-color,#0074d9);display:block;margin-bottom:4px;width:16px;height:2px}body.sticky .sidebar,body.sticky .sidebar-toggle{position:fixed}.content{padding-top:60px;position:absolute;top:0;right:0;bottom:0;left:16rem;transition:left .25s ease}.markdown-section{margin:0 auto;max-width:80%;padding:30px 15px 40px;position:relative}.markdown-section>*{box-sizing:border-box;font-size:inherit}.markdown-section>:first-child{margin-top:0!important}.markdown-section hr{border:none;border-bottom:1px solid #eee;margin:2em 0}.markdown-section iframe{border:1px solid #eee;width:1px;min-width:100%}.markdown-section table{border-collapse:collapse;border-spacing:0;display:block;margin-bottom:1rem;overflow:auto;width:100%}.markdown-section th{font-weight:700}.markdown-section td,.markdown-section th{border:1px solid #ddd;padding:6px 13px}.markdown-section tr{border-top:1px solid #ccc}.markdown-section p.tip,.markdown-section tr:nth-child(2n){background-color:#f8f8f8}.markdown-section p.tip{border-bottom-right-radius:2px;border-left:4px solid #f66;border-top-right-radius:2px;margin:2em 0;padding:12px 24px 12px 30px;position:relative}.markdown-section p.tip:before{background-color:#f66;border-radius:100%;color:#fff;content:"!";font-family:Dosis,Source Sans Pro,Helvetica Neue,Arial,sans-serif;font-size:14px;font-weight:700;left:-12px;line-height:20px;position:absolute;height:20px;width:20px;text-align:center;top:14px}.markdown-section p.tip code{background-color:#efefef}.markdown-section p.tip em{color:#34495e}.markdown-section p.warn{background:rgba(0,116,217,.1);border-radius:2px;padding:1rem}.markdown-section ul.task-list>li{list-style-type:none}body.close .sidebar{transform:translateX(-16rem)}body.close .sidebar-toggle{width:auto}body.close .content{left:0}@media print{.app-nav,.github-corner,.sidebar,.sidebar-toggle{display:none}}@media screen and (max-width:768px){.github-corner,.sidebar,.sidebar-toggle{position:fixed}.app-nav{margin-top:16px}.app-nav li ul{top:30px}main{height:auto;overflow-x:hidden}.sidebar{left:-16rem;transition:transform .25s ease-out}.content{left:0;max-width:100vw;position:static;padding-top:20px;transition:transform .25s ease}.app-nav,.github-corner{transition:transform .25s ease-out}.sidebar-toggle{background-color:transparent;width:auto;padding:30px 30px 10px 10px}body.close .sidebar{transform:translateX(16rem)}body.close .sidebar-toggle{background-color:hsla(0,0%,100%,.8);transition:background-color 1s;width:0;padding:10px}body.close .content{transform:translateX(16rem)}body.close .app-nav,body.close .github-corner{display:none}.github-corner:hover .octo-arm{-webkit-animation:none;animation:none}.github-corner .octo-arm{-webkit-animation:octocat-wave .56s ease-in-out;animation:octocat-wave .56s ease-in-out}}@-webkit-keyframes octocat-wave{0%,to{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}@keyframes octocat-wave{0%,to{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}section.cover{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100vh;width:100vw;display:none}section.cover.show{display:flex}section.cover.has-mask .mask{background-color:#fff;opacity:.8;position:absolute;top:0;height:100%;width:100%}section.cover .cover-main{flex:1;margin:-20px 16px 0;text-align:center}section.cover a{color:inherit}section.cover a,section.cover a:hover{text-decoration:none}section.cover p{line-height:1.5rem;margin:1em 0}section.cover h1{color:inherit;font-size:2.5rem;font-weight:300;margin:.625rem 0 2.5rem;position:relative;text-align:center}section.cover h1 a{display:block}section.cover h1 small{bottom:-.4375rem;font-size:1rem;position:absolute}section.cover blockquote{font-size:1.5rem;text-align:center}section.cover ul{line-height:1.8;list-style-type:none;margin:1em auto;max-width:500px;padding:0}section.cover .cover-main>p:last-child a{border-radius:2rem;border:1px solid var(--theme-color,#0074d9);box-sizing:border-box;color:var(--theme-color,#0074d9);display:inline-block;font-size:1.05rem;letter-spacing:.1rem;margin:.5rem 1rem;padding:.75em 2rem;text-decoration:none;transition:all .15s ease}section.cover .cover-main>p:last-child a:last-child{background-color:var(--theme-color,#0074d9);color:#fff}section.cover .cover-main>p:last-child a:last-child:hover{color:inherit;opacity:.8}section.cover .cover-main>p:last-child a:hover{color:inherit}section.cover blockquote>p>a{border-bottom:2px solid var(--theme-color,#0074d9);transition:color .3s}section.cover blockquote>p>a:hover{color:var(--theme-color,#0074d9)}.sidebar{color:#364149;background-color:#fff}.sidebar a{color:#666;text-decoration:none}.sidebar li{list-style:none;margin:0;padding:.2em 0}.sidebar ul li ul{padding:0}.sidebar li.active{background-color:#eee}.sidebar li.active a{color:#333}.markdown-section h1,.markdown-section h2,.markdown-section h3,.markdown-section h4,.markdown-section strong{color:#333;font-weight:400}.markdown-section strong{color:#333;font-weight:600}.markdown-section a{color:var(--theme-color,#0074d9)}.markdown-section ol,.markdown-section p,.markdown-section ul{line-height:1.6rem;margin:0 0 1em;word-spacing:.05rem}.markdown-section h1{font-size:2rem;font-weight:500;margin:0 0 1rem}.markdown-section h2{font-size:1.8rem;font-weight:400;margin:0 0 1rem;padding:1rem 0 0}.markdown-section h3{font-size:1.5rem;margin:52px 0 1.2rem}.markdown-section h4{font-size:1.25rem}.markdown-section h5{font-size:1rem}.markdown-section h6{color:#777;font-size:1rem}.markdown-section figure,.markdown-section ol,.markdown-section p,.markdown-section ul{margin:1.2em 0}.markdown-section ol,.markdown-section ul{padding-left:1.5rem}.markdown-section li{line-height:1.5;margin:0}.markdown-section blockquote{border-left:4px solid var(--theme-color,#0074d9);color:#858585;margin:2em 0;padding-left:20px}.markdown-section blockquote p{font-weight:600;margin-left:0}.markdown-section iframe{margin:1em 0}.markdown-section em{color:#7f8c8d}.markdown-section code{border-radius:3px;padding:.2em .4rem;white-space:nowrap}.markdown-section code,.markdown-section pre{background-color:#f9f9f9;font-family:Monaco, courier, monospace}.markdown-section pre{border-left:2px solid #eee;font-size:16px;margin:0 0 1em;padding:0 10px 12px 0;overflow:auto;word-wrap:normal;position:relative}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#a11}.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.markdown-section pre>code{background-color:#f8f8f8;border-radius:2px;display:block;font-family:Monaco, courier, monospace;line-height:1.1rem;max-width:inherit;overflow:inherit;padding:20px .8em;position:relative;white-space:inherit}.markdown-section code:after,.markdown-section code:before{letter-spacing:.05rem}code .token{-webkit-font-smoothing:initial;-moz-osx-font-smoothing:initial;min-height:1.5rem;position:relative;left:auto}
diff --git a/docsify/docsify-pagination.min.js b/docsify/docsify-pagination.min.js
index 33bad0a..fd31e17 100644
--- a/docsify/docsify-pagination.min.js
+++ b/docsify/docsify-pagination.min.js
@@ -1 +1 @@
-!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e():"function"==typeof define&&define.amd?define(e):e()}(0,function(){"use strict";var n,c=(function(n,e){function t(n,e){return e.querySelector(n)}(e=n.exports=function(n,e){return t(n,e=e||document)}).all=function(n,e){return(e=e||document).querySelectorAll(n)},e.engine=function(n){if(!n.one)throw new Error(".one callback required");if(!n.all)throw new Error(".all callback required");return t=n.one,e.all=n.all,e}}(n={exports:{}},n.exports),n.exports);c.all,c.engine;try{var o=c}catch(n){o=c}var e=Element.prototype,a=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector,s=function(n,e){if(!n||1!==n.nodeType)return!1;if(a)return a.call(n,e);for(var t=o.all(e,n.parentNode),i=0;i '+t.slice(5).trim()+" "+e+"'+(n?e:p(e,!0))+"
\n":"
"},r.prototype.blockquote=function(e){return""+(n?e:p(e,!0))+"
\n"+e+"
\n"},r.prototype.html=function(e){return e},r.prototype.heading=function(e,t,n){return this.options.headerIds?"
\n":"
\n"},r.prototype.list=function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+""+r+">\n"},r.prototype.listitem=function(e){return"\n\n"+e+"\n"+t+"
\n"},r.prototype.tablerow=function(e){return"\n"+e+" \n"},r.prototype.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+""+n+">\n"},r.prototype.strong=function(e){return""+e+""},r.prototype.em=function(e){return""+e+""},r.prototype.codespan=function(e){return""+e+"
"},r.prototype.br=function(){return this.options.xhtml?"
":"
"},r.prototype.del=function(e){return""+e+""},r.prototype.link=function(e,t,n){if(this.options.sanitize){try{var r=decodeURIComponent(h(e)).replace(/[^\w:]/g,"").toLowerCase()}catch(e){return n}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return n}this.options.baseUrl&&!s.test(e)&&(e=a(this.options.baseUrl,e));try{e=encodeURI(e).replace(/%25/g,"%")}catch(e){return n}var i='"+n+""},r.prototype.image=function(e,t,n){this.options.baseUrl&&!s.test(e)&&(e=a(this.options.baseUrl,e));var r='":">"},r.prototype.text=function(e){return e},i.prototype.strong=i.prototype.em=i.prototype.codespan=i.prototype.del=i.prototype.text=function(e){return e},i.prototype.link=i.prototype.image=function(e,t,n){return""+n},i.prototype.br=function(){return""},u.parse=function(e,t){return new u(t).parse(e)},u.prototype.parse=function(e){this.inline=new c(e.links,this.options),this.inlineText=new c(e.links,g({},this.options,{renderer:new i})),this.tokens=e.reverse();for(var t="";this.next();)t+=this.tok();return t},u.prototype.next=function(){return this.token=this.tokens.pop()},u.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0},u.prototype.parseText=function(){for(var e=this.token.text;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)},u.prototype.tok=function(){var e=this;switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,h(this.inlineText.output(this.token.text)));case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":var t,n,r,i,a="",o="";for(r="",t=0;t
"+p(e.message+"",!0)+"";throw e}}d.exec=d,f.options=f.setOptions=function(e){return g(f.defaults,e),f},f.getDefaults=function(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:new r,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tables:!0,xhtml:!1}},f.defaults=f.getDefaults(),f.Parser=u,f.parser=u.parse,f.Renderer=r,f.TextRenderer=i,f.Lexer=l,f.lexer=l.lex,f.InlineLexer=c,f.inlineLexer=c.output,f.parse=f,m.exports=f}(t||"undefined"!=typeof window&&window)}),a=i(function(e){var c="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},u=function(){var l=/\blang(?:uage)?-([\w-]+)\b/i,t=0,P=c.Prism={manual:c.Prism&&c.Prism.manual,disableWorkerMessageHandler:c.Prism&&c.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof o?new o(e.type,P.util.encode(e.content),e.alias):"Array"===P.util.type(e)?e.map(P.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(!(k instanceof s)){if(g&&b!=t.length-1){if(p.lastIndex=y,!(C=p.exec(e)))break;for(var x=C.index+(d?C[1].length:0),w=C.index+C[0].length,_=b,S=y,A=t.length;_"+r.content+""+r.tag+">"},!c.document)return c.addEventListener&&(P.disableWorkerMessageHandler||c.addEventListener("message",function(e){var t=JSON.parse(e.data),n=t.language,r=t.code,i=t.immediateClose;c.postMessage(P.highlight(r,P.languages[n],n)),i&&c.close()},!1)),c.Prism;var e=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return e&&(P.filename=e.src,P.manual||e.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(P.highlightAll):window.setTimeout(P.highlightAll,16):document.addEventListener("DOMContentLoaded",P.highlightAll))),c.Prism}();e.exports&&(e.exports=u),void 0!==t&&(t.Prism=u),u.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/(^|[^\\])["']/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/?[\da-z]{1,8};/i},u.languages.markup.tag.inside["attr-value"].inside.entity=u.languages.markup.entity,u.hooks.add("wrap",function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))}),u.languages.xml=u.languages.markup,u.languages.html=u.languages.markup,u.languages.mathml=u.languages.markup,u.languages.svg=u.languages.markup,u.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+?.*?(?:;|(?=\s*\{))/i,inside:{rule:/@[\w-]+/}},url:/url\((?:(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,selector:/[^{}\s][^{};]*?(?=\s*\{)/,string:{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/\B!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:]/},u.languages.css.atrule.inside.rest=u.languages.css,u.languages.markup&&(u.languages.insertBefore("markup","tag",{style:{pattern:/(")).firstElementChild),function(n){if(!(window.CSS&&window.CSS.supports&&window.CSS.supports("(--v:red)"))){var e=w("style:not(.inserted),link");[].forEach.call(e,function(e){if("STYLE"===e.nodeName)j(e,n);else if("LINK"===e.nodeName){var t=e.getAttribute("href");if(!/\.css$/.test(t))return;F(t).then(function(e){var t=_("style",e);k.appendChild(t),j(t,n)})}})}}(t.themeColor)),e._updateRender(),$(y,"ready")}var Ae={};var Ce=function(e){this.config=e};function Ee(e){var t=location.href.indexOf("#");location.replace(location.href.slice(0,0<=t?t:0)+"#"+e)}Ce.prototype.getBasePath=function(){return this.config.basePath},Ce.prototype.getFile=function(e,t){void 0===e&&(e=this.getCurrentPath());var n,r,i=this.config,a=this.getBasePath(),o="string"==typeof i.ext?i.ext:".md";return e=i.alias?function e(t,n,r){var i=Object.keys(n).filter(function(e){return(Ae[e]||(Ae[e]=new RegExp("^"+e+"$"))).test(t)&&t!==r})[0];return i?e(t.replace(Ae[i],n[i]),n,t):t}(e,i.alias):e,n=e,r=o,e=(e=new RegExp("\\.("+r.replace(/^\./,"")+"|html)$","g").test(n)?n:/\/$/g.test(n)?n+"README"+r:""+n+r)==="/README"+o&&i.homepage||e,e=X(e)?e:K(a,e),t&&(e=e.replace(new RegExp("^"+a),"")),e},Ce.prototype.onchange=function(e){void 0===e&&(e=p),e()},Ce.prototype.getCurrentPath=function(){},Ce.prototype.normalize=function(){},Ce.prototype.parse=function(){},Ce.prototype.toURL=function(e,t,n){var r=n&&"#"===e[0],i=this.parse(ee(e));if(i.query=d({},i.query,t),e=(e=i.path+G(i.query)).replace(/\.md(\?)|\.md$/,"$1"),r){var a=n.indexOf("?");e=(0