diff --git a/_layouts/page_print.html b/_layouts/page_print.html
index 207fc0e..168bca3 100644
--- a/_layouts/page_print.html
+++ b/_layouts/page_print.html
@@ -3,16 +3,14 @@ layout: default_print
comments: true
---
-
-
- {% if page.summary %}
+{% if page.summary %}
{{page.summary}}
- {% endif %}
+{% endif %}
{{ content }}
diff --git a/_layouts/tag_page.html b/_layouts/tag_page.html
new file mode 100644
index 0000000..8167d3c
--- /dev/null
+++ b/_layouts/tag_page.html
@@ -0,0 +1,13 @@
+---
+layout: default
+---
+
{{ page.tag }}
+
+ {% for post in page.posts %}
+ {{ post.title }} ({{ post.date | date_to_string }} | Tags: {{ post | tags }})
+ {% endfor %}
+
+
+
+ {{ site | tag_cloud }}
+
\ No newline at end of file
diff --git a/_tooltips/baseball.html b/_tooltips/baseball.html
deleted file mode 100644
index 31921e1..0000000
--- a/_tooltips/baseball.html
+++ /dev/null
@@ -1,5 +0,0 @@
----
-id: baseball
----
-
-{{site.data.definitions.baseball}}
diff --git a/_tooltips/basketball.html b/_tooltips/basketball.html
deleted file mode 100644
index e4396a7..0000000
--- a/_tooltips/basketball.html
+++ /dev/null
@@ -1,5 +0,0 @@
----
-id: basketball
----
-
-{{site.data.definitions.basketball}}
diff --git a/_tooltips/football.html b/_tooltips/football.html
deleted file mode 100644
index 492a28b..0000000
--- a/_tooltips/football.html
+++ /dev/null
@@ -1,5 +0,0 @@
----
-id: football
----
-
-{{site.data.definitions.football}}
\ No newline at end of file
diff --git a/_tooltips/mydoc/baseball.html b/_tooltips/mydoc/baseball.html
new file mode 100644
index 0000000..07f7622
--- /dev/null
+++ b/_tooltips/mydoc/baseball.html
@@ -0,0 +1,6 @@
+---
+id: baseball
+product: mydoc
+---
+
+{{site.data.mydoc.mydoc_definitions.baseball}}
diff --git a/_tooltips/mydoc/basketball.html b/_tooltips/mydoc/basketball.html
new file mode 100644
index 0000000..ea5b142
--- /dev/null
+++ b/_tooltips/mydoc/basketball.html
@@ -0,0 +1,6 @@
+---
+id: basketball
+product: mydoc
+---
+
+{{site.data.mydoc.mydoc_definitions.basketball}}
diff --git a/_tooltips/mydoc/football.html b/_tooltips/mydoc/football.html
new file mode 100644
index 0000000..5e67d77
--- /dev/null
+++ b/_tooltips/mydoc/football.html
@@ -0,0 +1,6 @@
+---
+id: football
+product: mydoc
+---
+
+{{site.data.mydoc.mydoc_definitions.football}}
\ No newline at end of file
diff --git a/_tooltips/mydoc/soccer.html b/_tooltips/mydoc/soccer.html
new file mode 100644
index 0000000..5deef66
--- /dev/null
+++ b/_tooltips/mydoc/soccer.html
@@ -0,0 +1,6 @@
+---
+id: soccer
+product: mydoc
+---
+
+{{site.data.mydoc.mydoc_definitions.soccer}}
\ No newline at end of file
diff --git a/_tooltips/soccer.html b/_tooltips/soccer.html
deleted file mode 100644
index fb5e18c..0000000
--- a/_tooltips/soccer.html
+++ /dev/null
@@ -1,5 +0,0 @@
----
-id: soccer
----
-
-{{site.data.definitions.soccer}}
\ No newline at end of file
diff --git a/images/company_logo.png b/common_images/company_logo.png
similarity index 100%
rename from images/company_logo.png
rename to common_images/company_logo.png
diff --git a/images/company_logo_big.png b/common_images/company_logo_big.png
similarity index 100%
rename from images/company_logo_big.png
rename to common_images/company_logo_big.png
diff --git a/favicon.ico b/common_images/favicon.ico
similarity index 100%
rename from favicon.ico
rename to common_images/favicon.ico
diff --git a/configs/config_designers.yml b/configs/config_designers.yml
deleted file mode 100644
index e4b0b73..0000000
--- a/configs/config_designers.yml
+++ /dev/null
@@ -1,64 +0,0 @@
-# project definitions
-project: doc_designers
-audience: designers
-product: all
-platform: all
-version: all
-destination: ../doc_designers
-topnav_title: Jekyll Documentation Theme
-homepage_title: Jekyll Documentation Theme — Designers
-site_title: Jekyll Documentation Theme — Designers
-disqus_shortname: idrbwjekyll
-google_analytics: UA-66296557-1
-github_editme_path: tomjohnson1492/documentation-theme-jekyll/blob/gh-pages
-# don't use a slash before or after the above path. here's how this url gets written out in page.html: https://github.com/{{site.github_editme_path}}{{page.url | replace: '.html', '.md'}}
-
-# variables
-
-sidebar_tagline: designers
-sidebar_version: version 3.0
-project_file_name: doc
-
-port: 4001
-
-exclude:
- - doc_writer*
- - configs/
- - _site
- - di_multi*
-
-# same for all
-host: 127.0.0.1
-feedback_email: tomjohnson1492@gmail.com
-markdown: redcarpet
-print: false
-theme_file: theme-blue.css
-# only use suffix if you need to force index.html to display
-# suffix: index.html
-
-highlighter: pygments
-
-redcarpet:
- extensions: ["no_intra_emphasis", "fenced_code_blocks", "tables", "with_toc_data"]
-
-collections:
- tooltips:
- output: true
-
-defaults:
- -
- scope:
- path: ""
- type: "pages"
- values:
- layout: "page"
- comments: true
- -
- scope:
- path: ""
- type: "posts"
- values:
- layout: "post"
- comments: true
-
-
diff --git a/configs/config_designers_pdf.yml b/configs/config_designers_pdf.yml
deleted file mode 100644
index 9db5f22..0000000
--- a/configs/config_designers_pdf.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-destination: ../doc_designers-pdf
-url: "http://127.0.0.1:4002"
-baseurl: "/doc_designers"
-port: 4002
-print: true
-print_title: Jekyll Documentation Theme for Designers
-print_subtitle: version 3.0
-defaults:
- -
- scope:
- path: ""
- type: "pages"
- values:
- layout: "page_print"
- comments: true
- search: true
\ No newline at end of file
diff --git a/configs/config_writers.yml b/configs/config_writers.yml
deleted file mode 100644
index ffbfa06..0000000
--- a/configs/config_writers.yml
+++ /dev/null
@@ -1,66 +0,0 @@
-# project definitions
-project: doc_writers
-audience: writers
-product: all
-platform: all
-version: all
-destination: ../doc_writers
-topnav_title: Jekyll Documentation Theme
-homepage_title: Jekyll Documentation Theme — Writers
-site_title: Jekyll Documentation Theme — Writers
-disqus_shortname: idrbwjekyll
-google_analytics: UA-66296557-1
-github_editme_path: tomjohnson1492/documentation-theme-jekyll/blob/gh-pages
-# don't use a slash before or after the above path. here's how this url gets written out in page.html: https://github.com/{{site.github_editme_path}}{{page.url | replace: '.html', '.md'}}
-
-# variables
-
-sidebar_tagline: writers
-sidebar_version: version 3.0
-theme_file: theme-green.css
-project_file_name: doc
-
-port: 4003
-exclude:
- - doc_designers*
- - configs/
- - _site
- - _drafts
- - di_multi*
-
-# same for all
-host: 127.0.0.1
-feedback_email: tomjohnson1492@gmail.com
-sidebar_accordion: true
-markdown: redcarpet
-print: false
-
-# only use suffix if you need to force index.html to display
-# suffix: index.html
-
-highlighter: pygments
-
-redcarpet:
- extensions: ["no_intra_emphasis", "fenced_code_blocks", "tables", "with_toc_data"]
-
-collections:
- tooltips:
- output: true
-
-defaults:
- -
- scope:
- path: ""
- type: "pages"
- values:
- layout: "page"
- comments: true
- -
- scope:
- path: ""
- type: "posts"
- values:
- layout: "post"
- comments: true
-
-
diff --git a/configs/config_writers_pdf.yml b/configs/config_writers_pdf.yml
deleted file mode 100644
index 0ed30da..0000000
--- a/configs/config_writers_pdf.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-destination: ../doc_writers-pdf
-url: "http://127.0.0.1:4004"
-baseurl: "/doc_writers"
-port: 4004
-print: true
-print_title: Jekyll Documentation Theme for Writers
-print_subtitle: version 3.0
-defaults:
- -
- scope:
- path: ""
- type: "pages"
- values:
- layout: "page_print"
- comments: true
- search: true
\ No newline at end of file
diff --git a/configs/mydoc/config_designers.yml b/configs/mydoc/config_designers.yml
new file mode 100644
index 0000000..d3051bf
--- /dev/null
+++ b/configs/mydoc/config_designers.yml
@@ -0,0 +1,64 @@
+# project definitions
+project: mydoc_designers
+audience: designers
+product: doc
+platform: all
+version: all
+output: web
+destination: ../doc_outputs/mydoc/designers
+topnav_title: Jekyll Documentation Theme
+homepage_title: Jekyll doc theme for designers
+site_title: Jekyll theme for designers
+project_folder: mydoc
+company_name: Your company
+footer_image_location: ../common_images/company_logo.png
+github_editme_path: tomjohnson1492/documentation-theme-jekyll/edit/reviews
+# variables
+
+sidebar_tagline: Designers
+sidebar_version: Version 4.0
+theme_file: theme-blue.css
+pdf_file_name: mydoc_designers_pdf.pdf
+
+port: 4009
+
+exclude:
+ - _site
+ - _drafts
+ - configs/
+ - doc/mydoc_writers*
+
+# same for all
+host: 127.0.0.1
+feedback_email: tomjohnson1492@gmail.com
+
+markdown: redcarpet
+
+redcarpet:
+ extensions: ["no_intra_emphasis", "fenced_code_blocks", "tables", "with_toc_data"]
+
+highlighter: pygments
+
+collections:
+ tooltips:
+ output: false
+
+defaults:
+ -
+ scope:
+ path: ""
+ type: "pages"
+ values:
+ layout: "page"
+ comments: true
+ search: true
+ -
+ scope:
+ path: ""
+ type: "tooltips"
+ values:
+ layout: "page"
+ comments: true
+ search: true
+ tooltip: true
+
diff --git a/configs/mydoc/config_designers_pdf.yml b/configs/mydoc/config_designers_pdf.yml
new file mode 100644
index 0000000..b8a29ea
--- /dev/null
+++ b/configs/mydoc/config_designers_pdf.yml
@@ -0,0 +1,17 @@
+destination: ../doc_outputs/mydoc/designers-pdf
+url: "http://127.0.0.1:4010"
+baseurl: "/mydoc/designers-pdf"
+port: 4010
+output: pdf
+print_title: Jekyll theme for documentation — designers
+print_subtitle: version 4.0
+output: pdf
+defaults:
+ -
+ scope:
+ path: ""
+ type: "pages"
+ values:
+ layout: "page_print"
+ comments: true
+ search: true
\ No newline at end of file
diff --git a/configs/mydoc/config_writers.yml b/configs/mydoc/config_writers.yml
new file mode 100644
index 0000000..d65a517
--- /dev/null
+++ b/configs/mydoc/config_writers.yml
@@ -0,0 +1,64 @@
+# project definitions
+project: mydoc_writers
+audience: writers
+product: doc
+platform: all
+version: all
+output: web
+destination: ../doc_outputs/mydoc/writers
+topnav_title: Jekyll Documentation Theme
+homepage_title: Jekyll doc theme for writers
+site_title: Jekyll theme for writers
+project_folder: mydoc
+company_name: Your company
+footer_image_location: ../common_images/company_logo.png
+github_editme_path: tomjohnson1492/documentation-theme-jekyll/edit/reviews
+# variables
+
+sidebar_tagline: Writers
+sidebar_version: Version 4.0
+theme_file: theme-green.css
+pdf_file_name: mydoc_writers_pdf.pdf
+
+port: 4009
+
+exclude:
+ - _site
+ - _drafts
+ - configs/
+ - doc/mydoc_designers*
+
+# same for all
+host: 127.0.0.1
+feedback_email: tomjohnson1492@gmail.com
+
+markdown: redcarpet
+
+redcarpet:
+ extensions: ["no_intra_emphasis", "fenced_code_blocks", "tables", "with_toc_data"]
+
+highlighter: pygments
+
+collections:
+ tooltips:
+ output: false
+
+defaults:
+ -
+ scope:
+ path: ""
+ type: "pages"
+ values:
+ layout: "page"
+ comments: true
+ search: true
+ -
+ scope:
+ path: ""
+ type: "tooltips"
+ values:
+ layout: "page"
+ comments: true
+ search: true
+ tooltip: true
+
diff --git a/configs/mydoc/config_writers_pdf.yml b/configs/mydoc/config_writers_pdf.yml
new file mode 100644
index 0000000..a3c2b75
--- /dev/null
+++ b/configs/mydoc/config_writers_pdf.yml
@@ -0,0 +1,17 @@
+destination: ../doc_outputs/mydoc/writers-pdf
+url: "http://127.0.0.1:4012"
+baseurl: "/mydoc/writers-pdf"
+port: 4012
+output: pdf
+print_title: Jekyll theme for documentation — writers
+print_subtitle: version 4.0
+output: pdf
+defaults:
+ -
+ scope:
+ path: ""
+ type: "pages"
+ values:
+ layout: "page_print"
+ comments: true
+ search: true
\ No newline at end of file
diff --git a/css/customstyles.css b/css/customstyles.css
index f48a3b3..4eafffb 100644
--- a/css/customstyles.css
+++ b/css/customstyles.css
@@ -1,3 +1,7 @@
+body {
+ font-size:15px;
+}
+
.bs-callout {
padding: 20px;
margin: 20px 0;
@@ -157,7 +161,9 @@ table > colgroup + thead > tr:first-child > td,
table > thead:first-child > tr:first-child > td {
border-top: 0;
}
-
+table > tbody + tbody {
+ b
+}
table > tbody > tr:nth-of-type(odd) {
background-color: #f9f9f9;
}
@@ -194,7 +200,6 @@ p.external a {
font-size:12px;
font-color: #0088cc;
display:inline;
- margin-top:7px;
}
#definition-box-container div a.active {
@@ -319,21 +324,6 @@ font-size: 14px;
text-decoration: none;
}
-dl dt p {
- margin-left:20px;
-}
-
-
-dl dd {
- margin-top:10px;
- margin-bottom:10px;
-}
-
-dl.dl-horizontal dd {
- padding-top: 20px;
-}
-
-
/* navgoco sidebar styles (customized) */
.nav, .nav ul, .nav li {
list-style: none;
@@ -465,24 +455,23 @@ font-style:italic;
font-size:12px;
}
-@media (max-width: 767px) {
-.navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
-color: #444;
-}}
-
-
img.screenshotSmall {
max-width: 300px;
}
+dl dt p {
+ margin-left:20px;
+}
+dl dd {
+ margin-top:10px;
+ margin-bottom:10px;
+}
-@media (max-width: 990px) {
- #mysidebar {
- position: relative;
- }
+dl.dl-horizontal dd {
+ padding-top: 20px;
}
figcaption {
@@ -491,14 +480,20 @@ figcaption {
padding-top:6px;
max-width: 90%;
margin-bottom:20px;
+ font-style: italic;
+ color: gray;
}
-.siteTagline {
-margin: 20px 0px;
-font-size:17px;
+.testing {
+ color: orange;
}
+.preference {
+ color: red;
+}
+
+
table.dataTable thead {
background-color: #444;
}
@@ -521,7 +516,6 @@ section table tr.danger, table tr.preference, table tr.preference > td.sorting_1
background-color: #f2dede !important;
}
-
.orange {
color: orange;
}
@@ -587,11 +581,6 @@ hr.shaded {
i.border {
padding: 10px 20px;
background-color: whitesmoke;
- border: 1px solid #777;
- text-align: center;
- margin-left: auto;
- margin-right: auto;
- width: 100%;
}
a[data-toggle] {
@@ -600,8 +589,11 @@ a[data-toggle] {
.summary {
font-size:120%;
+ color: #808080;
margin:20px 0px 20px 0px;
+ border-left: 5px solid #ED1951;
padding-left: 10px;
+
}
.summary:before {
@@ -614,13 +606,18 @@ a.fa.fa-envelope-o.mailto {
font-weight: 600;
}
-h3 { font-weight:normal; font-size:130%;}
-h4 {font-weight:normal; font-size:120%; font-style:italic;}
+h3 {color: #ED1951; font-weight:normal; font-size:130%;}
+h4 {color: #808080; font-weight:normal; font-size:120%; font-style:italic;}
.alert, .callout {
overflow: hidden;
}
+.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
+ background-color: #248ec2;
+ color: white;
+}
+
ol li ol li {list-style-type: lower-alpha;}
li img {clear:both; }
@@ -687,6 +684,12 @@ span.otherProgrammingLanguages {
font-style: normal;
}
+a[data-toggle="tooltip"] {
+ color: #649345;
+ font-style: italic;
+ cursor: default;
+}
+
.seriesNext, .seriesContext {
margin-top: 15px;
margin-bottom: 15px;
@@ -709,14 +712,22 @@ ol.series li {
font-family: monospace;
text-align: center;
line-height: 10px;
+ margin: 20px 0px;
+ display: block;
}
.versionTagline {
text-align: center;
margin-bottom: 20px;
- font-family: monospace;
+ font-family: courier;
font-color: silver;
color: #444;
+ display:block;
+}
+
+/* not sure if using this ...*/
+.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form {
+ border-color: #248ec2 !important;
}
#mysidebar .nav ul {
@@ -738,21 +749,13 @@ ol.series li {
background-color: #FAFAFA;
}
-@media (min-width: 1000px) {
-
- ul#mysidebar {
- width: 225px;
- }
+/*
+a.dropdown-toggle.otherProgLangs {
+ color: #f7e68f !important;
}
+*/
-@media (max-width: 900px) {
-
- ul#mysidebar {
- max-width: 100%;
- }
-}
-
-span.muted {color: #C0C0C0;}
+span.muted {color: #666;}
table code {background-color: transparent;}
@@ -778,14 +781,22 @@ pre {
margin: 25px 0px;
}
-.panel-heading {
- font-weight: bold;
-}
#json-box-container pre {
margin: 0px;
}
-p.dataType {display: block; font-color: gray; font-size: 80%;}
+.video-js {
+ margin: 30px 0px;
+}
+
+video {
+ display: block;
+ margin: 30px 0px;
+ border: 1px solid #c0c0c0;
+}
+
+
+p.required, p.dataType {display: block; color: #c0c0c0; font-size: 80%; margin-left:4px;}
dd {margin-left:20px;}
@@ -793,6 +804,9 @@ dd {margin-left:20px;}
margin:0px;
margin-bottom:6px;
}
+.panel-heading {
+ font-weight: bold;
+}
.note code, .alert code, .warning code, div#toc code, h2 code, h3 code, h4 code {
color: inherit;
@@ -803,18 +817,136 @@ dd {margin-left:20px;}
margin-bottom:10px;
}
-.kbCaption {
- padding: 5px;
- font-family: courier;
- background-color: #dedede;
- text-align: center;
+/* branding */
+.navbar-inverse {
+ background-color: #347DBE;
+ border-color: #015CAE;
+}
+
+.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
+ color: #015CAE;
+}
+
+.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
+ background-color: #015CAE;
+ color: #ffffff;
}
a.accordion-toggle {
font-style: normal;
}
+span.red {
+ color: red;
+ font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
+}
-.tommy {font-weight:bold; font-color: red;}
-#johnson {font-weight:bold; font-color: blue;}
+h3.codeExplanation {
+ font-size:18px;
+ font-style:normal;
+ color: black;
+ line-height: 24px;
+}
+span.soft {
+ color: #c0c0c0;
+}
+
+.githubEditButton {
+ margin-bottom:7px;
+}
+
+.endpoint {
+ padding: 15px;
+ background-color: #f0f0f0;
+ font-family: courier;
+ font-size: 110%;
+ margin: 20px 0px;
+ color: #444;
+}
+
+.parameter {
+ font-family: courier;
+ color: red !important;
+}
+
+.formBoundary {
+ border: 1px solid gray;
+ padding: 15px;
+ margin: 15px 0px;
+ background-color: whitesmoke;
+}
+
+@media (max-width: 767px) {
+ .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
+ color: #444;
+ }
+}
+
+@media (max-width: 990px) {
+ #mysidebar {
+ position: relative;
+ }
+}
+
+@media (min-width: 1000px) {
+
+ ul#mysidebar {
+ width: 225px;
+ }
+}
+
+@media (max-width: 900px) {
+
+ ul#mysidebar {
+ max-width: 100%;
+ }
+}
+
+.col-md-9 img {
+ max-width: 100%;
+ max-height: 100%;
+}
+
+.videoThumbs img {
+ float: left;
+ margin:15px 15px 15px 0px;
+ box-shadow: 2px 2px 1px #f0f0f0;
+ border: 1px solid #dedede;
+}
+
+
+@media only screen and (min-width: 900px), @media only screen and (min-device-width: 900px) {
+ .col-md-9 img {
+ max-width: 700px;
+ max-height: 700px;
+ }
+}
+
+*:hover > .anchorjs-link {
+ transition: color .25s linear;
+ text-decoration: none;
+}
+
+.kbCaption {
+ color: white;
+ background-color: #444;
+ padding:10px;
+}
+
+/* this part adds an icon after external links, using FontAwesome*/
+a[href^="http://"]:after, a[href^="https://"]:after {
+ content: "\f08e";
+ font-family: FontAwesome;
+ font-weight: normal;
+ font-style: normal;
+ display: inline-block;
+ text-decoration: none;
+ padding-left: 3px;
+}
+/* Strip from links to own domain or with class no_icon */
+a[href^="http://own-domain.com"]:after,
+a.no_icon:after {
+ content:"" !important;
+ padding-left: 0;
+}
\ No newline at end of file
diff --git a/css/lavish-bootstrap.css b/css/lavish-bootstrap.css
index e141a16..c2af93e 100644
--- a/css/lavish-bootstrap.css
+++ b/css/lavish-bootstrap.css
@@ -1878,6 +1878,8 @@ fieldset[disabled] .btn-default.active {
}
.btn-primary {
color: #ffffff;
+ background-color: #74ab50;
+ border-color: #689a48;
}
.btn-primary:hover,
.btn-primary:focus,
@@ -1885,6 +1887,8 @@ fieldset[disabled] .btn-default.active {
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
color: #ffffff;
+ background-color: #618f43;
+ border-color: #4c7034;
}
.btn-primary:active,
.btn-primary.active,
@@ -1906,6 +1910,8 @@ fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
+ background-color: #74ab50;
+ border-color: #689a48;
}
.btn-warning {
color: #ffffff;
diff --git a/css/modern-business.css b/css/modern-business.css
index fd1e3fd..58dc4a2 100755
--- a/css/modern-business.css
+++ b/css/modern-business.css
@@ -76,7 +76,7 @@ footer {
/* Responsive Styles */
@media(max-width:991px) {
- .customer-img,
+ .client-img,
.img-related {
margin-bottom: 30px;
}
diff --git a/css/printstyles.css b/css/printstyles.css
index a044ee2..363dc7e 100644
--- a/css/printstyles.css
+++ b/css/printstyles.css
@@ -1,6 +1,9 @@
/*body.print .container {max-width: 650px;}*/
+body {
+ font-size:14px;
+}
.nav ul li a {border-top:0px; background-color:transparent; color: #808080; }
#navig a[href] {color: #595959 !important;}
table .table {max-width:650px;}
@@ -72,6 +75,7 @@ a[href*="mailto"]::after, a[data-toggle="tooltip"]::after, a[href].noCrossRef::a
.copyrightBoilerplate {
page-break-before:always;
+ font-size:14px;
}
.lastGeneratedDate {
diff --git a/css/theme-blue.css b/css/theme-blue.css
index e8d195c..c4b7856 100644
--- a/css/theme-blue.css
+++ b/css/theme-blue.css
@@ -1,6 +1,7 @@
.summary {
color: #808080;
border-left: 5px solid #ED1951;
+ font-size:16px;
}
@@ -54,24 +55,28 @@ a[data-toggle="tooltip"] {
border-color: #347DBE;
}
+.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
+ background-color: #347DBE;
+}
+
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
- background-color: #248ec2;
+ background-color: #248ec2;
border-color: #347DBE;
}
-.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
- background-color: #347DBE;
-}
-
.printTitle {
color: #015CAE !important;
}
-body.print h1 {color: #015CAE !important; font-size:28px;}
-body.print h2 {color: #595959 !important; font-size:24px;}
-body.print h3 {color: #E50E51 !important; font-size:14px;}
-body.print h4 {color: #679DCE !important; font-size:14px; font-style: italic;}
+body.print h1 {color: #015CAE !important; font-size:28px !important;}
+body.print h2 {color: #595959 !important; font-size:20px !important;}
+body.print h3 {color: #E50E51 !important; font-size:14px !important;}
+body.print h4 {color: #679DCE !important; font-size:14px; font-style: italic !important;}
+
+.anchorjs-link:hover {
+ color: #216f9b;
+}
\ No newline at end of file
diff --git a/css/theme-green.css b/css/theme-green.css
index be8e833..8f6348f 100644
--- a/css/theme-green.css
+++ b/css/theme-green.css
@@ -1,6 +1,7 @@
.summary {
color: #808080;
border-left: 5px solid #E50E51;
+ font-size:16px;
}
@@ -70,3 +71,7 @@ body.print h1 {color: #5b893c !important; font-size:28px;}
body.print h2 {color: #595959 !important; font-size:24px;}
body.print h3 {color: #E50E51 !important; font-size:14px;}
body.print h4 {color: #679DCE !important; font-size:14px; font-style: italic;}
+
+.anchorjs-link:hover {
+ color: #4f7233;
+}
\ No newline at end of file
diff --git a/doc_configuration_settings.md b/doc_configuration_settings.md
deleted file mode 100644
index af40d89..0000000
--- a/doc_configuration_settings.md
+++ /dev/null
@@ -1,124 +0,0 @@
----
-title: Setting configuration options
-tags: [single-sourcing, publishing]
-keywords: configuration, config, publishing options, outputs, projects
-last_updated: August 12, 2015
-summary: "The configuration file contains important settings for your project. Some of the values you set here affect — especially the product, platform, audience, and version — the display and functionality of the theme."
----
-
-
-## Importance of Configuration File
-
-The configuration file serves important functions with single sourcing. For each site output, you create a unique configuration file for that output.
-
-The configuration file contains all the settings and other details unique to that site output, such as variables, titles, output directories, build folders, and more.
-
-{{site.data.alerts.warning}} This theme is coded to look for specific values set by the configuration file. If something isn't working correctly, check to make sure that you have the configuration values that are defined here.{{site.data.alerts.end}}
-
-## Configuration file options
-
-Some of the options you can set in the configuration file determine theme settings.
-
-Note that you can define arbitrary key-value pairs in the configuration file, and then you can access them through `site.yourkey`, where `yourkey` is the name of the key. However, the values in these tables are used to control different aspects of the theme and are not arbitrary key-value pairs.
-
-## Configuration settings for web outputs
-
-| Field | Required? | Description |
-|-------|-----------|-----------|
-| **project** | Required| A unique name for the project. The \_includes/custom/conditions.html file will use this project name to determine what sidebar and top nav data files to use. Make this value unique. Note that the project name also determines what conditions are set in the \_includes/conditions.html file. Therefore it's critical that the project name you specify in the configuration file matches the project names in the conditions.html file. Otherwise, the conditions.html file won't be able to set the right variables needed for single sourcing. |
-| **audience** | Required | The audience for the output. Each entry in \_data/sidebar_doc.yml and \_data/topnav_doc.yml needs to have an audience attribute that matches the value here in order for the sidebar or topnav item to be included.|
-| **platform** | Required | The platform for the output. See additional information in audience.
-| **product** | Required | The product for the output. See additional information in audience.
-| **version** | Required | The version for the output. See additional information in audience.
-| **destination** | Required | The folder where the site is built. If you put this into your same folder as your other files, Jekyll may start building and rebuilding in an infinite loop because it detects more files in the project folder. Make sure you specify a folder outside your project folder, by using `../` or by specifying the absolute path, such as /Applications/XAMPP/xamppfiles/htdocs/myfolder. |
-| **project_file_name** | Required | The shortname for your project that you preface each file name with (for example, `doc`). This label is used to specify the prefix for the tag archives files (which are named with titles such as `doc_tag-formatting.html`). The raw code in the theme is {% raw %}`
`{% endraw %} The {% raw %}`{{site.project_file_name}}`{% endraw %} field renders as `doc` in the sample theme. The {% raw %}`{{tag}}`{% endraw %} is populated by a "for" loop through the tags property specified in page frontmatter.|
-| **sidebar_tagline** | Optional | Appears above the sidebar. Usually you put some term related to the site specific build, such as the audience. In the sample theme files, the taglines are "writers" and "designers."|
-| **sidebar_version** | Optional | Appears below the sidebar_tagline in a smaller font, usually specifying the version of the documentation. In the sample theme files, the version is "3.0."|
-| **topnav_title** | Required | Appears next to the home button in the top nav bar. In the sample theme files, the topnav_title is "Jekyll Documentation Theme." |
-| **homepage_title**| Required | You set the title for your homepage via this setting. This is because multiple projects are all using the same index.md as their homepage. Because index.md has `homepage: true` in the frontmatter, the "page" layout will use the `homepage_title` property from the configuration file instead of the traditional title in the frontmatter. In the sample theme files, the homepage title is "Jekyll Documentation Theme -- {audience}." |
-| **site_title**| Appears in the webpage title area (on the browser tab, not in the page viewing area). In the sample theme files, the site title is the "page name | homepage title." |
-| **port** | Required | The port used in the preview mode. This is only for the live preview and doesn't affect the published output. If you serve multiple outputs simultaneously, the port must be unique. |
-| **feedback_email** | Gets configured as the email address in the Send Feedback button in the top navigation bar.|
-| **disqus_shortname** | Optional | The disqus site shortname, which is used for comments. If you don't want comment forms via disqus, leave this blank or omit it altogether and Disqus won't appear. |
-| **markdown** | Required | The processor to use for Markdown. This is a Jekyll-specific setting. Use `redcarpet`. Another option is `kramdown`. However, my examples will follow redcarpet. |
-| **redcarpet** | Required | Extensions used with redcarpet. You can read more about them by searching for redcarpet extensions online. |
-| **highlighter** | Optional | The syntax highlighter used. Use `pygments` because it's required you're publishing on Github Pages. You will need to [install Pygments](http://pygments.org/download/) on your machine or else you will see an error. Pygments is based on Python. If you run into build errors and aren't publishing on Github Pages, `rouge` is also an option. |
-| **exclude** | Optional | A list of files and directories that you want excluded from the build. By default, all the content in your project is included in the output. |
-| **defaults** | Optional | Here you can set default values for frontmatter based on the content type (page, post, or collection). |
-| **collections** | Optional | Any specific collections (custom content types that extend beyond pages or posts) that you want to define. This theme defines a collection called tooltips. You access this collection by using site.tooltips instead of site.pages or site.posts. Put the tooltip content types inside a folder in your project called \_tooltips. |
-| **print** | Optional | Boolean. Whether this build is a print build or not. This setting allows you to run conditions in your content such as {% raw %} {% if site.print == true %} do this... {% endif %} {% endraw %}. |
-| **suffix** | Optional | If you publish on Salesforce's site.com, you have to add index.html to the permalink or else the page won't render. If you add `suffix: index.html` in your config file, this suffix will be appended in the homepage URL. If you're not publishing to Salesforce, don't add this property to your configuration file.|
-
-## Where to store configuration files
-
-In this theme, the configuration files are listed in the configs directory. There are some build scripts in the root directory that simply reference the configuration files.
-
-## The conditional attributes
-
-Each configuration file must specify values for the conditional attributes:
-
-* project
-* product
-* platform
-* audience
-* version
-
-The sidebar.html and topnav.html files apply conditional logic based on the values for these conditional attributes.
-
-For example, you will see this kind of logic in the sidebar and topnav files:
-
-```
-{% raw %}
- {% if item.audience contains audience and item.product contains product and item.platform contains platform and item.version contains version and item.web != false %}
-{% endraw %}
-```
-
-If all of these conditions are met, then the item will qualify to be included in the sidebar or top navigation file. That is why each item in the sidebar_doc.yml or topnav_doc.yml file includes similar properties to match:
-
-```
-- title: Pages
- url: /doc_pages.html
- audience: writers, designers
- platform: all
- product: all
- version: all
-```
-
-The file in \_includes/custom/conditions.html contains a project setting and also assigns general names for each of these specific values. This way the same theme files can be used interchangeably depending on the assignments, whose values are specified in the configuration file.
-
-It's a little complicated to describe, but it works. Once you configure your project correctly, you don't even think about how the theme is processing all of this on the backend.
-
-## Configuration settings for PDF output
-
-The PDF configuration files build on all the settings in the web configuration files, but they add a few more options.
-
-When you build the PDF output (such as for the writers output), the command will look like this:
-
-```
-jekyll serve --detach --config configs/config_writers.yml,configs/config_writers_pdf.yml
-```
-
-First Jekyll will read the config_writers.yml file, and then Jekyll will read the config_writers_pdf.yml file.
-
-More detail about generating PDFs is provided in {{site.data.urls.doc_generating_pdfs.link}}, but the configuration settings used for the PDFs are described here.
-
-The process for creating PDFs relies on two steps:
-
-1. First you build a printer-friendly web version of the content.
-2. Then you run PrinceXML to get all the printer-friendly web pages and package them into a PDF.
-
-Thus, you actually build a web version for the PDF first before generating the PDF. (You might be able to remove this first step by doing more coding, but I found it easier just to strip out components I didn't want included and make other adjustments.)
-
-| Field | Required? | Description |
-|-------|-----------|-----------|
-| destination | Where the PDF web version should be served so that Prince XML can find it. By default, this is in ../doc_designers-pdf, so just one level above where your project is. |
-| url | The URL where the files can be viewed. This is `http://127.0.0.1:4002` in the sample theme files for the designers output. Prince XML requires a URL to access the file. (My attempts to use local file paths didn't work.) |
-| baseurl | The subdirectory after the url where the content is stored. In the sample theme files for the designers output, this is `/designers`. |
-| port | The port required by the preview server. |
-| print | A boolean so that you can construct conditional statements in your content to check whether print is true or not. This setting can help you filter out content that doesn't fit well into a PDF (such as dynamic web elements). |
-| print_title | The title for the PDF. In the sample theme files for designers output, the print title is "Jekyll Documentation Theme for Designers"|
-| print_subtitle | The subtitle for the PDF. In the sample theme files, the subtitle is "version 3.0." |
-| defaults | See the sample settings in the config_designers_pdf.yml file. The only difference between this file and config_designers.yml is that the layout used for pages is `page_print` instead of `page`. The `page_print` layout also used `head_print` instead of `head`. This layout strips out components such as the sidebar and top navigation. It also leverages printstyles.css and includes some JavaScript for Prince XML. |
-
-
-
diff --git a/doc_customizing_the_theme.md b/doc_customizing_the_theme.md
deleted file mode 100644
index 5acaafb..0000000
--- a/doc_customizing_the_theme.md
+++ /dev/null
@@ -1,45 +0,0 @@
----
-title: Customizing the theme
-tags: [getting-started]
-last_updated: August 12, 2015
-keywords: getting started, customization, beginning steps, modifying the theme, modification
-summary: "You start customizing the theme by gutting the existing content in this theme and replacing it with your own content. Start with the configuration files, then customize the data files, and add your own markdown pages in the root directory."
----
-
-
-## About customizing the theme
-
-The theme shows two build outputs: one for designers, and one for writers. The dual outputs is an example of the single sourcing nature of the theme. The designers output is comprehensive, whereas the writers output is a subset of the information. Follow these steps to customize the theme with your own content.
-
-{{site.data.alerts.important}} In these instructions, I'll assume your project's name is "acme." I'll also assume you have two audiences you're building your acme project for: marketers and developers. {{site.data.alerts.end}}
-
-To customize the theme:
-
-1. In the theme's root directory, rename config_writer.yml to config_marketer.yml and customize all the values inside that file based on the instructions in {{site.data.urls.doc_configuration_settings.link}}. Do the same with config_designer.yml (changing it to config_developer.yml) and continue to clone and customize the config file for other audiences you need.
-
- In this theme, each output requires a separate config file. If you have 10 audiences and you want separate sites for each, then then you'll have 10 config files in this directory.
-
-2. Make similar customizations to the PDF configuration files. You will later use these files when you create PDFs.
-
- {{site.data.alerts.tip}} As you customize the config files, make the port values unique so that you don't run into "Address already in use" issues when you build multiple sites and want to preview them at the same time.{{site.data.alerts.end}}
-
-5. In the \_includes/custom directory, open conditions.html and customize the values there specific to your outputs. (Basically, replace `writer` with `developer`, and `designer` with `marketer`.)
-
- The conditions.html file is used to apply different requirements to the sidebar and other files. The conditions.html file is included in various parts of the theme — the sidebar.html, the topnav.html, and some of the print files. *conditions.html is sort of the brains of the theme.* If you don't have a specific value for audience, version, platform, or product, just put `all`.
-
-6. Remove the pages that begin with "doc_" in the root directory, and then add your own pages here. Leave all the files flat in the root directory.
-
- If you nest files inside folders, you'll create problems for the links and the theme will break. Yes, this will result in a lot of files in the root directory, but you can get around this issue with some viewing strategies in your text editor.
-
- For example, with WebStorm, if you press **Shift** twice and type the file name you want, the editor finds it. I usually have the preview mode open in another browser and navigate the content that way. When I want to edit a specific file, I copy the filename path from the preview browser, press **Shift** twice, and then it opens. You can also create a favorites section that just shows files you've added to Favorites (an option in the context menu).
-
-7. Inside \_data, open sidebar_doc.yml and topnav_doc.yml and customize the navigation.
-
- {{site.data.alerts.warning}} Don't mess up the spacing or change any of the YML level names or the site or sidebar won't appear. Each new YML level is indented with two spaces. Sometimes getting this spacing right is tricky. I recommend you save the sample template here that shows the various levels, and then just copy and paste the levels where you need them. YML is very picky and it can be frustrating sorting out spacing and level issues. {{site.data.alerts.end}}
-
-9. In the root directory, customize the index.md file. This file will be the homepage for all of your projects.
-
- Use conditional tags (for example, `{% raw %}{% if site.project == "writers" %} ... {% endif %}{% endraw %}`) to change the content for different builds of your site. See {{site.data.urls.conditional_logic.link}} for more information on applying conditions.
-
-10. In the \_includes folder, open footer.html and customize the content (namely the footer image). If you have different footers for different outputs, use conditional tags as you did with index.md.
-11. Build your site with a command such as `jekyll serve --config configs/config_writers.yml` etc., and preview it at the URLs provided.
\ No newline at end of file
diff --git a/doc_getting_started.md b/doc_getting_started.md
deleted file mode 100644
index 1102107..0000000
--- a/doc_getting_started.md
+++ /dev/null
@@ -1,87 +0,0 @@
----
-title: Getting started with this theme
-tags: [getting-started]
-keywords: start, introduction, begin, install, build, hello world,
-last_updated: August 12, 2015
-summary: "To get started with this theme, first make sure you have all the prerequisites in place; then build the theme following the sample build commands. Because this theme is set up for single sourcing projects, it doesn't follow the same pattern as most Jekyll projects (which have just a _config.yml file in the root directory)."
----
-
-## Step 1: Set up the prerequisites
-
-Before you start installing the theme, make sure you have all of these prerequisites in place.
-
-* **Mac computer (recommended)**. If you have a PC, see the note below. Make sure you can get Jekyll working on Windows before proceeding.
-* **[Ruby](https://www.ruby-lang.org/en/)**. On a Mac, this should already be installed. Open your Terminal and type `which ruby` to confirm.
-* **[Rubygems](https://rubygems.org/pages/download)**. This is a package manager for Ruby. Type `which gem` to confirm.
-* **[Jekyllrb](http://jekyllrb.com/)**. To install: `gem install jekyll`. Type `which jekyll` to confirm that Jekyll is installed.
-* **Text editor** (some examples: Sublime Text, Atom, WebStorm, IntelliJ)
-* **[iTerm](http://iterm.sourceforge.net/)** - Optional but recommended instead of Terminal.
-* **[pygments](http://pygments.org/download/)** - Pygments handles syntax highlighting. In my experiments, the Pygments highlighter seemed better than the default rouge highlighter. To install Pygments, you will need Python installed. (If you don't install pygments, you'll get an error when you build the theme.) To check if Python is installed, type `which python`. To install Pygments: `gem install pygments.rb`.
-
-{{site.data.alerts.note}} If you're on Windows, you can still install and run this theme. However, you must first set up a few things — Ruby, Ruby Dev Kit, Python, . Follow the instructions here: Set up Jekyll on Windows . Also see
Jekyll on Windows .{{site.data.alerts.end}}
-
-
-
-## Step 2: Build the theme
-
-Before you start customizing the theme, make sure you can build the theme with the default content and settings first.
-
-1. Download the theme from the [documentation-theme-jekyll Github repository](https://github.com/tomjohnson1492/documentation-theme-jekyll) and unzip it into your ~username/projects folder.
-
- You can either download the theme files directly by clicking the **Download Zip** button on the right of the repo, or use git to clone the repository to your local machine. Note, however, that you won't be using the pull command to update the theme since you'll be customizing it with your own content and won't want to overwrite those customizations, so there isn't a need to clone it.
-
-2. After downloading the theme, note some unique aspects of the file structure:
- * Although there's a \_config.yml file in the root directory, it's there only so that Github Pages will build the theme. Because the theme is set up for single sourcing, there's a separate configuration file for each unique output you're building.
- * All the configuration files are stored in the configs directory. Each configuration file has a different preview port.
- * Each configuration file specifies a different project and potentially a different audience, product, platform, and version. By setting unique values for these properties in the includes/custom/conditions.html file, you determine how the sidebar and top navigation get constructed.
- * You can build all the outputs in your configs directory by running the doc_multibuild_web.sh file in the root directory.
-
- {{site.data.alerts.tip}} The main goal of this theme is to enable single sourcing. With single sourcing, you build multiple outputs from the same source, with somewhat different content in each site based on the particular product, platform, version, and audience. You don't have to use this theme for single sourcing, but most tech writing projects involve this requirement.{{site.data.alerts.end}}
-
- There are four configuration files in this project: config_writer.yml and config_designer.yml as well as their PDF equivalents. The idea is that there's an output specific to writers, and an output specific to designers.
-
- In reality, both of these outputs are pretty much the same. However, for the writers output, I've conditionally excluded more lengthy explanations about how the theme works. The idea is that writers just want to create and publish content; in contrast, designers want to understand and modify the theme itself. Also, the configuration files use different themes.
-
-3. Build the writer's output:
-
- ```
- jekyll serve --config configs/config_writers.yml
- ```
-
- The `--config` parameter specifies the location of the configuration file to be used in the build. The configuration file itself contains the destination location for where the site gets built.
-
- Open a new tab in your browser and preview the site at the preview URL shown.
-
-4. Press **Ctrl+C** in Terminal to shut down the writer's output.
-5. Build the designers output:
-
- ```
- jekyll serve --config configs/config_designers.yml
- ```
-
- Open a new tab in your browser and preview the site at the preview URL shown. Notice how the themes differ (designers is blue, writers is green).
-
-5. Press **Ctrl+C** in Terminal to shut down the designer's output.
-6. Build both themes by running the following command:
-
- ```
- . doc_multibuild_web.sh
- ```
-
- The themes build in the ../doc_designers and ../doc_writers folders. Use finder and browse to one level above where you installed the project (probably username/projects).
-
- Open the writers and designers folders and click the index.html file. The themes should launch and appear similar to their appearance in the preview folder. This is because the themes are build using a relative link structure, so you can move the theme to any folder you want without breaking the links.
-
- If the theme builds both outputs successfully, great. You can move on to the other sections. If you run into errors building the themes, try to solve them before moving on. See {{site.data.urls.doc_troubleshooting.link}} for more information.
-
- {{site.data.alerts.tip}} You can set up profiles in iTerm to initiate all your builds with one selection. See {{site.data.urls.doc_iterm_profiles.link}} for details. {{site.data.alerts.end}}
-
- More information about building the PDF versions is provided in {{site.data.urls.doc_generating_pdfs.link}}.
-
-## Questions
-
-If you have questions, contact me at
tomjohnson1492@gmail.com . My regular site is [idratherbewriting.com](http://idratherbewriting.com). I'm eager to make these installation instructions as clear as possible, so please let me know if there are areas of confusion that need clarifying.
-
-
-
-
diff --git a/doc_help_api.md b/doc_help_api.md
deleted file mode 100644
index 3a33e8f..0000000
--- a/doc_help_api.md
+++ /dev/null
@@ -1,288 +0,0 @@
----
-title: Help APIs and UI tooltips
-tags: [publishing, single-sourcing, content-types]
-last_updated: August 12, 2015
-keywords: API, content API, UI text, inline help, context-sensitive help, popovers, tooltips
-summary: "You can loop through files and generate a JSON file that developers can consume like a help API. Developers can pull in values from the JSON into interface elements, styling them as popovers for user interface text, for example. The beauty of this method is that the UI text remains in the help system and isn't hard-coded into the UI."
----
-
-
-## Full code demo of content API
-
-You can create a help API that developers can use to pull in content.
-
-For the full code demo, see the notes in the
tooltip demo .
-
-In this demo, the popovers pull in and display content from the information in an external tooltips.json file located on a different host.
-
-Instead of tooltip popovers, you could also print content directly to the page. Basically whatever you can stuff into a JSON file, developers can integrate it onto a page.
-
-## Diagram overview
-
-Here's a diagram showing the basic idea of the help API:
-
-
-
-Is this really an API? Well, sort of. The help content is pushed out into a JSON file that other websites and applications can easily consume. The endpoints don't deliver different data based on parameters added to a URL. But the overall concept is similar to an API: you have a client requesting resources from a server.
-
-Note that in this scenario, the help is openly accessible on the web. If you have a private system, it's more complicated.
-
-To deliver help this way using Jekyll, follow the steps in each of the sections below.
-
-## 1. Create a "collection" for the help content (optional)
-
-A collection is another content type that extends Jekyll beyond the use of pages and posts. Here I'm calling the collection "tooltips." You could also just use pages, but if you have a lot of content, it will take longer to look up information in the file because the lookup will have to scan through all your site content instead of just the tooltips.
-
-Add the following information to your configuration file to declare your collection:
-
-```liquid
-collections:
- tooltips:
- output: true
-```
-
-In your Jekyll project, create a new folder called "_tooltips" and put every page that you want to be part of that tooltips collection inside that folder.
-
-## 2. Create pages in your collection
-
-Create pages inside your new tooltips collection (that is, inside the \_tooltips folder). Each page needs only a unique `id` in the frontmatter. Here's an example:
-
-{%raw%}
-```liquid
----
-id: basketball
----
-
-{{site.data.definitions.basketball}}
-```
-{%endraw%}
-
-You need to create a separate page for each resource you want to deliver. In this setup, the definition of basketball is stored in a data file call definitions inside the \_data folder so that we can re-use it in other parts of the help as well. (This additional re-use is covered later on this page.)
-
-## 3. Create a JSON file that loops through your collection pages
-
-Add the following to a file and call it tooltips.json:
-
-```
-{% raw %}
----
-layout: none
----
-{
- "entries":
-[
- {% for page in site.tooltips %}
- {
- "id" : "{{ page.id }}",
- "body": "{{ page.content | strip_newlines | replace: '\', '\\\\' | replace: '"', '\\"' }}"
- } {% unless forloop.last %},{% endunless %}
- {% endfor %}
-]
-}
-{% endraw %}
-```
-
-This code will loop through all pages in the tooltips collection and insert the id and body into key-value pairs for the JSON code. Here's an example of what that looks like after it's processed by Jekyll in the site build:
tooltips.json .
-
-{{site.data.alerts.tip}} Check out
Google's style guide for JSON . These best practices can help you keep your JSON file valid.{{site.data.alerts.end}}
-
-Store this tooltips.json file in your root directory. You can add different fields depending on how you want the JSON to be structured. Here I just have to fields: `id` and `body`. And the JSON is looking just in the tooltips collection that I created.
-
-When you build your site, Jekyll will iterate through every page in your _tooltips folder and put the page id and body into this format.
-
-You could create different JSON files that specialize in different content. For example, suppose you have some getting started information. You could put that into a different JSON file. Using the same structure, you might add an `if` tag that checks whether the page has frontmatter that says `getting_started: true` or something. Or you could put it into a separate collection entirely (different from tooltips).
-
-By chunking up your JSON files, you can provide a quicker lookup, though I'm not sure how big the JSON file can be before you experience any latency with the jQuery lookup.
-
-## 4. Allow CORS access to your help if stored on a remote server
-
-When people make calls to your site *from other domains*, you must allow them access to get the content. To do this, you have to enable something called CORS (cross origin resource sharing) within the server where your help resides.
-
-In other words, people are going to be executing calls to reach into your site and grab your content. Just like the door on your house, you have to unlock it so people can get in. Enabling CORS is unlocking it.
-
-How you enable CORS depends on the type of server.
-
-If your server setup allows htaccess files to override general server permissions, then create an .htaccess file and add the following:
-
-```
-Header set Access-Control-Allow-Origin "*"
-```
-
-Store this in the same directory as your project. This is what I've done in a directory on my web host (bluehost.com). Inside http://idratherbetellingstories.com/wp-content/apidemos/, I uploaded a file called ".htaccess" with the preceding code.
-
-After I uploaded it, I renamed it to .htaccess, right-clicked the file and set the permissions to 774.
-
-To test whether your server permissions are set correctly, open a terminal and run the following curl command pointing to your tooltips.json file:
-
-```
-curl -I http://idratherbetellingstories.com/wp-content/apidemos/tooltips.json
-```
-
-If the server permissions are set correctly, you should see the following line somewhere in the response:
-
-```xml
-Access-Control-Allow-Origin: *
-```
-
-If you don't see this response, CORS isn't allowed for the file.
-
-If you have an AWS S3 bucket, you can supposedly add a CORS configuration to the bucket permissions. Log into AWS S3 and click your bucket. On the right, in the Permissions section, click **Add CORS Configuration**. In that space, add the following policy:
-
-```xml
-
-
- *
- GET
-
-
-```
-
-Although this should work, in my experiment it doesn't. And I'm not sure why...
-
-In other server setups, you may need to edit one of your Apache configuration files. See [Enable CORS](http://enable-cors.org/server.html) or search online for ways to allow CORS for your server.
-
-If you don't have CORS enabled, users will see a CORS error/warning message in the console of the page making the request.
-
-{{site.data.alerts.tip}} If enabling CORS is problematic, you could always just send developers the tooltips.json file and ask them to place it on their own server. {{site.data.alerts.end}}
-
-## 5. Explain how developers can access the help
-
-Developers can access the help using the `.get` method from jQuery, among other methods. Here's an example of how to get a page with the ID of `basketball`:
-
-```js
-{% raw %}
-
-{% endraw %}
-```
-
-The `{url}` is where your tooltips.json file is. The `each` method looks through all the JSON content to find the item whose `page.id` is equal to `basketball`. It then looks for an element on the page named `#basketball` and adds a `data-content` attribute to that element.
-
-{{site.data.alerts.warning}}
Note: Make sure your JSON file is valid. Otherwise, this method won't work. I use the
JSON Formatter extension for Chrome . When I go to the tooltips.json page in my browser, the JSON content — if valid — is nicely formatted (and includes some color coding). If the file isn't valid, it's not formatted and there isn't any color. You can also check the JSON formatting using
JSON Formatter and Validator . If your JSON file isn't valid, identify the problem area using the validator and troubleshoot the file causing issues. It's usually due to some code that isn't escaping correctly. {{site.data.alerts.end}}
-
-Why `data-content`? Well, in this case, I'm using [Bootstrap popovers](http://getbootstrap.com/javascript/#popovers) to display the tooltip content. The `data-content` attribute is how Bootstrap injects popovers.
-
-Here's the section on the page where the popover is inserted:
-
-```
-
Basketball
-```
-
-Notice that I just have `id="basketball"` added to this popover element. Developers merely need to add a unique ID to each tooltip they want to pull in the help content. Either you tell developers the unique ID they should add, or ask them what IDs they added (or just tell them to use an ID that matches the field's name).
-
-In order to use jQuery and Bootstrap, you'll need to add the appropriate references in the head tags of your page:
-
-```js
-
-
-
-
-
-```
-
-This script has to come *after* the sidebar code. Otherwise, if placed inside customscripts.js, the script runs before the sidebar code runs and the class never gets inserted.
-
-{% endif %}
diff --git a/doc_top_navigation.md b/doc_top_navigation.md
deleted file mode 100644
index 2d4f21a..0000000
--- a/doc_top_navigation.md
+++ /dev/null
@@ -1,56 +0,0 @@
----
-title: Top navigation
-tags:
- - navigation
-keywords: "bootstrap, lists, drop-down, drop down navigation, top nav bar, topnav"
-last_updated: "August 12, 2015"
-summary: "The top navigation provides either single links or a drop-down menu. There are some other features, such as a feedback email, custom menu, and popout link."
-published: true
----
-
-## Changing the top navigation
-
-The top navigation reads from the \_data/topnav_doc.yml file. There are two *separate* sections:
-
-* `topnav`
-* `topnav_dropdowns`
-
-Items in the `topnav` section are rendered as single links. In contrast, items in the `topnav_dropdowns` section are rendered as a drop-down menu.
-
-## The Feedback email
-
-If you click the Feedback link, it inserts the link to the current page along with a subject header and body. The topnav.html file contains an include to feedback.html. This file contains the JavaScript that gets the current page URL and inserts it into the message body.
-
-You configure the email in the configuration file with this property: `site.feedback_email`.
-
-## Custom Menu
-
-It's common to publish multiple sites. If you want to link them together, you could simply list links to the other doc sites in a drop-down menu configured in the topnav_dropdowns section in the topnav_doc.yml file. However, suppose you want to do something more fancy.
-
-Included in the topnav.html file is an include to /doc/customMenu.html. The code in customMenu.html is as follows:
-
-```
-
Writer docs {% else %} ../doc_writers{{page.url}}">Writer docs{% endif %}
-
-
Designer doc {% else %} ../doc_designers{{page.url}}">Designer docs{% endif %}
-```
-
-{{site.data.alerts.note}} In the theme, the link to the customMenu.html include in the \_includes/topnav.html file is currently commented out. This is because this feature only works when you have multiple outputs hosted on the same server. Github Pages, where I'm publishing this theme, allows only one output per Github Pages directory. So rather than removing this customMenu feature from the theme, I've just commented it out so that it won't appear broken in the demo.{{site.data.alerts.end}}
-
-The current doc site is highlighted. If you select another doc site, the site switches to that doc site and goes to the same page on that doc site. This way, if you have a task such as "Configuring the license" in several different programming languages, users can switch to other programming languages to see the same page.
-
-You need to have both the designers and writers sites deployed on a web server to see this in action. Once deployed, browse to any page in the navigation. Then go to the **Custom Menu** and select the **Writers** site. You'll go to the exact same page but on the Writers site.
-
-If your current page doesn't have an equivalent in your other outputs, then put this in the frontmatter of the page:
-
-```
-switch: false
-```
-
-This Custom Menu may not be something you want, and if so, just remove the include from the sidebar.html file. But if you're outputting multiple sites, it may be something valuable.
-
-## Pop-out link
-
-The top navigation bar also has an include to frameescape.html. If the site is embedded inside a frame, a link on the top navigation bar appears that says Pop-out, and it will open the site in a new window.
-
-In most cases, you'll want to simply remove this include. I added this because some of my doc sites are delivered through a Salesforce Community and are embedded inside another page in a small area. This pop-out link is a way of liberating the site from these embedded page scenarios. If your site isn't embedded in an iframe, the Pop-out link is removed.
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..925a207
--- /dev/null
+++ b/index.html
@@ -0,0 +1,20 @@
+---
+layout: none
+search: exclude
+---
+{% include custom/conditions.html %}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/index.md b/index.md
deleted file mode 100644
index 1fa0bf9..0000000
--- a/index.md
+++ /dev/null
@@ -1,45 +0,0 @@
----
-title: Introduction
-tags:
- - "getting-started"
-type: first_page
-homepage: true
-published: true
----
-
-## Overview
-
-This site provides documentation, training, and other notes for the Jekyll Documentation theme. There's a lot of information about how to do a variety of things here, and it's not all unique to this theme. But by and large, understanding how to do things in Jekyll depends on how your theme is coded.
-
-## Survey of features
-
-Some of the more prominent features of this theme include the following:
-
-* Bootstrap framework
-* Sidebar with page hierarchy and advanced toc
-* PDF generation (with Prince XML utility)
-* Notes, tips, and warning information notes
-* Tags
-* Single sourced outputs
-* Emphasis on pages, not posts
-* Relative (rather than absolute) link structure
-
-I'm using this theme for my documentation projects, building about 15 different outputs for various products, versions, languages, and audiences from the same set of files. This single sourcing requirement has influenced how I constructed this theme.
-
-For more discussion about the available features, see {{site.data.urls_d.doc_supported_features.link}}.
-
-## Getting started
-
-To get started, see these three topics:
-
-1. {{site.data.urls.doc_getting_started.link}}
-2. {{site.data.urls.doc_configuration_settings.link}}
-3. {{site.data.urls.doc_customizing_the_theme.link}}
-
-## PDF Download
-
-If you would like to download this help file as a PDF, you can do so here. The PDF most of the same content as the online help, except that some elements (such as video or special layouts) don't translate the the print medium, so they're excluded.
-
-
PDF Download
-
-The PDF contains a timestamp in the header indicating when it was last generated. If you download a PDF, keep in mind that it may go out of date quickly. Always compare your PDF timestamp against the online help timestamp (which you can find in the footer).
diff --git a/js/customscripts.js b/js/customscripts.js
index ff0c971..8c9fb4c 100644
--- a/js/customscripts.js
+++ b/js/customscripts.js
@@ -7,7 +7,7 @@ $( document ).ready(function() {
//this script says, if the height of the viewport is greater than 800px, then insert affix class, which makes the nav bar float in a fixed
// position as your scroll. if you have a lot of nav items, this height may not work for you.
var h = $(window).height();
- console.log (h);
+ //console.log (h);
if (h > 800) {
$( "#mysidebar" ).attr("class", "nav affix");
}
@@ -16,6 +16,11 @@ $( document ).ready(function() {
placement : 'top'
});
+ /**
+ * AnchorJS
+ */
+ anchors.add('h2,h3,h4,h5');
+
});
// needed for nav tabs on pages. See Formatting > Nav tabs for more details.
@@ -48,6 +53,3 @@ $(function() {
}
});
});
-
-
-
diff --git a/js/lunr.min.js b/js/lunr.min.js
deleted file mode 100644
index c50053f..0000000
--- a/js/lunr.min.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/**
- * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 0.4.5
- * Copyright (C) 2014 Oliver Nightingale
- * MIT Licensed
- * @license
- */
-var lunr=function(t){var e=new lunr.Index;return e.pipeline.add(lunr.stopWordFilter,lunr.stemmer),t&&t.call(e,e),e};lunr.version="0.4.5","undefined"!=typeof module&&(module.exports=lunr),lunr.utils={},lunr.utils.warn=function(t){return function(e){t.console&&console.warn&&console.warn(e)}}(this),lunr.utils.zeroFillArray=function(){var t=[0];return function(e){for(;e>t.length;)t=t.concat(t);return t.slice(0,e)}}(),lunr.EventEmitter=function(){this.events={}},lunr.EventEmitter.prototype.addListener=function(){var t=Array.prototype.slice.call(arguments),e=t.pop(),n=t;if("function"!=typeof e)throw new TypeError("last argument must be a function");n.forEach(function(t){this.hasHandler(t)||(this.events[t]=[]),this.events[t].push(e)},this)},lunr.EventEmitter.prototype.removeListener=function(t,e){if(this.hasHandler(t)){var n=this.events[t].indexOf(e);this.events[t].splice(n,1),this.events[t].length||delete this.events[t]}},lunr.EventEmitter.prototype.emit=function(t){if(this.hasHandler(t)){var e=Array.prototype.slice.call(arguments,1);this.events[t].forEach(function(t){t.apply(void 0,e)})}},lunr.EventEmitter.prototype.hasHandler=function(t){return t in this.events},lunr.tokenizer=function(t){if(!arguments.length||null==t||void 0==t)return[];if(Array.isArray(t))return t.map(function(t){return t.toLowerCase()});for(var e=(""+t).replace(/^\s+/,""),n=e.length-1;n>=0;n--)if(/\S/.test(e.charAt(n))){e=e.substring(0,n+1);break}return e.split(/\s+/).map(function(t){return t.replace(/^\W+/,"").replace(/\W+$/,"").toLowerCase()})},lunr.Pipeline=function(){this._stack=[]},lunr.Pipeline.registeredFunctions={},lunr.Pipeline.registerFunction=function(t,e){e in this.registeredFunctions&&lunr.utils.warn("Overwriting existing registered function: "+e),t.label=e,lunr.Pipeline.registeredFunctions[t.label]=t},lunr.Pipeline.warnIfFunctionNotRegistered=function(t){var e=t.label&&t.label in this.registeredFunctions;e||lunr.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},lunr.Pipeline.load=function(t){var e=new lunr.Pipeline;return t.forEach(function(t){var n=lunr.Pipeline.registeredFunctions[t];if(!n)throw Error("Cannot load un-registered function: "+t);e.add(n)}),e},lunr.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){lunr.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},lunr.Pipeline.prototype.after=function(t,e){lunr.Pipeline.warnIfFunctionNotRegistered(e);var n=this._stack.indexOf(t)+1;this._stack.splice(n,0,e)},lunr.Pipeline.prototype.before=function(t,e){lunr.Pipeline.warnIfFunctionNotRegistered(e);var n=this._stack.indexOf(t);this._stack.splice(n,0,e)},lunr.Pipeline.prototype.remove=function(t){var e=this._stack.indexOf(t);this._stack.splice(e,1)},lunr.Pipeline.prototype.run=function(t){for(var e=[],n=t.length,r=this._stack.length,o=0;n>o;o++){for(var i=t[o],s=0;r>s&&(i=this._stack[s](i,o,t),void 0!==i);s++);void 0!==i&&e.push(i)}return e},lunr.Pipeline.prototype.toJSON=function(){return this._stack.map(function(t){return lunr.Pipeline.warnIfFunctionNotRegistered(t),t.label})},lunr.Vector=function(t){this.elements=t},lunr.Vector.prototype.magnitude=function(){if(this._magnitude)return this._magnitude;for(var t,e=0,n=this.elements,r=n.length,o=0;r>o;o++)t=n[o],e+=t*t;return this._magnitude=Math.sqrt(e)},lunr.Vector.prototype.dot=function(t){for(var e=this.elements,n=t.elements,r=e.length,o=0,i=0;r>i;i++)o+=e[i]*n[i];return o},lunr.Vector.prototype.similarity=function(t){return this.dot(t)/(this.magnitude()*t.magnitude())},lunr.Vector.prototype.toArray=function(){return this.elements},lunr.SortedSet=function(){this.length=0,this.elements=[]},lunr.SortedSet.load=function(t){var e=new this;return e.elements=t,e.length=t.length,e},lunr.SortedSet.prototype.add=function(){Array.prototype.slice.call(arguments).forEach(function(t){~this.indexOf(t)||this.elements.splice(this.locationFor(t),0,t)},this),this.length=this.elements.length},lunr.SortedSet.prototype.toArray=function(){return this.elements.slice()},lunr.SortedSet.prototype.map=function(t,e){return this.elements.map(t,e)},lunr.SortedSet.prototype.forEach=function(t,e){return this.elements.forEach(t,e)},lunr.SortedSet.prototype.indexOf=function(t,e,n){var e=e||0,n=n||this.elements.length,r=n-e,o=e+Math.floor(r/2),i=this.elements[o];return 1>=r?i===t?o:-1:t>i?this.indexOf(t,o,n):i>t?this.indexOf(t,e,o):i===t?o:void 0},lunr.SortedSet.prototype.locationFor=function(t,e,n){var e=e||0,n=n||this.elements.length,r=n-e,o=e+Math.floor(r/2),i=this.elements[o];if(1>=r){if(i>t)return o;if(t>i)return o+1}return t>i?this.locationFor(t,o,n):i>t?this.locationFor(t,e,o):void 0},lunr.SortedSet.prototype.intersect=function(t){for(var e=new lunr.SortedSet,n=0,r=0,o=this.length,i=t.length,s=this.elements,l=t.elements;;){if(n>o-1||r>i-1)break;s[n]!==l[r]?s[n]
l[r]&&r++:(e.add(s[n]),n++,r++)}return e},lunr.SortedSet.prototype.clone=function(){var t=new lunr.SortedSet;return t.elements=this.toArray(),t.length=t.elements.length,t},lunr.SortedSet.prototype.union=function(t){var e,n,r;return this.length>=t.length?(e=this,n=t):(e=t,n=this),r=e.clone(),r.add.apply(r,n.toArray()),r},lunr.SortedSet.prototype.toJSON=function(){return this.toArray()},lunr.Index=function(){this._fields=[],this._ref="id",this.pipeline=new lunr.Pipeline,this.documentStore=new lunr.Store,this.tokenStore=new lunr.TokenStore,this.corpusTokens=new lunr.SortedSet,this.eventEmitter=new lunr.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},lunr.Index.prototype.on=function(){var t=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,t)},lunr.Index.prototype.off=function(t,e){return this.eventEmitter.removeListener(t,e)},lunr.Index.load=function(t){t.version!==lunr.version&&lunr.utils.warn("version mismatch: current "+lunr.version+" importing "+t.version);var e=new this;return e._fields=t.fields,e._ref=t.ref,e.documentStore=lunr.Store.load(t.documentStore),e.tokenStore=lunr.TokenStore.load(t.tokenStore),e.corpusTokens=lunr.SortedSet.load(t.corpusTokens),e.pipeline=lunr.Pipeline.load(t.pipeline),e},lunr.Index.prototype.field=function(t,e){var e=e||{},n={name:t,boost:e.boost||1};return this._fields.push(n),this},lunr.Index.prototype.ref=function(t){return this._ref=t,this},lunr.Index.prototype.add=function(t,e){var n={},r=new lunr.SortedSet,o=t[this._ref],e=void 0===e?!0:e;this._fields.forEach(function(e){var o=this.pipeline.run(lunr.tokenizer(t[e.name]));n[e.name]=o,lunr.SortedSet.prototype.add.apply(r,o)},this),this.documentStore.set(o,r),lunr.SortedSet.prototype.add.apply(this.corpusTokens,r.toArray());for(var i=0;r.length>i;i++){var s=r.elements[i],l=this._fields.reduce(function(t,e){var r=n[e.name].length;if(!r)return t;var o=n[e.name].filter(function(t){return t===s}).length;return t+o/r*e.boost},0);this.tokenStore.add(s,{ref:o,tf:l})}e&&this.eventEmitter.emit("add",t,this)},lunr.Index.prototype.remove=function(t,e){var n=t[this._ref],e=void 0===e?!0:e;if(this.documentStore.has(n)){var r=this.documentStore.get(n);this.documentStore.remove(n),r.forEach(function(t){this.tokenStore.remove(t,n)},this),e&&this.eventEmitter.emit("remove",t,this)}},lunr.Index.prototype.update=function(t,e){var e=void 0===e?!0:e;this.remove(t,!1),this.add(t,!1),e&&this.eventEmitter.emit("update",t,this)},lunr.Index.prototype.idf=function(t){var e="@"+t;if(Object.prototype.hasOwnProperty.call(this._idfCache,e))return this._idfCache[e];var n=this.tokenStore.count(t),r=1;return n>0&&(r=1+Math.log(this.tokenStore.length/n)),this._idfCache[e]=r},lunr.Index.prototype.search=function(t){var e=this.pipeline.run(lunr.tokenizer(t)),n=lunr.utils.zeroFillArray(this.corpusTokens.length),r=[],o=this._fields.reduce(function(t,e){return t+e.boost},0),i=e.some(function(t){return this.tokenStore.has(t)},this);if(!i)return[];e.forEach(function(t,e,i){var s=1/i.length*this._fields.length*o,l=this,u=this.tokenStore.expand(t).reduce(function(e,r){var o=l.corpusTokens.indexOf(r),i=l.idf(r),u=1,a=new lunr.SortedSet;if(r!==t){var h=Math.max(3,r.length-t.length);u=1/Math.log(h)}return o>-1&&(n[o]=s*i*u),Object.keys(l.tokenStore.get(r)).forEach(function(t){a.add(t)}),e.union(a)},new lunr.SortedSet);r.push(u)},this);var s=r.reduce(function(t,e){return t.intersect(e)}),l=new lunr.Vector(n);return s.map(function(t){return{ref:t,score:l.similarity(this.documentVector(t))}},this).sort(function(t,e){return e.score-t.score})},lunr.Index.prototype.documentVector=function(t){for(var e=this.documentStore.get(t),n=e.length,r=lunr.utils.zeroFillArray(this.corpusTokens.length),o=0;n>o;o++){var i=e.elements[o],s=this.tokenStore.get(i)[t].tf,l=this.idf(i);r[this.corpusTokens.indexOf(i)]=s*l}return new lunr.Vector(r)},lunr.Index.prototype.toJSON=function(){return{version:lunr.version,fields:this._fields,ref:this._ref,documentStore:this.documentStore.toJSON(),tokenStore:this.tokenStore.toJSON(),corpusTokens:this.corpusTokens.toJSON(),pipeline:this.pipeline.toJSON()}},lunr.Store=function(){this.store={},this.length=0},lunr.Store.load=function(t){var e=new this;return e.length=t.length,e.store=Object.keys(t.store).reduce(function(e,n){return e[n]=lunr.SortedSet.load(t.store[n]),e},{}),e},lunr.Store.prototype.set=function(t,e){this.store[t]=e,this.length=Object.keys(this.store).length},lunr.Store.prototype.get=function(t){return this.store[t]},lunr.Store.prototype.has=function(t){return t in this.store},lunr.Store.prototype.remove=function(t){this.has(t)&&(delete this.store[t],this.length--)},lunr.Store.prototype.toJSON=function(){return{store:this.store,length:this.length}},lunr.stemmer=function(){var t={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},e={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},n="[^aeiou]",r="[aeiouy]",o=n+"[^aeiouy]*",i=r+"[aeiou]*",s="^("+o+")?"+i+o,l="^("+o+")?"+i+o+"("+i+")?$",u="^("+o+")?"+i+o+i+o,a="^("+o+")?"+r;return function(n){var i,h,c,p,f,d,v;if(3>n.length)return n;if(c=n.substr(0,1),"y"==c&&(n=c.toUpperCase()+n.substr(1)),p=/^(.+?)(ss|i)es$/,f=/^(.+?)([^s])s$/,p.test(n)?n=n.replace(p,"$1$2"):f.test(n)&&(n=n.replace(f,"$1$2")),p=/^(.+?)eed$/,f=/^(.+?)(ed|ing)$/,p.test(n)){var m=p.exec(n);p=RegExp(s),p.test(m[1])&&(p=/.$/,n=n.replace(p,""))}else if(f.test(n)){var m=f.exec(n);i=m[1],f=RegExp(a),f.test(i)&&(n=i,f=/(at|bl|iz)$/,d=RegExp("([^aeiouylsz])\\1$"),v=RegExp("^"+o+r+"[^aeiouwxy]$"),f.test(n)?n+="e":d.test(n)?(p=/.$/,n=n.replace(p,"")):v.test(n)&&(n+="e"))}if(p=/^(.+?)y$/,p.test(n)){var m=p.exec(n);i=m[1],p=RegExp(a),p.test(i)&&(n=i+"i")}if(p=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,p.test(n)){var m=p.exec(n);i=m[1],h=m[2],p=RegExp(s),p.test(i)&&(n=i+t[h])}if(p=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,p.test(n)){var m=p.exec(n);i=m[1],h=m[2],p=RegExp(s),p.test(i)&&(n=i+e[h])}if(p=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,f=/^(.+?)(s|t)(ion)$/,p.test(n)){var m=p.exec(n);i=m[1],p=RegExp(u),p.test(i)&&(n=i)}else if(f.test(n)){var m=f.exec(n);i=m[1]+m[2],f=RegExp(u),f.test(i)&&(n=i)}if(p=/^(.+?)e$/,p.test(n)){var m=p.exec(n);i=m[1],p=RegExp(u),f=RegExp(l),d=RegExp("^"+o+r+"[^aeiouwxy]$"),(p.test(i)||f.test(i)&&!d.test(i))&&(n=i)}return p=/ll$/,f=RegExp(u),p.test(n)&&f.test(n)&&(p=/.$/,n=n.replace(p,"")),"y"==c&&(n=c.toLowerCase()+n.substr(1)),n}}(),lunr.Pipeline.registerFunction(lunr.stemmer,"stemmer"),lunr.stopWordFilter=function(t){return-1===lunr.stopWordFilter.stopWords.indexOf(t)?t:void 0},lunr.stopWordFilter.stopWords=new lunr.SortedSet,lunr.stopWordFilter.stopWords.length=119,lunr.stopWordFilter.stopWords.elements=["","a","able","about","across","after","all","almost","also","am","among","an","and","any","are","as","at","be","because","been","but","by","can","cannot","could","dear","did","do","does","either","else","ever","every","for","from","get","got","had","has","have","he","her","hers","him","his","how","however","i","if","in","into","is","it","its","just","least","let","like","likely","may","me","might","most","must","my","neither","no","nor","not","of","off","often","on","only","or","other","our","own","rather","said","say","says","she","should","since","so","some","than","that","the","their","them","then","there","these","they","this","tis","to","too","twas","us","wants","was","we","were","what","when","where","which","while","who","whom","why","will","with","would","yet","you","your"],lunr.Pipeline.registerFunction(lunr.stopWordFilter,"stopWordFilter"),lunr.TokenStore=function(){this.root={docs:{}},this.length=0},lunr.TokenStore.load=function(t){var e=new this;return e.root=t.root,e.length=t.length,e},lunr.TokenStore.prototype.add=function(t,e,n){var n=n||this.root,r=t[0],o=t.slice(1);return r in n||(n[r]={docs:{}}),0===o.length?(n[r].docs[e.ref]=e,this.length+=1,void 0):this.add(o,e,n[r])},lunr.TokenStore.prototype.has=function(t){if(!t)return!1;for(var e=this.root,n=0;t.length>n;n++){if(!e[t[n]])return!1;e=e[t[n]]}return!0},lunr.TokenStore.prototype.getNode=function(t){if(!t)return{};for(var e=this.root,n=0;t.length>n;n++){if(!e[t[n]])return{};e=e[t[n]]}return e},lunr.TokenStore.prototype.get=function(t,e){return this.getNode(t,e).docs||{}},lunr.TokenStore.prototype.count=function(t,e){return Object.keys(this.get(t,e)).length},lunr.TokenStore.prototype.remove=function(t,e){if(t){for(var n=this.root,r=0;t.length>r;r++){if(!(t[r]in n))return;n=n[t[r]]}delete n.docs[e]}},lunr.TokenStore.prototype.expand=function(t,e){var n=this.getNode(t),r=n.docs||{},e=e||[];return Object.keys(r).length&&e.push(t),Object.keys(n).forEach(function(n){"docs"!==n&&e.concat(this.expand(t+n,e))},this),e},lunr.TokenStore.prototype.toJSON=function(){return{root:this.root,length:this.length}};
\ No newline at end of file
diff --git a/js/search.min.js b/js/search.min.js
deleted file mode 100644
index ceede75..0000000
--- a/js/search.min.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/*!
- * jQuery JavaScript Library v2.1.1
- * http://jquery.com/
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- *
- * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors
- * Released under the MIT license
- * http://jquery.org/license
- *
- * Date: 2014-05-01T17:11Z
- */
-!function(e,t){"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){function n(e){var t=e.length,n=K.type(e);return"function"===n||K.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e}function r(e,t,n){if(K.isFunction(t))return K.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return K.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(at.test(t))return K.filter(t,e,n);t=K.filter(t,e)}return K.grep(e,function(e){return B.call(t,e)>=0!==n})}function i(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function o(e){var t=dt[e]={};return K.each(e.match(ft)||[],function(e,n){t[n]=!0}),t}function s(){Z.removeEventListener("DOMContentLoaded",s,!1),e.removeEventListener("load",s,!1),K.ready()}function a(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=K.expando+Math.random()}function u(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(xt,"-$1").toLowerCase(),n=e.getAttribute(r),"string"==typeof n){try{n="true"===n?!0:"false"===n?!1:"null"===n?null:+n+""===n?+n:bt.test(n)?K.parseJSON(n):n}catch(i){}vt.set(e,t,n)}else n=void 0;return n}function l(){return!0}function c(){return!1}function p(){try{return Z.activeElement}catch(e){}}function h(e,t){return K.nodeName(e,"table")&&K.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function f(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function d(e){var t=Lt.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function m(e,t){for(var n=0,r=e.length;r>n;n++)yt.set(e[n],"globalEval",!t||yt.get(t[n],"globalEval"))}function g(e,t){var n,r,i,o,s,a,u,l;if(1===t.nodeType){if(yt.hasData(e)&&(o=yt.access(e),s=yt.set(t,o),l=o.events)){delete s.handle,s.events={};for(i in l)for(n=0,r=l[i].length;r>n;n++)K.event.add(t,i,l[i][n])}vt.hasData(e)&&(a=vt.access(e),u=K.extend({},a),vt.set(t,u))}}function y(e,t){var n=e.getElementsByTagName?e.getElementsByTagName(t||"*"):e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&K.nodeName(e,t)?K.merge([e],n):n}function v(e,t){var n=t.nodeName.toLowerCase();"input"===n&&_t.test(e.type)?t.checked=e.checked:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}function b(t,n){var r,i=K(n.createElement(t)).appendTo(n.body),o=e.getDefaultComputedStyle&&(r=e.getDefaultComputedStyle(i[0]))?r.display:K.css(i[0],"display");return i.detach(),o}function x(e){var t=Z,n=Mt[e];return n||(n=b(e,t),"none"!==n&&n||(It=(It||K("")).appendTo(t.documentElement),t=It[0].contentDocument,t.write(),t.close(),n=b(e,t),It.detach()),Mt[e]=n),n}function w(e,t,n){var r,i,o,s,a=e.style;return n=n||zt(e),n&&(s=n.getPropertyValue(t)||n[t]),n&&(""!==s||K.contains(e.ownerDocument,e)||(s=K.style(e,t)),Qt.test(s)&&$t.test(t)&&(r=a.width,i=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=s,s=n.width,a.width=r,a.minWidth=i,a.maxWidth=o)),void 0!==s?s+"":s}function S(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function T(e,t){if(t in e)return t;for(var n=t[0].toUpperCase()+t.slice(1),r=t,i=Jt.length;i--;)if(t=Jt[i]+n,t in e)return t;return r}function _(e,t,n){var r=Wt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function k(e,t,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===t?1:0,s=0;4>o;o+=2)"margin"===n&&(s+=K.css(e,n+St[o],!0,i)),r?("content"===n&&(s-=K.css(e,"padding"+St[o],!0,i)),"margin"!==n&&(s-=K.css(e,"border"+St[o]+"Width",!0,i))):(s+=K.css(e,"padding"+St[o],!0,i),"padding"!==n&&(s+=K.css(e,"border"+St[o]+"Width",!0,i)));return s}function C(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=zt(e),s="border-box"===K.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=w(e,t,o),(0>i||null==i)&&(i=e.style[t]),Qt.test(i))return i;r=s&&(Y.boxSizingReliable()||i===e.style[t]),i=parseFloat(i)||0}return i+k(e,t,n||(s?"border":"content"),r,o)+"px"}function E(e,t){for(var n,r,i,o=[],s=0,a=e.length;a>s;s++)r=e[s],r.style&&(o[s]=yt.get(r,"olddisplay"),n=r.style.display,t?(o[s]||"none"!==n||(r.style.display=""),""===r.style.display&&Tt(r)&&(o[s]=yt.access(r,"olddisplay",x(r.nodeName)))):(i=Tt(r),"none"===n&&i||yt.set(r,"olddisplay",i?n:K.css(r,"display"))));for(s=0;a>s;s++)r=e[s],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[s]||"":"none"));return e}function A(e,t,n,r,i){return new A.prototype.init(e,t,n,r,i)}function N(){return setTimeout(function(){Yt=void 0}),Yt=K.now()}function D(e,t){var n,r=0,i={height:e};for(t=t?1:0;4>r;r+=2-t)n=St[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function j(e,t,n){for(var r,i=(nn[t]||[]).concat(nn["*"]),o=0,s=i.length;s>o;o++)if(r=i[o].call(n,t,e))return r}function P(e,t,n){var r,i,o,s,a,u,l,c,p=this,h={},f=e.style,d=e.nodeType&&Tt(e),m=yt.get(e,"fxshow");n.queue||(a=K._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,u=a.empty.fire,a.empty.fire=function(){a.unqueued||u()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,K.queue(e,"fx").length||a.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[f.overflow,f.overflowX,f.overflowY],l=K.css(e,"display"),c="none"===l?yt.get(e,"olddisplay")||x(e.nodeName):l,"inline"===c&&"none"===K.css(e,"float")&&(f.display="inline-block")),n.overflow&&(f.overflow="hidden",p.always(function(){f.overflow=n.overflow[0],f.overflowX=n.overflow[1],f.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],Gt.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(d?"hide":"show")){if("show"!==i||!m||void 0===m[r])continue;d=!0}h[r]=m&&m[r]||K.style(e,r)}else l=void 0;if(K.isEmptyObject(h))"inline"===("none"===l?x(e.nodeName):l)&&(f.display=l);else{m?"hidden"in m&&(d=m.hidden):m=yt.access(e,"fxshow",{}),o&&(m.hidden=!d),d?K(e).show():p.done(function(){K(e).hide()}),p.done(function(){var t;yt.remove(e,"fxshow");for(t in h)K.style(e,t,h[t])});for(r in h)s=j(d?m[r]:0,r,p),r in m||(m[r]=s.start,d&&(s.end=s.start,s.start="width"===r||"height"===r?1:0))}}function F(e,t){var n,r,i,o,s;for(n in e)if(r=K.camelCase(n),i=t[r],o=e[n],K.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),s=K.cssHooks[r],s&&"expand"in s){o=s.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function q(e,t,n){var r,i,o=0,s=tn.length,a=K.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=Yt||N(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,s=0,u=l.tweens.length;u>s;s++)l.tweens[s].run(o);return a.notifyWith(e,[l,o,n]),1>o&&u?n:(a.resolveWith(e,[l]),!1)},l=a.promise({elem:e,props:K.extend({},t),opts:K.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Yt||N(),duration:n.duration,tweens:[],createTween:function(t,n){var r=K.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?a.resolveWith(e,[l,t]):a.rejectWith(e,[l,t]),this}}),c=l.props;for(F(c,l.opts.specialEasing);s>o;o++)if(r=tn[o].call(l,e,c,l.opts))return r;return K.map(c,j,l),K.isFunction(l.opts.start)&&l.opts.start.call(e,l),K.fx.timer(K.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function O(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(ft)||[];if(K.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function L(e,t,n,r){function i(a){var u;return o[a]=!0,K.each(e[a]||[],function(e,a){var l=a(t,n,r);return"string"!=typeof l||s||o[l]?s?!(u=l):void 0:(t.dataTypes.unshift(l),i(l),!1)}),u}var o={},s=e===Sn;return i(t.dataTypes[0])||!o["*"]&&i("*")}function H(e,t){var n,r,i=K.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&K.extend(!0,e,r),e}function R(e,t,n){for(var r,i,o,s,a=e.contents,u=e.dataTypes;"*"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in a)if(a[i]&&a[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}s||(s=i)}o=o||s}return o?(o!==u[0]&&u.unshift(o),n[o]):void 0}function I(e,t,n,r){var i,o,s,a,u,l={},c=e.dataTypes.slice();if(c[1])for(s in e.converters)l[s.toLowerCase()]=e.converters[s];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(s=l[u+" "+o]||l["* "+o],!s)for(i in l)if(a=i.split(" "),a[1]===o&&(s=l[u+" "+a[0]]||l["* "+a[0]])){s===!0?s=l[i]:l[i]!==!0&&(o=a[0],c.unshift(a[1]));break}if(s!==!0)if(s&&e["throws"])t=s(t);else try{t=s(t)}catch(p){return{state:"parsererror",error:s?p:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}function M(e,t,n,r){var i;if(K.isArray(t))K.each(t,function(t,i){n||Cn.test(e)?r(e,i):M(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==K.type(t))r(e,t);else for(i in t)M(e+"["+i+"]",t[i],n,r)}function $(e){return K.isWindow(e)?e:9===e.nodeType&&e.defaultView}var Q=[],z=Q.slice,U=Q.concat,W=Q.push,B=Q.indexOf,X={},V=X.toString,J=X.hasOwnProperty,Y={},Z=e.document,G="2.1.1",K=function(e,t){return new K.fn.init(e,t)},et=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,tt=/^-ms-/,nt=/-([\da-z])/gi,rt=function(e,t){return t.toUpperCase()};K.fn=K.prototype={jquery:G,constructor:K,selector:"",length:0,toArray:function(){return z.call(this)},get:function(e){return null!=e?0>e?this[e+this.length]:this[e]:z.call(this)},pushStack:function(e){var t=K.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return K.each(this,e,t)},map:function(e){return this.pushStack(K.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(z.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:W,sort:Q.sort,splice:Q.splice},K.extend=K.fn.extend=function(){var e,t,n,r,i,o,s=arguments[0]||{},a=1,u=arguments.length,l=!1;for("boolean"==typeof s&&(l=s,s=arguments[a]||{},a++),"object"==typeof s||K.isFunction(s)||(s={}),a===u&&(s=this,a--);u>a;a++)if(null!=(e=arguments[a]))for(t in e)n=s[t],r=e[t],s!==r&&(l&&r&&(K.isPlainObject(r)||(i=K.isArray(r)))?(i?(i=!1,o=n&&K.isArray(n)?n:[]):o=n&&K.isPlainObject(n)?n:{},s[t]=K.extend(l,o,r)):void 0!==r&&(s[t]=r));return s},K.extend({expando:"jQuery"+(G+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===K.type(e)},isArray:Array.isArray,isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){return!K.isArray(e)&&e-parseFloat(e)>=0},isPlainObject:function(e){return"object"!==K.type(e)||e.nodeType||K.isWindow(e)?!1:e.constructor&&!J.call(e.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?X[V.call(e)]||"object":typeof e},globalEval:function(e){var t,n=eval;e=K.trim(e),e&&(1===e.indexOf("use strict")?(t=Z.createElement("script"),t.text=e,Z.head.appendChild(t).parentNode.removeChild(t)):n(e))},camelCase:function(e){return e.replace(tt,"ms-").replace(nt,rt)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,r){var i,o=0,s=e.length,a=n(e);if(r){if(a)for(;s>o&&(i=t.apply(e[o],r),i!==!1);o++);else for(o in e)if(i=t.apply(e[o],r),i===!1)break}else if(a)for(;s>o&&(i=t.call(e[o],o,e[o]),i!==!1);o++);else for(o in e)if(i=t.call(e[o],o,e[o]),i===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(et,"")},makeArray:function(e,t){var r=t||[];return null!=e&&(n(Object(e))?K.merge(r,"string"==typeof e?[e]:e):W.call(r,e)),r},inArray:function(e,t,n){return null==t?-1:B.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;n>r;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,s=e.length,a=!n;s>o;o++)r=!t(e[o],o),r!==a&&i.push(e[o]);return i},map:function(e,t,r){var i,o=0,s=e.length,a=n(e),u=[];if(a)for(;s>o;o++)i=t(e[o],o,r),null!=i&&u.push(i);else for(o in e)i=t(e[o],o,r),null!=i&&u.push(i);return U.apply([],u)},guid:1,proxy:function(e,t){var n,r,i;return"string"==typeof t&&(n=e[t],t=e,e=n),K.isFunction(e)?(r=z.call(arguments,2),i=function(){return e.apply(t||this,r.concat(z.call(arguments)))},i.guid=e.guid=e.guid||K.guid++,i):void 0},now:Date.now,support:Y}),K.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){X["[object "+t+"]"]=t.toLowerCase()});var it=/*!
- * Sizzle CSS Selector Engine v1.10.19
- * http://sizzlejs.com/
- *
- * Copyright 2013 jQuery Foundation, Inc. and other contributors
- * Released under the MIT license
- * http://jquery.org/license
- *
- * Date: 2014-04-18
- */
-function(e){function t(e,t,n,r){var i,o,s,a,u,l,p,f,d,m;if((t?t.ownerDocument||t:M)!==P&&j(t),t=t||P,n=n||[],!e||"string"!=typeof e)return n;if(1!==(a=t.nodeType)&&9!==a)return[];if(q&&!r){if(i=vt.exec(e))if(s=i[1]){if(9===a){if(o=t.getElementById(s),!o||!o.parentNode)return n;if(o.id===s)return n.push(o),n}else if(t.ownerDocument&&(o=t.ownerDocument.getElementById(s))&&R(t,o)&&o.id===s)return n.push(o),n}else{if(i[2])return K.apply(n,t.getElementsByTagName(e)),n;if((s=i[3])&&w.getElementsByClassName&&t.getElementsByClassName)return K.apply(n,t.getElementsByClassName(s)),n}if(w.qsa&&(!O||!O.test(e))){if(f=p=I,d=t,m=9===a&&e,1===a&&"object"!==t.nodeName.toLowerCase()){for(l=k(e),(p=t.getAttribute("id"))?f=p.replace(xt,"\\$&"):t.setAttribute("id",f),f="[id='"+f+"'] ",u=l.length;u--;)l[u]=f+h(l[u]);d=bt.test(e)&&c(t.parentNode)||t,m=l.join(",")}if(m)try{return K.apply(n,d.querySelectorAll(m)),n}catch(g){}finally{p||t.removeAttribute("id")}}}return E(e.replace(ut,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>S.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[I]=!0,e}function i(e){var t=P.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=e.length;r--;)S.attrHandle[n[r]]=t}function s(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||V)-(~e.sourceIndex||V);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function a(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function u(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function l(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),s=o.length;s--;)n[i=o[s]]&&(n[i]=!(r[i]=n[i]))})})}function c(e){return e&&typeof e.getElementsByTagName!==X&&e}function p(){}function h(e){for(var t=0,n=e.length,r="";n>t;t++)r+=e[t].value;return r}function f(e,t,n){var r=t.dir,i=n&&"parentNode"===r,o=Q++;return t.first?function(t,n,o){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,o)}:function(t,n,s){var a,u,l=[$,o];if(s){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,s))return!0}else for(;t=t[r];)if(1===t.nodeType||i){if(u=t[I]||(t[I]={}),(a=u[r])&&a[0]===$&&a[1]===o)return l[2]=a[2];if(u[r]=l,l[2]=e(t,n,s))return!0}}}function d(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function m(e,n,r){for(var i=0,o=n.length;o>i;i++)t(e,n[i],r);return r}function g(e,t,n,r,i){for(var o,s=[],a=0,u=e.length,l=null!=t;u>a;a++)(o=e[a])&&(!n||n(o,r,i))&&(s.push(o),l&&t.push(a));return s}function y(e,t,n,i,o,s){return i&&!i[I]&&(i=y(i)),o&&!o[I]&&(o=y(o,s)),r(function(r,s,a,u){var l,c,p,h=[],f=[],d=s.length,y=r||m(t||"*",a.nodeType?[a]:a,[]),v=!e||!r&&t?y:g(y,h,e,a,u),b=n?o||(r?e:d||i)?[]:s:v;if(n&&n(v,b,a,u),i)for(l=g(b,f),i(l,[],a,u),c=l.length;c--;)(p=l[c])&&(b[f[c]]=!(v[f[c]]=p));if(r){if(o||e){if(o){for(l=[],c=b.length;c--;)(p=b[c])&&l.push(v[c]=p);o(null,b=[],l,u)}for(c=b.length;c--;)(p=b[c])&&(l=o?tt.call(r,p):h[c])>-1&&(r[l]=!(s[l]=p))}}else b=g(b===s?b.splice(d,b.length):b),o?o(null,s,b,u):K.apply(s,b)})}function v(e){for(var t,n,r,i=e.length,o=S.relative[e[0].type],s=o||S.relative[" "],a=o?1:0,u=f(function(e){return e===t},s,!0),l=f(function(e){return tt.call(t,e)>-1},s,!0),c=[function(e,n,r){return!o&&(r||n!==A)||((t=n).nodeType?u(e,n,r):l(e,n,r))}];i>a;a++)if(n=S.relative[e[a].type])c=[f(d(c),n)];else{if(n=S.filter[e[a].type].apply(null,e[a].matches),n[I]){for(r=++a;i>r&&!S.relative[e[r].type];r++);return y(a>1&&d(c),a>1&&h(e.slice(0,a-1).concat({value:" "===e[a-2].type?"*":""})).replace(ut,"$1"),n,r>a&&v(e.slice(a,r)),i>r&&v(e=e.slice(r)),i>r&&h(e))}c.push(n)}return d(c)}function b(e,n){var i=n.length>0,o=e.length>0,s=function(r,s,a,u,l){var c,p,h,f=0,d="0",m=r&&[],y=[],v=A,b=r||o&&S.find.TAG("*",l),x=$+=null==v?1:Math.random()||.1,w=b.length;for(l&&(A=s!==P&&s);d!==w&&null!=(c=b[d]);d++){if(o&&c){for(p=0;h=e[p++];)if(h(c,s,a)){u.push(c);break}l&&($=x)}i&&((c=!h&&c)&&f--,r&&m.push(c))}if(f+=d,i&&d!==f){for(p=0;h=n[p++];)h(m,y,s,a);if(r){if(f>0)for(;d--;)m[d]||y[d]||(y[d]=Z.call(u));y=g(y)}K.apply(u,y),l&&!r&&y.length>0&&f+n.length>1&&t.uniqueSort(u)}return l&&($=x,A=v),m};return i?r(s):s}var x,w,S,T,_,k,C,E,A,N,D,j,P,F,q,O,L,H,R,I="sizzle"+-new Date,M=e.document,$=0,Q=0,z=n(),U=n(),W=n(),B=function(e,t){return e===t&&(D=!0),0},X="undefined",V=1<<31,J={}.hasOwnProperty,Y=[],Z=Y.pop,G=Y.push,K=Y.push,et=Y.slice,tt=Y.indexOf||function(e){for(var t=0,n=this.length;n>t;t++)if(this[t]===e)return t;return-1},nt="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",rt="[\\x20\\t\\r\\n\\f]",it="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ot=it.replace("w","w#"),st="\\["+rt+"*("+it+")(?:"+rt+"*([*^$|!~]?=)"+rt+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+ot+"))|)"+rt+"*\\]",at=":("+it+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+st+")*)|.*)\\)|)",ut=new RegExp("^"+rt+"+|((?:^|[^\\\\])(?:\\\\.)*)"+rt+"+$","g"),lt=new RegExp("^"+rt+"*,"+rt+"*"),ct=new RegExp("^"+rt+"*([>+~]|"+rt+")"+rt+"*"),pt=new RegExp("="+rt+"*([^\\]'\"]*?)"+rt+"*\\]","g"),ht=new RegExp(at),ft=new RegExp("^"+ot+"$"),dt={ID:new RegExp("^#("+it+")"),CLASS:new RegExp("^\\.("+it+")"),TAG:new RegExp("^("+it.replace("w","w*")+")"),ATTR:new RegExp("^"+st),PSEUDO:new RegExp("^"+at),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+rt+"*(even|odd|(([+-]|)(\\d*)n|)"+rt+"*(?:([+-]|)"+rt+"*(\\d+)|))"+rt+"*\\)|)","i"),bool:new RegExp("^(?:"+nt+")$","i"),needsContext:new RegExp("^"+rt+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+rt+"*((?:-\\d)?\\d*)"+rt+"*\\)|)(?=[^-]|$)","i")},mt=/^(?:input|select|textarea|button)$/i,gt=/^h\d$/i,yt=/^[^{]+\{\s*\[native \w/,vt=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,bt=/[+~]/,xt=/'|\\/g,wt=new RegExp("\\\\([\\da-f]{1,6}"+rt+"?|("+rt+")|.)","ig"),St=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:0>r?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)};try{K.apply(Y=et.call(M.childNodes),M.childNodes),Y[M.childNodes.length].nodeType}catch(Tt){K={apply:Y.length?function(e,t){G.apply(e,et.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}w=t.support={},_=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},j=t.setDocument=function(e){var t,n=e?e.ownerDocument||e:M,r=n.defaultView;return n!==P&&9===n.nodeType&&n.documentElement?(P=n,F=n.documentElement,q=!_(n),r&&r!==r.top&&(r.addEventListener?r.addEventListener("unload",function(){j()},!1):r.attachEvent&&r.attachEvent("onunload",function(){j()})),w.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),w.getElementsByTagName=i(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),w.getElementsByClassName=yt.test(n.getElementsByClassName)&&i(function(e){return e.innerHTML="
",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),w.getById=i(function(e){return F.appendChild(e).id=I,!n.getElementsByName||!n.getElementsByName(I).length}),w.getById?(S.find.ID=function(e,t){if(typeof t.getElementById!==X&&q){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},S.filter.ID=function(e){var t=e.replace(wt,St);return function(e){return e.getAttribute("id")===t}}):(delete S.find.ID,S.filter.ID=function(e){var t=e.replace(wt,St);return function(e){var n=typeof e.getAttributeNode!==X&&e.getAttributeNode("id");return n&&n.value===t}}),S.find.TAG=w.getElementsByTagName?function(e,t){return typeof t.getElementsByTagName!==X?t.getElementsByTagName(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},S.find.CLASS=w.getElementsByClassName&&function(e,t){return typeof t.getElementsByClassName!==X&&q?t.getElementsByClassName(e):void 0},L=[],O=[],(w.qsa=yt.test(n.querySelectorAll))&&(i(function(e){e.innerHTML=" ",e.querySelectorAll("[msallowclip^='']").length&&O.push("[*^$]="+rt+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||O.push("\\["+rt+"*(?:value|"+nt+")"),e.querySelectorAll(":checked").length||O.push(":checked")}),i(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&O.push("name"+rt+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||O.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),O.push(",.*:")})),(w.matchesSelector=yt.test(H=F.matches||F.webkitMatchesSelector||F.mozMatchesSelector||F.oMatchesSelector||F.msMatchesSelector))&&i(function(e){w.disconnectedMatch=H.call(e,"div"),H.call(e,"[s!='']:x"),L.push("!=",at)}),O=O.length&&new RegExp(O.join("|")),L=L.length&&new RegExp(L.join("|")),t=yt.test(F.compareDocumentPosition),R=t||yt.test(F.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},B=t?function(e,t){if(e===t)return D=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r?r:(r=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&r||!w.sortDetached&&t.compareDocumentPosition(e)===r?e===n||e.ownerDocument===M&&R(M,e)?-1:t===n||t.ownerDocument===M&&R(M,t)?1:N?tt.call(N,e)-tt.call(N,t):0:4&r?-1:1)}:function(e,t){if(e===t)return D=!0,0;var r,i=0,o=e.parentNode,a=t.parentNode,u=[e],l=[t];if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:N?tt.call(N,e)-tt.call(N,t):0;if(o===a)return s(e,t);for(r=e;r=r.parentNode;)u.unshift(r);for(r=t;r=r.parentNode;)l.unshift(r);for(;u[i]===l[i];)i++;return i?s(u[i],l[i]):u[i]===M?-1:l[i]===M?1:0},n):P},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==P&&j(e),n=n.replace(pt,"='$1']"),!(!w.matchesSelector||!q||L&&L.test(n)||O&&O.test(n)))try{var r=H.call(e,n);if(r||w.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(i){}return t(n,P,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==P&&j(e),R(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==P&&j(e);var n=S.attrHandle[t.toLowerCase()],r=n&&J.call(S.attrHandle,t.toLowerCase())?n(e,t,!q):void 0;return void 0!==r?r:w.attributes||!q?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(D=!w.detectDuplicates,N=!w.sortStable&&e.slice(0),e.sort(B),D){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return N=null,e},T=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=T(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=T(t);return n},S=t.selectors={cacheLength:50,createPseudo:r,match:dt,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(wt,St),e[3]=(e[3]||e[4]||e[5]||"").replace(wt,St),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return dt.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&ht.test(n)&&(t=k(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(wt,St).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=z[e+" "];return t||(t=new RegExp("(^|"+rt+")"+e+"("+rt+"|$)"))&&z(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==X&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:n?(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o+" ").indexOf(r)>-1:"|="===n?o===r||o.slice(0,r.length+1)===r+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),s="last"!==e.slice(-4),a="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,p,h,f,d,m=o!==s?"nextSibling":"previousSibling",g=t.parentNode,y=a&&t.nodeName.toLowerCase(),v=!u&&!a;if(g){if(o){for(;m;){for(p=t;p=p[m];)if(a?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;d=m="only"===e&&!d&&"nextSibling"}return!0}if(d=[s?g.firstChild:g.lastChild],s&&v){for(c=g[I]||(g[I]={}),l=c[e]||[],f=l[0]===$&&l[1],h=l[0]===$&&l[2],p=f&&g.childNodes[f];p=++f&&p&&p[m]||(h=f=0)||d.pop();)if(1===p.nodeType&&++h&&p===t){c[e]=[$,f,h];break}}else if(v&&(l=(t[I]||(t[I]={}))[e])&&l[0]===$)h=l[1];else for(;(p=++f&&p&&p[m]||(h=f=0)||d.pop())&&((a?p.nodeName.toLowerCase()!==y:1!==p.nodeType)||!++h||(v&&((p[I]||(p[I]={}))[e]=[$,h]),p!==t)););return h-=i,h===r||h%r===0&&h/r>=0}}},PSEUDO:function(e,n){var i,o=S.pseudos[e]||S.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[I]?o(n):o.length>1?(i=[e,e,"",n],S.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),s=i.length;s--;)r=tt.call(e,i[s]),e[r]=!(t[r]=i[s])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=C(e.replace(ut,"$1"));return i[I]?r(function(e,t,n,r){for(var o,s=i(e,null,r,[]),a=e.length;a--;)(o=s[a])&&(e[a]=!(t[a]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return function(t){return(t.textContent||t.innerText||T(t)).indexOf(e)>-1}}),lang:r(function(e){return ft.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(wt,St).toLowerCase(),function(t){var n;do if(n=q?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===F},focus:function(e){return e===P.activeElement&&(!P.hasFocus||P.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!S.pseudos.empty(e)},header:function(e){return gt.test(e.nodeName)},input:function(e){return mt.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:l(function(){return[0]}),last:l(function(e,t){return[t-1]}),eq:l(function(e,t,n){return[0>n?n+t:n]}),even:l(function(e,t){for(var n=0;t>n;n+=2)e.push(n);return e}),odd:l(function(e,t){for(var n=1;t>n;n+=2)e.push(n);return e}),lt:l(function(e,t,n){for(var r=0>n?n+t:n;--r>=0;)e.push(r);return e}),gt:l(function(e,t,n){for(var r=0>n?n+t:n;++r2&&"ID"===(s=o[0]).type&&w.getById&&9===t.nodeType&&q&&S.relative[o[1].type]){if(t=(S.find.ID(s.matches[0].replace(wt,St),t)||[])[0],!t)return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=dt.needsContext.test(e)?0:o.length;i--&&(s=o[i],!S.relative[a=s.type]);)if((u=S.find[a])&&(r=u(s.matches[0].replace(wt,St),bt.test(o[0].type)&&c(t.parentNode)||t))){if(o.splice(i,1),e=r.length&&h(o),!e)return K.apply(n,r),n;break}}return(l||C(e,p))(r,t,!q,n,bt.test(e)&&c(t.parentNode)||t),n},w.sortStable=I.split("").sort(B).join("")===I,w.detectDuplicates=!!D,j(),w.sortDetached=i(function(e){return 1&e.compareDocumentPosition(P.createElement("div"))}),i(function(e){return e.innerHTML=" ","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){return n?void 0:e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),w.attributes&&i(function(e){return e.innerHTML=" ",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){return n||"input"!==e.nodeName.toLowerCase()?void 0:e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(nt,function(e,t,n){var r;return n?void 0:e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);K.find=it,K.expr=it.selectors,K.expr[":"]=K.expr.pseudos,K.unique=it.uniqueSort,K.text=it.getText,K.isXMLDoc=it.isXML,K.contains=it.contains;var ot=K.expr.match.needsContext,st=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,at=/^.[^:#\[\.,]*$/;K.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?K.find.matchesSelector(r,e)?[r]:[]:K.find.matches(e,K.grep(t,function(e){return 1===e.nodeType}))},K.fn.extend({find:function(e){var t,n=this.length,r=[],i=this;if("string"!=typeof e)return this.pushStack(K(e).filter(function(){for(t=0;n>t;t++)if(K.contains(i[t],this))return!0}));for(t=0;n>t;t++)K.find(e,i[t],r);return r=this.pushStack(n>1?K.unique(r):r),r.selector=this.selector?this.selector+" "+e:e,r},filter:function(e){return this.pushStack(r(this,e||[],!1))},not:function(e){return this.pushStack(r(this,e||[],!0))},is:function(e){return!!r(this,"string"==typeof e&&ot.test(e)?K(e):e||[],!1).length}});var ut,lt=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ct=K.fn.init=function(e,t){var n,r;if(!e)return this;if("string"==typeof e){if(n="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:lt.exec(e),!n||!n[1]&&t)return!t||t.jquery?(t||ut).find(e):this.constructor(t).find(e);if(n[1]){if(t=t instanceof K?t[0]:t,K.merge(this,K.parseHTML(n[1],t&&t.nodeType?t.ownerDocument||t:Z,!0)),st.test(n[1])&&K.isPlainObject(t))for(n in t)K.isFunction(this[n])?this[n](t[n]):this.attr(n,t[n]);return this}return r=Z.getElementById(n[2]),r&&r.parentNode&&(this.length=1,this[0]=r),this.context=Z,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):K.isFunction(e)?"undefined"!=typeof ut.ready?ut.ready(e):e(K):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),K.makeArray(e,this))};ct.prototype=K.fn,ut=K(Z);var pt=/^(?:parents|prev(?:Until|All))/,ht={children:!0,contents:!0,next:!0,prev:!0};K.extend({dir:function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&K(e).is(n))break;r.push(e)}return r},sibling:function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}}),K.fn.extend({has:function(e){var t=K(e,this),n=t.length;return this.filter(function(){for(var e=0;n>e;e++)if(K.contains(this,t[e]))return!0})},closest:function(e,t){for(var n,r=0,i=this.length,o=[],s=ot.test(e)||"string"!=typeof e?K(e,t||this.context):0;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(s?s.index(n)>-1:1===n.nodeType&&K.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?K.unique(o):o)},index:function(e){return e?"string"==typeof e?B.call(K(e),this[0]):B.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(K.unique(K.merge(this.get(),K(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),K.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return K.dir(e,"parentNode")},parentsUntil:function(e,t,n){return K.dir(e,"parentNode",n)},next:function(e){return i(e,"nextSibling")},prev:function(e){return i(e,"previousSibling")},nextAll:function(e){return K.dir(e,"nextSibling")},prevAll:function(e){return K.dir(e,"previousSibling")},nextUntil:function(e,t,n){return K.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return K.dir(e,"previousSibling",n)},siblings:function(e){return K.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return K.sibling(e.firstChild)},contents:function(e){return e.contentDocument||K.merge([],e.childNodes)}},function(e,t){K.fn[e]=function(n,r){var i=K.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=K.filter(r,i)),this.length>1&&(ht[e]||K.unique(i),pt.test(e)&&i.reverse()),this.pushStack(i)}});var ft=/\S+/g,dt={};K.Callbacks=function(e){e="string"==typeof e?dt[e]||o(e):K.extend({},e);var t,n,r,i,s,a,u=[],l=!e.once&&[],c=function(o){for(t=e.memory&&o,n=!0,a=i||0,i=0,s=u.length,r=!0;u&&s>a;a++)if(u[a].apply(o[0],o[1])===!1&&e.stopOnFalse){t=!1;break}r=!1,u&&(l?l.length&&c(l.shift()):t?u=[]:p.disable())},p={add:function(){if(u){var n=u.length;!function o(t){K.each(t,function(t,n){var r=K.type(n);"function"===r?e.unique&&p.has(n)||u.push(n):n&&n.length&&"string"!==r&&o(n)})}(arguments),r?s=u.length:t&&(i=n,c(t))}return this},remove:function(){return u&&K.each(arguments,function(e,t){for(var n;(n=K.inArray(t,u,n))>-1;)u.splice(n,1),r&&(s>=n&&s--,a>=n&&a--)}),this},has:function(e){return e?K.inArray(e,u)>-1:!(!u||!u.length)},empty:function(){return u=[],s=0,this},disable:function(){return u=l=t=void 0,this},disabled:function(){return!u},lock:function(){return l=void 0,t||p.disable(),this},locked:function(){return!l},fireWith:function(e,t){return!u||n&&!l||(t=t||[],t=[e,t.slice?t.slice():t],r?l.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!n}};return p},K.extend({Deferred:function(e){var t=[["resolve","done",K.Callbacks("once memory"),"resolved"],["reject","fail",K.Callbacks("once memory"),"rejected"],["notify","progress",K.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return K.Deferred(function(n){K.each(t,function(t,o){var s=K.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&K.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[o[0]+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?K.extend(e,r):r}},i={};return r.pipe=r.then,K.each(t,function(e,o){var s=o[2],a=o[3];r[o[1]]=s.add,a&&s.add(function(){n=a},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=s.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,o=z.call(arguments),s=o.length,a=1!==s||e&&K.isFunction(e.promise)?s:0,u=1===a?e:K.Deferred(),l=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?z.call(arguments):i,r===t?u.notifyWith(n,r):--a||u.resolveWith(n,r)}};if(s>1)for(t=new Array(s),n=new Array(s),r=new Array(s);s>i;i++)o[i]&&K.isFunction(o[i].promise)?o[i].promise().done(l(i,r,o)).fail(u.reject).progress(l(i,n,t)):--a;return a||u.resolveWith(r,o),u.promise()}});var mt;K.fn.ready=function(e){return K.ready.promise().done(e),this},K.extend({isReady:!1,readyWait:1,holdReady:function(e){e?K.readyWait++:K.ready(!0)},ready:function(e){(e===!0?--K.readyWait:K.isReady)||(K.isReady=!0,e!==!0&&--K.readyWait>0||(mt.resolveWith(Z,[K]),K.fn.triggerHandler&&(K(Z).triggerHandler("ready"),K(Z).off("ready"))))}}),K.ready.promise=function(t){return mt||(mt=K.Deferred(),"complete"===Z.readyState?setTimeout(K.ready):(Z.addEventListener("DOMContentLoaded",s,!1),e.addEventListener("load",s,!1))),mt.promise(t)},K.ready.promise();var gt=K.access=function(e,t,n,r,i,o,s){var a=0,u=e.length,l=null==n;if("object"===K.type(n)){i=!0;for(a in n)K.access(e,t,a,n[a],!0,o,s)}else if(void 0!==r&&(i=!0,K.isFunction(r)||(s=!0),l&&(s?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(K(e),n)})),t))for(;u>a;a++)t(e[a],n,s?r:r.call(e[a],a,t(e[a],n)));return i?e:l?t.call(e):u?t(e[0],n):o};K.acceptData=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType},a.uid=1,a.accepts=K.acceptData,a.prototype={key:function(e){if(!a.accepts(e))return 0;var t={},n=e[this.expando];if(!n){n=a.uid++;try{t[this.expando]={value:n},Object.defineProperties(e,t)}catch(r){t[this.expando]=n,K.extend(e,t)}}return this.cache[n]||(this.cache[n]={}),n},set:function(e,t,n){var r,i=this.key(e),o=this.cache[i];if("string"==typeof t)o[t]=n;else if(K.isEmptyObject(o))K.extend(this.cache[i],t);else for(r in t)o[r]=t[r];return o},get:function(e,t){var n=this.cache[this.key(e)];return void 0===t?n:n[t]},access:function(e,t,n){var r;return void 0===t||t&&"string"==typeof t&&void 0===n?(r=this.get(e,t),void 0!==r?r:this.get(e,K.camelCase(t))):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r,i,o=this.key(e),s=this.cache[o];if(void 0===t)this.cache[o]={};else{K.isArray(t)?r=t.concat(t.map(K.camelCase)):(i=K.camelCase(t),t in s?r=[t,i]:(r=i,r=r in s?[r]:r.match(ft)||[])),n=r.length;for(;n--;)delete s[r[n]]}},hasData:function(e){return!K.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){e[this.expando]&&delete this.cache[e[this.expando]]}};var yt=new a,vt=new a,bt=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,xt=/([A-Z])/g;K.extend({hasData:function(e){return vt.hasData(e)||yt.hasData(e)},data:function(e,t,n){return vt.access(e,t,n)},removeData:function(e,t){vt.remove(e,t)},_data:function(e,t,n){return yt.access(e,t,n)},_removeData:function(e,t){yt.remove(e,t)}}),K.fn.extend({data:function(e,t){var n,r,i,o=this[0],s=o&&o.attributes;if(void 0===e){if(this.length&&(i=vt.get(o),1===o.nodeType&&!yt.get(o,"hasDataAttrs"))){for(n=s.length;n--;)s[n]&&(r=s[n].name,0===r.indexOf("data-")&&(r=K.camelCase(r.slice(5)),u(o,r,i[r])));yt.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof e?this.each(function(){vt.set(this,e)}):gt(this,function(t){var n,r=K.camelCase(e);if(o&&void 0===t){if(n=vt.get(o,e),void 0!==n)return n;if(n=vt.get(o,r),void 0!==n)return n;if(n=u(o,r,void 0),void 0!==n)return n}else this.each(function(){var n=vt.get(this,r);vt.set(this,r,t),-1!==e.indexOf("-")&&void 0!==n&&vt.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){vt.remove(this,e)})}}),K.extend({queue:function(e,t,n){var r;return e?(t=(t||"fx")+"queue",r=yt.get(e,t),n&&(!r||K.isArray(n)?r=yt.access(e,t,K.makeArray(n)):r.push(n)),r||[]):void 0},dequeue:function(e,t){t=t||"fx";var n=K.queue(e,t),r=n.length,i=n.shift(),o=K._queueHooks(e,t),s=function(){K.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,s,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return yt.get(e,n)||yt.access(e,n,{empty:K.Callbacks("once memory").add(function(){yt.remove(e,[t+"queue",n])})})}}),K.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.lengthx",Y.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var kt="undefined";Y.focusinBubbles="onfocusin"in e;var Ct=/^key/,Et=/^(?:mouse|pointer|contextmenu)|click/,At=/^(?:focusinfocus|focusoutblur)$/,Nt=/^([^.]*)(?:\.(.+)|)$/;K.event={global:{},add:function(e,t,n,r,i){var o,s,a,u,l,c,p,h,f,d,m,g=yt.get(e);if(g)for(n.handler&&(o=n,n=o.handler,i=o.selector),n.guid||(n.guid=K.guid++),(u=g.events)||(u=g.events={}),(s=g.handle)||(s=g.handle=function(t){return typeof K!==kt&&K.event.triggered!==t.type?K.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(ft)||[""],l=t.length;l--;)a=Nt.exec(t[l])||[],f=m=a[1],d=(a[2]||"").split(".").sort(),f&&(p=K.event.special[f]||{},f=(i?p.delegateType:p.bindType)||f,p=K.event.special[f]||{},c=K.extend({type:f,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&K.expr.match.needsContext.test(i),namespace:d.join(".")},o),(h=u[f])||(h=u[f]=[],h.delegateCount=0,p.setup&&p.setup.call(e,r,d,s)!==!1||e.addEventListener&&e.addEventListener(f,s,!1)),p.add&&(p.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?h.splice(h.delegateCount++,0,c):h.push(c),K.event.global[f]=!0)},remove:function(e,t,n,r,i){var o,s,a,u,l,c,p,h,f,d,m,g=yt.hasData(e)&&yt.get(e);if(g&&(u=g.events)){for(t=(t||"").match(ft)||[""],l=t.length;l--;)if(a=Nt.exec(t[l])||[],f=m=a[1],d=(a[2]||"").split(".").sort(),f){for(p=K.event.special[f]||{},f=(r?p.delegateType:p.bindType)||f,h=u[f]||[],a=a[2]&&new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=o=h.length;o--;)c=h[o],!i&&m!==c.origType||n&&n.guid!==c.guid||a&&!a.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(h.splice(o,1),c.selector&&h.delegateCount--,p.remove&&p.remove.call(e,c));s&&!h.length&&(p.teardown&&p.teardown.call(e,d,g.handle)!==!1||K.removeEvent(e,f,g.handle),delete u[f])}else for(f in u)K.event.remove(e,f+t[l],n,r,!0);K.isEmptyObject(u)&&(delete g.handle,yt.remove(e,"events"))}},trigger:function(t,n,r,i){var o,s,a,u,l,c,p,h=[r||Z],f=J.call(t,"type")?t.type:t,d=J.call(t,"namespace")?t.namespace.split("."):[];if(s=a=r=r||Z,3!==r.nodeType&&8!==r.nodeType&&!At.test(f+K.event.triggered)&&(f.indexOf(".")>=0&&(d=f.split("."),f=d.shift(),d.sort()),l=f.indexOf(":")<0&&"on"+f,t=t[K.expando]?t:new K.Event(f,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=d.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:K.makeArray(n,[t]),p=K.event.special[f]||{},i||!p.trigger||p.trigger.apply(r,n)!==!1)){if(!i&&!p.noBubble&&!K.isWindow(r)){for(u=p.delegateType||f,At.test(u+f)||(s=s.parentNode);s;s=s.parentNode)h.push(s),a=s;a===(r.ownerDocument||Z)&&h.push(a.defaultView||a.parentWindow||e)}for(o=0;(s=h[o++])&&!t.isPropagationStopped();)t.type=o>1?u:p.bindType||f,c=(yt.get(s,"events")||{})[t.type]&&yt.get(s,"handle"),c&&c.apply(s,n),c=l&&s[l],c&&c.apply&&K.acceptData(s)&&(t.result=c.apply(s,n),t.result===!1&&t.preventDefault());return t.type=f,i||t.isDefaultPrevented()||p._default&&p._default.apply(h.pop(),n)!==!1||!K.acceptData(r)||l&&K.isFunction(r[f])&&!K.isWindow(r)&&(a=r[l],a&&(r[l]=null),K.event.triggered=f,r[f](),K.event.triggered=void 0,a&&(r[l]=a)),t.result}},dispatch:function(e){e=K.event.fix(e);
-var t,n,r,i,o,s=[],a=z.call(arguments),u=(yt.get(this,"events")||{})[e.type]||[],l=K.event.special[e.type]||{};if(a[0]=e,e.delegateTarget=this,!l.preDispatch||l.preDispatch.call(this,e)!==!1){for(s=K.event.handlers.call(this,e,u),t=0;(i=s[t++])&&!e.isPropagationStopped();)for(e.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!e.isImmediatePropagationStopped();)(!e.namespace_re||e.namespace_re.test(o.namespace))&&(e.handleObj=o,e.data=o.data,r=((K.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,a),void 0!==r&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()));return l.postDispatch&&l.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,i,o,s=[],a=t.delegateCount,u=e.target;if(a&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!==this;u=u.parentNode||this)if(u.disabled!==!0||"click"!==e.type){for(r=[],n=0;a>n;n++)o=t[n],i=o.selector+" ",void 0===r[i]&&(r[i]=o.needsContext?K(i,this).index(u)>=0:K.find(i,this,null,[u]).length),r[i]&&r.push(o);r.length&&s.push({elem:u,handlers:r})}return a]*)\/>/gi,jt=/<([\w:]+)/,Pt=/<|?\w+;/,Ft=/<(?:script|style|link)/i,qt=/checked\s*(?:[^=]|=\s*.checked.)/i,Ot=/^$|\/(?:java|ecma)script/i,Lt=/^true\/(.*)/,Ht=/^\s*\s*$/g,Rt={option:[1,""," "],thead:[1,""],col:[2,""],tr:[2,""],td:[3,""],_default:[0,"",""]};Rt.optgroup=Rt.option,Rt.tbody=Rt.tfoot=Rt.colgroup=Rt.caption=Rt.thead,Rt.th=Rt.td,K.extend({clone:function(e,t,n){var r,i,o,s,a=e.cloneNode(!0),u=K.contains(e.ownerDocument,e);if(!(Y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||K.isXMLDoc(e)))for(s=y(a),o=y(e),r=0,i=o.length;i>r;r++)v(o[r],s[r]);if(t)if(n)for(o=o||y(e),s=s||y(a),r=0,i=o.length;i>r;r++)g(o[r],s[r]);else g(e,a);return s=y(a,"script"),s.length>0&&m(s,!u&&y(e,"script")),a},buildFragment:function(e,t,n,r){for(var i,o,s,a,u,l,c=t.createDocumentFragment(),p=[],h=0,f=e.length;f>h;h++)if(i=e[h],i||0===i)if("object"===K.type(i))K.merge(p,i.nodeType?[i]:i);else if(Pt.test(i)){for(o=o||c.appendChild(t.createElement("div")),s=(jt.exec(i)||["",""])[1].toLowerCase(),a=Rt[s]||Rt._default,o.innerHTML=a[1]+i.replace(Dt,"<$1>$2>")+a[2],l=a[0];l--;)o=o.lastChild;K.merge(p,o.childNodes),o=c.firstChild,o.textContent=""}else p.push(t.createTextNode(i));for(c.textContent="",h=0;i=p[h++];)if((!r||-1===K.inArray(i,r))&&(u=K.contains(i.ownerDocument,i),o=y(c.appendChild(i),"script"),u&&m(o),n))for(l=0;i=o[l++];)Ot.test(i.type||"")&&n.push(i);return c},cleanData:function(e){for(var t,n,r,i,o=K.event.special,s=0;void 0!==(n=e[s]);s++){if(K.acceptData(n)&&(i=n[yt.expando],i&&(t=yt.cache[i]))){if(t.events)for(r in t.events)o[r]?K.event.remove(n,r):K.removeEvent(n,r,t.handle);yt.cache[i]&&delete yt.cache[i]}delete vt.cache[n[vt.expando]]}}}),K.fn.extend({text:function(e){return gt(this,function(e){return void 0===e?K.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=e)})},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=h(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=h(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var n,r=e?K.filter(e,this):this,i=0;null!=(n=r[i]);i++)t||1!==n.nodeType||K.cleanData(y(n)),n.parentNode&&(t&&K.contains(n.ownerDocument,n)&&m(y(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(K.cleanData(y(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return K.clone(this,e,t)})},html:function(e){return gt(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ft.test(e)&&!Rt[(jt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(Dt,"<$1>$2>");try{for(;r>n;n++)t=this[n]||{},1===t.nodeType&&(K.cleanData(y(t,!1)),t.innerHTML=e);t=0}catch(i){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=arguments[0];return this.domManip(arguments,function(t){e=this.parentNode,K.cleanData(y(this)),e&&e.replaceChild(t,this)}),e&&(e.length||e.nodeType)?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t){e=U.apply([],e);var n,r,i,o,s,a,u=0,l=this.length,c=this,p=l-1,h=e[0],m=K.isFunction(h);if(m||l>1&&"string"==typeof h&&!Y.checkClone&&qt.test(h))return this.each(function(n){var r=c.eq(n);m&&(e[0]=h.call(this,n,r.html())),r.domManip(e,t)});if(l&&(n=K.buildFragment(e,this[0].ownerDocument,!1,this),r=n.firstChild,1===n.childNodes.length&&(n=r),r)){for(i=K.map(y(n,"script"),f),o=i.length;l>u;u++)s=n,u!==p&&(s=K.clone(s,!0,!0),o&&K.merge(i,y(s,"script"))),t.call(this[u],s,u);if(o)for(a=i[i.length-1].ownerDocument,K.map(i,d),u=0;o>u;u++)s=i[u],Ot.test(s.type||"")&&!yt.access(s,"globalEval")&&K.contains(a,s)&&(s.src?K._evalUrl&&K._evalUrl(s.src):K.globalEval(s.textContent.replace(Ht,"")))}return this}}),K.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){K.fn[e]=function(e){for(var n,r=[],i=K(e),o=i.length-1,s=0;o>=s;s++)n=s===o?this:this.clone(!0),K(i[s])[t](n),W.apply(r,n.get());return this.pushStack(r)}});var It,Mt={},$t=/^margin/,Qt=new RegExp("^("+wt+")(?!px)[a-z%]+$","i"),zt=function(e){return e.ownerDocument.defaultView.getComputedStyle(e,null)};!function(){function t(){s.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",s.innerHTML="",i.appendChild(o);var t=e.getComputedStyle(s,null);n="1%"!==t.top,r="4px"===t.width,i.removeChild(o)}var n,r,i=Z.documentElement,o=Z.createElement("div"),s=Z.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",Y.clearCloneStyle="content-box"===s.style.backgroundClip,o.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",o.appendChild(s),e.getComputedStyle&&K.extend(Y,{pixelPosition:function(){return t(),n},boxSizingReliable:function(){return null==r&&t(),r},reliableMarginRight:function(){var t,n=s.appendChild(Z.createElement("div"));return n.style.cssText=s.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",n.style.marginRight=n.style.width="0",s.style.width="1px",i.appendChild(o),t=!parseFloat(e.getComputedStyle(n,null).marginRight),i.removeChild(o),t}}))}(),K.swap=function(e,t,n,r){var i,o,s={};for(o in t)s[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=s[o];return i};var Ut=/^(none|table(?!-c[ea]).+)/,Wt=new RegExp("^("+wt+")(.*)$","i"),Bt=new RegExp("^([+-])=("+wt+")","i"),Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:"0",fontWeight:"400"},Jt=["Webkit","O","Moz","ms"];K.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=w(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,s,a=K.camelCase(t),u=e.style;return t=K.cssProps[a]||(K.cssProps[a]=T(u,a)),s=K.cssHooks[t]||K.cssHooks[a],void 0===n?s&&"get"in s&&void 0!==(i=s.get(e,!1,r))?i:u[t]:(o=typeof n,"string"===o&&(i=Bt.exec(n))&&(n=(i[1]+1)*i[2]+parseFloat(K.css(e,t)),o="number"),null!=n&&n===n&&("number"!==o||K.cssNumber[a]||(n+="px"),Y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),s&&"set"in s&&void 0===(n=s.set(e,n,r))||(u[t]=n)),void 0)}},css:function(e,t,n,r){var i,o,s,a=K.camelCase(t);return t=K.cssProps[a]||(K.cssProps[a]=T(e.style,a)),s=K.cssHooks[t]||K.cssHooks[a],s&&"get"in s&&(i=s.get(e,!0,n)),void 0===i&&(i=w(e,t,r)),"normal"===i&&t in Vt&&(i=Vt[t]),""===n||n?(o=parseFloat(i),n===!0||K.isNumeric(o)?o||0:i):i}}),K.each(["height","width"],function(e,t){K.cssHooks[t]={get:function(e,n,r){return n?Ut.test(K.css(e,"display"))&&0===e.offsetWidth?K.swap(e,Xt,function(){return C(e,t,r)}):C(e,t,r):void 0},set:function(e,n,r){var i=r&&zt(e);return _(e,n,r?k(e,t,r,"border-box"===K.css(e,"boxSizing",!1,i),i):0)}}}),K.cssHooks.marginRight=S(Y.reliableMarginRight,function(e,t){return t?K.swap(e,{display:"inline-block"},w,[e,"marginRight"]):void 0}),K.each({margin:"",padding:"",border:"Width"},function(e,t){K.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+St[r]+t]=o[r]||o[r-2]||o[0];return i}},$t.test(e)||(K.cssHooks[e+t].set=_)}),K.fn.extend({css:function(e,t){return gt(this,function(e,t,n){var r,i,o={},s=0;if(K.isArray(t)){for(r=zt(e),i=t.length;i>s;s++)o[t[s]]=K.css(e,t[s],!1,r);return o}return void 0!==n?K.style(e,t,n):K.css(e,t)},e,t,arguments.length>1)},show:function(){return E(this,!0)},hide:function(){return E(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Tt(this)?K(this).show():K(this).hide()})}}),K.Tween=A,A.prototype={constructor:A,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(K.cssNumber[n]?"":"px")},cur:function(){var e=A.propHooks[this.prop];return e&&e.get?e.get(this):A.propHooks._default.get(this)},run:function(e){var t,n=A.propHooks[this.prop];return this.pos=t=this.options.duration?K.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):A.propHooks._default.set(this),this}},A.prototype.init.prototype=A.prototype,A.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=K.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){K.fx.step[e.prop]?K.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[K.cssProps[e.prop]]||K.cssHooks[e.prop])?K.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},A.propHooks.scrollTop=A.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},K.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},K.fx=A.prototype.init,K.fx.step={};var Yt,Zt,Gt=/^(?:toggle|show|hide)$/,Kt=new RegExp("^(?:([+-])=|)("+wt+")([a-z%]*)$","i"),en=/queueHooks$/,tn=[P],nn={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=Kt.exec(t),o=i&&i[3]||(K.cssNumber[e]?"":"px"),s=(K.cssNumber[e]||"px"!==o&&+r)&&Kt.exec(K.css(n.elem,e)),a=1,u=20;if(s&&s[3]!==o){o=o||s[3],i=i||[],s=+r||1;do a=a||".5",s/=a,K.style(n.elem,e,s+o);while(a!==(a=n.cur()/r)&&1!==a&&--u)}return i&&(s=n.start=+s||+r||0,n.unit=o,n.end=i[1]?s+(i[1]+1)*i[2]:+i[2]),n}]};K.Animation=K.extend(q,{tweener:function(e,t){K.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var n,r=0,i=e.length;i>r;r++)n=e[r],nn[n]=nn[n]||[],nn[n].unshift(t)},prefilter:function(e,t){t?tn.unshift(e):tn.push(e)}}),K.speed=function(e,t,n){var r=e&&"object"==typeof e?K.extend({},e):{complete:n||!n&&t||K.isFunction(e)&&e,duration:e,easing:n&&t||t&&!K.isFunction(t)&&t};return r.duration=K.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in K.fx.speeds?K.fx.speeds[r.duration]:K.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){K.isFunction(r.old)&&r.old.call(this),r.queue&&K.dequeue(this,r.queue)},r},K.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Tt).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=K.isEmptyObject(e),o=K.speed(t,n,r),s=function(){var t=q(this,K.extend({},e),o);(i||yt.get(this,"finish"))&&t.stop(!0)};return s.finish=s,i||o.queue===!1?this.each(s):this.queue(o.queue,s)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=K.timers,s=yt.get(this);if(i)s[i]&&s[i].stop&&r(s[i]);else for(i in s)s[i]&&s[i].stop&&en.test(i)&&r(s[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));(t||!n)&&K.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=yt.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=K.timers,s=r?r.length:0;for(n.finish=!0,K.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;s>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),K.each(["toggle","show","hide"],function(e,t){var n=K.fn[t];K.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(D(t,!0),e,r,i)}}),K.each({slideDown:D("show"),slideUp:D("hide"),slideToggle:D("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){K.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),K.timers=[],K.fx.tick=function(){var e,t=0,n=K.timers;for(Yt=K.now();t1)},removeAttr:function(e){return this.each(function(){K.removeAttr(this,e)})}}),K.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(e&&3!==o&&8!==o&&2!==o)return typeof e.getAttribute===kt?K.prop(e,t,n):(1===o&&K.isXMLDoc(e)||(t=t.toLowerCase(),r=K.attrHooks[t]||(K.expr.match.bool.test(t)?on:rn)),void 0===n?r&&"get"in r&&null!==(i=r.get(e,t))?i:(i=K.find.attr(e,t),null==i?void 0:i):null!==n?r&&"set"in r&&void 0!==(i=r.set(e,n,t))?i:(e.setAttribute(t,n+""),n):void K.removeAttr(e,t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(ft);if(o&&1===e.nodeType)for(;n=o[i++];)r=K.propFix[n]||n,K.expr.match.bool.test(n)&&(e[r]=!1),e.removeAttribute(n)},attrHooks:{type:{set:function(e,t){if(!Y.radioValue&&"radio"===t&&K.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}}}),on={set:function(e,t,n){return t===!1?K.removeAttr(e,n):e.setAttribute(n,n),n}},K.each(K.expr.match.bool.source.match(/\w+/g),function(e,t){var n=sn[t]||K.find.attr;sn[t]=function(e,t,r){var i,o;return r||(o=sn[t],sn[t]=i,i=null!=n(e,t,r)?t.toLowerCase():null,sn[t]=o),i}});var an=/^(?:input|select|textarea|button)$/i;K.fn.extend({prop:function(e,t){return gt(this,K.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[K.propFix[e]||e]})}}),K.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(e,t,n){var r,i,o,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return o=1!==s||!K.isXMLDoc(e),o&&(t=K.propFix[t]||t,i=K.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||an.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),Y.optSelected||(K.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),K.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){K.propFix[this.toLowerCase()]=this});var un=/[\t\r\n\f]/g;K.fn.extend({addClass:function(e){var t,n,r,i,o,s,a="string"==typeof e&&e,u=0,l=this.length;if(K.isFunction(e))return this.each(function(t){K(this).addClass(e.call(this,t,this.className))});if(a)for(t=(e||"").match(ft)||[];l>u;u++)if(n=this[u],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(un," "):" ")){for(o=0;i=t[o++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");s=K.trim(r),n.className!==s&&(n.className=s)}return this},removeClass:function(e){var t,n,r,i,o,s,a=0===arguments.length||"string"==typeof e&&e,u=0,l=this.length;if(K.isFunction(e))return this.each(function(t){K(this).removeClass(e.call(this,t,this.className))});if(a)for(t=(e||"").match(ft)||[];l>u;u++)if(n=this[u],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(un," "):"")){for(o=0;i=t[o++];)for(;r.indexOf(" "+i+" ")>=0;)r=r.replace(" "+i+" "," ");s=e?K.trim(r):"",n.className!==s&&(n.className=s)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):this.each(K.isFunction(e)?function(n){K(this).toggleClass(e.call(this,n,this.className,t),t)}:function(){if("string"===n)for(var t,r=0,i=K(this),o=e.match(ft)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else(n===kt||"boolean"===n)&&(this.className&&yt.set(this,"__className__",this.className),this.className=this.className||e===!1?"":yt.get(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",n=0,r=this.length;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(un," ").indexOf(t)>=0)return!0;return!1}});var ln=/\r/g;K.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=K.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,K(this).val()):e,null==i?i="":"number"==typeof i?i+="":K.isArray(i)&&(i=K.map(i,function(e){return null==e?"":e+""})),t=K.valHooks[this.type]||K.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=K.valHooks[i.type]||K.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(ln,""):null==n?"":n)}}}),K.extend({valHooks:{option:{get:function(e){var t=K.find.attr(e,"value");return null!=t?t:K.trim(K.text(e))}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,s=o?null:[],a=o?i+1:r.length,u=0>i?a:o?i:0;a>u;u++)if(n=r[u],!(!n.selected&&u!==i||(Y.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&K.nodeName(n.parentNode,"optgroup"))){if(t=K(n).val(),o)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=K.makeArray(t),s=i.length;s--;)r=i[s],(r.selected=K.inArray(r.value,o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),K.each(["radio","checkbox"],function(){K.valHooks[this]={set:function(e,t){return K.isArray(t)?e.checked=K.inArray(K(e).val(),t)>=0:void 0}},Y.checkOn||(K.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),K.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){K.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),K.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}});var cn=K.now(),pn=/\?/;K.parseJSON=function(e){return JSON.parse(e+"")},K.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{n=new DOMParser,t=n.parseFromString(e,"text/xml")}catch(r){t=void 0}return(!t||t.getElementsByTagName("parsererror").length)&&K.error("Invalid XML: "+e),t};var hn,fn,dn=/#.*$/,mn=/([?&])_=[^&]*/,gn=/^(.*?):[ \t]*([^\r\n]*)$/gm,yn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,bn=/^\/\//,xn=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,wn={},Sn={},Tn="*/".concat("*");try{fn=location.href}catch(_n){fn=Z.createElement("a"),fn.href="",fn=fn.href}hn=xn.exec(fn.toLowerCase())||[],K.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:fn,type:"GET",isLocal:yn.test(hn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Tn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":K.parseJSON,"text xml":K.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?H(H(e,K.ajaxSettings),t):H(K.ajaxSettings,e)},ajaxPrefilter:O(wn),ajaxTransport:O(Sn),ajax:function(e,t){function n(e,t,n,s){var u,c,y,v,x,S=t;2!==b&&(b=2,a&&clearTimeout(a),r=void 0,o=s||"",w.readyState=e>0?4:0,u=e>=200&&300>e||304===e,n&&(v=R(p,w,n)),v=I(p,v,w,u),u?(p.ifModified&&(x=w.getResponseHeader("Last-Modified"),x&&(K.lastModified[i]=x),x=w.getResponseHeader("etag"),x&&(K.etag[i]=x)),204===e||"HEAD"===p.type?S="nocontent":304===e?S="notmodified":(S=v.state,c=v.data,y=v.error,u=!y)):(y=S,(e||!S)&&(S="error",0>e&&(e=0))),w.status=e,w.statusText=(t||S)+"",u?d.resolveWith(h,[c,S,w]):d.rejectWith(h,[w,S,y]),w.statusCode(g),g=void 0,l&&f.trigger(u?"ajaxSuccess":"ajaxError",[w,p,u?c:y]),m.fireWith(h,[w,S]),l&&(f.trigger("ajaxComplete",[w,p]),--K.active||K.event.trigger("ajaxStop")))}"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,i,o,s,a,u,l,c,p=K.ajaxSetup({},t),h=p.context||p,f=p.context&&(h.nodeType||h.jquery)?K(h):K.event,d=K.Deferred(),m=K.Callbacks("once memory"),g=p.statusCode||{},y={},v={},b=0,x="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!s)for(s={};t=gn.exec(o);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?o:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return b||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>b)for(t in e)g[t]=[g[t],e[t]];else w.always(e[w.status]);return this},abort:function(e){var t=e||x;return r&&r.abort(t),n(0,t),this}};if(d.promise(w).complete=m.add,w.success=w.done,w.error=w.fail,p.url=((e||p.url||fn)+"").replace(dn,"").replace(bn,hn[1]+"//"),p.type=t.method||t.type||p.method||p.type,p.dataTypes=K.trim(p.dataType||"*").toLowerCase().match(ft)||[""],null==p.crossDomain&&(u=xn.exec(p.url.toLowerCase()),p.crossDomain=!(!u||u[1]===hn[1]&&u[2]===hn[2]&&(u[3]||("http:"===u[1]?"80":"443"))===(hn[3]||("http:"===hn[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=K.param(p.data,p.traditional)),L(wn,p,t,w),2===b)return w;l=p.global,l&&0===K.active++&&K.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!vn.test(p.type),i=p.url,p.hasContent||(p.data&&(i=p.url+=(pn.test(i)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=mn.test(i)?i.replace(mn,"$1_="+cn++):i+(pn.test(i)?"&":"?")+"_="+cn++)),p.ifModified&&(K.lastModified[i]&&w.setRequestHeader("If-Modified-Since",K.lastModified[i]),K.etag[i]&&w.setRequestHeader("If-None-Match",K.etag[i])),(p.data&&p.hasContent&&p.contentType!==!1||t.contentType)&&w.setRequestHeader("Content-Type",p.contentType),w.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Tn+"; q=0.01":""):p.accepts["*"]);for(c in p.headers)w.setRequestHeader(c,p.headers[c]);if(p.beforeSend&&(p.beforeSend.call(h,w,p)===!1||2===b))return w.abort();x="abort";for(c in{success:1,error:1,complete:1})w[c](p[c]);if(r=L(Sn,p,t,w)){w.readyState=1,l&&f.trigger("ajaxSend",[w,p]),p.async&&p.timeout>0&&(a=setTimeout(function(){w.abort("timeout")},p.timeout));try{b=1,r.send(y,n)}catch(S){if(!(2>b))throw S;n(-1,S)}}else n(-1,"No Transport");return w},getJSON:function(e,t,n){return K.get(e,t,n,"json")},getScript:function(e,t){return K.get(e,void 0,t,"script")}}),K.each(["get","post"],function(e,t){K[t]=function(e,n,r,i){return K.isFunction(n)&&(i=i||r,r=n,n=void 0),K.ajax({url:e,type:t,dataType:i,data:n,success:r})}}),K.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){K.fn[t]=function(e){return this.on(t,e)}}),K._evalUrl=function(e){return K.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},K.fn.extend({wrapAll:function(e){var t;return K.isFunction(e)?this.each(function(t){K(this).wrapAll(e.call(this,t))}):(this[0]&&(t=K(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this)},wrapInner:function(e){return this.each(K.isFunction(e)?function(t){K(this).wrapInner(e.call(this,t))}:function(){var t=K(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=K.isFunction(e);return this.each(function(n){K(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){K.nodeName(this,"body")||K(this).replaceWith(this.childNodes)}).end()}}),K.expr.filters.hidden=function(e){return e.offsetWidth<=0&&e.offsetHeight<=0},K.expr.filters.visible=function(e){return!K.expr.filters.hidden(e)};var kn=/%20/g,Cn=/\[\]$/,En=/\r?\n/g,An=/^(?:submit|button|image|reset|file)$/i,Nn=/^(?:input|select|textarea|keygen)/i;K.param=function(e,t){var n,r=[],i=function(e,t){t=K.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=K.ajaxSettings&&K.ajaxSettings.traditional),K.isArray(e)||e.jquery&&!K.isPlainObject(e))K.each(e,function(){i(this.name,this.value)});else for(n in e)M(n,e[n],t,i);return r.join("&").replace(kn,"+")},K.fn.extend({serialize:function(){return K.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=K.prop(this,"elements");return e?K.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!K(this).is(":disabled")&&Nn.test(this.nodeName)&&!An.test(e)&&(this.checked||!_t.test(e))}).map(function(e,t){var n=K(this).val();return null==n?null:K.isArray(n)?K.map(n,function(e){return{name:t.name,value:e.replace(En,"\r\n")}}):{name:t.name,value:n.replace(En,"\r\n")}}).get()}}),K.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var Dn=0,jn={},Pn={0:200,1223:204},Fn=K.ajaxSettings.xhr();e.ActiveXObject&&K(e).on("unload",function(){for(var e in jn)jn[e]()}),Y.cors=!!Fn&&"withCredentials"in Fn,Y.ajax=Fn=!!Fn,K.ajaxTransport(function(e){var t;return Y.cors||Fn&&!e.crossDomain?{send:function(n,r){var i,o=e.xhr(),s=++Dn;if(o.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(i in e.xhrFields)o[i]=e.xhrFields[i];e.mimeType&&o.overrideMimeType&&o.overrideMimeType(e.mimeType),e.crossDomain||n["X-Requested-With"]||(n["X-Requested-With"]="XMLHttpRequest");for(i in n)o.setRequestHeader(i,n[i]);t=function(e){return function(){t&&(delete jn[s],t=o.onload=o.onerror=null,"abort"===e?o.abort():"error"===e?r(o.status,o.statusText):r(Pn[o.status]||o.status,o.statusText,"string"==typeof o.responseText?{text:o.responseText}:void 0,o.getAllResponseHeaders()))
-}},o.onload=t(),o.onerror=t("error"),t=jn[s]=t("abort");try{o.send(e.hasContent&&e.data||null)}catch(a){if(t)throw a}},abort:function(){t&&t()}}:void 0}),K.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return K.globalEval(e),e}}}),K.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),K.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=K("
+```
+{% endraw %}
+
+View the Tooltip Demo for a demo.
+
+The `url` here is relative, but you could equally point it to an absolute path on a remote host assuming CORS is enabled on the host.
+
+The `each` method looks through all the JSON content to find the item whose `page.id` is equal to `basketball`. It then looks for an element on the page named `#basketball` and adds a `data-content` attribute to that element.
+
+{{site.data.alerts.warning}}Note: Make sure your JSON file is valid. Otherwise, this method won't work. I use the JSON Formatter extension for Chrome . When I go to the tooltips.json page in my browser, the JSON content — if valid — is nicely formatted (and includes some color coding). If the file isn't valid, it's not formatted and there isn't any color. You can also check the JSON formatting using JSON Formatter and Validator . If your JSON file isn't valid, identify the problem area using the validator and troubleshoot the file causing issues. It's usually due to some code that isn't escaping correctly. {{site.data.alerts.end}}
+
+Why `data-content`? Well, in this case, I'm using [Bootstrap popovers](http://getbootstrap.com/javascript/#popovers) to display the tooltip content. The `data-content` attribute is how Bootstrap injects popovers.
+
+Here's the section on the page where the popover is inserted:
+
+```
+Basketball
+```
+
+Notice that I just have `id="basketball"` added to this popover element. Developers merely need to add a unique ID to each tooltip they want to pull in the help content. Either you tell developers the unique ID they should add, or ask them what IDs they added (or just tell them to use an ID that matches the field's name).
+
+In order to use jQuery and Bootstrap, you'll need to add the appropriate references in the head tags of your page:
+
+```js
+
+
+
+
+
+{% if site.output == "web" %}
+
-
+
-
+{% unless site.output == "pdf" %}
+
+
{% endunless %}
All
- Getting Started
+ Getting Started
Formatting
Publishing
Content types
- Single Sourcing
- Special Layouts
+ Single Sourcing
+ Special Layouts
-
+
Getting started
@@ -38,8 +38,8 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
{% for page in site.pages %}
{% for tag in page.tags %}
- {% if tag == "getting-started" %}
- {{page.title}}
+ {% if tag == "getting_started" %}
+ {{page.title}}
{% endif %}
{% endfor %}
{% endfor %}
@@ -60,7 +60,7 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
{% for page in site.pages %}
{% for tag in page.tags %}
{% if tag == "content-types" %}
- {{page.title}}
+ {{page.title}}
{% endif %}
{% endfor %}
{% endfor %}
@@ -82,7 +82,7 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
{% for page in site.pages %}
{% for tag in page.tags %}
{% if tag == "formatting" %}
- {{page.title}}
+ {{page.title}}
{% endif %}
{% endfor %}
{% endfor %}
@@ -92,16 +92,16 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
-
+
Single Sourcing
-
These topics cover strategies for single-sourcing. Single sourcing refers to strategies for re-using the same source in different outputs for different audiences or purposes.
+
These topics cover strategies for single_sourcing. Single sourcing refers to strategies for re-using the same source in different outputs for different audiences or purposes.
{% for page in site.pages %}
{% for tag in page.tags %}
- {% if tag == "single-sourcing" %}
- {{page.title}}
+ {% if tag == "single_sourcing" %}
+ {{page.title}}
{% endif %}
{% endfor %}
{% endfor %}
@@ -120,7 +120,7 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
{% for page in site.pages %}
{% for tag in page.tags %}
{% if tag == "publishing" %}
- {{page.title}}
+ {{page.title}}
{% endif %}
{% endfor %}
{% endfor %}
@@ -130,7 +130,7 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
-
+
Special Layouts
@@ -139,8 +139,8 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
{% for page in site.pages %}
{% for tag in page.tags %}
- {% if tag == "special-layouts" %}
- {{page.title}}
+ {% if tag == "special_layouts" %}
+ {{page.title}}
{% endif %}
{% endfor %}
{% endfor %}
@@ -155,7 +155,7 @@ summary: "This layout shows an example of a knowledge-base style navigation syst
-{% unless site.print == true %}
+{% unless site.output == "pdf" %}
{% include initialize_shuffle.html %}
{% endunless %}
diff --git a/mydoc/mydoc_sidebar_navigation.md b/mydoc/mydoc_sidebar_navigation.md
new file mode 100644
index 0000000..4c96f7f
--- /dev/null
+++ b/mydoc/mydoc_sidebar_navigation.md
@@ -0,0 +1,91 @@
+---
+title: Sidebar Navigation
+tags: [getting_started]
+last_updated: November 30, 2015
+keywords: sidebar, accordion, yaml, iteration, for loop, navigation, attributes, conditional filtering
+summary: "The sidebar navigation uses a jQuery component called Navgoco. The sidebar is a somewhat complex part of the theme that remembers your current page, highlights the active item, stays in a fixed position on the page, and more."
+---
+
+{{site.data.alerts.note}} For basic information about configuring the sidebar navigation, see {{site.data.mydoc.mydoc_urls.mydoc_configure_sidebar.link}}. This section gets into the top sidebar navigation in more depth.{{site.data.alerts.end}}
+
+When you set up your project, you configured the sidebar following the instructions in {{site.data.mydoc.mydoc_urls.mydoc_configure_sidebar.link}}. In this topic, I dive deeper into other aspects of the sidebar.
+
+## Navgoco foundation
+
+The sidebar uses the [Navgoco jQuery plugin](https://github.com/tefra/navgoco) as its basis. Why not use Bootstrap? Navgoco provides a few features that I couldn't find in Bootstrap:
+
+* Navgoco sets a cookie to remember the user's position in the sidebar. If you refresh the page, the cookie allows the plugin to remember the state.
+* Navgoco inserts an `active` class based on the navigation option that's open. This is essential for keeping the accordion open.
+* Navgoco includes the expand and collapse features of a sidebar.
+
+In short, the sidebar has some complex logic here. I've integrated Navgoco's features with the sidebar.html and sidebar_doc.yml to build the sidebar. It's probably the most impressive part of this theme. (Other themes usually aren't focused on creating hierarchies of pages, but this kind of hierarchy is important in a documentation site.)
+
+## Accordion sidebar feature
+
+As mentioned in the previous section, the theme uses the [Navgoco sidebar](http://www.komposta.net/article/navgoco). The sidebar.html file (inside the _includes folder) contains the `.navgoco` method called on the `#mysidebar` element.
+
+There are some options to set within the `.navgoco` method. The only noteworthy option is `accordion`. This option makes it so when you expand a section, the other sections collapse. It's a way of keeping your navigation controls condensed.
+
+The value for `accordion` is a Boolean (`true` or `false`). By default, the `accordion` option is set as `true`. If you don't want the accordion, set it to `false`. Note that there's also a block of code near the bottom of sidebar.html that is commented out. Uncomment out that section to have the Collapse all and Expand All buttons appear.
+
+There's a danger with setting the accordion to `false`. If you click Expand All and the sidebar expands beyond the dimensions of the browser, users will be stuck. When that happens, it's hard to collapse it. As a best practice, leave the sidebar's accordion option set to `true`.
+
+## Fixed position sidebar
+
+The sidebar has one other feature — this one from Bootstrap. If the user's viewport is tall enough, the sidebar remains fixed on the page. This allows the user to scroll down the page and still keep the sidebar in view.
+
+In the customsscripts.js file in the js folder, there's a function that adds an `affix` class if the height of the browser window is greater than 800 pixels. If the browser's height is less than 800 pixels, the `nav affix` class does not get inserted. As a result, the sidebar can slide up and down as the user scrolls up and down the page.
+
+Depending on your content, you may need to adjust `800` pixel number. If your sidebar is so long that having it in a fixed position makes it so the bottom of the sidebar gets cut off, increase the `800` pixel number here to a higher number.
+
+## Opening sidebar links into external pages
+
+In the attributes for each sidebar item, if you use `external_url` instead of `url`, the theme will insert the link into an `a href` element that opens in a blank target.
+
+For example, the sidebar.html file contains the following code:
+
+{% raw %}
+```liquid
+{% if item.external_url %}
+
{{subcategory.title}}
+ {% elsif page.url == item.url %}
+```
+{% endraw %}
+
+You can see that the `external_url` is a condition that applies a different formatting. Although this feature is available, I recommend putting any external navigation links in the top navigation bar instead of the side navigation bar.
+
+## Sidebar item highlighting
+
+The sidebar.html file inserts an `active` class into the sidebar element when the `url` attribute in the sidebar data file matches the page URL.
+
+For example, the sidebar.html file contains the following code:
+
+{% raw %}
+```liquid
+ {% elsif page.url == item.url %}
+
{{item.title}}
+ {% else %}
+
{{item.title}}
+ {% endif %}
+```
+{% endraw %}
+
+If the `page.url` matches the `item.url`, then an `active` class gets applied. If not, the `active` class does not get applied.
+
+The `page.url` in Jekyll is a site-wide variable. If you insert {% raw %}`{{page.url}}`{% endraw %} on a page, it will render as follows: {{page.url}}. The `url` attribute in the sidebar item must match the page URL in order to get the `active` class applied.
+
+This is why the `url` value in the sidebar data file looks something like this:
+
+```yaml
+ - title: Understanding how the sidebar works
+ url: /mydoc/mydoc_understand_sidebar.html
+ audience: writers, designers
+ platform: all
+ product: all
+ version: all
+ output: web, pdf
+```
+
+Note that the url includes the project folder where the file is stored.
+
+Now the page.url and the item.url can match and the `active` class can get applied. With the `active` class applied, the sidebar section remains open.
diff --git a/doc_special_layouts.md b/mydoc/mydoc_special_layouts.md
similarity index 54%
rename from doc_special_layouts.md
rename to mydoc/mydoc_special_layouts.md
index 1ff631f..222f9b4 100644
--- a/doc_special_layouts.md
+++ b/mydoc/mydoc_special_layouts.md
@@ -1,8 +1,8 @@
---
title: Special layouts overview
-tags: [special-layouts]
+tags: [special_layouts]
keywords: layouts, information design, presentation
-last_updated: August 12, 2015
+last_updated: November 30, 2015
summary: "This theme has a few special layouts. Special layouts include the JS files they need directly in the page. The JavaScript for each special layout does not load by default for every page in the site."
---
@@ -11,18 +11,18 @@ summary: "This theme has a few special layouts. Special layouts include the JS f
## FAQ layout
-See {{site.data.urls.doc_faq.link}} for an example of the FAQ format, which follows an accordion, collapse/expand format. This code is from Bootstrap.
+See {{site.data.mydoc.mydoc_urls.mydoc_faq.link}} for an example of the FAQ format, which follows an accordion, collapse/expand format. This code is from Bootstrap.
## Knowledgebase layout
-See {{site.data.urls.doc_kb_layout.link}} for a possible layout for knowledge base articles. This layout looks for pages containing specific tags.
+See {{site.data.mydoc.mydoc_urls.mydoc_kb_layout.link}} for a possible layout for knowledge base articles. This layout looks for pages containing specific tags.
## Scroll layout
-If you have a long JSON message you're documenting, see the {{site.data.urls.doc_scroll.link}}. This layout adds a side pane showing links to pointers in the left pane.
+If you have a long JSON message you're documenting, see the {{site.data.mydoc.mydoc_urls.mydoc_scroll.link}}. This layout adds a side pane showing links to pointers in the left pane.
## Shuffle layout
-If you want a dynamic card layout that allows you to filter the cards, see {{site.data.urls.doc_shuffle.link}}. This uses the Shuffle JS library.
+If you want a dynamic card layout that allows you to filter the cards, see {{site.data.mydoc.mydoc_urls.mydoc_shuffle.link}}. This uses the Shuffle JS library.
diff --git a/doc_support.md b/mydoc/mydoc_support.md
similarity index 88%
rename from doc_support.md
rename to mydoc/mydoc_support.md
index 3b8a2f4..ad7d9ff 100644
--- a/doc_support.md
+++ b/mydoc/mydoc_support.md
@@ -1,8 +1,8 @@
---
title: Support
-tags: [getting-started]
+tags: [getting_started]
keywords: questions, troubleshooting, contact, support
-last_updated: August 12, 2015
+last_updated: November 30, 2015
summary: "Contact me for any support issues."
---
diff --git a/doc_supported_features.md b/mydoc/mydoc_supported_features.md
similarity index 99%
rename from doc_supported_features.md
rename to mydoc/mydoc_supported_features.md
index eec03ef..74050aa 100644
--- a/doc_supported_features.md
+++ b/mydoc/mydoc_supported_features.md
@@ -1,9 +1,9 @@
---
title: Supported features
tags:
- - "getting-started"
+ - "getting_started"
keywords: "features, capabilities, scalability, multichannel output, dita, hats, comparison, benefits"
-last_updated: "August 12, 2015"
+last_updated: "November 30, 2015"
summary: "If you're not sure whether Jekyll and this theme will support your requirements, this list provides a semi-comprehensive overview of available features."
published: true
---
diff --git a/doc_syntax_highlighting.md b/mydoc/mydoc_syntax_highlighting.md
similarity index 93%
rename from doc_syntax_highlighting.md
rename to mydoc/mydoc_syntax_highlighting.md
index 0b12f4f..20d6469 100644
--- a/doc_syntax_highlighting.md
+++ b/mydoc/mydoc_syntax_highlighting.md
@@ -2,7 +2,7 @@
title: Syntax highlighting
tags: [formatting]
keywords: rouge, pygments, prettify, color coding,
-last_updated: August 12, 2015
+last_updated: November 30, 2015
summary: "You can apply syntax highlighting to your code. This theme uses pygments and applies color coding based on the lexer you specify."
---
@@ -30,13 +30,15 @@ Fenced code blocks require a blank line before and after.
If you're using an HTML file, you can also use the `highlight` command with Liquid markup:
+{% raw %}
-{% raw %}{% highlight ruby %}
+{% highlight ruby %}
def foo
puts 'foo'
end
-{% endhighlight %}{% endraw %}
+{% endhighlight %}
+{% endraw %}
It renders the same:
diff --git a/doc_tables.md b/mydoc/mydoc_tables.md
similarity index 98%
rename from doc_tables.md
rename to mydoc/mydoc_tables.md
index 756495c..e1be7bd 100644
--- a/doc_tables.md
+++ b/mydoc/mydoc_tables.md
@@ -2,13 +2,13 @@
title: Tables
tags: [formatting]
keywords: datatables, tables, grids, markdown, multimarkdown, jquery plugins
-last_updated: August 12, 2015
+last_updated: November 30, 2015
datatable: true
summary: "You can format tables using either multimarkdown syntax or HTML. You can also use jQuery datatables (a plugin) if you need more robust tables."
---
-{% unless site.print == true %}
+{% unless site.output == "pdf" %}
-
+
+