diff --git a/SUMMARY.md b/SUMMARY.md
new file mode 100644
index 0000000..fd261fc
--- /dev/null
+++ b/SUMMARY.md
@@ -0,0 +1,11 @@
+* [Einleitung](README.md)
+* [1. Installation und Grundlagen](01_installation-und-grundlagen.md)
+* [2. Bibliothekssystem Koha](02_bibliothekssystem-koha.md)
+* [3. Archivsystem ArchivesSpace](03_archivsystem-archivesspace.md)
+* [4. Metadaten transformieren mit OpenRefine und MarcEdit](04_metadaten-transformieren-mit-openrefine-und-marcedit.md)
+* [5. Discovery-System VuFind und Suchmaschine Solr](05_discovery-system-vufind-und-suchmaschine-solr.md)
+* [6. Repository-Software DSpace-CRIS](06_repository-software-dspace-cris.md)
+* [7. Linked Data und Fazit](07_linked-data-und-fazit.md)
+
+- [VirtualBox Appliance erstellen](notes_virtualbox-appliance-erstellen.md)
+- [Bootfähige USB-Sticks erstellen](bootfaehige-usb-sticks-erstellen.md)
\ No newline at end of file
diff --git a/docsify/buble.css b/docsify/buble.css
new file mode 100644
index 0000000..99a5c00
--- /dev/null
+++ b/docsify/buble.css
@@ -0,0 +1,819 @@
+* {
+ -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;
+}
diff --git a/docsify/docsify-copy-code.min.js b/docsify/docsify-copy-code.min.js
new file mode 100644
index 0000000..dee84c7
--- /dev/null
+++ b/docsify/docsify-copy-code.min.js
@@ -0,0 +1,9 @@
+/*!
+ * docsify-copy-code
+ * v2.1.0
+ * https://github.com/jperasmus/docsify-copy-code
+ * (c) 2017-2019 JP Erasmus '+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
"+e.content+"
\n\n"}),t.classList.add("show"),a.classList.add("show"),t.innerHTML=s||''+d+"
",c.hideOtherSidebarContent&&(i.classList.add("hide"),o.classList.add("hide"))}function l(e){c=e}function r(e,n){var t,a,i,o,r=n.router.parse().query.s;l(e),Docsify.dom.style("\n.sidebar {\n padding-top: 0;\n}\n\n.search {\n margin-bottom: 20px;\n padding: 6px;\n border-bottom: 1px solid #eee;\n}\n\n.search .input-wrap {\n display: flex;\n align-items: center;\n}\n\n.search .results-panel {\n display: none;\n}\n\n.search .results-panel.show {\n display: block;\n}\n\n.search input {\n outline: none;\n border: none;\n width: 100%;\n padding: 0 7px;\n line-height: 36px;\n font-size: 14px;\n}\n\n.search input::-webkit-search-decoration,\n.search input::-webkit-search-cancel-button,\n.search input {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.search .clear-button {\n width: 36px;\n text-align: right;\n display: none;\n}\n\n.search .clear-button.show {\n display: block;\n}\n\n.search .clear-button svg {\n transform: scale(.5);\n}\n\n.search h2 {\n font-size: 17px;\n margin: 10px 0;\n}\n\n.search a {\n text-decoration: none;\n color: inherit;\n}\n\n.search .matching-post {\n border-bottom: 1px solid #eee;\n}\n\n.search .matching-post:last-child {\n border-bottom: 0;\n}\n\n.search p {\n font-size: 14px;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n\n.search p.empty {\n text-align: center;\n}\n\n.app-name.hide, .sidebar-nav.hide {\n display: none;\n}"),function(e){void 0===e&&(e="");var n='