'
+
+hr_faded: '
'
+hr_shaded: '
'
\ No newline at end of file
diff --git a/docs/_data/definitions.yml b/docs/_data/definitions.yml
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/docs/_data/definitions.yml
@@ -0,0 +1 @@
+
diff --git a/docs/_data/glossary.yml b/docs/_data/glossary.yml
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/docs/_data/glossary.yml
@@ -0,0 +1 @@
+
diff --git a/docs/_data/sidebars/home_sidebar.yml b/docs/_data/sidebars/home_sidebar.yml
new file mode 100644
index 0000000..f433523
--- /dev/null
+++ b/docs/_data/sidebars/home_sidebar.yml
@@ -0,0 +1,18 @@
+
+#################################################
+### THIS FILE WAS AUTOGENERATED! DO NOT EDIT! ###
+#################################################
+# Instead edit ../../sidebar.json
+entries:
+- folders:
+ - folderitems:
+ - output: web,pdf
+ title: Overview
+ url: /
+ - output: web,pdf
+ title: module name here
+ url: core.html
+ output: web
+ title: ThinkPython2
+ output: web
+ title: Sidebar
diff --git a/docs/_data/tags.yml b/docs/_data/tags.yml
new file mode 100644
index 0000000..7853ec7
--- /dev/null
+++ b/docs/_data/tags.yml
@@ -0,0 +1,3 @@
+allowed-tags:
+ - getting_started
+ - navigation
diff --git a/docs/_data/terms.yml b/docs/_data/terms.yml
new file mode 100644
index 0000000..e69de29
diff --git a/docs/_data/topnav.yml b/docs/_data/topnav.yml
new file mode 100644
index 0000000..7285975
--- /dev/null
+++ b/docs/_data/topnav.yml
@@ -0,0 +1,10 @@
+topnav:
+- title: Topnav
+ items:
+ - title: github
+ external_url: https://github.com/hamelsmu/ThinkPython2/tree/master/
+
+#Topnav dropdowns
+topnav_dropdowns:
+- title: Topnav dropdowns
+ folders:
\ No newline at end of file
diff --git a/docs/_includes/archive.html b/docs/_includes/archive.html
new file mode 100644
index 0000000..275850c
--- /dev/null
+++ b/docs/_includes/archive.html
@@ -0,0 +1,15 @@
+---
+layout: default
+type: archive
+---
+
+
+
+
+{{ content }}
+
+
+
+
diff --git a/docs/_includes/callout.html b/docs/_includes/callout.html
new file mode 100644
index 0000000..d492b18
--- /dev/null
+++ b/docs/_includes/callout.html
@@ -0,0 +1 @@
+
{{include.content}}
diff --git a/docs/_includes/footer.html b/docs/_includes/footer.html
new file mode 100755
index 0000000..d2c982e
--- /dev/null
+++ b/docs/_includes/footer.html
@@ -0,0 +1,9 @@
+
diff --git a/docs/_includes/google_analytics.html b/docs/_includes/google_analytics.html
new file mode 100644
index 0000000..56b2ee8
--- /dev/null
+++ b/docs/_includes/google_analytics.html
@@ -0,0 +1,6 @@
+
+
+{% if site.google_analytics %}
+
+
+{% endif %}
\ No newline at end of file
diff --git a/docs/_includes/head.html b/docs/_includes/head.html
new file mode 100644
index 0000000..2fa06eb
--- /dev/null
+++ b/docs/_includes/head.html
@@ -0,0 +1,83 @@
+
+
+
+
+
+
{{ page.title }} | {{ site.site_title }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+{% if site.use_math %}
+
+
+
+
+{% endif %}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+{% if site.twitter_username %}
+
+
+
+{% endif %}
+
+{% if page.summary %}
+
+{% else %}
+
+{% endif %}
+
+{% if page.image %}
+
+
+{% else %}
+
+
+{% endif %}
+
+
+
+
+
diff --git a/docs/_includes/head_print.html b/docs/_includes/head_print.html
new file mode 100644
index 0000000..b3ff9bf
--- /dev/null
+++ b/docs/_includes/head_print.html
@@ -0,0 +1,28 @@
+
+
+
+
+
+
{% if page.homepage == true %} {{site.homepage_title}} {% elsif page.title %}{{ page.title }}{% endif %} | {{ site.site_title }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/_includes/image.html b/docs/_includes/image.html
new file mode 100644
index 0000000..fb5ab05
--- /dev/null
+++ b/docs/_includes/image.html
@@ -0,0 +1 @@
+
{% if {{include.url}} %}{% endif %} {% if {{include.url}} %} {% endif %}{% if {{include.caption}} %}{{include.caption}} {% endif %}
diff --git a/docs/_includes/important.html b/docs/_includes/important.html
new file mode 100644
index 0000000..af8824b
--- /dev/null
+++ b/docs/_includes/important.html
@@ -0,0 +1 @@
+
Important: {{include.content}}
\ No newline at end of file
diff --git a/docs/_includes/initialize_shuffle.html b/docs/_includes/initialize_shuffle.html
new file mode 100644
index 0000000..9a0f048
--- /dev/null
+++ b/docs/_includes/initialize_shuffle.html
@@ -0,0 +1,130 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/_includes/inline_image.html b/docs/_includes/inline_image.html
new file mode 100644
index 0000000..1e7fd18
--- /dev/null
+++ b/docs/_includes/inline_image.html
@@ -0,0 +1 @@
+
diff --git a/docs/_includes/links.html b/docs/_includes/links.html
new file mode 100644
index 0000000..4f99e94
--- /dev/null
+++ b/docs/_includes/links.html
@@ -0,0 +1,44 @@
+{% comment %}Get links from each sidebar, as listed in the _config.yml file under sidebars{% endcomment %}
+
+{% for sidebar in site.sidebars %}
+{% for entry in site.data.sidebars[sidebar].entries %}
+{% for folder in entry.folders %}
+{% for folderitem in folder.folderitems %}
+{% if folderitem.url contains "html#" %}
+[{{folderitem.url | remove: "/" }}]: {{folderitem.url | remove: "/"}}
+{% else %}
+[{{folderitem.url | remove: "/" | remove: ".html"}}]: {{folderitem.url | remove: "/"}}
+{% endif %}
+{% for subfolders in folderitem.subfolders %}
+{% for subfolderitem in subfolders.subfolderitems %}
+[{{subfolderitem.url | remove: "/" | remove: ".html"}}]: {{subfolderitem.url | remove: "/"}}
+{% endfor %}
+{% endfor %}
+{% endfor %}
+{% endfor %}
+{% endfor %}
+{% endfor %}
+
+
+{% comment %} Get links from topnav {% endcomment %}
+
+{% for entry in site.data.topnav.topnav %}
+{% for item in entry.items %}
+{% if item.external_url == null %}
+[{{item.url | remove: "/" | remove: ".html"}}]: {{item.url | remove: "/"}}
+{% endif %}
+{% endfor %}
+{% endfor %}
+
+{% comment %}Get links from topnav dropdowns {% endcomment %}
+
+{% for entry in site.data.topnav.topnav_dropdowns %}
+{% for folder in entry.folders %}
+{% for folderitem in folder.folderitems %}
+{% if folderitem.external_url == null %}
+[{{folderitem.url | remove: "/" | remove: ".html"}}]: {{folderitem.url | remove: "/"}}
+{% endif %}
+{% endfor %}
+{% endfor %}
+{% endfor %}
+
diff --git a/docs/_includes/note.html b/docs/_includes/note.html
new file mode 100644
index 0000000..2c1cfe9
--- /dev/null
+++ b/docs/_includes/note.html
@@ -0,0 +1 @@
+
Note: {{include.content}}
diff --git a/docs/_includes/notebook_colab_link.html b/docs/_includes/notebook_colab_link.html
new file mode 100644
index 0000000..ccc04fa
--- /dev/null
+++ b/docs/_includes/notebook_colab_link.html
@@ -0,0 +1,5 @@
+
diff --git a/docs/_includes/search_google_custom.html b/docs/_includes/search_google_custom.html
new file mode 100644
index 0000000..27ca1c4
--- /dev/null
+++ b/docs/_includes/search_google_custom.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+
diff --git a/docs/_includes/search_simple_jekyll.html b/docs/_includes/search_simple_jekyll.html
new file mode 100644
index 0000000..eee4d3c
--- /dev/null
+++ b/docs/_includes/search_simple_jekyll.html
@@ -0,0 +1,16 @@
+
+
+
diff --git a/docs/_includes/sidebar.html b/docs/_includes/sidebar.html
new file mode 100644
index 0000000..6fb0d0d
--- /dev/null
+++ b/docs/_includes/sidebar.html
@@ -0,0 +1,59 @@
+{% assign sidebar = site.data.sidebars[page.sidebar].entries %}
+{% assign pageurl = page.url | remove: ".html" %}
+
+
+
+
+
diff --git a/docs/_includes/tip.html b/docs/_includes/tip.html
new file mode 100644
index 0000000..faf48af
--- /dev/null
+++ b/docs/_includes/tip.html
@@ -0,0 +1 @@
+
Tip: {{include.content}}
\ No newline at end of file
diff --git a/docs/_includes/toc.html b/docs/_includes/toc.html
new file mode 100644
index 0000000..067141a
--- /dev/null
+++ b/docs/_includes/toc.html
@@ -0,0 +1,21 @@
+
+
+
+
+
diff --git a/docs/_includes/topnav.html b/docs/_includes/topnav.html
new file mode 100644
index 0000000..3a332d3
--- /dev/null
+++ b/docs/_includes/topnav.html
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+ Nav
+
+
+{% assign topnav = site.data[page.topnav] %}
+{% assign topnav_dropdowns = site.data[page.topnav].topnav_dropdowns %}
+
+ {% for entry in topnav.topnav %}
+ {% for item in entry.items %}
+ {% if item.external_url %}
+ {{item.title}}
+ {% elsif page.url contains item.url %}
+ {{item.title}}
+ {% else %}
+ {{item.title}}
+ {% endif %}
+ {% endfor %}
+ {% endfor %}
+
+
+ {% for entry in topnav_dropdowns %}
+ {% for folder in entry.folders %}
+
+ {{ folder.title }}
+
+
+ {% endfor %}
+ {% endfor %}
+ {% if site.google_search %}
+
+ {% include search_google_custom.html %}
+
+ {% endif %}
+
+
+
+
+
diff --git a/docs/_includes/warning.html b/docs/_includes/warning.html
new file mode 100644
index 0000000..e08268c
--- /dev/null
+++ b/docs/_includes/warning.html
@@ -0,0 +1 @@
+
Warning: {{include.content}}
\ No newline at end of file
diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html
new file mode 100644
index 0000000..bb743dd
--- /dev/null
+++ b/docs/_layouts/default.html
@@ -0,0 +1,110 @@
+
+
+
+ {% include head.html %}
+
+
+
+ {% if page.datatable == true %}
+
+
+
+
+
+ {% endif %}
+
+
+
+{% include topnav.html %}
+
+
+
+
+
+ {% assign content_col_size = "col-md-12" %}
+ {% unless page.hide_sidebar %}
+
+
+ {% assign content_col_size = "col-md-9" %}
+ {% endunless %}
+
+
+
+ {{content}}
+
+
+
+
+
+
+
+
+
+{% if site.google_analytics %}
+{% include google_analytics.html %}
+{% endif %}
+
diff --git a/docs/_layouts/default_print.html b/docs/_layouts/default_print.html
new file mode 100644
index 0000000..4bf619b
--- /dev/null
+++ b/docs/_layouts/default_print.html
@@ -0,0 +1,25 @@
+
+
+
+
+ {% include head_print.html %}
+
+
+
+
+
+
+
+
+
+
+
+ {{content}}
+
+
+
+
+
+
+
+
diff --git a/docs/_layouts/none.html b/docs/_layouts/none.html
new file mode 100644
index 0000000..60887a9
--- /dev/null
+++ b/docs/_layouts/none.html
@@ -0,0 +1,3 @@
+---
+---
+{{content}}
\ No newline at end of file
diff --git a/docs/_layouts/page.html b/docs/_layouts/page.html
new file mode 100644
index 0000000..a0f8004
--- /dev/null
+++ b/docs/_layouts/page.html
@@ -0,0 +1,70 @@
+---
+layout: default
+---
+
+
+
+{% if page.simple_map == true %}
+
+
+
+{% include custom/{{page.map_name}}.html %}
+
+{% elsif page.complex_map == true %}
+
+
+
+{% include custom/{{page.map_name}}.html %}
+
+{% endif %}
+
+
+
+ {% if page.summary %}
+
{{page.summary}}
+ {% endif %}
+
+ {% unless page.toc == false %}
+ {% include toc.html %}
+ {% endunless %}
+
+
+ {% if site.github_editme_path %}
+
+
Edit me
+
+ {% endif %}
+
+ {{content}}
+
+
+
+
+
+{{site.data.alerts.hr_shaded}}
+
+{% include footer.html %}
diff --git a/docs/_layouts/page_print.html b/docs/_layouts/page_print.html
new file mode 100644
index 0000000..9e04604
--- /dev/null
+++ b/docs/_layouts/page_print.html
@@ -0,0 +1,15 @@
+---
+layout: default_print
+comments: true
+---
+
+
+
+
+ {% if page.summary %}
+
{{page.summary}}
+ {% endif %}
+ {{ content }}
+
diff --git a/docs/core.html b/docs/core.html
new file mode 100644
index 0000000..0c85af7
--- /dev/null
+++ b/docs/core.html
@@ -0,0 +1,34 @@
+---
+
+title: module name here
+
+
+keywords: fastai
+sidebar: home_sidebar
+
+summary: "API details."
+description: "API details."
+nb_path: "00_core.ipynb"
+---
+
+
+
+
+ {% raw %}
+
+
+
+
+ {% endraw %}
+
+
+
+
diff --git a/docs/css/bootstrap.min.css b/docs/css/bootstrap.min.css
new file mode 100755
index 0000000..783f60d
--- /dev/null
+++ b/docs/css/bootstrap.min.css
@@ -0,0 +1,7535 @@
+/*!
+ * Bootstrap v3.3.2 (http://getbootstrap.com)
+ * Copyright 2011-2016 Twitter, Inc.
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ */
+
+
+/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
+
+html {
+ font-family: sans-serif;
+ -webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%
+}
+
+body {
+ margin: 0
+}
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+main,
+menu,
+nav,
+section,
+summary {
+ display: block
+}
+
+audio,
+canvas,
+progress,
+video {
+ display: inline-block;
+ vertical-align: baseline
+}
+
+audio:not([controls]) {
+ display: none;
+ height: 0
+}
+
+[hidden],
+template {
+ display: none
+}
+
+a {
+ background-color: transparent
+}
+
+a:active,
+a:hover {
+ outline: 0
+}
+
+abbr[title] {
+ border-bottom: 1px dotted
+}
+
+b,
+strong {
+ font-weight: 700
+}
+
+dfn {
+ font-style: italic
+}
+
+h1 {
+ margin: .67em 0;
+ font-size: 2em
+}
+
+mark {
+ color: #000;
+ background: #ff0
+}
+
+small {
+ font-size: 80%
+}
+
+sub,
+sup {
+ position: relative;
+ font-size: 75%;
+ line-height: 0;
+ vertical-align: baseline
+}
+
+sup {
+ top: -.5em
+}
+
+sub {
+ bottom: -.25em
+}
+
+img {
+ border: 0
+}
+
+svg:not(:root) {
+ overflow: hidden
+}
+
+figure {
+ margin: 1em 40px
+}
+
+hr {
+ height: 0;
+ -webkit-box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ box-sizing: content-box
+}
+
+pre {
+ overflow: auto
+}
+
+code,
+kbd,
+pre,
+samp {
+ font-family: monospace, monospace;
+ font-size: 1em
+}
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ margin: 0;
+ font: inherit;
+ color: inherit
+}
+
+button {
+ overflow: visible
+}
+
+button,
+select {
+ text-transform: none
+}
+
+button,
+html input[type=button],
+input[type=reset],
+input[type=submit] {
+ -webkit-appearance: button;
+ cursor: pointer
+}
+
+button[disabled],
+html input[disabled] {
+ cursor: default
+}
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ padding: 0;
+ border: 0
+}
+
+input {
+ line-height: normal
+}
+
+input[type=checkbox],
+input[type=radio] {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ padding: 0
+}
+
+input[type=number]::-webkit-inner-spin-button,
+input[type=number]::-webkit-outer-spin-button {
+ height: auto
+}
+
+input[type=search] {
+ -webkit-box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+ -webkit-appearance: textfield
+}
+
+input[type=search]::-webkit-search-cancel-button,
+input[type=search]::-webkit-search-decoration {
+ -webkit-appearance: none
+}
+
+fieldset {
+ padding: .35em .625em .75em;
+ margin: 0 2px;
+ border: 1px solid silver
+}
+
+legend {
+ padding: 0;
+ border: 0
+}
+
+textarea {
+ overflow: auto
+}
+
+optgroup {
+ font-weight: 700
+}
+
+table {
+ border-spacing: 0;
+ border-collapse: collapse
+}
+
+td,
+th {
+ padding: 0
+}
+
+
+/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
+
+@media print {
+ *,
+ :after,
+ :before {
+ /*color:#000!important;*/
+ /*background:0 0!important*/
+ ;
+ }
+ a,
+ a:visited {
+ text-decoration: underline
+ }
+ a[href]:after {
+ content: " (" attr(href) ")"
+ }
+ abbr[title]:after {
+ content: " (" attr(title) ")"
+ }
+ a[href^="javascript:"]:after,
+ a[href^="#"]:after {
+ content: ""
+ }
+ blockquote,
+ pre {
+ border: 1px solid #999;
+ page-break-inside: avoid
+ }
+ thead {
+ display: table-header-group
+ }
+ img,
+ tr {
+ page-break-inside: avoid
+ }
+ img {
+ max-width: 100%!important
+ }
+ h2,
+ h3,
+ p {
+ orphans: 3;
+ widows: 3
+ }
+ h2,
+ h3 {
+ page-break-after: avoid
+ }
+ select {
+ background: #fff!important
+ }
+ .navbar {
+ display: none
+ }
+ .btn>.caret,
+ .dropup>.btn>.caret {
+ border-top-color: #000!important
+ }
+ .label {
+ border: 1px solid #000
+ }
+ .table {
+ border-collapse: collapse!important
+ }
+ .table td,
+ .table th {
+ background-color: #fff!important
+ }
+ .table-bordered td,
+ .table-bordered th {
+ border: 1px solid #ddd!important
+ }
+}
+
+@font-face {
+ font-family: 'Glyphicons Halflings';
+ src: url(../fonts/glyphicons-halflings-regular.eot);
+ src: url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'), url(../fonts/glyphicons-halflings-regular.woff2) format('woff2'), url(../fonts/glyphicons-halflings-regular.woff) format('woff'), url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'), url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')
+}
+
+.glyphicon {
+ position: relative;
+ top: 1px;
+ display: inline-block;
+ font-family: 'Glyphicons Halflings';
+ font-style: normal;
+ font-weight: 400;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale
+}
+
+.glyphicon-asterisk:before {
+ content: "\2a"
+}
+
+.glyphicon-plus:before {
+ content: "\2b"
+}
+
+.glyphicon-eur:before,
+.glyphicon-euro:before {
+ content: "\20ac"
+}
+
+.glyphicon-minus:before {
+ content: "\2212"
+}
+
+.glyphicon-cloud:before {
+ content: "\2601"
+}
+
+.glyphicon-envelope:before {
+ content: "\2709"
+}
+
+.glyphicon-pencil:before {
+ content: "\270f"
+}
+
+.glyphicon-glass:before {
+ content: "\e001"
+}
+
+.glyphicon-music:before {
+ content: "\e002"
+}
+
+.glyphicon-search:before {
+ content: "\e003"
+}
+
+.glyphicon-heart:before {
+ content: "\e005"
+}
+
+.glyphicon-star:before {
+ content: "\e006"
+}
+
+.glyphicon-star-empty:before {
+ content: "\e007"
+}
+
+.glyphicon-user:before {
+ content: "\e008"
+}
+
+.glyphicon-film:before {
+ content: "\e009"
+}
+
+.glyphicon-th-large:before {
+ content: "\e010"
+}
+
+.glyphicon-th:before {
+ content: "\e011"
+}
+
+.glyphicon-th-list:before {
+ content: "\e012"
+}
+
+.glyphicon-ok:before {
+ content: "\e013"
+}
+
+.glyphicon-remove:before {
+ content: "\e014"
+}
+
+.glyphicon-zoom-in:before {
+ content: "\e015"
+}
+
+.glyphicon-zoom-out:before {
+ content: "\e016"
+}
+
+.glyphicon-off:before {
+ content: "\e017"
+}
+
+.glyphicon-signal:before {
+ content: "\e018"
+}
+
+.glyphicon-cog:before {
+ content: "\e019"
+}
+
+.glyphicon-trash:before {
+ content: "\e020"
+}
+
+.glyphicon-home:before {
+ content: "\e021"
+}
+
+.glyphicon-file:before {
+ content: "\e022"
+}
+
+.glyphicon-time:before {
+ content: "\e023"
+}
+
+.glyphicon-road:before {
+ content: "\e024"
+}
+
+.glyphicon-download-alt:before {
+ content: "\e025"
+}
+
+.glyphicon-download:before {
+ content: "\e026"
+}
+
+.glyphicon-upload:before {
+ content: "\e027"
+}
+
+.glyphicon-inbox:before {
+ content: "\e028"
+}
+
+.glyphicon-play-circle:before {
+ content: "\e029"
+}
+
+.glyphicon-repeat:before {
+ content: "\e030"
+}
+
+.glyphicon-refresh:before {
+ content: "\e031"
+}
+
+.glyphicon-list-alt:before {
+ content: "\e032"
+}
+
+.glyphicon-lock:before {
+ content: "\e033"
+}
+
+.glyphicon-flag:before {
+ content: "\e034"
+}
+
+.glyphicon-headphones:before {
+ content: "\e035"
+}
+
+.glyphicon-volume-off:before {
+ content: "\e036"
+}
+
+.glyphicon-volume-down:before {
+ content: "\e037"
+}
+
+.glyphicon-volume-up:before {
+ content: "\e038"
+}
+
+.glyphicon-qrcode:before {
+ content: "\e039"
+}
+
+.glyphicon-barcode:before {
+ content: "\e040"
+}
+
+.glyphicon-tag:before {
+ content: "\e041"
+}
+
+.glyphicon-tags:before {
+ content: "\e042"
+}
+
+.glyphicon-book:before {
+ content: "\e043"
+}
+
+.glyphicon-bookmark:before {
+ content: "\e044"
+}
+
+.glyphicon-print:before {
+ content: "\e045"
+}
+
+.glyphicon-camera:before {
+ content: "\e046"
+}
+
+.glyphicon-font:before {
+ content: "\e047"
+}
+
+.glyphicon-bold:before {
+ content: "\e048"
+}
+
+.glyphicon-italic:before {
+ content: "\e049"
+}
+
+.glyphicon-text-height:before {
+ content: "\e050"
+}
+
+.glyphicon-text-width:before {
+ content: "\e051"
+}
+
+.glyphicon-align-left:before {
+ content: "\e052"
+}
+
+.glyphicon-align-center:before {
+ content: "\e053"
+}
+
+.glyphicon-align-right:before {
+ content: "\e054"
+}
+
+.glyphicon-align-justify:before {
+ content: "\e055"
+}
+
+.glyphicon-list:before {
+ content: "\e056"
+}
+
+.glyphicon-indent-left:before {
+ content: "\e057"
+}
+
+.glyphicon-indent-right:before {
+ content: "\e058"
+}
+
+.glyphicon-facetime-video:before {
+ content: "\e059"
+}
+
+.glyphicon-picture:before {
+ content: "\e060"
+}
+
+.glyphicon-map-marker:before {
+ content: "\e062"
+}
+
+.glyphicon-adjust:before {
+ content: "\e063"
+}
+
+.glyphicon-tint:before {
+ content: "\e064"
+}
+
+.glyphicon-edit:before {
+ content: "\e065"
+}
+
+.glyphicon-share:before {
+ content: "\e066"
+}
+
+.glyphicon-check:before {
+ content: "\e067"
+}
+
+.glyphicon-move:before {
+ content: "\e068"
+}
+
+.glyphicon-step-backward:before {
+ content: "\e069"
+}
+
+.glyphicon-fast-backward:before {
+ content: "\e070"
+}
+
+.glyphicon-backward:before {
+ content: "\e071"
+}
+
+.glyphicon-play:before {
+ content: "\e072"
+}
+
+.glyphicon-pause:before {
+ content: "\e073"
+}
+
+.glyphicon-stop:before {
+ content: "\e074"
+}
+
+.glyphicon-forward:before {
+ content: "\e075"
+}
+
+.glyphicon-fast-forward:before {
+ content: "\e076"
+}
+
+.glyphicon-step-forward:before {
+ content: "\e077"
+}
+
+.glyphicon-eject:before {
+ content: "\e078"
+}
+
+.glyphicon-chevron-left:before {
+ content: "\e079"
+}
+
+.glyphicon-chevron-right:before {
+ content: "\e080"
+}
+
+.glyphicon-plus-sign:before {
+ content: "\e081"
+}
+
+.glyphicon-minus-sign:before {
+ content: "\e082"
+}
+
+.glyphicon-remove-sign:before {
+ content: "\e083"
+}
+
+.glyphicon-ok-sign:before {
+ content: "\e084"
+}
+
+.glyphicon-question-sign:before {
+ content: "\e085"
+}
+
+.glyphicon-info-sign:before {
+ content: "\e086"
+}
+
+.glyphicon-screenshot:before {
+ content: "\e087"
+}
+
+.glyphicon-remove-circle:before {
+ content: "\e088"
+}
+
+.glyphicon-ok-circle:before {
+ content: "\e089"
+}
+
+.glyphicon-ban-circle:before {
+ content: "\e090"
+}
+
+.glyphicon-arrow-left:before {
+ content: "\e091"
+}
+
+.glyphicon-arrow-right:before {
+ content: "\e092"
+}
+
+.glyphicon-arrow-up:before {
+ content: "\e093"
+}
+
+.glyphicon-arrow-down:before {
+ content: "\e094"
+}
+
+.glyphicon-share-alt:before {
+ content: "\e095"
+}
+
+.glyphicon-resize-full:before {
+ content: "\e096"
+}
+
+.glyphicon-resize-small:before {
+ content: "\e097"
+}
+
+.glyphicon-exclamation-sign:before {
+ content: "\e101"
+}
+
+.glyphicon-gift:before {
+ content: "\e102"
+}
+
+.glyphicon-leaf:before {
+ content: "\e103"
+}
+
+.glyphicon-fire:before {
+ content: "\e104"
+}
+
+.glyphicon-eye-open:before {
+ content: "\e105"
+}
+
+.glyphicon-eye-close:before {
+ content: "\e106"
+}
+
+.glyphicon-warning-sign:before {
+ content: "\e107"
+}
+
+.glyphicon-plane:before {
+ content: "\e108"
+}
+
+.glyphicon-calendar:before {
+ content: "\e109"
+}
+
+.glyphicon-random:before {
+ content: "\e110"
+}
+
+.glyphicon-comment:before {
+ content: "\e111"
+}
+
+.glyphicon-magnet:before {
+ content: "\e112"
+}
+
+.glyphicon-chevron-up:before {
+ content: "\e113"
+}
+
+.glyphicon-chevron-down:before {
+ content: "\e114"
+}
+
+.glyphicon-retweet:before {
+ content: "\e115"
+}
+
+.glyphicon-shopping-cart:before {
+ content: "\e116"
+}
+
+.glyphicon-folder-close:before {
+ content: "\e117"
+}
+
+.glyphicon-folder-open:before {
+ content: "\e118"
+}
+
+.glyphicon-resize-vertical:before {
+ content: "\e119"
+}
+
+.glyphicon-resize-horizontal:before {
+ content: "\e120"
+}
+
+.glyphicon-hdd:before {
+ content: "\e121"
+}
+
+.glyphicon-bullhorn:before {
+ content: "\e122"
+}
+
+.glyphicon-bell:before {
+ content: "\e123"
+}
+
+.glyphicon-certificate:before {
+ content: "\e124"
+}
+
+.glyphicon-thumbs-up:before {
+ content: "\e125"
+}
+
+.glyphicon-thumbs-down:before {
+ content: "\e126"
+}
+
+.glyphicon-hand-right:before {
+ content: "\e127"
+}
+
+.glyphicon-hand-left:before {
+ content: "\e128"
+}
+
+.glyphicon-hand-up:before {
+ content: "\e129"
+}
+
+.glyphicon-hand-down:before {
+ content: "\e130"
+}
+
+.glyphicon-circle-arrow-right:before {
+ content: "\e131"
+}
+
+.glyphicon-circle-arrow-left:before {
+ content: "\e132"
+}
+
+.glyphicon-circle-arrow-up:before {
+ content: "\e133"
+}
+
+.glyphicon-circle-arrow-down:before {
+ content: "\e134"
+}
+
+.glyphicon-globe:before {
+ content: "\e135"
+}
+
+.glyphicon-wrench:before {
+ content: "\e136"
+}
+
+.glyphicon-tasks:before {
+ content: "\e137"
+}
+
+.glyphicon-filter:before {
+ content: "\e138"
+}
+
+.glyphicon-briefcase:before {
+ content: "\e139"
+}
+
+.glyphicon-fullscreen:before {
+ content: "\e140"
+}
+
+.glyphicon-dashboard:before {
+ content: "\e141"
+}
+
+.glyphicon-paperclip:before {
+ content: "\e142"
+}
+
+.glyphicon-heart-empty:before {
+ content: "\e143"
+}
+
+.glyphicon-link:before {
+ content: "\e144"
+}
+
+.glyphicon-phone:before {
+ content: "\e145"
+}
+
+.glyphicon-pushpin:before {
+ content: "\e146"
+}
+
+.glyphicon-usd:before {
+ content: "\e148"
+}
+
+.glyphicon-gbp:before {
+ content: "\e149"
+}
+
+.glyphicon-sort:before {
+ content: "\e150"
+}
+
+.glyphicon-sort-by-alphabet:before {
+ content: "\e151"
+}
+
+.glyphicon-sort-by-alphabet-alt:before {
+ content: "\e152"
+}
+
+.glyphicon-sort-by-order:before {
+ content: "\e153"
+}
+
+.glyphicon-sort-by-order-alt:before {
+ content: "\e154"
+}
+
+.glyphicon-sort-by-attributes:before {
+ content: "\e155"
+}
+
+.glyphicon-sort-by-attributes-alt:before {
+ content: "\e156"
+}
+
+.glyphicon-unchecked:before {
+ content: "\e157"
+}
+
+.glyphicon-expand:before {
+ content: "\e158"
+}
+
+.glyphicon-collapse-down:before {
+ content: "\e159"
+}
+
+.glyphicon-collapse-up:before {
+ content: "\e160"
+}
+
+.glyphicon-log-in:before {
+ content: "\e161"
+}
+
+.glyphicon-flash:before {
+ content: "\e162"
+}
+
+.glyphicon-log-out:before {
+ content: "\e163"
+}
+
+.glyphicon-new-window:before {
+ content: "\e164"
+}
+
+.glyphicon-record:before {
+ content: "\e165"
+}
+
+.glyphicon-save:before {
+ content: "\e166"
+}
+
+.glyphicon-open:before {
+ content: "\e167"
+}
+
+.glyphicon-saved:before {
+ content: "\e168"
+}
+
+.glyphicon-import:before {
+ content: "\e169"
+}
+
+.glyphicon-export:before {
+ content: "\e170"
+}
+
+.glyphicon-send:before {
+ content: "\e171"
+}
+
+.glyphicon-floppy-disk:before {
+ content: "\e172"
+}
+
+.glyphicon-floppy-saved:before {
+ content: "\e173"
+}
+
+.glyphicon-floppy-remove:before {
+ content: "\e174"
+}
+
+.glyphicon-floppy-save:before {
+ content: "\e175"
+}
+
+.glyphicon-floppy-open:before {
+ content: "\e176"
+}
+
+.glyphicon-credit-card:before {
+ content: "\e177"
+}
+
+.glyphicon-transfer:before {
+ content: "\e178"
+}
+
+.glyphicon-cutlery:before {
+ content: "\e179"
+}
+
+.glyphicon-header:before {
+ content: "\e180"
+}
+
+.glyphicon-compressed:before {
+ content: "\e181"
+}
+
+.glyphicon-earphone:before {
+ content: "\e182"
+}
+
+.glyphicon-phone-alt:before {
+ content: "\e183"
+}
+
+.glyphicon-tower:before {
+ content: "\e184"
+}
+
+.glyphicon-stats:before {
+ content: "\e185"
+}
+
+.glyphicon-sd-video:before {
+ content: "\e186"
+}
+
+.glyphicon-hd-video:before {
+ content: "\e187"
+}
+
+.glyphicon-subtitles:before {
+ content: "\e188"
+}
+
+.glyphicon-sound-stereo:before {
+ content: "\e189"
+}
+
+.glyphicon-sound-dolby:before {
+ content: "\e190"
+}
+
+.glyphicon-sound-5-1:before {
+ content: "\e191"
+}
+
+.glyphicon-sound-6-1:before {
+ content: "\e192"
+}
+
+.glyphicon-sound-7-1:before {
+ content: "\e193"
+}
+
+.glyphicon-copyright-mark:before {
+ content: "\e194"
+}
+
+.glyphicon-registration-mark:before {
+ content: "\e195"
+}
+
+.glyphicon-cloud-download:before {
+ content: "\e197"
+}
+
+.glyphicon-cloud-upload:before {
+ content: "\e198"
+}
+
+.glyphicon-tree-conifer:before {
+ content: "\e199"
+}
+
+.glyphicon-tree-deciduous:before {
+ content: "\e200"
+}
+
+.glyphicon-cd:before {
+ content: "\e201"
+}
+
+.glyphicon-save-file:before {
+ content: "\e202"
+}
+
+.glyphicon-open-file:before {
+ content: "\e203"
+}
+
+.glyphicon-level-up:before {
+ content: "\e204"
+}
+
+.glyphicon-copy:before {
+ content: "\e205"
+}
+
+.glyphicon-paste:before {
+ content: "\e206"
+}
+
+.glyphicon-alert:before {
+ content: "\e209"
+}
+
+.glyphicon-equalizer:before {
+ content: "\e210"
+}
+
+.glyphicon-king:before {
+ content: "\e211"
+}
+
+.glyphicon-queen:before {
+ content: "\e212"
+}
+
+.glyphicon-pawn:before {
+ content: "\e213"
+}
+
+.glyphicon-bishop:before {
+ content: "\e214"
+}
+
+.glyphicon-knight:before {
+ content: "\e215"
+}
+
+.glyphicon-baby-formula:before {
+ content: "\e216"
+}
+
+.glyphicon-tent:before {
+ content: "\26fa"
+}
+
+.glyphicon-blackboard:before {
+ content: "\e218"
+}
+
+.glyphicon-bed:before {
+ content: "\e219"
+}
+
+.glyphicon-apple:before {
+ content: "\f8ff"
+}
+
+.glyphicon-erase:before {
+ content: "\e221"
+}
+
+.glyphicon-hourglass:before {
+ content: "\231b"
+}
+
+.glyphicon-lamp:before {
+ content: "\e223"
+}
+
+.glyphicon-duplicate:before {
+ content: "\e224"
+}
+
+.glyphicon-piggy-bank:before {
+ content: "\e225"
+}
+
+.glyphicon-scissors:before {
+ content: "\e226"
+}
+
+.glyphicon-bitcoin:before {
+ content: "\e227"
+}
+
+.glyphicon-yen:before {
+ content: "\00a5"
+}
+
+.glyphicon-ruble:before {
+ content: "\20bd"
+}
+
+.glyphicon-scale:before {
+ content: "\e230"
+}
+
+.glyphicon-ice-lolly:before {
+ content: "\e231"
+}
+
+.glyphicon-ice-lolly-tasted:before {
+ content: "\e232"
+}
+
+.glyphicon-education:before {
+ content: "\e233"
+}
+
+.glyphicon-option-horizontal:before {
+ content: "\e234"
+}
+
+.glyphicon-option-vertical:before {
+ content: "\e235"
+}
+
+.glyphicon-menu-hamburger:before {
+ content: "\e236"
+}
+
+.glyphicon-modal-window:before {
+ content: "\e237"
+}
+
+.glyphicon-oil:before {
+ content: "\e238"
+}
+
+.glyphicon-grain:before {
+ content: "\e239"
+}
+
+.glyphicon-sunglasses:before {
+ content: "\e240"
+}
+
+.glyphicon-text-size:before {
+ content: "\e241"
+}
+
+.glyphicon-text-color:before {
+ content: "\e242"
+}
+
+.glyphicon-text-background:before {
+ content: "\e243"
+}
+
+.glyphicon-object-align-top:before {
+ content: "\e244"
+}
+
+.glyphicon-object-align-bottom:before {
+ content: "\e245"
+}
+
+.glyphicon-object-align-horizontal:before {
+ content: "\e246"
+}
+
+.glyphicon-object-align-left:before {
+ content: "\e247"
+}
+
+.glyphicon-object-align-vertical:before {
+ content: "\e248"
+}
+
+.glyphicon-object-align-right:before {
+ content: "\e249"
+}
+
+.glyphicon-triangle-right:before {
+ content: "\e250"
+}
+
+.glyphicon-triangle-left:before {
+ content: "\e251"
+}
+
+.glyphicon-triangle-bottom:before {
+ content: "\e252"
+}
+
+.glyphicon-triangle-top:before {
+ content: "\e253"
+}
+
+.glyphicon-console:before {
+ content: "\e254"
+}
+
+.glyphicon-superscript:before {
+ content: "\e255"
+}
+
+.glyphicon-subscript:before {
+ content: "\e256"
+}
+
+.glyphicon-menu-left:before {
+ content: "\e257"
+}
+
+.glyphicon-menu-right:before {
+ content: "\e258"
+}
+
+.glyphicon-menu-down:before {
+ content: "\e259"
+}
+
+.glyphicon-menu-up:before {
+ content: "\e260"
+}
+
+* {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box
+}
+
+:after,
+:before {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box
+}
+
+html {
+ font-size: 10px;
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
+}
+
+body {
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size: 14px;
+ line-height: 1.42857143;
+ color: #333;
+ background-color: #fff
+}
+
+button,
+input,
+select,
+textarea {
+ font-family: inherit;
+ font-size: inherit;
+ line-height: inherit
+}
+
+a {
+ color: #337ab7;
+ text-decoration: none
+}
+
+a:focus,
+a:hover {
+ color: #23527c;
+ text-decoration: underline
+}
+
+a:focus {
+ outline: thin dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px
+}
+
+figure {
+ margin: 0
+}
+
+img {
+ vertical-align: middle
+}
+
+.carousel-inner>.item>a>img,
+.carousel-inner>.item>img,
+.img-responsive,
+.thumbnail a>img,
+.thumbnail>img {
+ display: block;
+ max-width: 100%;
+ height: auto
+}
+
+.img-rounded {
+ border-radius: 6px
+}
+
+.img-thumbnail {
+ display: inline-block;
+ max-width: 100%;
+ height: auto;
+ padding: 4px;
+ line-height: 1.42857143;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-radius: 4px;
+ -webkit-transition: all .2s ease-in-out;
+ -o-transition: all .2s ease-in-out;
+ transition: all .2s ease-in-out
+}
+
+.img-circle {
+ border-radius: 50%
+}
+
+hr {
+ margin-top: 20px;
+ margin-bottom: 20px;
+ border: 0;
+ border-top: 1px solid #eee
+}
+
+.sr-only {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ padding: 0;
+ margin: -1px;
+ overflow: hidden;
+ clip: rect(0, 0, 0, 0);
+ border: 0
+}
+
+.sr-only-focusable:active,
+.sr-only-focusable:focus {
+ position: static;
+ width: auto;
+ height: auto;
+ margin: 0;
+ overflow: visible;
+ clip: auto
+}
+
+.h1,
+.h2,
+.h3,
+.h4,
+.h5,
+.h6,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ font-family: inherit;
+ font-weight: 500;
+ line-height: 1.1;
+ color: inherit
+}
+
+.h1 .small,
+.h1 small,
+.h2 .small,
+.h2 small,
+.h3 .small,
+.h3 small,
+.h4 .small,
+.h4 small,
+.h5 .small,
+.h5 small,
+.h6 .small,
+.h6 small,
+h1 .small,
+h1 small,
+h2 .small,
+h2 small,
+h3 .small,
+h3 small,
+h4 .small,
+h4 small,
+h5 .small,
+h5 small,
+h6 .small,
+h6 small {
+ font-weight: 400;
+ line-height: 1;
+ color: #777
+}
+
+.h1,
+.h2,
+.h3,
+h1,
+h2,
+h3 {
+ margin-top: 20px;
+ margin-bottom: 10px
+}
+
+.h1 .small,
+.h1 small,
+.h2 .small,
+.h2 small,
+.h3 .small,
+.h3 small,
+h1 .small,
+h1 small,
+h2 .small,
+h2 small,
+h3 .small,
+h3 small {
+ font-size: 65%
+}
+
+.h4,
+.h5,
+.h6,
+h4,
+h5,
+h6 {
+ margin-top: 10px;
+ margin-bottom: 10px
+}
+
+.h4 .small,
+.h4 small,
+.h5 .small,
+.h5 small,
+.h6 .small,
+.h6 small,
+h4 .small,
+h4 small,
+h5 .small,
+h5 small,
+h6 .small,
+h6 small {
+ font-size: 75%
+}
+
+.h1,
+h1 {
+ font-size: 36px
+}
+
+.h2,
+h2 {
+ font-size: 30px
+}
+
+.h3,
+h3 {
+ font-size: 24px
+}
+
+.h4,
+h4 {
+ font-size: 18px
+}
+
+.h5,
+h5 {
+ font-size: 14px
+}
+
+.h6,
+h6 {
+ font-size: 12px
+}
+
+p {
+ margin: 0 0 10px
+}
+
+.lead {
+ margin-bottom: 20px;
+ font-size: 16px;
+ font-weight: 300;
+ line-height: 1.4
+}
+
+@media (min-width:768px) {
+ .lead {
+ font-size: 21px
+ }
+}
+
+.small,
+small {
+ font-size: 85%
+}
+
+.mark,
+mark {
+ padding: .2em;
+ background-color: #fcf8e3
+}
+
+.text-left {
+ text-align: left
+}
+
+.text-right {
+ text-align: right
+}
+
+.text-center {
+ text-align: center
+}
+
+.text-justify {
+ text-align: justify
+}
+
+.text-nowrap {
+ white-space: nowrap
+}
+
+.text-lowercase {
+ text-transform: lowercase
+}
+
+.text-uppercase {
+ text-transform: uppercase
+}
+
+.text-capitalize {
+ text-transform: capitalize
+}
+
+.text-muted {
+ color: #777
+}
+
+.text-primary {
+ color: #337ab7
+}
+
+a.text-primary:hover {
+ color: #286090
+}
+
+.text-success {
+ color: #3c763d
+}
+
+a.text-success:hover {
+ color: #2b542c
+}
+
+.text-info {
+ color: #31708f
+}
+
+a.text-info:hover {
+ color: #245269
+}
+
+.text-warning {
+ color: #8a6d3b
+}
+
+a.text-warning:hover {
+ color: #66512c
+}
+
+.text-danger {
+ color: #a94442
+}
+
+a.text-danger:hover {
+ color: #843534
+}
+
+.bg-primary {
+ color: #fff;
+ background-color: #337ab7
+}
+
+a.bg-primary:hover {
+ background-color: #286090
+}
+
+.bg-success {
+ background-color: #dff0d8
+}
+
+a.bg-success:hover {
+ background-color: #c1e2b3
+}
+
+.bg-info {
+ background-color: #d9edf7
+}
+
+a.bg-info:hover {
+ background-color: #afd9ee
+}
+
+.bg-warning {
+ background-color: #fcf8e3
+}
+
+a.bg-warning:hover {
+ background-color: #f7ecb5
+}
+
+.bg-danger {
+ background-color: #f2dede
+}
+
+a.bg-danger:hover {
+ background-color: #e4b9b9
+}
+
+.page-header {
+ padding-bottom: 9px;
+ margin: 40px 0 20px;
+ border-bottom: 1px solid #eee
+}
+
+ol,
+ul {
+ margin-top: 0;
+ margin-bottom: 10px
+}
+
+ol ol,
+ol ul,
+ul ol,
+ul ul {
+ margin-bottom: 0
+}
+
+.list-unstyled {
+ padding-left: 0;
+ list-style: none
+}
+
+.list-inline {
+ padding-left: 0;
+ margin-left: -5px;
+ list-style: none
+}
+
+.list-inline>li {
+ display: inline-block;
+ padding-right: 5px;
+ padding-left: 5px
+}
+
+dl {
+ margin-top: 0;
+ margin-bottom: 20px
+}
+
+dd,
+dt {
+ line-height: 1.42857143
+}
+
+dt {
+ font-weight: 700
+}
+
+dd {
+ margin-left: 0
+}
+
+@media (min-width:768px) {
+ .dl-horizontal dt {
+ float: left;
+ width: 160px;
+ overflow: hidden;
+ clear: left;
+ text-align: right;
+ text-overflow: ellipsis;
+ white-space: nowrap
+ }
+ .dl-horizontal dd {
+ margin-left: 180px
+ }
+}
+
+abbr[data-original-title],
+abbr[title] {
+ cursor: help;
+ border-bottom: 1px dotted #777
+}
+
+.initialism {
+ font-size: 90%;
+ text-transform: uppercase
+}
+
+blockquote {
+ padding: 10px 20px;
+ margin: 0 0 20px;
+ font-size: 17.5px;
+ border-left: 5px solid #eee
+}
+
+blockquote ol:last-child,
+blockquote p:last-child,
+blockquote ul:last-child {
+ margin-bottom: 0
+}
+
+blockquote .small,
+blockquote footer,
+blockquote small {
+ display: block;
+ font-size: 80%;
+ line-height: 1.42857143;
+ color: #777
+}
+
+blockquote .small:before,
+blockquote footer:before,
+blockquote small:before {
+ content: '\2014 \00A0'
+}
+
+.blockquote-reverse,
+blockquote.pull-right {
+ padding-right: 15px;
+ padding-left: 0;
+ text-align: right;
+ border-right: 5px solid #eee;
+ border-left: 0
+}
+
+.blockquote-reverse .small:before,
+.blockquote-reverse footer:before,
+.blockquote-reverse small:before,
+blockquote.pull-right .small:before,
+blockquote.pull-right footer:before,
+blockquote.pull-right small:before {
+ content: ''
+}
+
+.blockquote-reverse .small:after,
+.blockquote-reverse footer:after,
+.blockquote-reverse small:after,
+blockquote.pull-right .small:after,
+blockquote.pull-right footer:after,
+blockquote.pull-right small:after {
+ content: '\00A0 \2014'
+}
+
+address {
+ margin-bottom: 20px;
+ font-style: normal;
+ line-height: 1.42857143
+}
+
+code,
+kbd,
+pre,
+samp,
+ouput_html{
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace
+}
+
+code,
+ouput_html{
+ padding: 2px 4px;
+ font-size: 90%;
+ color: #c7254e;
+ background-color: #f9f2f4;
+ border-radius: 4px
+}
+
+kbd {
+ padding: 2px 4px;
+ font-size: 90%;
+ color: #fff;
+ background-color: #333;
+ border-radius: 3px;
+}
+
+kbd kbd {
+ padding: 0;
+ font-size: 100%;
+ font-weight: 700;
+}
+
+pre,
+output_html{
+ display: block;
+ padding: 9.5px;
+ margin: 0 0 10px;
+ font-size: 13px;
+ line-height: 1.42857143;
+ color: #333;
+ word-break: break-all;
+ word-wrap: break-word;
+ background-color: #f5f5f5;
+ border: 1px solid #ccc;
+ border-radius: 4px
+}
+
+
+pre,
+code,
+output_html{
+ padding: 0;
+ font-size: inherit;
+ color: inherit;
+ white-space: pre-wrap;
+ background-color: transparent;
+ border-radius: 0
+}
+
+.pre-scrollable {
+ max-height: 340px;
+ overflow-y: scroll
+}
+
+.container {
+ padding-right: 15px;
+ padding-left: 15px;
+ margin-right: auto;
+ margin-left: auto
+}
+
+@media (min-width:768px) {
+ .container {
+ width: 750px
+ }
+}
+
+@media (min-width:992px) {
+ .container {
+ width: 970px
+ }
+}
+
+@media (min-width:1200px) {
+ .container {
+ width: 1170px
+ }
+}
+
+.container-fluid {
+ padding-right: 15px;
+ padding-left: 15px;
+ margin-right: auto;
+ margin-left: auto
+}
+
+.row {
+ margin-right: -15px;
+ margin-left: -15px
+}
+
+.col-lg-1,
+.col-lg-10,
+.col-lg-11,
+.col-lg-12,
+.col-lg-2,
+.col-lg-3,
+.col-lg-4,
+.col-lg-5,
+.col-lg-6,
+.col-lg-7,
+.col-lg-8,
+.col-lg-9,
+.col-md-1,
+.col-md-10,
+.col-md-11,
+.col-md-12,
+.col-md-2,
+.col-md-3,
+.col-md-4,
+.col-md-5,
+.col-md-6,
+.col-md-7,
+.col-md-8,
+.col-md-9,
+.col-sm-1,
+.col-sm-10,
+.col-sm-11,
+.col-sm-12,
+.col-sm-2,
+.col-sm-3,
+.col-sm-4,
+.col-sm-5,
+.col-sm-6,
+.col-sm-7,
+.col-sm-8,
+.col-sm-9,
+.col-xs-1,
+.col-xs-10,
+.col-xs-11,
+.col-xs-12,
+.col-xs-2,
+.col-xs-3,
+.col-xs-4,
+.col-xs-5,
+.col-xs-6,
+.col-xs-7,
+.col-xs-8,
+.col-xs-9 {
+ position: relative;
+ min-height: 1px;
+ padding-right: 15px;
+ padding-left: 15px
+}
+
+.col-xs-1,
+.col-xs-10,
+.col-xs-11,
+.col-xs-12,
+.col-xs-2,
+.col-xs-3,
+.col-xs-4,
+.col-xs-5,
+.col-xs-6,
+.col-xs-7,
+.col-xs-8,
+.col-xs-9 {
+ float: left
+}
+
+.col-xs-12 {
+ width: 100%
+}
+
+.col-xs-11 {
+ width: 91.66666667%
+}
+
+.col-xs-10 {
+ width: 83.33333333%
+}
+
+.col-xs-9 {
+ width: 75%
+}
+
+.col-xs-8 {
+ width: 66.66666667%
+}
+
+.col-xs-7 {
+ width: 58.33333333%
+}
+
+.col-xs-6 {
+ width: 50%
+}
+
+.col-xs-5 {
+ width: 41.66666667%
+}
+
+.col-xs-4 {
+ width: 33.33333333%
+}
+
+.col-xs-3 {
+ width: 25%
+}
+
+.col-xs-2 {
+ width: 16.66666667%
+}
+
+.col-xs-1 {
+ width: 8.33333333%
+}
+
+.col-xs-pull-12 {
+ right: 100%
+}
+
+.col-xs-pull-11 {
+ right: 91.66666667%
+}
+
+.col-xs-pull-10 {
+ right: 83.33333333%
+}
+
+.col-xs-pull-9 {
+ right: 75%
+}
+
+.col-xs-pull-8 {
+ right: 66.66666667%
+}
+
+.col-xs-pull-7 {
+ right: 58.33333333%
+}
+
+.col-xs-pull-6 {
+ right: 50%
+}
+
+.col-xs-pull-5 {
+ right: 41.66666667%
+}
+
+.col-xs-pull-4 {
+ right: 33.33333333%
+}
+
+.col-xs-pull-3 {
+ right: 25%
+}
+
+.col-xs-pull-2 {
+ right: 16.66666667%
+}
+
+.col-xs-pull-1 {
+ right: 8.33333333%
+}
+
+.col-xs-pull-0 {
+ right: auto
+}
+
+.col-xs-push-12 {
+ left: 100%
+}
+
+.col-xs-push-11 {
+ left: 91.66666667%
+}
+
+.col-xs-push-10 {
+ left: 83.33333333%
+}
+
+.col-xs-push-9 {
+ left: 75%
+}
+
+.col-xs-push-8 {
+ left: 66.66666667%
+}
+
+.col-xs-push-7 {
+ left: 58.33333333%
+}
+
+.col-xs-push-6 {
+ left: 50%
+}
+
+.col-xs-push-5 {
+ left: 41.66666667%
+}
+
+.col-xs-push-4 {
+ left: 33.33333333%
+}
+
+.col-xs-push-3 {
+ left: 25%
+}
+
+.col-xs-push-2 {
+ left: 16.66666667%
+}
+
+.col-xs-push-1 {
+ left: 8.33333333%
+}
+
+.col-xs-push-0 {
+ left: auto
+}
+
+.col-xs-offset-12 {
+ margin-left: 100%
+}
+
+.col-xs-offset-11 {
+ margin-left: 91.66666667%
+}
+
+.col-xs-offset-10 {
+ margin-left: 83.33333333%
+}
+
+.col-xs-offset-9 {
+ margin-left: 75%
+}
+
+.col-xs-offset-8 {
+ margin-left: 66.66666667%
+}
+
+.col-xs-offset-7 {
+ margin-left: 58.33333333%
+}
+
+.col-xs-offset-6 {
+ margin-left: 50%
+}
+
+.col-xs-offset-5 {
+ margin-left: 41.66666667%
+}
+
+.col-xs-offset-4 {
+ margin-left: 33.33333333%
+}
+
+.col-xs-offset-3 {
+ margin-left: 25%
+}
+
+.col-xs-offset-2 {
+ margin-left: 16.66666667%
+}
+
+.col-xs-offset-1 {
+ margin-left: 8.33333333%
+}
+
+.col-xs-offset-0 {
+ margin-left: 0
+}
+
+@media (min-width:768px) {
+ .col-sm-1,
+ .col-sm-10,
+ .col-sm-11,
+ .col-sm-12,
+ .col-sm-2,
+ .col-sm-3,
+ .col-sm-4,
+ .col-sm-5,
+ .col-sm-6,
+ .col-sm-7,
+ .col-sm-8,
+ .col-sm-9 {
+ float: left
+ }
+ .col-sm-12 {
+ width: 100%
+ }
+ .col-sm-11 {
+ width: 91.66666667%
+ }
+ .col-sm-10 {
+ width: 83.33333333%
+ }
+ .col-sm-9 {
+ width: 75%
+ }
+ .col-sm-8 {
+ width: 66.66666667%
+ }
+ .col-sm-7 {
+ width: 58.33333333%
+ }
+ .col-sm-6 {
+ width: 50%
+ }
+ .col-sm-5 {
+ width: 41.66666667%
+ }
+ .col-sm-4 {
+ width: 33.33333333%
+ }
+ .col-sm-3 {
+ width: 25%
+ }
+ .col-sm-2 {
+ width: 16.66666667%
+ }
+ .col-sm-1 {
+ width: 8.33333333%
+ }
+ .col-sm-pull-12 {
+ right: 100%
+ }
+ .col-sm-pull-11 {
+ right: 91.66666667%
+ }
+ .col-sm-pull-10 {
+ right: 83.33333333%
+ }
+ .col-sm-pull-9 {
+ right: 75%
+ }
+ .col-sm-pull-8 {
+ right: 66.66666667%
+ }
+ .col-sm-pull-7 {
+ right: 58.33333333%
+ }
+ .col-sm-pull-6 {
+ right: 50%
+ }
+ .col-sm-pull-5 {
+ right: 41.66666667%
+ }
+ .col-sm-pull-4 {
+ right: 33.33333333%
+ }
+ .col-sm-pull-3 {
+ right: 25%
+ }
+ .col-sm-pull-2 {
+ right: 16.66666667%
+ }
+ .col-sm-pull-1 {
+ right: 8.33333333%
+ }
+ .col-sm-pull-0 {
+ right: auto
+ }
+ .col-sm-push-12 {
+ left: 100%
+ }
+ .col-sm-push-11 {
+ left: 91.66666667%
+ }
+ .col-sm-push-10 {
+ left: 83.33333333%
+ }
+ .col-sm-push-9 {
+ left: 75%
+ }
+ .col-sm-push-8 {
+ left: 66.66666667%
+ }
+ .col-sm-push-7 {
+ left: 58.33333333%
+ }
+ .col-sm-push-6 {
+ left: 50%
+ }
+ .col-sm-push-5 {
+ left: 41.66666667%
+ }
+ .col-sm-push-4 {
+ left: 33.33333333%
+ }
+ .col-sm-push-3 {
+ left: 25%
+ }
+ .col-sm-push-2 {
+ left: 16.66666667%
+ }
+ .col-sm-push-1 {
+ left: 8.33333333%
+ }
+ .col-sm-push-0 {
+ left: auto
+ }
+ .col-sm-offset-12 {
+ margin-left: 100%
+ }
+ .col-sm-offset-11 {
+ margin-left: 91.66666667%
+ }
+ .col-sm-offset-10 {
+ margin-left: 83.33333333%
+ }
+ .col-sm-offset-9 {
+ margin-left: 75%
+ }
+ .col-sm-offset-8 {
+ margin-left: 66.66666667%
+ }
+ .col-sm-offset-7 {
+ margin-left: 58.33333333%
+ }
+ .col-sm-offset-6 {
+ margin-left: 50%
+ }
+ .col-sm-offset-5 {
+ margin-left: 41.66666667%
+ }
+ .col-sm-offset-4 {
+ margin-left: 33.33333333%
+ }
+ .col-sm-offset-3 {
+ margin-left: 25%
+ }
+ .col-sm-offset-2 {
+ margin-left: 16.66666667%
+ }
+ .col-sm-offset-1 {
+ margin-left: 8.33333333%
+ }
+ .col-sm-offset-0 {
+ margin-left: 0
+ }
+}
+
+@media (min-width:992px) {
+ .col-md-1,
+ .col-md-10,
+ .col-md-11,
+ .col-md-12,
+ .col-md-2,
+ .col-md-3,
+ .col-md-4,
+ .col-md-5,
+ .col-md-6,
+ .col-md-7,
+ .col-md-8,
+ .col-md-9 {
+ float: left
+ }
+ .col-md-12 {
+ width: 100%
+ }
+ .col-md-11 {
+ width: 91.66666667%
+ }
+ .col-md-10 {
+ width: 83.33333333%
+ }
+ .col-md-9 {
+ width: 75%
+ }
+ .col-md-8 {
+ width: 66.66666667%
+ }
+ .col-md-7 {
+ width: 58.33333333%
+ }
+ .col-md-6 {
+ width: 50%
+ }
+ .col-md-5 {
+ width: 41.66666667%
+ }
+ .col-md-4 {
+ width: 33.33333333%
+ }
+ .col-md-3 {
+ width: 25%
+ }
+ .col-md-2 {
+ width: 16.66666667%
+ }
+ .col-md-1 {
+ width: 8.33333333%
+ }
+ .col-md-pull-12 {
+ right: 100%
+ }
+ .col-md-pull-11 {
+ right: 91.66666667%
+ }
+ .col-md-pull-10 {
+ right: 83.33333333%
+ }
+ .col-md-pull-9 {
+ right: 75%
+ }
+ .col-md-pull-8 {
+ right: 66.66666667%
+ }
+ .col-md-pull-7 {
+ right: 58.33333333%
+ }
+ .col-md-pull-6 {
+ right: 50%
+ }
+ .col-md-pull-5 {
+ right: 41.66666667%
+ }
+ .col-md-pull-4 {
+ right: 33.33333333%
+ }
+ .col-md-pull-3 {
+ right: 25%
+ }
+ .col-md-pull-2 {
+ right: 16.66666667%
+ }
+ .col-md-pull-1 {
+ right: 8.33333333%
+ }
+ .col-md-pull-0 {
+ right: auto
+ }
+ .col-md-push-12 {
+ left: 100%
+ }
+ .col-md-push-11 {
+ left: 91.66666667%
+ }
+ .col-md-push-10 {
+ left: 83.33333333%
+ }
+ .col-md-push-9 {
+ left: 75%
+ }
+ .col-md-push-8 {
+ left: 66.66666667%
+ }
+ .col-md-push-7 {
+ left: 58.33333333%
+ }
+ .col-md-push-6 {
+ left: 50%
+ }
+ .col-md-push-5 {
+ left: 41.66666667%
+ }
+ .col-md-push-4 {
+ left: 33.33333333%
+ }
+ .col-md-push-3 {
+ left: 25%
+ }
+ .col-md-push-2 {
+ left: 16.66666667%
+ }
+ .col-md-push-1 {
+ left: 8.33333333%
+ }
+ .col-md-push-0 {
+ left: auto
+ }
+ .col-md-offset-12 {
+ margin-left: 100%
+ }
+ .col-md-offset-11 {
+ margin-left: 91.66666667%
+ }
+ .col-md-offset-10 {
+ margin-left: 83.33333333%
+ }
+ .col-md-offset-9 {
+ margin-left: 75%
+ }
+ .col-md-offset-8 {
+ margin-left: 66.66666667%
+ }
+ .col-md-offset-7 {
+ margin-left: 58.33333333%
+ }
+ .col-md-offset-6 {
+ margin-left: 50%
+ }
+ .col-md-offset-5 {
+ margin-left: 41.66666667%
+ }
+ .col-md-offset-4 {
+ margin-left: 33.33333333%
+ }
+ .col-md-offset-3 {
+ margin-left: 25%
+ }
+ .col-md-offset-2 {
+ margin-left: 16.66666667%
+ }
+ .col-md-offset-1 {
+ margin-left: 8.33333333%
+ }
+ .col-md-offset-0 {
+ margin-left: 0
+ }
+}
+
+@media (min-width:1200px) {
+ .col-lg-1,
+ .col-lg-10,
+ .col-lg-11,
+ .col-lg-12,
+ .col-lg-2,
+ .col-lg-3,
+ .col-lg-4,
+ .col-lg-5,
+ .col-lg-6,
+ .col-lg-7,
+ .col-lg-8,
+ .col-lg-9 {
+ float: left
+ }
+ .col-lg-12 {
+ width: 100%
+ }
+ .col-lg-11 {
+ width: 91.66666667%
+ }
+ .col-lg-10 {
+ width: 83.33333333%
+ }
+ .col-lg-9 {
+ width: 75%
+ }
+ .col-lg-8 {
+ width: 66.66666667%
+ }
+ .col-lg-7 {
+ width: 58.33333333%
+ }
+ .col-lg-6 {
+ width: 50%
+ }
+ .col-lg-5 {
+ width: 41.66666667%
+ }
+ .col-lg-4 {
+ width: 33.33333333%
+ }
+ .col-lg-3 {
+ width: 25%
+ }
+ .col-lg-2 {
+ width: 16.66666667%
+ }
+ .col-lg-1 {
+ width: 8.33333333%
+ }
+ .col-lg-pull-12 {
+ right: 100%
+ }
+ .col-lg-pull-11 {
+ right: 91.66666667%
+ }
+ .col-lg-pull-10 {
+ right: 83.33333333%
+ }
+ .col-lg-pull-9 {
+ right: 75%
+ }
+ .col-lg-pull-8 {
+ right: 66.66666667%
+ }
+ .col-lg-pull-7 {
+ right: 58.33333333%
+ }
+ .col-lg-pull-6 {
+ right: 50%
+ }
+ .col-lg-pull-5 {
+ right: 41.66666667%
+ }
+ .col-lg-pull-4 {
+ right: 33.33333333%
+ }
+ .col-lg-pull-3 {
+ right: 25%
+ }
+ .col-lg-pull-2 {
+ right: 16.66666667%
+ }
+ .col-lg-pull-1 {
+ right: 8.33333333%
+ }
+ .col-lg-pull-0 {
+ right: auto
+ }
+ .col-lg-push-12 {
+ left: 100%
+ }
+ .col-lg-push-11 {
+ left: 91.66666667%
+ }
+ .col-lg-push-10 {
+ left: 83.33333333%
+ }
+ .col-lg-push-9 {
+ left: 75%
+ }
+ .col-lg-push-8 {
+ left: 66.66666667%
+ }
+ .col-lg-push-7 {
+ left: 58.33333333%
+ }
+ .col-lg-push-6 {
+ left: 50%
+ }
+ .col-lg-push-5 {
+ left: 41.66666667%
+ }
+ .col-lg-push-4 {
+ left: 33.33333333%
+ }
+ .col-lg-push-3 {
+ left: 25%
+ }
+ .col-lg-push-2 {
+ left: 16.66666667%
+ }
+ .col-lg-push-1 {
+ left: 8.33333333%
+ }
+ .col-lg-push-0 {
+ left: auto
+ }
+ .col-lg-offset-12 {
+ margin-left: 100%
+ }
+ .col-lg-offset-11 {
+ margin-left: 91.66666667%
+ }
+ .col-lg-offset-10 {
+ margin-left: 83.33333333%
+ }
+ .col-lg-offset-9 {
+ margin-left: 75%
+ }
+ .col-lg-offset-8 {
+ margin-left: 66.66666667%
+ }
+ .col-lg-offset-7 {
+ margin-left: 58.33333333%
+ }
+ .col-lg-offset-6 {
+ margin-left: 50%
+ }
+ .col-lg-offset-5 {
+ margin-left: 41.66666667%
+ }
+ .col-lg-offset-4 {
+ margin-left: 33.33333333%
+ }
+ .col-lg-offset-3 {
+ margin-left: 25%
+ }
+ .col-lg-offset-2 {
+ margin-left: 16.66666667%
+ }
+ .col-lg-offset-1 {
+ margin-left: 8.33333333%
+ }
+ .col-lg-offset-0 {
+ margin-left: 0
+ }
+}
+
+table {
+ background-color: transparent
+}
+
+caption {
+ padding-top: 8px;
+ padding-bottom: 8px;
+ color: #777;
+ text-align: left
+}
+
+th {
+ text-align: left
+}
+
+.table {
+ width: 100%;
+ max-width: 100%;
+ margin-bottom: 20px
+}
+
+.table>tbody>tr>td,
+.table>tbody>tr>th,
+.table>tfoot>tr>td,
+.table>tfoot>tr>th,
+.table>thead>tr>td,
+.table>thead>tr>th {
+ padding: 8px;
+ line-height: 1.42857143;
+ vertical-align: top;
+ border-top: 1px solid #ddd
+}
+
+.table>thead>tr>th {
+ vertical-align: bottom;
+ border-bottom: 2px solid #ddd
+}
+
+.table>caption+thead>tr:first-child>td,
+.table>caption+thead>tr:first-child>th,
+.table>colgroup+thead>tr:first-child>td,
+.table>colgroup+thead>tr:first-child>th,
+.table>thead:first-child>tr:first-child>td,
+.table>thead:first-child>tr:first-child>th {
+ border-top: 0
+}
+
+.table>tbody+tbody {
+ border-top: 2px solid #ddd
+}
+
+.table .table {
+ background-color: #fff
+}
+
+.table-condensed>tbody>tr>td,
+.table-condensed>tbody>tr>th,
+.table-condensed>tfoot>tr>td,
+.table-condensed>tfoot>tr>th,
+.table-condensed>thead>tr>td,
+.table-condensed>thead>tr>th {
+ padding: 5px
+}
+
+.table-bordered {
+ border: 1px solid #ddd
+}
+
+.table-bordered>tbody>tr>td,
+.table-bordered>tbody>tr>th,
+.table-bordered>tfoot>tr>td,
+.table-bordered>tfoot>tr>th,
+.table-bordered>thead>tr>td,
+.table-bordered>thead>tr>th {
+ border: 1px solid #ddd
+}
+
+.table-bordered>thead>tr>td,
+.table-bordered>thead>tr>th {
+ border-bottom-width: 2px
+}
+
+.table-striped>tbody>tr:nth-of-type(odd) {
+ background-color: #f9f9f9
+}
+
+.table-hover>tbody>tr:hover {
+ background-color: #f5f5f5
+}
+
+table col[class*=col-] {
+ position: static;
+ display: table-column;
+ float: none
+}
+
+table td[class*=col-],
+table th[class*=col-] {
+ position: static;
+ display: table-cell;
+ float: none
+}
+
+.table>tbody>tr.active>td,
+.table>tbody>tr.active>th,
+.table>tbody>tr>td.active,
+.table>tbody>tr>th.active,
+.table>tfoot>tr.active>td,
+.table>tfoot>tr.active>th,
+.table>tfoot>tr>td.active,
+.table>tfoot>tr>th.active,
+.table>thead>tr.active>td,
+.table>thead>tr.active>th,
+.table>thead>tr>td.active,
+.table>thead>tr>th.active {
+ background-color: #f5f5f5
+}
+
+.table-hover>tbody>tr.active:hover>td,
+.table-hover>tbody>tr.active:hover>th,
+.table-hover>tbody>tr:hover>.active,
+.table-hover>tbody>tr>td.active:hover,
+.table-hover>tbody>tr>th.active:hover {
+ background-color: #e8e8e8
+}
+
+.table>tbody>tr.success>td,
+.table>tbody>tr.success>th,
+.table>tbody>tr>td.success,
+.table>tbody>tr>th.success,
+.table>tfoot>tr.success>td,
+.table>tfoot>tr.success>th,
+.table>tfoot>tr>td.success,
+.table>tfoot>tr>th.success,
+.table>thead>tr.success>td,
+.table>thead>tr.success>th,
+.table>thead>tr>td.success,
+.table>thead>tr>th.success {
+ background-color: #dff0d8
+}
+
+.table-hover>tbody>tr.success:hover>td,
+.table-hover>tbody>tr.success:hover>th,
+.table-hover>tbody>tr:hover>.success,
+.table-hover>tbody>tr>td.success:hover,
+.table-hover>tbody>tr>th.success:hover {
+ background-color: #d0e9c6
+}
+
+.table>tbody>tr.info>td,
+.table>tbody>tr.info>th,
+.table>tbody>tr>td.info,
+.table>tbody>tr>th.info,
+.table>tfoot>tr.info>td,
+.table>tfoot>tr.info>th,
+.table>tfoot>tr>td.info,
+.table>tfoot>tr>th.info,
+.table>thead>tr.info>td,
+.table>thead>tr.info>th,
+.table>thead>tr>td.info,
+.table>thead>tr>th.info {
+ background-color: #d9edf7
+}
+
+.table-hover>tbody>tr.info:hover>td,
+.table-hover>tbody>tr.info:hover>th,
+.table-hover>tbody>tr:hover>.info,
+.table-hover>tbody>tr>td.info:hover,
+.table-hover>tbody>tr>th.info:hover {
+ background-color: #c4e3f3
+}
+
+.table>tbody>tr.warning>td,
+.table>tbody>tr.warning>th,
+.table>tbody>tr>td.warning,
+.table>tbody>tr>th.warning,
+.table>tfoot>tr.warning>td,
+.table>tfoot>tr.warning>th,
+.table>tfoot>tr>td.warning,
+.table>tfoot>tr>th.warning,
+.table>thead>tr.warning>td,
+.table>thead>tr.warning>th,
+.table>thead>tr>td.warning,
+.table>thead>tr>th.warning {
+ background-color: #fcf8e3
+}
+
+.table-hover>tbody>tr.warning:hover>td,
+.table-hover>tbody>tr.warning:hover>th,
+.table-hover>tbody>tr:hover>.warning,
+.table-hover>tbody>tr>td.warning:hover,
+.table-hover>tbody>tr>th.warning:hover {
+ background-color: #faf2cc
+}
+
+.table>tbody>tr.danger>td,
+.table>tbody>tr.danger>th,
+.table>tbody>tr>td.danger,
+.table>tbody>tr>th.danger,
+.table>tfoot>tr.danger>td,
+.table>tfoot>tr.danger>th,
+.table>tfoot>tr>td.danger,
+.table>tfoot>tr>th.danger,
+.table>thead>tr.danger>td,
+.table>thead>tr.danger>th,
+.table>thead>tr>td.danger,
+.table>thead>tr>th.danger {
+ background-color: #f2dede
+}
+
+.table-hover>tbody>tr.danger:hover>td,
+.table-hover>tbody>tr.danger:hover>th,
+.table-hover>tbody>tr:hover>.danger,
+.table-hover>tbody>tr>td.danger:hover,
+.table-hover>tbody>tr>th.danger:hover {
+ background-color: #ebcccc
+}
+
+.table-responsive {
+ min-height: .01%;
+ overflow-x: auto
+}
+
+@media screen and (max-width:767px) {
+ .table-responsive {
+ width: 100%;
+ margin-bottom: 15px;
+ overflow-y: hidden;
+ -ms-overflow-style: -ms-autohiding-scrollbar;
+ border: 1px solid #ddd
+ }
+ .table-responsive>.table {
+ margin-bottom: 0
+ }
+ .table-responsive>.table>tbody>tr>td,
+ .table-responsive>.table>tbody>tr>th,
+ .table-responsive>.table>tfoot>tr>td,
+ .table-responsive>.table>tfoot>tr>th,
+ .table-responsive>.table>thead>tr>td,
+ .table-responsive>.table>thead>tr>th {
+ white-space: nowrap
+ }
+ .table-responsive>.table-bordered {
+ border: 0
+ }
+ .table-responsive>.table-bordered>tbody>tr>td:first-child,
+ .table-responsive>.table-bordered>tbody>tr>th:first-child,
+ .table-responsive>.table-bordered>tfoot>tr>td:first-child,
+ .table-responsive>.table-bordered>tfoot>tr>th:first-child,
+ .table-responsive>.table-bordered>thead>tr>td:first-child,
+ .table-responsive>.table-bordered>thead>tr>th:first-child {
+ border-left: 0
+ }
+ .table-responsive>.table-bordered>tbody>tr>td:last-child,
+ .table-responsive>.table-bordered>tbody>tr>th:last-child,
+ .table-responsive>.table-bordered>tfoot>tr>td:last-child,
+ .table-responsive>.table-bordered>tfoot>tr>th:last-child,
+ .table-responsive>.table-bordered>thead>tr>td:last-child,
+ .table-responsive>.table-bordered>thead>tr>th:last-child {
+ border-right: 0
+ }
+ .table-responsive>.table-bordered>tbody>tr:last-child>td,
+ .table-responsive>.table-bordered>tbody>tr:last-child>th,
+ .table-responsive>.table-bordered>tfoot>tr:last-child>td,
+ .table-responsive>.table-bordered>tfoot>tr:last-child>th {
+ border-bottom: 0
+ }
+}
+
+fieldset {
+ min-width: 0;
+ padding: 0;
+ margin: 0;
+ border: 0
+}
+
+legend {
+ display: block;
+ width: 100%;
+ padding: 0;
+ margin-bottom: 20px;
+ font-size: 21px;
+ line-height: inherit;
+ color: #333;
+ border: 0;
+ border-bottom: 1px solid #e5e5e5
+}
+
+label {
+ display: inline-block;
+ max-width: 100%;
+ margin-bottom: 5px;
+ font-weight: 700
+}
+
+input[type=search] {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box
+}
+
+input[type=checkbox],
+input[type=radio] {
+ margin: 4px 0 0;
+ margin-top: 1px \9;
+ line-height: normal
+}
+
+input[type=file] {
+ display: block
+}
+
+input[type=range] {
+ display: block;
+ width: 100%
+}
+
+select[multiple],
+select[size] {
+ height: auto
+}
+
+input[type=file]:focus,
+input[type=checkbox]:focus,
+input[type=radio]:focus {
+ outline: thin dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px
+}
+
+output {
+ display: block;
+ padding-top: 7px;
+ font-size: 14px;
+ line-height: 1.42857143;
+ color: #555
+}
+
+.form-control {
+ display: block;
+ width: 100%;
+ height: 34px;
+ padding: 6px 12px;
+ font-size: 14px;
+ line-height: 1.42857143;
+ color: #555;
+ background-color: #fff;
+ background-image: none;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+}
+
+.form-control:focus {
+ border-color: #66afe9;
+ outline: 0;
+}
+
+.form-control::-moz-placeholder {
+ color: #999;
+ opacity: 1
+}
+
+.form-control:-ms-input-placeholder {
+ color: #999
+}
+
+.form-control::-webkit-input-placeholder {
+ color: #999
+}
+
+.form-control[disabled],
+.form-control[readonly],
+fieldset[disabled] .form-control {
+ cursor: not-allowed;
+ background-color: #eee;
+ opacity: 1
+}
+
+textarea.form-control {
+ height: auto
+}
+
+input[type=search] {
+ -webkit-appearance: none
+}
+
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+ input[type=date],
+ input[type=time],
+ input[type=datetime-local],
+ input[type=month] {
+ line-height: 34px
+ }
+ .input-group-sm input[type=date],
+ .input-group-sm input[type=time],
+ .input-group-sm input[type=datetime-local],
+ .input-group-sm input[type=month],
+ input[type=date].input-sm,
+ input[type=time].input-sm,
+ input[type=datetime-local].input-sm,
+ input[type=month].input-sm {
+ line-height: 30px
+ }
+ .input-group-lg input[type=date],
+ .input-group-lg input[type=time],
+ .input-group-lg input[type=datetime-local],
+ .input-group-lg input[type=month],
+ input[type=date].input-lg,
+ input[type=time].input-lg,
+ input[type=datetime-local].input-lg,
+ input[type=month].input-lg {
+ line-height: 46px
+ }
+}
+
+.form-group {
+ margin-bottom: 15px
+}
+
+.checkbox,
+.radio {
+ position: relative;
+ display: block;
+ margin-top: 10px;
+ margin-bottom: 10px
+}
+
+.checkbox label,
+.radio label {
+ min-height: 20px;
+ padding-left: 20px;
+ margin-bottom: 0;
+ font-weight: 400;
+ cursor: pointer
+}
+
+.checkbox input[type=checkbox],
+.checkbox-inline input[type=checkbox],
+.radio input[type=radio],
+.radio-inline input[type=radio] {
+ position: absolute;
+ margin-top: 4px \9;
+ margin-left: -20px
+}
+
+.checkbox+.checkbox,
+.radio+.radio {
+ margin-top: -5px
+}
+
+.checkbox-inline,
+.radio-inline {
+ display: inline-block;
+ padding-left: 20px;
+ margin-bottom: 0;
+ font-weight: 400;
+ vertical-align: middle;
+ cursor: pointer
+}
+
+.checkbox-inline+.checkbox-inline,
+.radio-inline+.radio-inline {
+ margin-top: 0;
+ margin-left: 10px
+}
+
+fieldset[disabled] input[type=checkbox],
+fieldset[disabled] input[type=radio],
+input[type=checkbox].disabled,
+input[type=checkbox][disabled],
+input[type=radio].disabled,
+input[type=radio][disabled] {
+ cursor: not-allowed
+}
+
+.checkbox-inline.disabled,
+.radio-inline.disabled,
+fieldset[disabled] .checkbox-inline,
+fieldset[disabled] .radio-inline {
+ cursor: not-allowed
+}
+
+.checkbox.disabled label,
+.radio.disabled label,
+fieldset[disabled] .checkbox label,
+fieldset[disabled] .radio label {
+ cursor: not-allowed
+}
+
+.form-control-static {
+ padding-top: 7px;
+ padding-bottom: 7px;
+ margin-bottom: 0
+}
+
+.form-control-static.input-lg,
+.form-control-static.input-sm {
+ padding-right: 0;
+ padding-left: 0
+}
+
+.input-sm {
+ height: 30px;
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px
+}
+
+select.input-sm {
+ height: 30px;
+ line-height: 30px
+}
+
+select[multiple].input-sm,
+textarea.input-sm {
+ height: auto
+}
+
+.form-group-sm .form-control {
+ height: 30px;
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px
+}
+
+select.form-group-sm .form-control {
+ height: 30px;
+ line-height: 30px
+}
+
+select[multiple].form-group-sm .form-control,
+textarea.form-group-sm .form-control {
+ height: auto
+}
+
+.form-group-sm .form-control-static {
+ height: 30px;
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5
+}
+
+.input-lg {
+ height: 46px;
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.3333333;
+ border-radius: 6px
+}
+
+select.input-lg {
+ height: 46px;
+ line-height: 46px
+}
+
+select[multiple].input-lg,
+textarea.input-lg {
+ height: auto
+}
+
+.form-group-lg .form-control {
+ height: 46px;
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.3333333;
+ border-radius: 6px
+}
+
+select.form-group-lg .form-control {
+ height: 46px;
+ line-height: 46px
+}
+
+select[multiple].form-group-lg .form-control,
+textarea.form-group-lg .form-control {
+ height: auto
+}
+
+.form-group-lg .form-control-static {
+ height: 46px;
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.3333333
+}
+
+.has-feedback {
+ position: relative
+}
+
+.has-feedback .form-control {
+ padding-right: 42.5px
+}
+
+.form-control-feedback {
+ position: absolute;
+ top: 0;
+ right: 0;
+ z-index: 2;
+ display: block;
+ width: 34px;
+ height: 34px;
+ line-height: 34px;
+ text-align: center;
+}
+
+.input-lg+.form-control-feedback {
+ width: 46px;
+ height: 46px;
+ line-height: 46px
+}
+
+.input-sm+.form-control-feedback {
+ width: 30px;
+ height: 30px;
+ line-height: 30px
+}
+
+.has-success .checkbox,
+.has-success .checkbox-inline,
+.has-success .control-label,
+.has-success .help-block,
+.has-success .radio,
+.has-success .radio-inline,
+.has-success.checkbox label,
+.has-success.checkbox-inline label,
+.has-success.radio label,
+.has-success.radio-inline label {
+ color: #3c763d
+}
+
+.has-success .form-control {
+ border-color: #3c763d;
+}
+
+.has-success .form-control:focus {
+ border-color: #2b542c;
+}
+
+.has-success .input-group-addon {
+ color: #3c763d;
+ background-color: #dff0d8;
+ border-color: #3c763d
+}
+
+.has-success .form-control-feedback {
+ color: #3c763d
+}
+
+.has-warning .checkbox,
+.has-warning .checkbox-inline,
+.has-warning .control-label,
+.has-warning .help-block,
+.has-warning .radio,
+.has-warning .radio-inline,
+.has-warning.checkbox label,
+.has-warning.checkbox-inline label,
+.has-warning.radio label,
+.has-warning.radio-inline label {
+ color: #8a6d3b
+}
+
+.has-warning .form-control {
+ border-color: #8a6d3b;
+}
+
+.has-warning .form-control:focus {
+ border-color: #66512c;
+}
+
+.has-warning .input-group-addon {
+ color: #8a6d3b;
+ background-color: #fcf8e3;
+ border-color: #8a6d3b
+}
+
+.has-warning .form-control-feedback {
+ color: #8a6d3b
+}
+
+.has-error .checkbox,
+.has-error .checkbox-inline,
+.has-error .control-label,
+.has-error .help-block,
+.has-error .radio,
+.has-error .radio-inline,
+.has-error.checkbox label,
+.has-error.checkbox-inline label,
+.has-error.radio label,
+.has-error.radio-inline label {
+ color: #a94442
+}
+
+.has-error .form-control {
+ border-color: #a94442;
+}
+
+.has-error .form-control:focus {
+ border-color: #843534;
+}
+
+.has-error .input-group-addon {
+ color: #a94442;
+ background-color: #f2dede;
+ border-color: #a94442
+}
+
+.has-error .form-control-feedback {
+ color: #a94442
+}
+
+.has-feedback label~.form-control-feedback {
+ top: 25px
+}
+
+.has-feedback label.sr-only~.form-control-feedback {
+ top: 0
+}
+
+.help-block {
+ display: block;
+ margin-top: 5px;
+ margin-bottom: 10px;
+ color: #737373
+}
+
+@media (min-width:768px) {
+ .form-inline .form-group {
+ display: inline-block;
+ margin-bottom: 0;
+ vertical-align: middle
+ }
+ .form-inline .form-control {
+ display: inline-block;
+ width: auto;
+ vertical-align: middle
+ }
+ .form-inline .form-control-static {
+ display: inline-block
+ }
+ .form-inline .input-group {
+ display: inline-table;
+ vertical-align: middle
+ }
+ .form-inline .input-group .form-control,
+ .form-inline .input-group .input-group-addon,
+ .form-inline .input-group .input-group-btn {
+ width: auto
+ }
+ .form-inline .input-group>.form-control {
+ width: 100%
+ }
+ .form-inline .control-label {
+ margin-bottom: 0;
+ vertical-align: middle
+ }
+ .form-inline .checkbox,
+ .form-inline .radio {
+ display: inline-block;
+ margin-top: 0;
+ margin-bottom: 0;
+ vertical-align: middle
+ }
+ .form-inline .checkbox label,
+ .form-inline .radio label {
+ padding-left: 0
+ }
+ .form-inline .checkbox input[type=checkbox],
+ .form-inline .radio input[type=radio] {
+ position: relative;
+ margin-left: 0
+ }
+ .form-inline .has-feedback .form-control-feedback {
+ top: 0
+ }
+}
+
+.form-horizontal .checkbox,
+.form-horizontal .checkbox-inline,
+.form-horizontal .radio,
+.form-horizontal .radio-inline {
+ padding-top: 7px;
+ margin-top: 0;
+ margin-bottom: 0
+}
+
+.form-horizontal .checkbox,
+.form-horizontal .radio {
+ min-height: 27px
+}
+
+.form-horizontal .form-group {
+ margin-right: -15px;
+ margin-left: -15px
+}
+
+@media (min-width:768px) {
+ .form-horizontal .control-label {
+ padding-top: 7px;
+ margin-bottom: 0;
+ text-align: right
+ }
+}
+
+.form-horizontal .has-feedback .form-control-feedback {
+ right: 15px
+}
+
+@media (min-width:768px) {
+ .form-horizontal .form-group-lg .control-label {
+ padding-top: 14.33px
+ }
+}
+
+@media (min-width:768px) {
+ .form-horizontal .form-group-sm .control-label {
+ padding-top: 6px
+ }
+}
+
+.btn {
+ display: inline-block;
+ padding: 6px 12px;
+ margin-bottom: 0;
+ font-size: 14px;
+ font-weight: 400;
+ line-height: 1.42857143;
+ text-align: center;
+ white-space: nowrap;
+ vertical-align: middle;
+ -ms-touch-action: manipulation;
+ touch-action: manipulation;
+ cursor: pointer;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ background-image: none;
+ border: 1px solid transparent;
+ border-radius: 4px
+}
+
+.btn.active.focus,
+.btn.active:focus,
+.btn.focus,
+.btn:active.focus,
+.btn:active:focus,
+.btn:focus {
+ outline: thin dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px
+}
+
+.btn.focus,
+.btn:focus,
+.btn:hover {
+ color: #333;
+ text-decoration: none
+}
+
+.btn.active,
+.btn:active {
+ background-image: none;
+ outline: 0;
+}
+
+.btn.disabled,
+.btn[disabled],
+fieldset[disabled] .btn {
+ cursor: not-allowed;
+ filter: alpha(opacity=65);
+ opacity: .65
+}
+
+.btn-default {
+ color: #333;
+ background-color: #fff;
+ border-color: #ccc
+}
+
+.btn-default.active,
+.btn-default.focus,
+.btn-default:active,
+.btn-default:focus,
+.btn-default:hover,
+.open>.dropdown-toggle.btn-default {
+ color: #333;
+ background-color: #e6e6e6;
+ border-color: #adadad
+}
+
+.btn-default.active,
+.btn-default:active,
+.open>.dropdown-toggle.btn-default {
+ background-image: none
+}
+
+.btn-default.disabled,
+.btn-default.disabled.active,
+.btn-default.disabled.focus,
+.btn-default.disabled:active,
+.btn-default.disabled:focus,
+.btn-default.disabled:hover,
+.btn-default[disabled],
+.btn-default[disabled].active,
+.btn-default[disabled].focus,
+.btn-default[disabled]:active,
+.btn-default[disabled]:focus,
+.btn-default[disabled]:hover,
+fieldset[disabled] .btn-default,
+fieldset[disabled] .btn-default.active,
+fieldset[disabled] .btn-default.focus,
+fieldset[disabled] .btn-default:active,
+fieldset[disabled] .btn-default:focus,
+fieldset[disabled] .btn-default:hover {
+ background-color: #fff;
+ border-color: #ccc
+}
+
+.btn-default .badge {
+ color: #fff;
+ background-color: #333
+}
+
+.btn-primary {
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #2e6da4
+}
+
+.btn-primary.active,
+.btn-primary.focus,
+.btn-primary:active,
+.btn-primary:focus,
+.btn-primary:hover,
+.open>.dropdown-toggle.btn-primary {
+ color: #fff;
+ background-color: #286090;
+ border-color: #204d74
+}
+
+.btn-primary.active,
+.btn-primary:active,
+.open>.dropdown-toggle.btn-primary {
+ background-image: none
+}
+
+.btn-primary.disabled,
+.btn-primary.disabled.active,
+.btn-primary.disabled.focus,
+.btn-primary.disabled:active,
+.btn-primary.disabled:focus,
+.btn-primary.disabled:hover,
+.btn-primary[disabled],
+.btn-primary[disabled].active,
+.btn-primary[disabled].focus,
+.btn-primary[disabled]:active,
+.btn-primary[disabled]:focus,
+.btn-primary[disabled]:hover,
+fieldset[disabled] .btn-primary,
+fieldset[disabled] .btn-primary.active,
+fieldset[disabled] .btn-primary.focus,
+fieldset[disabled] .btn-primary:active,
+fieldset[disabled] .btn-primary:focus,
+fieldset[disabled] .btn-primary:hover {
+ background-color: #337ab7;
+ border-color: #2e6da4
+}
+
+.btn-primary .badge {
+ color: #337ab7;
+ background-color: #fff
+}
+
+.btn-success {
+ color: #fff;
+ background-color: #5cb85c;
+ border-color: #4cae4c
+}
+
+.btn-success.active,
+.btn-success.focus,
+.btn-success:active,
+.btn-success:focus,
+.btn-success:hover,
+.open>.dropdown-toggle.btn-success {
+ color: #fff;
+ background-color: #449d44;
+ border-color: #398439
+}
+
+.btn-success.active,
+.btn-success:active,
+.open>.dropdown-toggle.btn-success {
+ background-image: none
+}
+
+.btn-success.disabled,
+.btn-success.disabled.active,
+.btn-success.disabled.focus,
+.btn-success.disabled:active,
+.btn-success.disabled:focus,
+.btn-success.disabled:hover,
+.btn-success[disabled],
+.btn-success[disabled].active,
+.btn-success[disabled].focus,
+.btn-success[disabled]:active,
+.btn-success[disabled]:focus,
+.btn-success[disabled]:hover,
+fieldset[disabled] .btn-success,
+fieldset[disabled] .btn-success.active,
+fieldset[disabled] .btn-success.focus,
+fieldset[disabled] .btn-success:active,
+fieldset[disabled] .btn-success:focus,
+fieldset[disabled] .btn-success:hover {
+ background-color: #5cb85c;
+ border-color: #4cae4c
+}
+
+.btn-success .badge {
+ color: #5cb85c;
+ background-color: #fff
+}
+
+.btn-info {
+ color: #fff;
+ background-color: #5bc0de;
+ border-color: #46b8da
+}
+
+.btn-info.active,
+.btn-info.focus,
+.btn-info:active,
+.btn-info:focus,
+.btn-info:hover,
+.open>.dropdown-toggle.btn-info {
+ color: #fff;
+ background-color: #31b0d5;
+ border-color: #269abc
+}
+
+.btn-info.active,
+.btn-info:active,
+.open>.dropdown-toggle.btn-info {
+ background-image: none
+}
+
+.btn-info.disabled,
+.btn-info.disabled.active,
+.btn-info.disabled.focus,
+.btn-info.disabled:active,
+.btn-info.disabled:focus,
+.btn-info.disabled:hover,
+.btn-info[disabled],
+.btn-info[disabled].active,
+.btn-info[disabled].focus,
+.btn-info[disabled]:active,
+.btn-info[disabled]:focus,
+.btn-info[disabled]:hover,
+fieldset[disabled] .btn-info,
+fieldset[disabled] .btn-info.active,
+fieldset[disabled] .btn-info.focus,
+fieldset[disabled] .btn-info:active,
+fieldset[disabled] .btn-info:focus,
+fieldset[disabled] .btn-info:hover {
+ background-color: #5bc0de;
+ border-color: #46b8da
+}
+
+.btn-info .badge {
+ color: #5bc0de;
+ background-color: #fff
+}
+
+.btn-warning {
+ color: #fff;
+ background-color: #f0ad4e;
+ border-color: #eea236
+}
+
+.btn-warning.active,
+.btn-warning.focus,
+.btn-warning:active,
+.btn-warning:focus,
+.btn-warning:hover,
+.open>.dropdown-toggle.btn-warning {
+ color: #fff;
+ background-color: #ec971f;
+ border-color: #d58512
+}
+
+.btn-warning.active,
+.btn-warning:active,
+.open>.dropdown-toggle.btn-warning {
+ background-image: none
+}
+
+.btn-warning.disabled,
+.btn-warning.disabled.active,
+.btn-warning.disabled.focus,
+.btn-warning.disabled:active,
+.btn-warning.disabled:focus,
+.btn-warning.disabled:hover,
+.btn-warning[disabled],
+.btn-warning[disabled].active,
+.btn-warning[disabled].focus,
+.btn-warning[disabled]:active,
+.btn-warning[disabled]:focus,
+.btn-warning[disabled]:hover,
+fieldset[disabled] .btn-warning,
+fieldset[disabled] .btn-warning.active,
+fieldset[disabled] .btn-warning.focus,
+fieldset[disabled] .btn-warning:active,
+fieldset[disabled] .btn-warning:focus,
+fieldset[disabled] .btn-warning:hover {
+ background-color: #f0ad4e;
+ border-color: #eea236
+}
+
+.btn-warning .badge {
+ color: #f0ad4e;
+ background-color: #fff
+}
+
+.btn-danger {
+ color: #fff;
+ background-color: #d9534f;
+ border-color: #d43f3a
+}
+
+.btn-danger.active,
+.btn-danger.focus,
+.btn-danger:active,
+.btn-danger:focus,
+.btn-danger:hover,
+.open>.dropdown-toggle.btn-danger {
+ color: #fff;
+ background-color: #c9302c;
+ border-color: #ac2925
+}
+
+.btn-danger.active,
+.btn-danger:active,
+.open>.dropdown-toggle.btn-danger {
+ background-image: none
+}
+
+.btn-danger.disabled,
+.btn-danger.disabled.active,
+.btn-danger.disabled.focus,
+.btn-danger.disabled:active,
+.btn-danger.disabled:focus,
+.btn-danger.disabled:hover,
+.btn-danger[disabled],
+.btn-danger[disabled].active,
+.btn-danger[disabled].focus,
+.btn-danger[disabled]:active,
+.btn-danger[disabled]:focus,
+.btn-danger[disabled]:hover,
+fieldset[disabled] .btn-danger,
+fieldset[disabled] .btn-danger.active,
+fieldset[disabled] .btn-danger.focus,
+fieldset[disabled] .btn-danger:active,
+fieldset[disabled] .btn-danger:focus,
+fieldset[disabled] .btn-danger:hover {
+ background-color: #d9534f;
+ border-color: #d43f3a
+}
+
+.btn-danger .badge {
+ color: #d9534f;
+ background-color: #fff
+}
+
+.btn-link {
+ font-weight: 400;
+ color: #337ab7;
+ border-radius: 0
+}
+
+.btn-link,
+.btn-link.active,
+.btn-link:active,
+.btn-link[disabled],
+fieldset[disabled] .btn-link {
+ background-color: transparent;
+}
+
+.btn-link,
+.btn-link:active,
+.btn-link:focus,
+.btn-link:hover {
+ border-color: transparent
+}
+
+.btn-link:focus,
+.btn-link:hover {
+ color: #23527c;
+ text-decoration: underline;
+ background-color: transparent
+}
+
+.btn-link[disabled]:focus,
+.btn-link[disabled]:hover,
+fieldset[disabled] .btn-link:focus,
+fieldset[disabled] .btn-link:hover {
+ color: #777;
+ text-decoration: none
+}
+
+.btn-group-lg>.btn,
+.btn-lg {
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.3333333;
+ border-radius: 6px
+}
+
+.btn-group-sm>.btn,
+.btn-sm {
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px
+}
+
+.btn-group-xs>.btn,
+.btn-xs {
+ padding: 1px 5px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px
+}
+
+.btn-block {
+ display: block;
+ width: 100%
+}
+
+.btn-block+.btn-block {
+ margin-top: 5px
+}
+
+input[type=button].btn-block,
+input[type=reset].btn-block,
+input[type=submit].btn-block {
+ width: 100%
+}
+
+.fade {
+ opacity: 0;
+ -webkit-transition: opacity .15s linear;
+ -o-transition: opacity .15s linear;
+ transition: opacity .15s linear
+}
+
+.fade.in {
+ opacity: 1
+}
+
+.collapse {
+ display: none;
+ visibility: hidden
+}
+
+.collapse.in {
+ display: block;
+ visibility: visible
+}
+
+tr.collapse.in {
+ display: table-row
+}
+
+tbody.collapse.in {
+ display: table-row-group
+}
+
+.collapsing {
+ position: relative;
+ height: 0;
+ overflow: hidden;
+ -webkit-transition-timing-function: ease;
+ -o-transition-timing-function: ease;
+ transition-timing-function: ease;
+ -webkit-transition-duration: .35s;
+ -o-transition-duration: .35s;
+ transition-duration: .35s;
+ -webkit-transition-property: height, visibility;
+ -o-transition-property: height, visibility;
+ transition-property: height, visibility
+}
+
+.caret {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ margin-left: 2px;
+ vertical-align: middle;
+ border-top: 4px solid;
+ border-right: 4px solid transparent;
+ border-left: 4px solid transparent
+}
+
+.dropdown,
+.dropup {
+ position: relative
+}
+
+.dropdown-toggle:focus {
+ outline: 0
+}
+
+.dropdown-menu {
+ position: absolute;
+ top: 100%;
+ left: 0;
+ z-index: 1000;
+ display: none;
+ float: left;
+ min-width: 160px;
+ padding: 5px 0;
+ margin: 2px 0 0;
+ font-size: 14px;
+ text-align: left;
+ list-style: none;
+ background-color: #fff;
+ -webkit-background-clip: padding-box;
+ background-clip: padding-box;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0, 0, 0, .15);
+ border-radius: 4px;
+}
+
+.dropdown-menu.pull-right {
+ right: 0;
+ left: auto
+}
+
+.dropdown-menu .divider {
+ height: 1px;
+ margin: 9px 0;
+ overflow: hidden;
+ background-color: #e5e5e5
+}
+
+.dropdown-menu>li>a {
+ display: block;
+ padding: 3px 20px;
+ clear: both;
+ font-weight: 400;
+ line-height: 1.42857143;
+ color: #333;
+ white-space: nowrap
+}
+
+.dropdown-menu>li>a:focus,
+.dropdown-menu>li>a:hover {
+ color: #262626;
+ text-decoration: none;
+ background-color: #f5f5f5
+}
+
+.dropdown-menu>.active>a,
+.dropdown-menu>.active>a:focus,
+.dropdown-menu>.active>a:hover {
+ color: #fff;
+ text-decoration: none;
+ background-color: #337ab7;
+ outline: 0
+}
+
+.dropdown-menu>.disabled>a,
+.dropdown-menu>.disabled>a:focus,
+.dropdown-menu>.disabled>a:hover {
+ color: #777
+}
+
+.dropdown-menu>.disabled>a:focus,
+.dropdown-menu>.disabled>a:hover {
+ text-decoration: none;
+ cursor: not-allowed;
+ background-color: transparent;
+ background-image: none;
+ filter: progid: DXImageTransform.Microsoft.gradient(enabled=false)
+}
+
+.open>.dropdown-menu {
+ display: block
+}
+
+.open>a {
+ outline: 0
+}
+
+.dropdown-menu-right {
+ right: 0;
+ left: auto
+}
+
+.dropdown-menu-left {
+ right: auto;
+ left: 0
+}
+
+.dropdown-header {
+ display: block;
+ padding: 3px 20px;
+ font-size: 12px;
+ line-height: 1.42857143;
+ color: #777;
+ white-space: nowrap
+}
+
+.dropdown-backdrop {
+ position: fixed;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 990
+}
+
+.pull-right>.dropdown-menu {
+ right: 0;
+ left: auto
+}
+
+.dropup .caret,
+.navbar-fixed-bottom .dropdown .caret {
+ content: "";
+ border-top: 0;
+ border-bottom: 4px solid
+}
+
+.dropup .dropdown-menu,
+.navbar-fixed-bottom .dropdown .dropdown-menu {
+ top: auto;
+ bottom: 100%;
+ margin-bottom: 2px
+}
+
+@media (min-width:768px) {
+ .navbar-right .dropdown-menu {
+ right: 0;
+ left: auto
+ }
+ .navbar-right .dropdown-menu-left {
+ right: auto;
+ left: 0
+ }
+}
+
+.btn-group,
+.btn-group-vertical {
+ position: relative;
+ display: inline-block;
+ vertical-align: middle
+}
+
+.btn-group-vertical>.btn,
+.btn-group>.btn {
+ position: relative;
+ float: left
+}
+
+.btn-group-vertical>.btn.active,
+.btn-group-vertical>.btn:active,
+.btn-group-vertical>.btn:focus,
+.btn-group-vertical>.btn:hover,
+.btn-group>.btn.active,
+.btn-group>.btn:active,
+.btn-group>.btn:focus,
+.btn-group>.btn:hover {
+ z-index: 2
+}
+
+.btn-group .btn+.btn,
+.btn-group .btn+.btn-group,
+.btn-group .btn-group+.btn,
+.btn-group .btn-group+.btn-group {
+ margin-left: -1px
+}
+
+.btn-toolbar {
+ margin-left: -5px
+}
+
+.btn-toolbar .btn-group,
+.btn-toolbar .input-group {
+ float: left
+}
+
+.btn-toolbar>.btn,
+.btn-toolbar>.btn-group,
+.btn-toolbar>.input-group {
+ margin-left: 5px
+}
+
+.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
+ border-radius: 0
+}
+
+.btn-group>.btn:first-child {
+ margin-left: 0
+}
+
+.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0
+}
+
+.btn-group>.btn:last-child:not(:first-child),
+.btn-group>.dropdown-toggle:not(:first-child) {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.btn-group>.btn-group {
+ float: left
+}
+
+.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn {
+ border-radius: 0
+}
+
+.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,
+.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0
+}
+
+.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.btn-group .dropdown-toggle:active,
+.btn-group.open .dropdown-toggle {
+ outline: 0
+}
+
+.btn-group>.btn+.dropdown-toggle {
+ padding-right: 8px;
+ padding-left: 8px
+}
+
+.btn-group>.btn-lg+.dropdown-toggle {
+ padding-right: 12px;
+ padding-left: 12px
+}
+
+.btn-group.open .dropdown-toggle {
+}
+
+.btn-group.open .dropdown-toggle.btn-link {
+}
+
+.btn .caret {
+ margin-left: 0
+}
+
+.btn-lg .caret {
+ border-width: 5px 5px 0;
+ border-bottom-width: 0
+}
+
+.dropup .btn-lg .caret {
+ border-width: 0 5px 5px
+}
+
+.btn-group-vertical>.btn,
+.btn-group-vertical>.btn-group,
+.btn-group-vertical>.btn-group>.btn {
+ display: block;
+ float: none;
+ width: 100%;
+ max-width: 100%
+}
+
+.btn-group-vertical>.btn-group>.btn {
+ float: none
+}
+
+.btn-group-vertical>.btn+.btn,
+.btn-group-vertical>.btn+.btn-group,
+.btn-group-vertical>.btn-group+.btn,
+.btn-group-vertical>.btn-group+.btn-group {
+ margin-top: -1px;
+ margin-left: 0
+}
+
+.btn-group-vertical>.btn:not(:first-child):not(:last-child) {
+ border-radius: 0
+}
+
+.btn-group-vertical>.btn:first-child:not(:last-child) {
+ border-top-right-radius: 4px;
+ border-bottom-right-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.btn-group-vertical>.btn:last-child:not(:first-child) {
+ border-top-left-radius: 0;
+ border-top-right-radius: 0;
+ border-bottom-left-radius: 4px
+}
+
+.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn {
+ border-radius: 0
+}
+
+.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,
+.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle {
+ border-bottom-right-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child {
+ border-top-left-radius: 0;
+ border-top-right-radius: 0
+}
+
+.btn-group-justified {
+ display: table;
+ width: 100%;
+ table-layout: fixed;
+ border-collapse: separate
+}
+
+.btn-group-justified>.btn,
+.btn-group-justified>.btn-group {
+ display: table-cell;
+ float: none;
+ width: 1%
+}
+
+.btn-group-justified>.btn-group .btn {
+ width: 100%
+}
+
+.btn-group-justified>.btn-group .dropdown-menu {
+ left: auto
+}
+
+[data-toggle=buttons]>.btn input[type=checkbox],
+[data-toggle=buttons]>.btn input[type=radio],
+[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],
+[data-toggle=buttons]>.btn-group>.btn input[type=radio] {
+ position: absolute;
+ clip: rect(0, 0, 0, 0);
+}
+
+.input-group {
+ position: relative;
+ display: table;
+ border-collapse: separate
+}
+
+.input-group[class*=col-] {
+ float: none;
+ padding-right: 0;
+ padding-left: 0
+}
+
+.input-group .form-control {
+ position: relative;
+ z-index: 2;
+ float: left;
+ width: 100%;
+ margin-bottom: 0
+}
+
+.input-group-lg>.form-control,
+.input-group-lg>.input-group-addon,
+.input-group-lg>.input-group-btn>.btn {
+ height: 46px;
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.3333333;
+ border-radius: 6px
+}
+
+select.input-group-lg>.form-control,
+select.input-group-lg>.input-group-addon,
+select.input-group-lg>.input-group-btn>.btn {
+ height: 46px;
+ line-height: 46px
+}
+
+select[multiple].input-group-lg>.form-control,
+select[multiple].input-group-lg>.input-group-addon,
+select[multiple].input-group-lg>.input-group-btn>.btn,
+textarea.input-group-lg>.form-control,
+textarea.input-group-lg>.input-group-addon,
+textarea.input-group-lg>.input-group-btn>.btn {
+ height: auto
+}
+
+.input-group-sm>.form-control,
+.input-group-sm>.input-group-addon,
+.input-group-sm>.input-group-btn>.btn {
+ height: 30px;
+ padding: 5px 10px;
+ font-size: 12px;
+ line-height: 1.5;
+ border-radius: 3px
+}
+
+select.input-group-sm>.form-control,
+select.input-group-sm>.input-group-addon,
+select.input-group-sm>.input-group-btn>.btn {
+ height: 30px;
+ line-height: 30px
+}
+
+select[multiple].input-group-sm>.form-control,
+select[multiple].input-group-sm>.input-group-addon,
+select[multiple].input-group-sm>.input-group-btn>.btn,
+textarea.input-group-sm>.form-control,
+textarea.input-group-sm>.input-group-addon,
+textarea.input-group-sm>.input-group-btn>.btn {
+ height: auto
+}
+
+.input-group .form-control,
+.input-group-addon,
+.input-group-btn {
+ display: table-cell
+}
+
+.input-group .form-control:not(:first-child):not(:last-child),
+.input-group-addon:not(:first-child):not(:last-child),
+.input-group-btn:not(:first-child):not(:last-child) {
+ border-radius: 0
+}
+
+.input-group-addon,
+.input-group-btn {
+ width: 1%;
+ white-space: nowrap;
+ vertical-align: middle
+}
+
+.input-group-addon {
+ padding: 6px 12px;
+ font-size: 14px;
+ font-weight: 400;
+ line-height: 1;
+ color: #555;
+ text-align: center;
+ background-color: #eee;
+ border: 1px solid #ccc;
+ border-radius: 4px
+}
+
+.input-group-addon.input-sm {
+ padding: 5px 10px;
+ font-size: 12px;
+ border-radius: 3px
+}
+
+.input-group-addon.input-lg {
+ padding: 10px 16px;
+ font-size: 18px;
+ border-radius: 6px
+}
+
+.input-group-addon input[type=checkbox],
+.input-group-addon input[type=radio] {
+ margin-top: 0
+}
+
+.input-group .form-control:first-child,
+.input-group-addon:first-child,
+.input-group-btn:first-child>.btn,
+.input-group-btn:first-child>.btn-group>.btn,
+.input-group-btn:first-child>.dropdown-toggle,
+.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,
+.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0
+}
+
+.input-group-addon:first-child {
+ border-right: 0
+}
+
+.input-group .form-control:last-child,
+.input-group-addon:last-child,
+.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,
+.input-group-btn:first-child>.btn:not(:first-child),
+.input-group-btn:last-child>.btn,
+.input-group-btn:last-child>.btn-group>.btn,
+.input-group-btn:last-child>.dropdown-toggle {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.input-group-addon:last-child {
+ border-left: 0
+}
+
+.input-group-btn {
+ position: relative;
+ font-size: 0;
+ white-space: nowrap
+}
+
+.input-group-btn>.btn {
+ position: relative
+}
+
+.input-group-btn>.btn+.btn {
+ margin-left: -1px
+}
+
+.input-group-btn>.btn:active,
+.input-group-btn>.btn:focus,
+.input-group-btn>.btn:hover {
+ z-index: 2
+}
+
+.input-group-btn:first-child>.btn,
+.input-group-btn:first-child>.btn-group {
+ margin-right: -1px
+}
+
+.input-group-btn:last-child>.btn,
+.input-group-btn:last-child>.btn-group {
+ margin-left: -1px
+}
+
+.nav {
+ padding-left: 0;
+ margin-bottom: 0;
+ list-style: none
+}
+
+.nav>li {
+ position: relative;
+ display: block
+}
+
+.nav>li>a {
+ position: relative;
+ display: block;
+ padding: 10px 15px
+}
+
+.nav>li>a:focus,
+.nav>li>a:hover {
+ text-decoration: none;
+ background-color: #eee
+}
+
+.nav>li.disabled>a {
+ color: #777
+}
+
+.nav>li.disabled>a:focus,
+.nav>li.disabled>a:hover {
+ color: #777;
+ text-decoration: none;
+ cursor: not-allowed;
+ background-color: transparent
+}
+
+.nav .open>a,
+.nav .open>a:focus,
+.nav .open>a:hover {
+ background-color: #eee;
+ border-color: #337ab7
+}
+
+.nav .nav-divider {
+ height: 1px;
+ margin: 9px 0;
+ overflow: hidden;
+ background-color: #e5e5e5
+}
+
+.nav>li>a>img {
+ max-width: none
+}
+
+.nav-tabs {
+ border-bottom: 1px solid #ddd
+}
+
+.nav-tabs>li {
+ float: left;
+ margin-bottom: -1px
+}
+
+.nav-tabs>li>a {
+ margin-right: 2px;
+ line-height: 1.42857143;
+ border: 1px solid transparent;
+ border-radius: 4px 4px 0 0
+}
+
+.nav-tabs>li>a:hover {
+ border-color: #eee #eee #ddd
+}
+
+.nav-tabs>li.active>a,
+.nav-tabs>li.active>a:focus,
+.nav-tabs>li.active>a:hover {
+ color: #555;
+ cursor: default;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-bottom-color: transparent
+}
+
+.nav-tabs.nav-justified {
+ width: 100%;
+ border-bottom: 0
+}
+
+.nav-tabs.nav-justified>li {
+ float: none
+}
+
+.nav-tabs.nav-justified>li>a {
+ margin-bottom: 5px;
+ text-align: center
+}
+
+.nav-tabs.nav-justified>.dropdown .dropdown-menu {
+ top: auto;
+ left: auto
+}
+
+@media (min-width:768px) {
+ .nav-tabs.nav-justified>li {
+ display: table-cell;
+ width: 1%
+ }
+ .nav-tabs.nav-justified>li>a {
+ margin-bottom: 0
+ }
+}
+
+.nav-tabs.nav-justified>li>a {
+ margin-right: 0;
+ border-radius: 4px
+}
+
+.nav-tabs.nav-justified>.active>a,
+.nav-tabs.nav-justified>.active>a:focus,
+.nav-tabs.nav-justified>.active>a:hover {
+ border: 1px solid #ddd
+}
+
+@media (min-width:768px) {
+ .nav-tabs.nav-justified>li>a {
+ border-bottom: 1px solid #ddd;
+ border-radius: 4px 4px 0 0
+ }
+ .nav-tabs.nav-justified>.active>a,
+ .nav-tabs.nav-justified>.active>a:focus,
+ .nav-tabs.nav-justified>.active>a:hover {
+ border-bottom-color: #fff
+ }
+}
+
+.nav-pills>li {
+ float: left
+}
+
+.nav-pills>li>a {
+ border-radius: 4px
+}
+
+.nav-pills>li+li {
+ margin-left: 2px
+}
+
+.nav-pills>li.active>a,
+.nav-pills>li.active>a:focus,
+.nav-pills>li.active>a:hover {
+ color: #fff;
+ background-color: #337ab7
+}
+
+.nav-stacked>li {
+ float: none
+}
+
+.nav-stacked>li+li {
+ margin-top: 2px;
+ margin-left: 0
+}
+
+.nav-justified {
+ width: 100%
+}
+
+.nav-justified>li {
+ float: none
+}
+
+.nav-justified>li>a {
+ margin-bottom: 5px;
+ text-align: center
+}
+
+.nav-justified>.dropdown .dropdown-menu {
+ top: auto;
+ left: auto
+}
+
+@media (min-width:768px) {
+ .nav-justified>li {
+ display: table-cell;
+ width: 1%
+ }
+ .nav-justified>li>a {
+ margin-bottom: 0
+ }
+}
+
+.nav-tabs-justified {
+ border-bottom: 0
+}
+
+.nav-tabs-justified>li>a {
+ margin-right: 0;
+ border-radius: 4px
+}
+
+.nav-tabs-justified>.active>a,
+.nav-tabs-justified>.active>a:focus,
+.nav-tabs-justified>.active>a:hover {
+ border: 1px solid #ddd
+}
+
+@media (min-width:768px) {
+ .nav-tabs-justified>li>a {
+ border-bottom: 1px solid #ddd;
+ border-radius: 4px 4px 0 0
+ }
+ .nav-tabs-justified>.active>a,
+ .nav-tabs-justified>.active>a:focus,
+ .nav-tabs-justified>.active>a:hover {
+ border-bottom-color: #fff
+ }
+}
+
+.tab-content>.tab-pane {
+ display: none;
+ visibility: hidden
+}
+
+.tab-content>.active {
+ display: block;
+ visibility: visible
+}
+
+.nav-tabs .dropdown-menu {
+ margin-top: -1px;
+ border-top-left-radius: 0;
+ border-top-right-radius: 0
+}
+
+.navbar {
+ position: relative;
+ min-height: 50px;
+ margin-bottom: 20px;
+ border: 1px solid transparent
+}
+
+@media (min-width:768px) {
+ .navbar {
+ border-radius: 4px
+ }
+}
+
+@media (min-width:768px) {
+ .navbar-header {
+ float: left
+ }
+}
+
+.navbar-collapse {
+ padding-right: 15px;
+ padding-left: 15px;
+ overflow-x: visible;
+ -webkit-overflow-scrolling: touch;
+ border-top: 1px solid transparent;
+}
+
+.navbar-collapse.in {
+ overflow-y: auto
+}
+
+@media (min-width:768px) {
+ .navbar-collapse {
+ width: auto;
+ border-top: 0;
+ }
+ .navbar-collapse.collapse {
+ display: block!important;
+ height: auto!important;
+ padding-bottom: 0;
+ overflow: visible!important;
+ visibility: visible!important
+ }
+ .navbar-collapse.in {
+ overflow-y: visible
+ }
+ .navbar-fixed-bottom .navbar-collapse,
+ .navbar-fixed-top .navbar-collapse,
+ .navbar-static-top .navbar-collapse {
+ padding-right: 0;
+ padding-left: 0
+ }
+}
+
+.navbar-fixed-bottom .navbar-collapse,
+.navbar-fixed-top .navbar-collapse {
+ max-height: 340px
+}
+
+@media (max-device-width:480px) and (orientation:landscape) {
+ .navbar-fixed-bottom .navbar-collapse,
+ .navbar-fixed-top .navbar-collapse {
+ max-height: 200px
+ }
+}
+
+.container-fluid>.navbar-collapse,
+.container-fluid>.navbar-header,
+.container>.navbar-collapse,
+.container>.navbar-header {
+ margin-right: -15px;
+ margin-left: -15px
+}
+
+@media (min-width:768px) {
+ .container-fluid>.navbar-collapse,
+ .container-fluid>.navbar-header,
+ .container>.navbar-collapse,
+ .container>.navbar-header {
+ margin-right: 0;
+ margin-left: 0
+ }
+}
+
+.navbar-static-top {
+ z-index: 1000;
+ border-width: 0 0 1px
+}
+
+@media (min-width:768px) {
+ .navbar-static-top {
+ border-radius: 0
+ }
+}
+
+.navbar-fixed-bottom,
+.navbar-fixed-top {
+ position: fixed;
+ right: 0;
+ left: 0;
+ z-index: 1030
+}
+
+@media (min-width:768px) {
+ .navbar-fixed-bottom,
+ .navbar-fixed-top {
+ border-radius: 0
+ }
+}
+
+.navbar-fixed-top {
+ top: 0;
+ border-width: 0 0 1px
+}
+
+.navbar-fixed-bottom {
+ bottom: 0;
+ margin-bottom: 0;
+ border-width: 1px 0 0
+}
+
+.navbar-brand {
+ float: left;
+ height: 50px;
+ padding: 15px 15px;
+ font-size: 18px;
+ line-height: 20px
+}
+
+.navbar-brand:focus,
+.navbar-brand:hover {
+ text-decoration: none
+}
+
+.navbar-brand>img {
+ display: block
+}
+
+@media (min-width:768px) {
+ .navbar>.container .navbar-brand,
+ .navbar>.container-fluid .navbar-brand {
+ margin-left: -15px
+ }
+}
+
+.navbar-toggle {
+ position: relative;
+ float: right;
+ padding: 9px 10px;
+ margin-top: 8px;
+ margin-right: 15px;
+ margin-bottom: 8px;
+ background-color: transparent;
+ background-image: none;
+ border: 1px solid transparent;
+ border-radius: 4px
+}
+
+.navbar-toggle:focus {
+ outline: 0
+}
+
+.navbar-toggle .icon-bar {
+ display: block;
+ width: 22px;
+ height: 2px;
+ border-radius: 1px
+}
+
+.navbar-toggle .icon-bar+.icon-bar {
+ margin-top: 4px
+}
+
+@media (min-width:768px) {
+ .navbar-toggle {
+ display: none
+ }
+}
+
+.navbar-nav {
+ margin: 7.5px -15px
+}
+
+.navbar-nav>li>a {
+ padding-top: 10px;
+ padding-bottom: 10px;
+ line-height: 20px
+}
+
+@media (max-width:767px) {
+ .navbar-nav .open .dropdown-menu {
+ position: static;
+ float: none;
+ width: auto;
+ margin-top: 0;
+ background-color: transparent;
+ border: 0;
+ }
+ .navbar-nav .open .dropdown-menu .dropdown-header,
+ .navbar-nav .open .dropdown-menu>li>a {
+ padding: 5px 15px 5px 25px
+ }
+ .navbar-nav .open .dropdown-menu>li>a {
+ line-height: 20px
+ }
+ .navbar-nav .open .dropdown-menu>li>a:focus,
+ .navbar-nav .open .dropdown-menu>li>a:hover {
+ background-image: none
+ }
+}
+
+@media (min-width:768px) {
+ .navbar-nav {
+ float: left;
+ margin: 0
+ }
+ .navbar-nav>li {
+ float: left
+ }
+ .navbar-nav>li>a {
+ padding-top: 15px;
+ padding-bottom: 15px
+ }
+}
+
+.navbar-form {
+ padding: 10px 15px;
+ margin-top: 8px;
+ margin-right: -15px;
+ margin-bottom: 8px;
+ margin-left: -15px;
+ border-top: 1px solid transparent;
+ border-bottom: 1px solid transparent;
+}
+
+@media (min-width:768px) {
+ .navbar-form .form-group {
+ display: inline-block;
+ margin-bottom: 0;
+ vertical-align: middle
+ }
+ .navbar-form .form-control {
+ display: inline-block;
+ width: auto;
+ vertical-align: middle
+ }
+ .navbar-form .form-control-static {
+ display: inline-block
+ }
+ .navbar-form .input-group {
+ display: inline-table;
+ vertical-align: middle
+ }
+ .navbar-form .input-group .form-control,
+ .navbar-form .input-group .input-group-addon,
+ .navbar-form .input-group .input-group-btn {
+ width: auto
+ }
+ .navbar-form .input-group>.form-control {
+ width: 100%
+ }
+ .navbar-form .control-label {
+ margin-bottom: 0;
+ vertical-align: middle
+ }
+ .navbar-form .checkbox,
+ .navbar-form .radio {
+ display: inline-block;
+ margin-top: 0;
+ margin-bottom: 0;
+ vertical-align: middle
+ }
+ .navbar-form .checkbox label,
+ .navbar-form .radio label {
+ padding-left: 0
+ }
+ .navbar-form .checkbox input[type=checkbox],
+ .navbar-form .radio input[type=radio] {
+ position: relative;
+ margin-left: 0
+ }
+ .navbar-form .has-feedback .form-control-feedback {
+ top: 0
+ }
+}
+
+@media (max-width:767px) {
+ .navbar-form .form-group {
+ margin-bottom: 5px
+ }
+ .navbar-form .form-group:last-child {
+ margin-bottom: 0
+ }
+}
+
+@media (min-width:768px) {
+ .navbar-form {
+ width: auto;
+ padding-top: 0;
+ padding-bottom: 0;
+ margin-right: 0;
+ margin-left: 0;
+ border: 0;
+ }
+}
+
+.navbar-nav>li>.dropdown-menu {
+ margin-top: 0;
+ border-top-left-radius: 0;
+ border-top-right-radius: 0
+}
+
+.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu {
+ margin-bottom: 0;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom-right-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.navbar-btn {
+ margin-top: 8px;
+ margin-bottom: 8px
+}
+
+.navbar-btn.btn-sm {
+ margin-top: 10px;
+ margin-bottom: 10px
+}
+
+.navbar-btn.btn-xs {
+ margin-top: 14px;
+ margin-bottom: 14px
+}
+
+.navbar-text {
+ margin-top: 15px;
+ margin-bottom: 15px
+}
+
+@media (min-width:768px) {
+ .navbar-text {
+ float: left;
+ margin-right: 15px;
+ margin-left: 15px
+ }
+}
+
+@media (min-width:768px) {
+ .navbar-left {
+ float: left!important
+ }
+ .navbar-right {
+ float: right!important;
+ margin-right: -15px
+ }
+ .navbar-right~.navbar-right {
+ margin-right: 0
+ }
+}
+
+.navbar-default {
+ background-color: #f8f8f8;
+ border-color: #e7e7e7
+}
+
+.navbar-default .navbar-brand {
+ color: #777
+}
+
+.navbar-default .navbar-brand:focus,
+.navbar-default .navbar-brand:hover {
+ color: #5e5e5e;
+ background-color: transparent
+}
+
+.navbar-default .navbar-text {
+ color: #777
+}
+
+.navbar-default .navbar-nav>li>a {
+ color: #777
+}
+
+.navbar-default .navbar-nav>li>a:focus,
+.navbar-default .navbar-nav>li>a:hover {
+ color: #333;
+ background-color: transparent
+}
+
+.navbar-default .navbar-nav>.active>a,
+.navbar-default .navbar-nav>.active>a:focus,
+.navbar-default .navbar-nav>.active>a:hover {
+ color: #555;
+ background-color: #e7e7e7
+}
+
+.navbar-default .navbar-nav>.disabled>a,
+.navbar-default .navbar-nav>.disabled>a:focus,
+.navbar-default .navbar-nav>.disabled>a:hover {
+ color: #ccc;
+ background-color: transparent
+}
+
+.navbar-default .navbar-toggle {
+ border-color: #ddd
+}
+
+.navbar-default .navbar-toggle:focus,
+.navbar-default .navbar-toggle:hover {
+ background-color: #ddd
+}
+
+.navbar-default .navbar-toggle .icon-bar {
+ background-color: #888
+}
+
+.navbar-default .navbar-collapse,
+.navbar-default .navbar-form {
+ border-color: #e7e7e7
+}
+
+.navbar-default .navbar-nav>.open>a,
+.navbar-default .navbar-nav>.open>a:focus,
+.navbar-default .navbar-nav>.open>a:hover {
+ color: #555;
+ background-color: #e7e7e7
+}
+
+@media (max-width:767px) {
+ .navbar-default .navbar-nav .open .dropdown-menu>li>a {
+ color: #777
+ }
+ .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,
+ .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover {
+ color: #333;
+ background-color: transparent
+ }
+ .navbar-default .navbar-nav .open .dropdown-menu>.active>a,
+ .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,
+ .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover {
+ color: #555;
+ background-color: #e7e7e7
+ }
+ .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,
+ .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,
+ .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover {
+ color: #ccc;
+ background-color: transparent
+ }
+}
+
+.navbar-default .navbar-link {
+ color: #777
+}
+
+.navbar-default .navbar-link:hover {
+ color: #333
+}
+
+.navbar-default .btn-link {
+ color: #777
+}
+
+.navbar-default .btn-link:focus,
+.navbar-default .btn-link:hover {
+ color: #333
+}
+
+.navbar-default .btn-link[disabled]:focus,
+.navbar-default .btn-link[disabled]:hover,
+fieldset[disabled] .navbar-default .btn-link:focus,
+fieldset[disabled] .navbar-default .btn-link:hover {
+ color: #ccc
+}
+
+.navbar-inverse {
+ background-color: #222;
+ border-color: #080808
+}
+
+.navbar-inverse .navbar-brand {
+ color: #9d9d9d
+}
+
+.navbar-inverse .navbar-brand:focus,
+.navbar-inverse .navbar-brand:hover {
+ color: #fff;
+ background-color: transparent
+}
+
+.navbar-inverse .navbar-text {
+ color: #9d9d9d
+}
+
+.navbar-inverse .navbar-nav>li>a {
+ color: #9d9d9d
+}
+
+.navbar-inverse .navbar-nav>li>a:focus,
+.navbar-inverse .navbar-nav>li>a:hover {
+ color: #fff;
+ background-color: transparent
+}
+
+.navbar-inverse .navbar-nav>.active>a,
+.navbar-inverse .navbar-nav>.active>a:focus,
+.navbar-inverse .navbar-nav>.active>a:hover {
+ color: #fff;
+ background-color: #080808
+}
+
+.navbar-inverse .navbar-nav>.disabled>a,
+.navbar-inverse .navbar-nav>.disabled>a:focus,
+.navbar-inverse .navbar-nav>.disabled>a:hover {
+ color: #444;
+ background-color: transparent
+}
+
+.navbar-inverse .navbar-toggle {
+ border-color: #333
+}
+
+.navbar-inverse .navbar-toggle:focus,
+.navbar-inverse .navbar-toggle:hover {
+ background-color: #333
+}
+
+.navbar-inverse .navbar-toggle .icon-bar {
+ background-color: #fff
+}
+
+.navbar-inverse .navbar-collapse,
+.navbar-inverse .navbar-form {
+ border-color: #101010
+}
+
+.navbar-inverse .navbar-nav>.open>a,
+.navbar-inverse .navbar-nav>.open>a:focus,
+.navbar-inverse .navbar-nav>.open>a:hover {
+ color: #fff;
+ background-color: #080808
+}
+
+@media (max-width:767px) {
+ .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header {
+ border-color: #080808
+ }
+ .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
+ background-color: #080808
+ }
+ .navbar-inverse .navbar-nav .open .dropdown-menu>li>a {
+ color: #9d9d9d
+ }
+ .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,
+ .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover {
+ color: #fff;
+ background-color: transparent
+ }
+ .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,
+ .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,
+ .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover {
+ color: #fff;
+ background-color: #080808
+ }
+ .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,
+ .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,
+ .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover {
+ color: #444;
+ background-color: transparent
+ }
+}
+
+.navbar-inverse .navbar-link {
+ color: #9d9d9d
+}
+
+.navbar-inverse .navbar-link:hover {
+ color: #fff
+}
+
+.navbar-inverse .btn-link {
+ color: #9d9d9d
+}
+
+.navbar-inverse .btn-link:focus,
+.navbar-inverse .btn-link:hover {
+ color: #fff
+}
+
+.navbar-inverse .btn-link[disabled]:focus,
+.navbar-inverse .btn-link[disabled]:hover,
+fieldset[disabled] .navbar-inverse .btn-link:focus,
+fieldset[disabled] .navbar-inverse .btn-link:hover {
+ color: #444
+}
+
+.breadcrumb {
+ padding: 8px 15px;
+ margin-bottom: 20px;
+ list-style: none;
+ background-color: #f5f5f5;
+ border-radius: 4px
+}
+
+.breadcrumb>li {
+ display: inline-block
+}
+
+.breadcrumb>li+li:before {
+ padding: 0 5px;
+ color: #ccc;
+ content: "/\00a0"
+}
+
+.breadcrumb>.active {
+ color: #777
+}
+
+.pagination {
+ display: inline-block;
+ padding-left: 0;
+ margin: 20px 0;
+ border-radius: 4px
+}
+
+.pagination>li {
+ display: inline
+}
+
+.pagination>li>a,
+.pagination>li>span {
+ position: relative;
+ float: left;
+ padding: 6px 12px;
+ margin-left: -1px;
+ line-height: 1.42857143;
+ color: #337ab7;
+ text-decoration: none;
+ background-color: #fff;
+ border: 1px solid #ddd
+}
+
+.pagination>li:first-child>a,
+.pagination>li:first-child>span {
+ margin-left: 0;
+ border-top-left-radius: 4px;
+ border-bottom-left-radius: 4px
+}
+
+.pagination>li:last-child>a,
+.pagination>li:last-child>span {
+ border-top-right-radius: 4px;
+ border-bottom-right-radius: 4px
+}
+
+.pagination>li>a:focus,
+.pagination>li>a:hover,
+.pagination>li>span:focus,
+.pagination>li>span:hover {
+ color: #23527c;
+ background-color: #eee;
+ border-color: #ddd
+}
+
+.pagination>.active>a,
+.pagination>.active>a:focus,
+.pagination>.active>a:hover,
+.pagination>.active>span,
+.pagination>.active>span:focus,
+.pagination>.active>span:hover {
+ z-index: 2;
+ color: #fff;
+ cursor: default;
+ background-color: #337ab7;
+ border-color: #337ab7
+}
+
+.pagination>.disabled>a,
+.pagination>.disabled>a:focus,
+.pagination>.disabled>a:hover,
+.pagination>.disabled>span,
+.pagination>.disabled>span:focus,
+.pagination>.disabled>span:hover {
+ color: #777;
+ cursor: not-allowed;
+ background-color: #fff;
+ border-color: #ddd
+}
+
+.pagination-lg>li>a,
+.pagination-lg>li>span {
+ padding: 10px 16px;
+ font-size: 18px
+}
+
+.pagination-lg>li:first-child>a,
+.pagination-lg>li:first-child>span {
+ border-top-left-radius: 6px;
+ border-bottom-left-radius: 6px
+}
+
+.pagination-lg>li:last-child>a,
+.pagination-lg>li:last-child>span {
+ border-top-right-radius: 6px;
+ border-bottom-right-radius: 6px
+}
+
+.pagination-sm>li>a,
+.pagination-sm>li>span {
+ padding: 5px 10px;
+ font-size: 12px
+}
+
+.pagination-sm>li:first-child>a,
+.pagination-sm>li:first-child>span {
+ border-top-left-radius: 3px;
+ border-bottom-left-radius: 3px
+}
+
+.pagination-sm>li:last-child>a,
+.pagination-sm>li:last-child>span {
+ border-top-right-radius: 3px;
+ border-bottom-right-radius: 3px
+}
+
+.pager {
+ padding-left: 0;
+ margin: 20px 0;
+ text-align: center;
+ list-style: none
+}
+
+.pager li {
+ display: inline
+}
+
+.pager li>a,
+.pager li>span {
+ display: inline-block;
+ padding: 5px 14px;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-radius: 15px
+}
+
+.pager li>a:focus,
+.pager li>a:hover {
+ text-decoration: none;
+ background-color: #eee
+}
+
+.pager .next>a,
+.pager .next>span {
+ float: right
+}
+
+.pager .previous>a,
+.pager .previous>span {
+ float: left
+}
+
+.pager .disabled>a,
+.pager .disabled>a:focus,
+.pager .disabled>a:hover,
+.pager .disabled>span {
+ color: #777;
+ cursor: not-allowed;
+ background-color: #fff
+}
+
+.label {
+ display: inline;
+ padding: .2em .6em .3em;
+ font-size: 75%;
+ font-weight: 700;
+ line-height: 1;
+ color: #fff;
+ text-align: center;
+ white-space: nowrap;
+ vertical-align: baseline;
+ border-radius: .25em
+}
+
+a.label:focus,
+a.label:hover {
+ color: #fff;
+ text-decoration: none;
+ cursor: pointer
+}
+
+.label:empty {
+ display: none
+}
+
+.btn .label {
+ position: relative;
+ top: -1px
+}
+
+.label-default {
+ background-color: #777
+}
+
+.label-default[href]:focus,
+.label-default[href]:hover {
+ background-color: #5e5e5e
+}
+
+.label-primary {
+ background-color: #337ab7
+}
+
+.label-primary[href]:focus,
+.label-primary[href]:hover {
+ background-color: #286090
+}
+
+.label-success {
+ background-color: #5cb85c
+}
+
+.label-success[href]:focus,
+.label-success[href]:hover {
+ background-color: #449d44
+}
+
+.label-info {
+ background-color: #5bc0de
+}
+
+.label-info[href]:focus,
+.label-info[href]:hover {
+ background-color: #31b0d5
+}
+
+.label-warning {
+ background-color: #f0ad4e
+}
+
+.label-warning[href]:focus,
+.label-warning[href]:hover {
+ background-color: #ec971f
+}
+
+.label-danger {
+ background-color: #d9534f
+}
+
+.label-danger[href]:focus,
+.label-danger[href]:hover {
+ background-color: #c9302c
+}
+
+.badge {
+ display: inline-block;
+ min-width: 10px;
+ padding: 3px 7px;
+ font-size: 12px;
+ font-weight: 700;
+ line-height: 1;
+ color: #fff;
+ text-align: center;
+ white-space: nowrap;
+ vertical-align: baseline;
+ background-color: #777;
+ border-radius: 10px
+}
+
+.badge:empty {
+ display: none
+}
+
+.btn .badge {
+ position: relative;
+ top: -1px
+}
+
+.btn-xs .badge {
+ top: 0;
+ padding: 1px 5px
+}
+
+a.badge:focus,
+a.badge:hover {
+ color: #fff;
+ text-decoration: none;
+ cursor: pointer
+}
+
+.list-group-item.active>.badge,
+.nav-pills>.active>a>.badge {
+ color: #337ab7;
+ background-color: #fff
+}
+
+.list-group-item>.badge {
+ float: right
+}
+
+.list-group-item>.badge+.badge {
+ margin-right: 5px
+}
+
+.nav-pills>li>a>.badge {
+ margin-left: 3px
+}
+
+.jumbotron {
+ padding: 30px 15px;
+ margin-bottom: 30px;
+ color: inherit;
+ background-color: #eee
+}
+
+.jumbotron .h1,
+.jumbotron h1 {
+ color: inherit
+}
+
+.jumbotron p {
+ margin-bottom: 15px;
+ font-size: 21px;
+ font-weight: 200
+}
+
+.jumbotron>hr {
+ border-top-color: #d5d5d5
+}
+
+.container .jumbotron,
+.container-fluid .jumbotron {
+ border-radius: 6px
+}
+
+.jumbotron .container {
+ max-width: 100%
+}
+
+@media screen and (min-width:768px) {
+ .jumbotron {
+ padding: 48px 0
+ }
+ .container .jumbotron,
+ .container-fluid .jumbotron {
+ padding-right: 60px;
+ padding-left: 60px
+ }
+ .jumbotron .h1,
+ .jumbotron h1 {
+ font-size: 63px
+ }
+}
+
+.thumbnail {
+ display: block;
+ padding: 4px;
+ margin-bottom: 20px;
+ line-height: 1.42857143;
+ background-color: #fff;
+ border: 1px solid #ddd;
+ border-radius: 4px;
+ -webkit-transition: border .2s ease-in-out;
+ -o-transition: border .2s ease-in-out;
+ transition: border .2s ease-in-out
+}
+
+.thumbnail a>img,
+.thumbnail>img {
+ margin-right: auto;
+ margin-left: auto
+}
+
+a.thumbnail.active,
+a.thumbnail:focus,
+a.thumbnail:hover {
+ border-color: #337ab7
+}
+
+.thumbnail .caption {
+ padding: 9px;
+ color: #333
+}
+
+.alert {
+ padding: 15px;
+ margin-bottom: 20px;
+ border: 1px solid transparent;
+ border-radius: 4px
+}
+
+.alert h4 {
+ margin-top: 0;
+ color: inherit
+}
+
+.alert .alert-link {
+ font-weight: 700
+}
+
+.alert>p,
+.alert>ul {
+ margin-bottom: 0
+}
+
+.alert>p+p {
+ margin-top: 5px
+}
+
+.alert-dismissable,
+.alert-dismissible {
+ padding-right: 35px
+}
+
+.alert-dismissable .close,
+.alert-dismissible .close {
+ position: relative;
+ top: -2px;
+ right: -21px;
+ color: inherit
+}
+
+.alert-success {
+ color: #3c763d;
+ background-color: #dff0d8;
+ border-color: #d6e9c6
+}
+
+.alert-success hr {
+ border-top-color: #c9e2b3
+}
+
+.alert-success .alert-link {
+ color: #2b542c
+}
+
+.alert-info {
+ color: #31708f;
+ background-color: #d9edf7;
+ border-color: #bce8f1
+}
+
+.alert-info hr {
+ border-top-color: #a6e1ec
+}
+
+.alert-info .alert-link {
+ color: #245269
+}
+
+.alert-warning {
+ color: #8a6d3b;
+ background-color: #fcf8e3;
+ border-color: #faebcc
+}
+
+.alert-warning hr {
+ border-top-color: #f7e1b5
+}
+
+.alert-warning .alert-link {
+ color: #66512c
+}
+
+.alert-danger {
+ color: #a94442;
+ background-color: #f2dede;
+ border-color: #ebccd1
+}
+
+.alert-danger hr {
+ border-top-color: #e4b9c0
+}
+
+.alert-danger .alert-link {
+ color: #843534
+}
+
+@-webkit-keyframes progress-bar-stripes {
+ from {
+ background-position: 40px 0
+ }
+ to {
+ background-position: 0 0
+ }
+}
+
+@-o-keyframes progress-bar-stripes {
+ from {
+ background-position: 40px 0
+ }
+ to {
+ background-position: 0 0
+ }
+}
+
+@keyframes progress-bar-stripes {
+ from {
+ background-position: 40px 0
+ }
+ to {
+ background-position: 0 0
+ }
+}
+
+.progress {
+ height: 20px;
+ margin-bottom: 20px;
+ overflow: hidden;
+ background-color: #f5f5f5;
+ border-radius: 4px;
+}
+
+.progress-bar {
+ float: left;
+ width: 0;
+ height: 100%;
+ font-size: 12px;
+ line-height: 20px;
+ color: #fff;
+ text-align: center;
+ background-color: #337ab7;
+ -webkit-transition: width .6s ease;
+ -o-transition: width .6s ease;
+ transition: width .6s ease
+}
+
+.progress-bar-striped,
+.progress-striped .progress-bar {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ -webkit-background-size: 40px 40px;
+ background-size: 40px 40px
+}
+
+.progress-bar.active,
+.progress.active .progress-bar {
+ -webkit-animation: progress-bar-stripes 2s linear infinite;
+ -o-animation: progress-bar-stripes 2s linear infinite;
+ animation: progress-bar-stripes 2s linear infinite
+}
+
+.progress-bar-success {
+ background-color: #5cb85c
+}
+
+.progress-striped .progress-bar-success {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent)
+}
+
+.progress-bar-info {
+ background-color: #5bc0de
+}
+
+.progress-striped .progress-bar-info {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent)
+}
+
+.progress-bar-warning {
+ background-color: #f0ad4e
+}
+
+.progress-striped .progress-bar-warning {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent)
+}
+
+.progress-bar-danger {
+ background-color: #d9534f
+}
+
+.progress-striped .progress-bar-danger {
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent)
+}
+
+.media {
+ margin-top: 15px
+}
+
+.media:first-child {
+ margin-top: 0
+}
+
+.media,
+.media-body {
+ overflow: hidden;
+ zoom: 1
+}
+
+.media-body {
+ width: 10000px
+}
+
+.media-object {
+ display: block
+}
+
+.media-right,
+.media>.pull-right {
+ padding-left: 10px
+}
+
+.media-left,
+.media>.pull-left {
+ padding-right: 10px
+}
+
+.media-body,
+.media-left,
+.media-right {
+ display: table-cell;
+ vertical-align: top
+}
+
+.media-middle {
+ vertical-align: middle
+}
+
+.media-bottom {
+ vertical-align: bottom
+}
+
+.media-heading {
+ margin-top: 0;
+ margin-bottom: 5px
+}
+
+.media-list {
+ padding-left: 0;
+ list-style: none
+}
+
+.list-group {
+ padding-left: 0;
+ margin-bottom: 20px
+}
+
+.list-group-item {
+ position: relative;
+ display: block;
+ padding: 10px 15px;
+ margin-bottom: -1px;
+ background-color: #fff;
+ border: 1px solid #ddd
+}
+
+.list-group-item:first-child {
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px
+}
+
+.list-group-item:last-child {
+ margin-bottom: 0;
+ border-bottom-right-radius: 4px;
+ border-bottom-left-radius: 4px
+}
+
+a.list-group-item {
+ color: #555
+}
+
+a.list-group-item .list-group-item-heading {
+ color: #333
+}
+
+a.list-group-item:focus,
+a.list-group-item:hover {
+ color: #555;
+ text-decoration: none;
+ background-color: #f5f5f5
+}
+
+.list-group-item.disabled,
+.list-group-item.disabled:focus,
+.list-group-item.disabled:hover {
+ color: #777;
+ cursor: not-allowed;
+ background-color: #eee
+}
+
+.list-group-item.disabled .list-group-item-heading,
+.list-group-item.disabled:focus .list-group-item-heading,
+.list-group-item.disabled:hover .list-group-item-heading {
+ color: inherit
+}
+
+.list-group-item.disabled .list-group-item-text,
+.list-group-item.disabled:focus .list-group-item-text,
+.list-group-item.disabled:hover .list-group-item-text {
+ color: #777
+}
+
+.list-group-item.active,
+.list-group-item.active:focus,
+.list-group-item.active:hover {
+ z-index: 2;
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #337ab7
+}
+
+.list-group-item.active .list-group-item-heading,
+.list-group-item.active .list-group-item-heading>.small,
+.list-group-item.active .list-group-item-heading>small,
+.list-group-item.active:focus .list-group-item-heading,
+.list-group-item.active:focus .list-group-item-heading>.small,
+.list-group-item.active:focus .list-group-item-heading>small,
+.list-group-item.active:hover .list-group-item-heading,
+.list-group-item.active:hover .list-group-item-heading>.small,
+.list-group-item.active:hover .list-group-item-heading>small {
+ color: inherit
+}
+
+.list-group-item.active .list-group-item-text,
+.list-group-item.active:focus .list-group-item-text,
+.list-group-item.active:hover .list-group-item-text {
+ color: #c7ddef
+}
+
+.list-group-item-success {
+ color: #3c763d;
+ background-color: #dff0d8
+}
+
+a.list-group-item-success {
+ color: #3c763d
+}
+
+a.list-group-item-success .list-group-item-heading {
+ color: inherit
+}
+
+a.list-group-item-success:focus,
+a.list-group-item-success:hover {
+ color: #3c763d;
+ background-color: #d0e9c6
+}
+
+a.list-group-item-success.active,
+a.list-group-item-success.active:focus,
+a.list-group-item-success.active:hover {
+ color: #fff;
+ background-color: #3c763d;
+ border-color: #3c763d
+}
+
+.list-group-item-info {
+ color: #31708f;
+ background-color: #d9edf7
+}
+
+a.list-group-item-info {
+ color: #31708f
+}
+
+a.list-group-item-info .list-group-item-heading {
+ color: inherit
+}
+
+a.list-group-item-info:focus,
+a.list-group-item-info:hover {
+ color: #31708f;
+ background-color: #c4e3f3
+}
+
+a.list-group-item-info.active,
+a.list-group-item-info.active:focus,
+a.list-group-item-info.active:hover {
+ color: #fff;
+ background-color: #31708f;
+ border-color: #31708f
+}
+
+.list-group-item-warning {
+ color: #8a6d3b;
+ background-color: #fcf8e3
+}
+
+a.list-group-item-warning {
+ color: #8a6d3b
+}
+
+a.list-group-item-warning .list-group-item-heading {
+ color: inherit
+}
+
+a.list-group-item-warning:focus,
+a.list-group-item-warning:hover {
+ color: #8a6d3b;
+ background-color: #faf2cc
+}
+
+a.list-group-item-warning.active,
+a.list-group-item-warning.active:focus,
+a.list-group-item-warning.active:hover {
+ color: #fff;
+ background-color: #8a6d3b;
+ border-color: #8a6d3b
+}
+
+.list-group-item-danger {
+ color: #a94442;
+ background-color: #f2dede
+}
+
+a.list-group-item-danger {
+ color: #a94442
+}
+
+a.list-group-item-danger .list-group-item-heading {
+ color: inherit
+}
+
+a.list-group-item-danger:focus,
+a.list-group-item-danger:hover {
+ color: #a94442;
+ background-color: #ebcccc
+}
+
+a.list-group-item-danger.active,
+a.list-group-item-danger.active:focus,
+a.list-group-item-danger.active:hover {
+ color: #fff;
+ background-color: #a94442;
+ border-color: #a94442
+}
+
+.list-group-item-heading {
+ margin-top: 0;
+ margin-bottom: 5px
+}
+
+.list-group-item-text {
+ margin-bottom: 0;
+ line-height: 1.3
+}
+
+.panel {
+ margin-bottom: 20px;
+ background-color: #fff;
+ border: 1px solid transparent;
+ border-radius: 4px;
+}
+
+.panel-body {
+ padding: 15px
+}
+
+.panel-heading {
+ padding: 10px 15px;
+ border-bottom: 1px solid transparent;
+ border-top-left-radius: 3px;
+ border-top-right-radius: 3px
+}
+
+.panel-heading>.dropdown .dropdown-toggle {
+ color: inherit
+}
+
+.panel-title {
+ margin-top: 0;
+ margin-bottom: 0;
+ font-size: 16px;
+ color: inherit
+}
+
+.panel-title>.small,
+.panel-title>.small>a,
+.panel-title>a,
+.panel-title>small,
+.panel-title>small>a {
+ color: inherit
+}
+
+.panel-footer {
+ padding: 10px 15px;
+ background-color: #f5f5f5;
+ border-top: 1px solid #ddd;
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px
+}
+
+.panel>.list-group,
+.panel>.panel-collapse>.list-group {
+ margin-bottom: 0
+}
+
+.panel>.list-group .list-group-item,
+.panel>.panel-collapse>.list-group .list-group-item {
+ border-width: 1px 0;
+ border-radius: 0
+}
+
+.panel>.list-group:first-child .list-group-item:first-child,
+.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child {
+ border-top: 0;
+ border-top-left-radius: 3px;
+ border-top-right-radius: 3px
+}
+
+.panel>.list-group:last-child .list-group-item:last-child,
+.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child {
+ border-bottom: 0;
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px
+}
+
+.panel-heading+.list-group .list-group-item:first-child {
+ border-top-width: 0
+}
+
+.list-group+.panel-footer {
+ border-top-width: 0
+}
+
+.panel>.panel-collapse>.table,
+.panel>.table,
+.panel>.table-responsive>.table {
+ margin-bottom: 0
+}
+
+.panel>.panel-collapse>.table caption,
+.panel>.table caption,
+.panel>.table-responsive>.table caption {
+ padding-right: 15px;
+ padding-left: 15px
+}
+
+.panel>.table-responsive:first-child>.table:first-child,
+.panel>.table:first-child {
+ border-top-left-radius: 3px;
+ border-top-right-radius: 3px
+}
+
+.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,
+.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,
+.panel>.table:first-child>tbody:first-child>tr:first-child,
+.panel>.table:first-child>thead:first-child>tr:first-child {
+ border-top-left-radius: 3px;
+ border-top-right-radius: 3px
+}
+
+.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,
+.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,
+.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,
+.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,
+.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,
+.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,
+.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,
+.panel>.table:first-child>thead:first-child>tr:first-child th:first-child {
+ border-top-left-radius: 3px
+}
+
+.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,
+.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,
+.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,
+.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,
+.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,
+.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,
+.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,
+.panel>.table:first-child>thead:first-child>tr:first-child th:last-child {
+ border-top-right-radius: 3px
+}
+
+.panel>.table-responsive:last-child>.table:last-child,
+.panel>.table:last-child {
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px
+}
+
+.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,
+.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,
+.panel>.table:last-child>tbody:last-child>tr:last-child,
+.panel>.table:last-child>tfoot:last-child>tr:last-child {
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px
+}
+
+.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,
+.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,
+.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,
+.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,
+.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,
+.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,
+.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,
+.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child {
+ border-bottom-left-radius: 3px
+}
+
+.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,
+.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,
+.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,
+.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,
+.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,
+.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,
+.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,
+.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child {
+ border-bottom-right-radius: 3px
+}
+
+.panel>.panel-body+.table,
+.panel>.panel-body+.table-responsive,
+.panel>.table+.panel-body,
+.panel>.table-responsive+.panel-body {
+ border-top: 1px solid #ddd
+}
+
+.panel>.table>tbody:first-child>tr:first-child td,
+.panel>.table>tbody:first-child>tr:first-child th {
+ border-top: 0
+}
+
+.panel>.table-bordered,
+.panel>.table-responsive>.table-bordered {
+ border: 0
+}
+
+.panel>.table-bordered>tbody>tr>td:first-child,
+.panel>.table-bordered>tbody>tr>th:first-child,
+.panel>.table-bordered>tfoot>tr>td:first-child,
+.panel>.table-bordered>tfoot>tr>th:first-child,
+.panel>.table-bordered>thead>tr>td:first-child,
+.panel>.table-bordered>thead>tr>th:first-child,
+.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,
+.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,
+.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,
+.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,
+.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,
+.panel>.table-responsive>.table-bordered>thead>tr>th:first-child {
+ border-left: 0
+}
+
+.panel>.table-bordered>tbody>tr>td:last-child,
+.panel>.table-bordered>tbody>tr>th:last-child,
+.panel>.table-bordered>tfoot>tr>td:last-child,
+.panel>.table-bordered>tfoot>tr>th:last-child,
+.panel>.table-bordered>thead>tr>td:last-child,
+.panel>.table-bordered>thead>tr>th:last-child,
+.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,
+.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,
+.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,
+.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,
+.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,
+.panel>.table-responsive>.table-bordered>thead>tr>th:last-child {
+ border-right: 0
+}
+
+.panel>.table-bordered>tbody>tr:first-child>td,
+.panel>.table-bordered>tbody>tr:first-child>th,
+.panel>.table-bordered>thead>tr:first-child>td,
+.panel>.table-bordered>thead>tr:first-child>th,
+.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,
+.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,
+.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,
+.panel>.table-responsive>.table-bordered>thead>tr:first-child>th {
+ border-bottom: 0
+}
+
+.panel>.table-bordered>tbody>tr:last-child>td,
+.panel>.table-bordered>tbody>tr:last-child>th,
+.panel>.table-bordered>tfoot>tr:last-child>td,
+.panel>.table-bordered>tfoot>tr:last-child>th,
+.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,
+.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,
+.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,
+.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th {
+ border-bottom: 0
+}
+
+.panel>.table-responsive {
+ margin-bottom: 0;
+ border: 0
+}
+
+.panel-group {
+ margin-bottom: 20px
+}
+
+.panel-group .panel {
+ margin-bottom: 0;
+ border-radius: 4px
+}
+
+.panel-group .panel+.panel {
+ margin-top: 5px
+}
+
+.panel-group .panel-heading {
+ border-bottom: 0
+}
+
+.panel-group .panel-heading+.panel-collapse>.list-group,
+.panel-group .panel-heading+.panel-collapse>.panel-body {
+ border-top: 1px solid #ddd
+}
+
+.panel-group .panel-footer {
+ border-top: 0
+}
+
+.panel-group .panel-footer+.panel-collapse .panel-body {
+ border-bottom: 1px solid #ddd
+}
+
+.panel-default {
+ border-color: #ddd
+}
+
+.panel-default>.panel-heading {
+ color: #333;
+ background-color: #f5f5f5;
+ border-color: #ddd
+}
+
+.panel-default>.panel-heading+.panel-collapse>.panel-body {
+ border-top-color: #ddd
+}
+
+.panel-default>.panel-heading .badge {
+ color: #f5f5f5;
+ background-color: #333
+}
+
+.panel-default>.panel-footer+.panel-collapse>.panel-body {
+ border-bottom-color: #ddd
+}
+
+.panel-primary {
+ border-color: #337ab7
+}
+
+.panel-primary>.panel-heading {
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #337ab7
+}
+
+.panel-primary>.panel-heading+.panel-collapse>.panel-body {
+ border-top-color: #337ab7
+}
+
+.panel-primary>.panel-heading .badge {
+ color: #337ab7;
+ background-color: #fff
+}
+
+.panel-primary>.panel-footer+.panel-collapse>.panel-body {
+ border-bottom-color: #337ab7
+}
+
+.panel-success {
+ border-color: #d6e9c6
+}
+
+.panel-success>.panel-heading {
+ color: #3c763d;
+ background-color: #dff0d8;
+ border-color: #d6e9c6
+}
+
+.panel-success>.panel-heading+.panel-collapse>.panel-body {
+ border-top-color: #d6e9c6
+}
+
+.panel-success>.panel-heading .badge {
+ color: #dff0d8;
+ background-color: #3c763d
+}
+
+.panel-success>.panel-footer+.panel-collapse>.panel-body {
+ border-bottom-color: #d6e9c6
+}
+
+.panel-info {
+ border-color: #bce8f1
+}
+
+.panel-info>.panel-heading {
+ color: #31708f;
+ background-color: #d9edf7;
+ border-color: #bce8f1
+}
+
+.panel-info>.panel-heading+.panel-collapse>.panel-body {
+ border-top-color: #bce8f1
+}
+
+.panel-info>.panel-heading .badge {
+ color: #d9edf7;
+ background-color: #31708f
+}
+
+.panel-info>.panel-footer+.panel-collapse>.panel-body {
+ border-bottom-color: #bce8f1
+}
+
+.panel-warning {
+ border-color: #faebcc
+}
+
+.panel-warning>.panel-heading {
+ color: #8a6d3b;
+ background-color: #fcf8e3;
+ border-color: #faebcc
+}
+
+.panel-warning>.panel-heading+.panel-collapse>.panel-body {
+ border-top-color: #faebcc
+}
+
+.panel-warning>.panel-heading .badge {
+ color: #fcf8e3;
+ background-color: #8a6d3b
+}
+
+.panel-warning>.panel-footer+.panel-collapse>.panel-body {
+ border-bottom-color: #faebcc
+}
+
+.panel-danger {
+ border-color: #ebccd1
+}
+
+.panel-danger>.panel-heading {
+ color: #a94442;
+ background-color: #f2dede;
+ border-color: #ebccd1
+}
+
+.panel-danger>.panel-heading+.panel-collapse>.panel-body {
+ border-top-color: #ebccd1
+}
+
+.panel-danger>.panel-heading .badge {
+ color: #f2dede;
+ background-color: #a94442
+}
+
+.panel-danger>.panel-footer+.panel-collapse>.panel-body {
+ border-bottom-color: #ebccd1
+}
+
+.embed-responsive {
+ position: relative;
+ display: block;
+ height: 0;
+ padding: 0;
+ overflow: hidden
+}
+
+.embed-responsive .embed-responsive-item,
+.embed-responsive embed,
+.embed-responsive iframe,
+.embed-responsive object,
+.embed-responsive video {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ border: 0
+}
+
+.embed-responsive.embed-responsive-16by9 {
+ padding-bottom: 56.25%
+}
+
+.embed-responsive.embed-responsive-4by3 {
+ padding-bottom: 75%
+}
+
+.well {
+ min-height: 20px;
+ padding: 19px;
+ margin-bottom: 20px;
+ background-color: #f5f5f5;
+ border: 1px solid #e3e3e3;
+ border-radius: 4px;
+}
+
+.well blockquote {
+ border-color: #ddd;
+ border-color: rgba(0, 0, 0, .15)
+}
+
+.well-lg {
+ padding: 24px;
+ border-radius: 6px
+}
+
+.well-sm {
+ padding: 9px;
+ border-radius: 3px
+}
+
+.close {
+ float: right;
+ font-size: 21px;
+ font-weight: 700;
+ line-height: 1;
+ color: #000;
+ filter: alpha(opacity=20);
+ opacity: .2
+}
+
+.close:focus,
+.close:hover {
+ color: #000;
+ text-decoration: none;
+ cursor: pointer;
+ filter: alpha(opacity=50);
+ opacity: .5
+}
+
+button.close {
+ -webkit-appearance: none;
+ padding: 0;
+ cursor: pointer;
+ background: 0 0;
+ border: 0
+}
+
+.modal-open {
+ overflow: hidden
+}
+
+.modal {
+ position: fixed;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 1040;
+ display: none;
+ overflow: hidden;
+ -webkit-overflow-scrolling: touch;
+ outline: 0
+}
+
+.modal.fade .modal-dialog {
+ -webkit-transition: -webkit-transform .3s ease-out;
+ -o-transition: -o-transform .3s ease-out;
+ transition: transform .3s ease-out;
+ -webkit-transform: translate(0, -25%);
+ -ms-transform: translate(0, -25%);
+ -o-transform: translate(0, -25%);
+ transform: translate(0, -25%)
+}
+
+.modal.in .modal-dialog {
+ -webkit-transform: translate(0, 0);
+ -ms-transform: translate(0, 0);
+ -o-transform: translate(0, 0);
+ transform: translate(0, 0)
+}
+
+.modal-open .modal {
+ overflow-x: hidden;
+ overflow-y: auto
+}
+
+.modal-dialog {
+ position: relative;
+ width: auto;
+ margin: 10px
+}
+
+.modal-content {
+ position: relative;
+ background-color: #fff;
+ -webkit-background-clip: padding-box;
+ background-clip: padding-box;
+ border: 1px solid #999;
+ border: 1px solid rgba(0, 0, 0, .2);
+ border-radius: 6px;
+ outline: 0;
+}
+
+.modal-backdrop {
+ position: absolute;
+ top: 0;
+ right: 0;
+ left: 0;
+ background-color: #000
+}
+
+.modal-backdrop.fade {
+ filter: alpha(opacity=0);
+ opacity: 0
+}
+
+.modal-backdrop.in {
+ filter: alpha(opacity=50);
+ opacity: .5
+}
+
+.modal-header {
+ min-height: 16.43px;
+ padding: 15px;
+ border-bottom: 1px solid #e5e5e5
+}
+
+.modal-header .close {
+ margin-top: -2px
+}
+
+.modal-title {
+ margin: 0;
+ line-height: 1.42857143
+}
+
+.modal-body {
+ position: relative;
+ padding: 15px
+}
+
+.modal-footer {
+ padding: 15px;
+ text-align: right;
+ border-top: 1px solid #e5e5e5
+}
+
+.modal-footer .btn+.btn {
+ margin-bottom: 0;
+ margin-left: 5px
+}
+
+.modal-footer .btn-group .btn+.btn {
+ margin-left: -1px
+}
+
+.modal-footer .btn-block+.btn-block {
+ margin-left: 0
+}
+
+.modal-scrollbar-measure {
+ position: absolute;
+ top: -9999px;
+ width: 50px;
+ height: 50px;
+ overflow: scroll
+}
+
+@media (min-width:768px) {
+ .modal-dialog {
+ width: 600px;
+ margin: 30px auto
+ }
+ .modal-content {
+ }
+ .modal-sm {
+ width: 300px
+ }
+}
+
+@media (min-width:992px) {
+ .modal-lg {
+ width: 900px
+ }
+}
+
+.tooltip {
+ position: absolute;
+ z-index: 1070;
+ display: block;
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size: 12px;
+ font-weight: 400;
+ line-height: 1.4;
+ visibility: visible;
+ filter: alpha(opacity=0);
+ opacity: 0
+}
+
+.tooltip.in {
+ filter: alpha(opacity=90);
+ opacity: .9
+}
+
+.tooltip.top {
+ padding: 5px 0;
+ margin-top: -3px
+}
+
+.tooltip.right {
+ padding: 0 5px;
+ margin-left: 3px
+}
+
+.tooltip.bottom {
+ padding: 5px 0;
+ margin-top: 3px
+}
+
+.tooltip.left {
+ padding: 0 5px;
+ margin-left: -3px
+}
+
+.tooltip-inner {
+ max-width: 200px;
+ padding: 3px 8px;
+ color: #fff;
+ text-align: center;
+ text-decoration: none;
+ background-color: #000;
+ border-radius: 4px
+}
+
+.tooltip-arrow {
+ position: absolute;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid
+}
+
+.tooltip.top .tooltip-arrow {
+ bottom: 0;
+ left: 50%;
+ margin-left: -5px;
+ border-width: 5px 5px 0;
+ border-top-color: #000
+}
+
+.tooltip.top-left .tooltip-arrow {
+ right: 5px;
+ bottom: 0;
+ margin-bottom: -5px;
+ border-width: 5px 5px 0;
+ border-top-color: #000
+}
+
+.tooltip.top-right .tooltip-arrow {
+ bottom: 0;
+ left: 5px;
+ margin-bottom: -5px;
+ border-width: 5px 5px 0;
+ border-top-color: #000
+}
+
+.tooltip.right .tooltip-arrow {
+ top: 50%;
+ left: 0;
+ margin-top: -5px;
+ border-width: 5px 5px 5px 0;
+ border-right-color: #000
+}
+
+.tooltip.left .tooltip-arrow {
+ top: 50%;
+ right: 0;
+ margin-top: -5px;
+ border-width: 5px 0 5px 5px;
+ border-left-color: #000
+}
+
+.tooltip.bottom .tooltip-arrow {
+ top: 0;
+ left: 50%;
+ margin-left: -5px;
+ border-width: 0 5px 5px;
+ border-bottom-color: #000
+}
+
+.tooltip.bottom-left .tooltip-arrow {
+ top: 0;
+ right: 5px;
+ margin-top: -5px;
+ border-width: 0 5px 5px;
+ border-bottom-color: #000
+}
+
+.tooltip.bottom-right .tooltip-arrow {
+ top: 0;
+ left: 5px;
+ margin-top: -5px;
+ border-width: 0 5px 5px;
+ border-bottom-color: #000
+}
+
+.popover {
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: 1060;
+ display: none;
+ max-width: 276px;
+ padding: 1px;
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size: 14px;
+ font-weight: 400;
+ line-height: 1.42857143;
+ text-align: left;
+ white-space: normal;
+ background-color: #fff;
+ -webkit-background-clip: padding-box;
+ background-clip: padding-box;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0, 0, 0, .2);
+ border-radius: 6px;
+}
+
+.popover.top {
+ margin-top: -10px
+}
+
+.popover.right {
+ margin-left: 10px
+}
+
+.popover.bottom {
+ margin-top: 10px
+}
+
+.popover.left {
+ margin-left: -10px
+}
+
+.popover-title {
+ padding: 8px 14px;
+ margin: 0;
+ font-size: 14px;
+ background-color: #f7f7f7;
+ border-bottom: 1px solid #ebebeb;
+ border-radius: 5px 5px 0 0
+}
+
+.popover-content {
+ padding: 9px 14px
+}
+
+.popover>.arrow,
+.popover>.arrow:after {
+ position: absolute;
+ display: block;
+ width: 0;
+ height: 0;
+ border-color: transparent;
+ border-style: solid
+}
+
+.popover>.arrow {
+ border-width: 11px
+}
+
+.popover>.arrow:after {
+ content: "";
+ border-width: 10px
+}
+
+.popover.top>.arrow {
+ bottom: -11px;
+ left: 50%;
+ margin-left: -11px;
+ border-top-color: #999;
+ border-top-color: rgba(0, 0, 0, .25);
+ border-bottom-width: 0
+}
+
+.popover.top>.arrow:after {
+ bottom: 1px;
+ margin-left: -10px;
+ content: " ";
+ border-top-color: #fff;
+ border-bottom-width: 0
+}
+
+.popover.right>.arrow {
+ top: 50%;
+ left: -11px;
+ margin-top: -11px;
+ border-right-color: #999;
+ border-right-color: rgba(0, 0, 0, .25);
+ border-left-width: 0
+}
+
+.popover.right>.arrow:after {
+ bottom: -10px;
+ left: 1px;
+ content: " ";
+ border-right-color: #fff;
+ border-left-width: 0
+}
+
+.popover.bottom>.arrow {
+ top: -11px;
+ left: 50%;
+ margin-left: -11px;
+ border-top-width: 0;
+ border-bottom-color: #999;
+ border-bottom-color: rgba(0, 0, 0, .25)
+}
+
+.popover.bottom>.arrow:after {
+ top: 1px;
+ margin-left: -10px;
+ content: " ";
+ border-top-width: 0;
+ border-bottom-color: #fff
+}
+
+.popover.left>.arrow {
+ top: 50%;
+ right: -11px;
+ margin-top: -11px;
+ border-right-width: 0;
+ border-left-color: #999;
+ border-left-color: rgba(0, 0, 0, .25)
+}
+
+.popover.left>.arrow:after {
+ right: 1px;
+ bottom: -10px;
+ content: " ";
+ border-right-width: 0;
+ border-left-color: #fff
+}
+
+
+@media screen and (min-width:768px) {
+ .carousel-control .glyphicon-chevron-left,
+ .carousel-control .glyphicon-chevron-right,
+ .carousel-control .icon-next,
+ .carousel-control .icon-prev {
+ width: 30px;
+ height: 30px;
+ margin-top: -15px;
+ font-size: 30px
+ }
+ .carousel-control .glyphicon-chevron-left,
+ .carousel-control .icon-prev {
+ margin-left: -15px
+ }
+ .carousel-control .glyphicon-chevron-right,
+ .carousel-control .icon-next {
+ margin-right: -15px
+ }
+ .carousel-caption {
+ right: 20%;
+ left: 20%;
+ padding-bottom: 30px
+ }
+ .carousel-indicators {
+ bottom: 20px
+ }
+}
+
+.btn-group-vertical>.btn-group:after,
+.btn-group-vertical>.btn-group:before,
+.btn-toolbar:after,
+.btn-toolbar:before,
+.clearfix:after,
+.clearfix:before,
+.container-fluid:after,
+.container-fluid:before,
+.container:after,
+.container:before,
+.dl-horizontal dd:after,
+.dl-horizontal dd:before,
+.form-horizontal .form-group:after,
+.form-horizontal .form-group:before,
+.modal-footer:after,
+.modal-footer:before,
+.nav:after,
+.nav:before,
+.navbar-collapse:after,
+.navbar-collapse:before,
+.navbar-header:after,
+.navbar-header:before,
+.navbar:after,
+.navbar:before,
+.pager:after,
+.pager:before,
+.panel-body:after,
+.panel-body:before,
+.row:after,
+.row:before {
+ display: table;
+ content: " "
+}
+
+.btn-group-vertical>.btn-group:after,
+.btn-toolbar:after,
+.clearfix:after,
+.container-fluid:after,
+.container:after,
+.dl-horizontal dd:after,
+.form-horizontal .form-group:after,
+.modal-footer:after,
+.nav:after,
+.navbar-collapse:after,
+.navbar-header:after,
+.navbar:after,
+.pager:after,
+.panel-body:after,
+.row:after {
+ clear: both
+}
+
+.center-block {
+ display: block;
+ margin-right: auto;
+ margin-left: auto
+}
+
+.pull-right {
+ float: right!important
+}
+
+.pull-left {
+ float: left!important
+}
+
+.hide {
+ display: none!important
+}
+
+.show {
+ display: block!important
+}
+
+.invisible {
+ visibility: hidden
+}
+
+.text-hide {
+ font: 0/0 a;
+ color: transparent;
+ background-color: transparent;
+ border: 0
+}
+
+.hidden {
+ display: none!important;
+ visibility: hidden!important
+}
+
+.affix {
+ position: fixed
+}
+
+@-ms-viewport {
+ width: device-width
+}
+
+.visible-lg,
+.visible-md,
+.visible-sm,
+.visible-xs {
+ display: none!important
+}
+
+.visible-lg-block,
+.visible-lg-inline,
+.visible-lg-inline-block,
+.visible-md-block,
+.visible-md-inline,
+.visible-md-inline-block,
+.visible-sm-block,
+.visible-sm-inline,
+.visible-sm-inline-block,
+.visible-xs-block,
+.visible-xs-inline,
+.visible-xs-inline-block {
+ display: none!important
+}
+
+@media (max-width:767px) {
+ .visible-xs {
+ display: block!important
+ }
+ table.visible-xs {
+ display: table
+ }
+ tr.visible-xs {
+ display: table-row!important
+ }
+ td.visible-xs,
+ th.visible-xs {
+ display: table-cell!important
+ }
+}
+
+@media (max-width:767px) {
+ .visible-xs-block {
+ display: block!important
+ }
+}
+
+@media (max-width:767px) {
+ .visible-xs-inline {
+ display: inline!important
+ }
+}
+
+@media (max-width:767px) {
+ .visible-xs-inline-block {
+ display: inline-block!important
+ }
+}
+
+@media (min-width:768px) and (max-width:991px) {
+ .visible-sm {
+ display: block!important
+ }
+ table.visible-sm {
+ display: table
+ }
+ tr.visible-sm {
+ display: table-row!important
+ }
+ td.visible-sm,
+ th.visible-sm {
+ display: table-cell!important
+ }
+}
+
+@media (min-width:768px) and (max-width:991px) {
+ .visible-sm-block {
+ display: block!important
+ }
+}
+
+@media (min-width:768px) and (max-width:991px) {
+ .visible-sm-inline {
+ display: inline!important
+ }
+}
+
+@media (min-width:768px) and (max-width:991px) {
+ .visible-sm-inline-block {
+ display: inline-block!important
+ }
+}
+
+@media (min-width:992px) and (max-width:1199px) {
+ .visible-md {
+ display: block!important
+ }
+ table.visible-md {
+ display: table
+ }
+ tr.visible-md {
+ display: table-row!important
+ }
+ td.visible-md,
+ th.visible-md {
+ display: table-cell!important
+ }
+}
+
+@media (min-width:992px) and (max-width:1199px) {
+ .visible-md-block {
+ display: block!important
+ }
+}
+
+@media (min-width:992px) and (max-width:1199px) {
+ .visible-md-inline {
+ display: inline!important
+ }
+}
+
+@media (min-width:992px) and (max-width:1199px) {
+ .visible-md-inline-block {
+ display: inline-block!important
+ }
+}
+
+@media (min-width:1200px) {
+ .visible-lg {
+ display: block!important
+ }
+ table.visible-lg {
+ display: table
+ }
+ tr.visible-lg {
+ display: table-row!important
+ }
+ td.visible-lg,
+ th.visible-lg {
+ display: table-cell!important
+ }
+}
+
+@media (min-width:1200px) {
+ .visible-lg-block {
+ display: block!important
+ }
+}
+
+@media (min-width:1200px) {
+ .visible-lg-inline {
+ display: inline!important
+ }
+}
+
+@media (min-width:1200px) {
+ .visible-lg-inline-block {
+ display: inline-block!important
+ }
+}
+
+@media (max-width:767px) {
+ .hidden-xs {
+ display: none!important
+ }
+}
+
+@media (min-width:768px) and (max-width:991px) {
+ .hidden-sm {
+ display: none!important
+ }
+}
+
+@media (min-width:992px) and (max-width:1199px) {
+ .hidden-md {
+ display: none!important
+ }
+}
+
+@media (min-width:1200px) {
+ .hidden-lg {
+ display: none!important
+ }
+}
+
+.visible-print {
+ display: none!important
+}
+
+@media print {
+ .visible-print {
+ display: block!important
+ }
+ table.visible-print {
+ display: table
+ }
+ tr.visible-print {
+ display: table-row!important
+ }
+ td.visible-print,
+ th.visible-print {
+ display: table-cell!important
+ }
+}
+
+.visible-print-block {
+ display: none!important
+}
+
+@media print {
+ .visible-print-block {
+ display: block!important
+ }
+}
+
+.visible-print-inline {
+ display: none!important
+}
+
+@media print {
+ .visible-print-inline {
+ display: inline!important
+ }
+}
+
+.visible-print-inline-block {
+ display: none!important
+}
+
+@media print {
+ .visible-print-inline-block {
+ display: inline-block!important
+ }
+}
+
+@media print {
+ .hidden-print {
+ display: none!important
+ }
+}
diff --git a/docs/css/boxshadowproperties.css b/docs/css/boxshadowproperties.css
new file mode 100644
index 0000000..0f2e1e6
--- /dev/null
+++ b/docs/css/boxshadowproperties.css
@@ -0,0 +1,24 @@
+/* box-shadow fonts return errors with prince, so extracting here to put in web output only */
+
+#search-demo-container ul#results-container {
+ box-shadow: 2px 3px 2px #dedede;
+}
+
+
+hr.shaded {
+ box-shadow: inset 0 6px 6px -6px rgba(0,0,0,0.5);
+}
+
+.videoThumbs img {
+ box-shadow: 2px 2px 1px #f0f0f0;
+}
+
+.box {
+ box-shadow: 2px 2px 4px #dedede;
+}
+
+@media (max-width: 1200px) {
+ .navbar-collapse {
+ box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
+ }
+}
diff --git a/docs/css/customstyles.css b/docs/css/customstyles.css
new file mode 100644
index 0000000..bf54275
--- /dev/null
+++ b/docs/css/customstyles.css
@@ -0,0 +1,1344 @@
+.anchor-link {
+ display: none;
+}
+
+body {
+ font-size:15px;
+}
+
+.bs-callout {
+ padding: 20px;
+ margin: 20px 0;
+ border: 1px solid #eee;
+ border-left-width: 5px;
+ border-radius: 3px;
+}
+.bs-callout h4 {
+ margin-top: 0;
+ margin-bottom: 5px;
+}
+.bs-callout p:last-child {
+ margin-bottom: 0;
+}
+.bs-callout code {
+ border-radius: 3px;
+}
+.bs-callout+.bs-callout {
+ margin-top: -5px;
+}
+.bs-callout-default {
+ border-left-color: #777;
+}
+.bs-callout-default h4 {
+ color: #777;
+}
+.bs-callout-primary {
+ border-left-color: #428bca;
+}
+.bs-callout-primary h4 {
+ color: #428bca;
+}
+.bs-callout-success {
+ border-left-color: #5cb85c;
+}
+.bs-callout-success h4 {
+ color: #5cb85c;
+}
+.bs-callout-danger {
+ border-left-color: #d9534f;
+}
+.bs-callout-danger h4 {
+ color: #d9534f;
+}
+.bs-callout-warning {
+ border-left-color: #f0ad4e;
+}
+.bs-callout-warning h4 {
+ color: #f0ad4e;
+}
+.bs-callout-info {
+ border-left-color: #5bc0de;
+}
+.bs-callout-info h4 {
+ color: #5bc0de;
+}
+
+
+.gi-2x{font-size: 2em;}
+.gi-3x{font-size: 3em;}
+.gi-4x{font-size: 4em;}
+.gi-5x{font-size: 5em;}
+
+
+.breadcrumb > .active {color: #777 !important;}
+
+/* make room for the nav bar */
+h1[id]
+/*,h2[id],
+h3[id],
+h4[id],
+h5[id],
+h6[id],
+dt[id]*/
+{
+padding-top: 60px;
+margin-top: -40px
+}
+
+.output_html a{
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
+ margin: 25px 0px;
+ display: block;
+ padding: 9.5px;
+ font-size: 13px;
+ line-height: 1.42857143;
+ color: #333;
+ word-break: break-all;
+ word-wrap: break-word;
+ background-color: #F5F5F5;
+ border: 1px solid #FFA500;
+ border-radius: 4px;
+ white-space: pre-wrap;
+ box-sizing: border-box;
+ overflow: auto;
+}
+
+.col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9 {
+ float: left;
+}
+
+.col-md-9 {
+ width: 75%;
+}
+
+/* From: https://www.w3schools.com/howto/tryit.asp?filename=tryhow_css_download_button' */
+.cstm_btn a{
+ background-color: DodgerBlue;
+ border: none;
+ color: white;
+ padding: 12px 30px;
+ cursor: pointer;
+ font-size: 20px;
+ box-sizing: 15px;
+ position: absolute;
+}
+
+/* Darker background on mouse-over */
+.cstm_btn a:hover {
+ background-color: RoyalBlue;
+}
+
+.container #notebook-container{
+ width: 100%;
+ box-sizing: border-box;
+ }
+
+.post-content img {
+ margin: 12px 0px 3px 0px;
+ width: auto;
+ height: auto;
+ max-width: 100%;
+ max-height: 100%;
+}
+
+.post-content ol li, .post-content ul li {
+ /*margin: 10px 0px;*/
+}
+
+.pageSummary {
+ font-size:13px;
+ display:block;
+ margin-bottom:15px;
+ padding-left:20px;
+}
+
+.post-summary {
+ margin-bottom:12px;
+}
+
+.bs-example{
+ margin: 20px;
+}
+
+.breadcrumb li {
+ color: gray;
+}
+
+table {
+ background-color: transparent;
+}
+caption {
+ padding-top: 8px;
+ padding-bottom: 8px;
+ color: #777;
+ text-align: left;
+}
+th {
+ text-align: left;
+}
+table {
+ max-width: 90%;
+ margin-bottom: 20px;
+ border: 1px solid #dedede;
+}
+
+table > thead > tr > th,
+table > tbody > tr > th,
+table > tfoot > tr > th,
+table > thead > tr > td,
+table > tbody > tr > td,
+table > tfoot > tr > td {
+ padding: 8px;
+ line-height: 1.42857143;
+ vertical-align: top;
+ border-top: 1px solid #ddd;
+}
+table > thead > tr > th {
+ vertical-align: bottom;
+ border-bottom: 2px solid #ddd;
+ text-transform: none;
+ background-color: #777;
+ color: white;
+ text-align: left;
+}
+table > caption + thead > tr:first-child > th,
+table > colgroup + thead > tr:first-child > th,
+table > thead:first-child > tr:first-child > th,
+table > caption + thead > tr:first-child > td,
+table > colgroup + thead > tr:first-child > td,
+table > thead:first-child > tr:first-child > td {
+ border-top: 0;
+}
+
+table > tbody > tr:nth-of-type(odd) {
+ background-color: #f9f9f9;
+}
+
+table col[class*="col-"] {
+ position: static;
+ display: table-column;
+ float: none;
+}
+table td[class*="col-"],
+table th[class*="col-"] {
+ position: static;
+ display: table-cell;
+ float: none;
+}
+
+table tr td {
+ hyphens: auto;
+}
+
+
+p.external a {
+ text-align:right;
+ font-size:12px;
+ color: #0088cc;
+ display:inline;
+}
+
+#definition-box-container div a.active {
+ font-weight: bold;
+}
+p.post-meta {font-size: 80%; color: #777;}
+
+.entry-date{font-size:14px;font-size:0.875rem;line-height:1.71429;margin-bottom:0;text-transform:uppercase;}
+
+/* search area */
+#search-demo-container ul#results-container {
+ list-style: none;
+ font-size: 12px;
+ background-color: white;
+ position: absolute;
+ top: 40px; /* if you change anything about the nav, you'll prob. need to reset the top and left values here.*/
+ left: 20px;
+ z-index: -1;
+ width:223px;
+ border-left: 1px solid #dedede;
+}
+
+
+ul#results-container a {
+ background-color: transparent;
+}
+
+ul#results-container a:hover {
+ color: black;
+}
+
+
+#search-demo-container a:hover {
+ color: black;
+}
+#search-input {
+ padding: .5em;
+ margin-left:20px;
+ width:20em;
+ font-size: 0.8em;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ margin-top:10px;
+}
+/* end search */
+
+.filter-options {
+ margin-bottom: 20px;
+}
+.filter-options button {
+ margin: 3px;
+}
+
+a.source_link {
+ float:right;
+ font-size:15px;
+ font-weight:normal;
+}
+
+div#toc ul {
+ font-size: 90%;
+ background-color: whitesmoke;
+ padding: 5px;
+ border-radius: 5px;
+ max-width: 450px;
+ color: gray;
+ list-style-type: none;
+}
+
+/* when using relative fonts like 0.9em or 90%, remember to then set the nested items to 1em or 100%, otherwise each level will get smaller and smaller and less readable */
+div#toc ul li {
+ margin: 8px 0px 8px 22px;
+ font-size: 100%;
+ list-style-type: none;
+}
+
+div#toc ul li ul {
+ font-size: 100%;
+ padding-left:30px;
+ padding-top: 0px;
+ padding-bottom: 0px;
+ list-style-type: none;
+}
+
+div#toc ul li ul li.hide_content::before {
+ content: none;
+}
+
+div#toc >ul::before {
+ content: "Table of Contents";
+ font-weight: 500;
+ color: #555;
+ text-align:center;
+ margin-left:auto;
+ margin-right:auto;
+ width:70px;
+ padding-top:0px;
+ padding-bottom:40px;
+ padding-left:10px;
+}
+
+li.dropdownActive a {
+ font-weight: bold;
+}
+
+
+.post-content a.fa-rss {
+ color: orange;
+}
+
+
+.navbar-inverse .navbar-nav > li > a {
+ background-color: transparent;
+ margin-top:10px;
+}
+
+.post-content .rssfeedLink {
+ color: #248EC2;
+}
+
+footer {
+ font-size: smaller;
+}
+
+/* FAQ page */
+#accordion .panel-heading {
+ font-size: 12px;
+}
+
+a.accordion-toggle, a.accordion-collapsed {
+ font-size: 14px;
+ text-decoration: none;
+}
+
+/* navgoco sidebar styles (customized) */
+.nav, .nav ul, .nav li {
+ list-style: none;
+}
+
+.nav ul {
+ padding: 0;
+ /*margin: 0 0 0 18px;*/
+ margin:0px;
+}
+
+.nav {
+ /* padding: 4px;*/
+ padding:0px;
+ margin: 0px;
+}
+
+.nav > li {
+ margin: 1px 0;
+}
+
+.nav > li li {
+ margin: 2px 0;
+}
+
+.nav a {
+ color: #333;
+ display: block;
+ outline: none;
+ /*-webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ border-radius: 4px;*/
+ text-decoration: none;
+}
+
+.nav li > a > span {
+ float: right;
+ font-size: 19px;
+ font-weight: bolder;
+}
+
+
+.nav li > a > span:after {
+ content: '\25be';
+}
+.nav li.active > a > span:after {
+ content: '\25b4';
+}
+
+.nav a:hover, .nav li.active > a {
+ background-color: #8D8D8D;
+ color: #f5f5f5;
+}
+
+.nav > li.active > a {
+background-color: #347DBE;
+}
+
+.nav li a {
+ font-size: 12px;
+ line-height: 18px;
+ padding: 2px 10px;
+ background-color: #f1f1f1;
+}
+
+.nav > li > a {
+ font-size: 14px;
+ line-height: 20px;
+ padding: 4px 10px;
+}
+
+ul#mysidebar {
+ border-radius:0px;
+}
+
+.nav ul li ul li a {
+ padding-left:40px;
+}
+
+.nav li.thirdlevel > a {
+ color: #248EC2;
+ font-weight:bold;
+ padding-left:20px;
+ background-color: whitesmoke !important;
+}
+
+
+.nav ul li a {
+ background-color: #FAFAFA;
+}
+
+.nav li a {
+ padding-right:10px;
+}
+
+.nav li a:hover {
+ background-color: #8D8D8D;
+}
+
+.nav ul li a {
+ border-top:1px solid whitesmoke;
+ padding-left:10px;
+}
+/* end sidebar */
+
+.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
+ border-radius:5px;
+}
+
+.navbar-inverse .navbar-nav>.open>a, .navbar-inverse .navbar-nav>.open>a:focus, .navbar-inverse .navbar-nav>.open>a:hover {
+ border-radius: 5px;
+}
+
+span.projectTitle {
+ font-family: Helvetica;
+ font-weight: bold;
+}
+
+.footer {
+ text-align: right;
+}
+
+.footerMeta {
+ background-color: whitesmoke;
+ padding: 10px;
+ max-width: 250px;
+ border-radius: 5px;
+ margin-top: 50px;
+ font-style:italic;
+ font-size:12px;
+}
+
+img.screenshotSmall {
+ max-width: 300px;
+}
+
+
+dl dt p {
+ margin-left:20px;
+}
+
+
+dl dd {
+ margin-top:10px;
+ margin-bottom:10px;
+}
+
+dl.dl-horizontal dd {
+ padding-top: 20px;
+}
+
+figcaption {
+
+ padding-bottom:12px;
+ padding-top:6px;
+ max-width: 90%;
+ margin-bottom:20px;
+ font-style: italic;
+ color: gray;
+
+}
+
+.testing {
+ color: orange;
+}
+
+.preference {
+ color: red;
+}
+
+
+table.dataTable thead {
+ background-color: #444;
+}
+table td {
+ hyphens: auto;
+}
+
+section table tr.success {
+ background-color: #dff0d8 !important;
+}
+
+table tr.info {
+ background-color: #d9edf7 !important;
+}
+
+section table tr.warning, table tr.testing, table tr.testing > td.sorting_1 {
+ background-color: #fcf8e3 !important;
+}
+section table tr.danger, table tr.preference, table tr.preference > td.sorting_1 {
+ background-color: #f2dede !important;
+}
+
+.orange {
+ color: orange;
+}
+
+table.profile thead tr th {
+ background-color: #248ec2;
+}
+
+table.request thead tr th {
+ background-color: #ED1951;
+}
+
+.audienceLabel {
+ margin: 10px;
+ float: right;
+ border:1px solid #dedede;
+ padding:7px;
+}
+
+.prefaceAudienceLabel {
+ color: gray;
+ text-align: center;
+ margin:5px;
+}
+span.myLabel {
+ padding-left:10px;
+ padding-right:10px;
+}
+
+button.cursorNorm {
+ cursor: default;
+}
+
+a.dropdown-toggle, .navbar-inverse .navbar-nav > li > a {
+ margin-left: 10px;
+}
+
+hr.faded {
+ border: 0;
+ height: 1px;
+ background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
+ background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
+ background-image: -ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
+ background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
+}
+
+hr.shaded {
+ height: 12px;
+ border: 0;
+ margin-top: 70px;
+ background: white;
+ width: 100%;
+ margin-bottom: 10px;
+}
+
+.fa-6x{font-size:900%;}
+.fa-7x{font-size:1100%;}
+.fa-8x{font-size:1300%;}
+.fa-9x{font-size:1500%;}
+.fa-10x{font-size:1700%;}
+
+i.border {
+ padding: 10px 20px;
+ background-color: whitesmoke;
+}
+
+a[data-toggle] {
+ color: #248EC2;
+}
+
+.summary {
+ font-size:120%;
+ color: #808080;
+ margin:20px 0px 20px 0px;
+ border-left: 5px solid #ED1951;
+ padding-left: 10px;
+
+}
+
+a.fa.fa-envelope-o.mailto {
+ font-weight: 600;
+}
+
+h3 {color: #ED1951; font-weight:normal; font-size:130%;}
+h4 {color: #000000; font-weight:normal; font-size:120%; font-weight:bold;}
+
+.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;}
+ol li ul li {list-style-type: disc;}
+
+li img {clear:both; }
+
+div#toc ul li ul li {
+ list-style-type: none;
+ margin: 5px 0px 0px 0px;
+}
+
+.tab-content {
+ padding: 15px;
+ background-color: #FAFAFA;
+}
+
+span.tagTitle {font-weight: 500;}
+
+li.activeSeries {
+ font-weight: bold;
+}
+
+.seriesContext .dropdown-menu li.active {
+ font-weight: bold;
+ margin-left: 43px;
+ font-size:18px;
+}
+
+.alert-warning {
+ color: #444;
+}
+
+div.alert code, h2 code {
+ background-color: transparent !important;
+}
+/* without this, the links in these notes aren't visible.*/
+.alert a {
+ text-decoration: underline;
+}
+
+div.tags {padding: 10px 5px;}
+
+.tabLabel {
+ font-weight: normal;
+}
+
+hr {
+ background: #999;
+ margin: 30px 0px;
+ width: 90%;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+button.cursorNorm {
+ cursor: pointer;
+}
+
+h2 {
+ font-size:24px;
+ line-height:29px;
+ border-top: 3px solid blue;
+ padding-top: 5px;
+}
+
+span.otherProgrammingLanguages {
+ font-style: normal;
+}
+
+a[data-toggle="tooltip"] {
+ color: #649345;
+ font-style: italic;
+ cursor: default;
+}
+
+.seriesNext, .seriesContext {
+ margin-top: 15px;
+ margin-bottom: 15px;
+}
+
+.seriescontext ol li {
+ list-style-type: upper-roman;
+}
+
+ol.series li {
+ list-style-type: decimal;
+ margin-left: 40px;
+ padding-left: 0px;
+}
+
+.siteTagline {
+ font-size: 200%;
+ font-weight: bold;
+ color: silver;
+ font-family: monospace;
+ text-align: center;
+ line-height: 10px;
+ margin: 20px 0px;
+ display: block;
+}
+
+.versionTagline {
+ text-align: center;
+ margin-bottom: 20px;
+ font-family: courier;
+ 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 {
+ background-color: #FAFAFA;
+}
+.nav ul.series li {
+ list-style: decimal;
+ font-size:12px;
+}
+
+.nav ul.series li a:hover {
+ background-color: gray;
+}
+.nav ul.series {
+ padding-left: 30px;
+}
+
+.nav ul.series {
+ background-color: #FAFAFA;
+}
+
+/*
+a.dropdown-toggle.otherProgLangs {
+ color: #f7e68f !important;
+}
+*/
+
+span.muted {color: #666;}
+
+table code {background-color: transparent;}
+
+.highlight .err {
+ color: #a61717;
+ background-color: transparent !important;
+}
+
+table p {
+ margin-top: 12px;
+ margin-bottom: 12px;
+}
+
+pre, table code {
+ white-space: pre-wrap; /* css-3 */
+ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ word-wrap: break-word; /* Internet Explorer 5.5+ */
+}
+
+pre {
+ /*margin: 25px 0px;*/
+}
+
+#json-box-container pre {
+ margin: 0px;
+}
+
+.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;}
+
+.post-content img.inline {
+ 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;
+ padding: 0px;
+}
+
+.alert {
+ margin-bottom:10px;
+ margin-top:10px;
+}
+
+a.accordion-toggle {
+ font-style: normal;
+}
+
+span.red {
+ color: red;
+ font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
+}
+
+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;
+ }
+ .col-md-9 {
+ width: 95%;
+ }
+}
+
+
+@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%;
+}
+
+
+.post-content img {
+ margin: 12px 0px 3px 0px;
+ width: auto;
+ height: auto;
+ max-width: 100%;
+ max-height: 100%;
+}
+.col-md-9 img {
+ max-width: 100%;
+ max-height: 100%;
+}
+
+
+.post-content img {
+ margin: 12px 0px 3px 0px;
+ width: auto;
+ height: auto;
+ max-width: 100%;
+ max-height: 100%;
+}
+
+.videoThumbs img {
+ float: left;
+ margin:15px 15px 15px 0px;
+ border: 1px solid #dedede;
+}
+
+
+@media only screen and (min-width: 900px), only screen and (min-device-width: 900px) {
+ .col-md-9 img {
+ max-width: 990px;
+ max-height: 700px;
+ }
+}
+
+*:hover > .anchorjs-link {
+ transition: color .25s linear;
+ text-decoration: none;
+}
+
+.kbCaption {
+ color: white;
+ background-color: #444;
+ padding:10px;
+}
+
+/* Strip the outbound icon when this class is present */
+a[href].noCrossRef::after,
+a.no_icon:after
+ {
+ content:"" !important;
+ padding-left: 0;
+}
+
+.btn-default {
+ margin-bottom: 10px;
+}
+
+/* algolia search */
+
+.search {
+ text-align: left;
+}
+.search input {
+ font-size: 20px;
+ width: 300px;
+}
+.results {
+ margin: auto;
+ text-align: left;
+}
+.results ul {
+ list-style-type: none;
+ padding: 0;
+}
+
+/* algolia */
+
+div.results {
+ position: absolute;
+ background-color: white;
+ width: 100%;
+}
+
+.post-meta {
+ font-size: 14px;
+ color: #828282;
+}
+
+.post-link {
+ font-size: 22px;
+}
+
+.post-list p {
+ margin: 10px 0px;
+}
+
+time {
+ margin-right: 10px;
+}
+
+p.post-meta time {
+ margin-right: 0px;
+}
+
+span.label.label-default {
+ background-color: gray;
+}
+
+span.label.label-primary {
+ background-color: #f0ad4e;
+}
+.col-lg-12 .nav li a {background-color: white}
+
+
+.nav li.active > a.subfoldersTitle {
+ background-color: whitesmoke;
+ font-weight: bold;
+ color: black;
+ }
+
+code {
+ color: #1d1f5b;
+ background-color: #f3f3f3;
+}
+
+a code {
+ color: #0082C2;
+}
+
+table th code {
+ color: white;
+}
+
+ol li ul li ol li {
+ list-style: decimal;
+}
+
+ol li ul li ol li ul li{
+ list-style: disc;
+}
+
+.post-content table th {
+ vertical-align: top;
+}
+
+table thead th code.highlighter-rouge {
+ background-color: transparent;
+}
+
+
+.box {
+ padding: 10px;
+ border: 1px solid #888;
+ width: 100px;
+ height: 80px;
+ background-color: #f5f5f5;
+ font-family: Arial;
+ font-size: 12px;
+ hyphens: auto;
+ float: left;
+ font-size: 12px;
+}
+
+.box:hover {
+ background-color: #f0f0f0;
+}
+
+#userMap {
+ overflow-x: auto;
+ overflow-y: auto;
+ padding: 20px;
+ min-width: 770px;
+}
+
+#userMap .active {
+ background-color: #d6f5d6;
+ border:1px solid #555;
+ font-weight: bold;
+}
+
+h2.userMapTitle {
+ font-family: Arial;
+}
+
+#userMap a:hover {
+ text-decoration: none;
+ }
+
+div.arrow {
+ max-width: 50px;
+ margin-left: 15px;
+ margin-right: 15px;
+ font-size: 20px;
+}
+
+div.content {
+ max-width: 110px
+}
+
+#userMap div.arrow, #userMap div.content {
+ float: left;
+}
+
+.clearfix {
+ clear: both;
+}
+
+
+#userMap div.arrow {
+ position: relative;
+ top: 30px;
+}
+
+.box1 {
+ margin-left:0px;
+}
+
+button.btn.btn-default.btn-lg.modalButton1 {
+ margin-left: -20px;
+}
+
+div.box.box1 {
+ margin-left: -20px;
+}
+
+#userMap .btn-lg {
+ width: 100px;
+ height: 80px;
+
+}
+
+#userMap .complexArrow {
+ font-size: 22px;
+ margin: 0px 10px;
+}
+
+
+#userMap .btn-lg .active {
+ background-color: #d6f5d6;
+}
+
+#userMap .btn-lg {
+ white-space: pre-wrap; /* css-3 */
+ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ word-wrap: break-word; /* Internet Explorer 5.5+ */
+ font-size: 14px;
+ }
+
+/*
+ * Let's target IE to respect aspect ratios and sizes for img tags containing SVG files
+ *
+ * [1] IE9
+ * [2] IE10+
+ */
+/* 1 */
+.ie9 img[src$=".svg"] {
+ width: 100%;
+}
+/* 2 */
+@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
+ img[src$=".svg"] {
+ width: 100%;
+ }
+}
+
+h4.panel-title {
+ padding-top: 0px;
+ margin-top: 0px;
+}
+
+/*set navbar breakpoint so that it converts to hamburger earlier */
+
+@media (max-width: 1200px) {
+ .navbar-header {
+ float: none;
+ }
+ .navbar-left,.navbar-right {
+ float: none !important;
+ }
+ .navbar-toggle {
+ display: block;
+ }
+ .navbar-collapse {
+ border-top: 1px solid transparent;
+ }
+ .navbar-fixed-top {
+ top: 0;
+ border-width: 0 0 1px;
+ }
+ .navbar-collapse.collapse {
+ display: none!important;
+ }
+ .navbar-nav {
+ float: none!important;
+ margin-top: 7.5px;
+ }
+ .navbar-nav>li {
+ float: none;
+ }
+ .navbar-nav>li>a {
+ padding-top: 10px;
+ padding-bottom: 10px;
+ }
+ .collapse.in{
+ display:block !important;
+ }
+}
+
+.code_cell {
+ margin: 1.5rem 0px;
+}
+
+.input_area pre {
+ padding-top: 3px;
+ padding-bottom: 3px;
+ margin: 0px;
+ background-color: #f5f1e0;
+ /*border: 0px;*/
+}
+.output_area pre {
+ padding-top: 3px;
+ padding-bottom: 3px;
+ padding-left: 2em;
+ margin: 0px;
+ /*border: 0px;*/
+}
+.pytest_card {
+ padding: 10px 1em 4px 1em;
+ background-color: #eef2ff;
+ border-radius: 5px;
+ margin-bottom: 20px;
+}
+.pytest_card .close {
+ color: #000
+}
+blockquote {
+ font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
+}
+blockquote code {
+ background-color: white;
+}
+h4 code {
+ background-color: white;
+}
+
+/* Google Custom Search styling */
+
+#gcs-search-container {
+ width: 340px !important; /* ToDo: define width without using absolute px value */
+ display: inline-block !important;
+}
+
+.gsc-search-box.gsc-search-box-tools table {
+ margin-bottom: 0px !important;
+}
+.gsc-input, .gsc-search-button {
+ padding: 0;
+}
+.gsc-control-cse {
+ padding: 6px !important;
+}
+input.gsc-input {
+ font-size: 12px !important;
+}
+
+details.description[open] summary::after {
+ content: attr(data-open);
+}
+
+details.description:not([open]) summary::after {
+ content: attr(data-close);
+}
+
+details.description summary {
+ text-align: right;
+ font-size: 15px;
+ color: #337ab7;
+ cursor: pointer;
+}
+
+details + div.output_wrapper {
+ /* show/hide code */
+ margin-top: 25px;
+}
+
+div.input + details {
+ /* show/hide output */
+ margin-top: -25px;
+}
+
+.output_wrapper{
+ /*overflow: scroll;*/
+}
+
+.notebook-badge-image {
+ border:0 !important;
+}
diff --git a/docs/css/font-awesome.min.css b/docs/css/font-awesome.min.css
new file mode 100644
index 0000000..0e0645d
--- /dev/null
+++ b/docs/css/font-awesome.min.css
@@ -0,0 +1,4 @@
+/*!
+ * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
+ */@font-face{font-family:'FontAwesome';src:url('fonts/fontawesome-webfont.eot?v=4.7.0');src:url('fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}
diff --git a/docs/css/fonts/FontAwesome.otf b/docs/css/fonts/FontAwesome.otf
new file mode 100644
index 0000000..401ec0f
Binary files /dev/null and b/docs/css/fonts/FontAwesome.otf differ
diff --git a/docs/css/fonts/fontawesome-webfont.eot b/docs/css/fonts/fontawesome-webfont.eot
new file mode 100644
index 0000000..e9f60ca
Binary files /dev/null and b/docs/css/fonts/fontawesome-webfont.eot differ
diff --git a/docs/css/fonts/fontawesome-webfont.svg b/docs/css/fonts/fontawesome-webfont.svg
new file mode 100644
index 0000000..855c845
--- /dev/null
+++ b/docs/css/fonts/fontawesome-webfont.svg
@@ -0,0 +1,2671 @@
+
+
+
+
+Created by FontForge 20120731 at Mon Oct 24 17:37:40 2016
+ By ,,,
+Copyright Dave Gandy 2016. All rights reserved.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/css/fonts/fontawesome-webfont.ttf b/docs/css/fonts/fontawesome-webfont.ttf
new file mode 100644
index 0000000..35acda2
Binary files /dev/null and b/docs/css/fonts/fontawesome-webfont.ttf differ
diff --git a/docs/css/fonts/fontawesome-webfont.woff b/docs/css/fonts/fontawesome-webfont.woff
new file mode 100644
index 0000000..400014a
Binary files /dev/null and b/docs/css/fonts/fontawesome-webfont.woff differ
diff --git a/docs/css/fonts/fontawesome-webfont.woff2 b/docs/css/fonts/fontawesome-webfont.woff2
new file mode 100644
index 0000000..4d13fc6
Binary files /dev/null and b/docs/css/fonts/fontawesome-webfont.woff2 differ
diff --git a/docs/css/modern-business.css b/docs/css/modern-business.css
new file mode 100755
index 0000000..b0323c5
--- /dev/null
+++ b/docs/css/modern-business.css
@@ -0,0 +1,89 @@
+/*!
+ * Start Bootstrap - Modern Business HTML Template (http://startbootstrap.com)
+ * Code licensed under the Apache License v2.0.
+ * For details, see http://www.apache.org/licenses/LICENSE-2.0.
+ */
+
+/* Global Styles */
+
+html,
+body {
+ height: 100%;
+}
+
+.img-portfolio {
+ margin-bottom: 30px;
+}
+
+.img-hover:hover {
+ opacity: 0.8;
+}
+
+/* Home Page Carousel */
+
+header.carousel {
+ height: 50%;
+}
+
+header.carousel .item,
+header.carousel .item.active,
+header.carousel .carousel-inner {
+ height: 100%;
+}
+
+header.carousel .fill {
+ width: 100%;
+ height: 100%;
+ background-position: center;
+ background-size: cover;
+}
+
+/* 404 Page Styles */
+
+.error-404 {
+ font-size: 100px;
+}
+
+/* Pricing Page Styles */
+
+.price {
+ display: block;
+ font-size: 50px;
+ line-height: 50px;
+}
+
+.price sup {
+ top: -20px;
+ left: 2px;
+ font-size: 20px;
+}
+
+.period {
+ display: block;
+ font-style: italic;
+}
+
+/* Footer Styles */
+
+footer {
+ margin: 50px 0;
+}
+
+/* Responsive Styles */
+
+@media(max-width:991px) {
+ .client-img,
+ .img-related {
+ margin-bottom: 30px;
+ }
+}
+
+@media(max-width:767px) {
+ .img-portfolio {
+ margin-bottom: 15px;
+ }
+
+ header.carousel .carousel {
+ height: 70%;
+ }
+}
diff --git a/docs/css/printstyles.css b/docs/css/printstyles.css
new file mode 100644
index 0000000..64d0f63
--- /dev/null
+++ b/docs/css/printstyles.css
@@ -0,0 +1,159 @@
+
+/*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;}
+
+#navig li.sectionHead {font-weight: bold; font-size: 18px; color: #595959 !important; }
+#navig li {font-weight: normal; }
+
+#navig a[href]::after { content: leader(".") target-counter(attr(href), page); }
+
+a[href]::after {
+ content: " (page " target-counter(attr(href), page) ")"
+}
+
+a[href^="http:"]::after, a[href^="https:"]::after {
+ content: "";
+}
+
+a[href] {
+ color: blue !important;
+}
+a[href*="mailto"]::after, a[data-toggle="tooltip"]::after, a[href].noCrossRef::after {
+ content: "";
+}
+
+
+@page {
+ margin: 60pt 90pt 60pt 90pt;
+ font-family: sans-serif;
+ font-style:none;
+ color: gray;
+
+}
+
+.printTitle {
+ line-height:30pt;
+ font-size:27pt;
+ font-weight: bold;
+ letter-spacing: -.5px;
+ margin-bottom:25px;
+}
+
+.printSubtitle {
+ font-size: 19pt;
+ color: #cccccc !important;
+ font-family: "Grotesque MT Light";
+ line-height: 22pt;
+ letter-spacing: -.5px;
+ margin-bottom:20px;
+}
+.printTitleArea hr {
+ color: #999999 !important;
+ height: 2px;
+ width: 100%;
+}
+
+.printTitleImage {
+ max-width:300px;
+ margin-bottom:200px;
+}
+
+
+.printTitleImage {
+ max-width: 250px;
+}
+
+#navig {
+ /*page-break-before: always;*/
+}
+
+.copyrightBoilerplate {
+ page-break-before:always;
+ font-size:14px;
+}
+
+.lastGeneratedDate {
+ font-style: italic;
+ font-size:14px;
+ color: gray;
+}
+
+.alert a {
+ text-decoration: none !important;
+}
+
+
+body.title { page: title }
+
+@page title {
+ @top-left {
+ content: " ";
+ }
+ @top-right {
+ content: " "
+ }
+ @bottom-right {
+ content: " ";
+ }
+ @bottom-left {
+ content: " ";
+ }
+}
+
+body.frontmatter { page: frontmatter }
+body.frontmatter {counter-reset: page 1}
+
+
+@page frontmatter {
+ @top-left {
+ content: prince-script(guideName);
+ }
+ @top-right {
+ content: prince-script(datestamp);
+ }
+ @bottom-right {
+ content: counter(page, lower-roman);
+ }
+ @bottom-left {
+ content: "youremail@domain.com"; }
+}
+
+body.first_page {counter-reset: page 1}
+
+h1 { string-set: doctitle content() }
+
+@page {
+ @top-left {
+ content: string(doctitle);
+ font-size: 11px;
+ font-style: italic;
+ }
+ @top-right {
+ content: prince-script(datestamp);
+ font-size: 11px;
+ }
+
+ @bottom-right {
+ content: "Page " counter(page);
+ font-size: 11px;
+ }
+ @bottom-left {
+ content: prince-script(guideName);
+ font-size: 11px;
+ }
+}
+.alert {
+ background-color: #fafafa !important;
+ border-color: #dedede !important;
+ color: black;
+}
+
+pre {
+ background-color: #fafafa;
+}
diff --git a/docs/css/syntax.css b/docs/css/syntax.css
new file mode 100644
index 0000000..1e651cf
--- /dev/null
+++ b/docs/css/syntax.css
@@ -0,0 +1,60 @@
+.highlight { background: #ffffff; }
+.highlight .c { color: #999988; font-style: italic } /* Comment */
+.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.highlight .k { font-weight: bold } /* Keyword */
+.highlight .o { font-weight: bold } /* Operator */
+.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
+.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
+.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
+.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
+.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
+.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
+.highlight .ge { font-style: italic } /* Generic.Emph */
+.highlight .gr { color: #aa0000 } /* Generic.Error */
+.highlight .gh { color: #999999 } /* Generic.Heading */
+.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
+.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
+.highlight .go { color: #888888 } /* Generic.Output */
+.highlight .gp { color: #555555 } /* Generic.Prompt */
+.highlight .gs { font-weight: bold } /* Generic.Strong */
+.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
+.highlight .gt { color: #aa0000 } /* Generic.Traceback */
+.highlight .kc { font-weight: bold } /* Keyword.Constant */
+.highlight .kd { font-weight: bold } /* Keyword.Declaration */
+.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
+.highlight .kr { font-weight: bold } /* Keyword.Reserved */
+.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
+.highlight .m { color: #009999 } /* Literal.Number */
+.highlight .s { color: #d14 } /* Literal.String */
+.highlight .na { color: #008080 } /* Name.Attribute */
+.highlight .nb { color: #0086B3 } /* Name.Builtin */
+.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
+.highlight .no { color: #008080 } /* Name.Constant */
+.highlight .ni { color: #800080 } /* Name.Entity */
+.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
+.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
+.highlight .nn { color: #555555 } /* Name.Namespace */
+.highlight .nt { color: #000080 } /* Name.Tag */
+.highlight .nv { color: #008080 } /* Name.Variable */
+.highlight .ow { font-weight: bold } /* Operator.Word */
+.highlight .w { color: #bbbbbb } /* Text.Whitespace */
+.highlight .mf { color: #009999 } /* Literal.Number.Float */
+.highlight .mh { color: #009999 } /* Literal.Number.Hex */
+.highlight .mi { color: #009999 } /* Literal.Number.Integer */
+.highlight .mo { color: #009999 } /* Literal.Number.Oct */
+.highlight .sb { color: #d14 } /* Literal.String.Backtick */
+.highlight .sc { color: #d14 } /* Literal.String.Char */
+.highlight .sd { color: #d14 } /* Literal.String.Doc */
+.highlight .s2 { color: #d14 } /* Literal.String.Double */
+.highlight .se { color: #d14 } /* Literal.String.Escape */
+.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
+.highlight .si { color: #d14 } /* Literal.String.Interpol */
+.highlight .sx { color: #d14 } /* Literal.String.Other */
+.highlight .sr { color: #009926 } /* Literal.String.Regex */
+.highlight .s1 { color: #d14 } /* Literal.String.Single */
+.highlight .ss { color: #990073 } /* Literal.String.Symbol */
+.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
+.highlight .vc { color: #008080 } /* Name.Variable.Class */
+.highlight .vg { color: #008080 } /* Name.Variable.Global */
+.highlight .vi { color: #008080 } /* Name.Variable.Instance */
+.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
\ No newline at end of file
diff --git a/docs/css/theme-blue.css b/docs/css/theme-blue.css
new file mode 100644
index 0000000..8027c82
--- /dev/null
+++ b/docs/css/theme-blue.css
@@ -0,0 +1,121 @@
+.summary {
+ color: #808080;
+ border-left: 5px solid #ED1951;
+ font-size:16px;
+}
+
+
+h3 {color: #000000; }
+h4 {color: #000000; }
+
+.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
+ background-color: #248ec2;
+ color: white;
+}
+
+.nav > li.active > a {
+ background-color: #347DBE;
+}
+
+.nav > li > a:hover {
+ background-color: #248ec2;
+}
+
+div.navbar-collapse .dropdown-menu > li > a:hover {
+ background-color: #347DBE;
+}
+
+.nav li.thirdlevel > a {
+ background-color: #FAFAFA !important;
+ color: #248EC2;
+ font-weight: bold;
+}
+
+a[data-toggle="tooltip"] {
+ color: #649345;
+ font-style: italic;
+ cursor: default;
+}
+
+.navbar-inverse {
+ background-color: #347DBE;
+ border-color: #015CAE;
+}
+.navbar-inverse .navbar-nav>li>a, .navbar-inverse .navbar-brand {
+ color: white;
+}
+
+.navbar-inverse .navbar-nav>li>a:hover, a.fa.fa-home.fa-lg.navbar-brand:hover {
+ color: #f0f0f0;
+}
+
+a.navbar-brand:hover {
+ color: #f0f0f0;
+}
+
+.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;
+}
+
+.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form {
+ border-color: #248ec2 !important;
+}
+
+.btn-primary {
+ color: #ffffff;
+ background-color: #347DBE;
+ 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;
+ border-color: #347DBE;
+}
+
+.printTitle {
+ color: #015CAE !important;
+}
+
+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;
+}
+
+div.sidebarTitle {
+ color: #015CAE;
+}
+
+li.sidebarTitle {
+ margin-top:20px;
+ font-weight:normal;
+ font-size:130%;
+ color: #ED1951;
+ margin-bottom:10px;
+ margin-left: 5px;
+
+}
+
+.navbar-inverse .navbar-toggle:focus, .navbar-inverse .navbar-toggle:hover {
+ background-color: #015CAE;
+}
+
+.navbar-inverse .navbar-toggle {
+ border-color: #015CAE;
+}
diff --git a/docs/css/theme-green.css b/docs/css/theme-green.css
new file mode 100644
index 0000000..4991586
--- /dev/null
+++ b/docs/css/theme-green.css
@@ -0,0 +1,110 @@
+.summary {
+ color: #808080;
+ border-left: 5px solid #E50E51;
+ font-size:16px;
+}
+
+
+h3 {color: #E50E51; }
+h4 {color: #808080; }
+
+.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
+ background-color: #248ec2;
+ color: white;
+}
+
+.nav > li.active > a {
+ background-color: #72ac4a;
+}
+
+.nav > li > a:hover {
+ background-color: #72ac4a;
+}
+
+div.navbar-collapse .dropdown-menu > li > a:hover {
+ background-color: #72ac4a;
+}
+
+.navbar-inverse .navbar-nav>li>a, .navbar-inverse .navbar-brand {
+ color: white;
+}
+
+.navbar-inverse .navbar-nav>li>a:hover, a.fa.fa-home.fa-lg.navbar-brand:hover {
+ color: #f0f0f0;
+}
+
+.nav li.thirdlevel > a {
+ background-color: #FAFAFA !important;
+ color: #72ac4a;
+ font-weight: bold;
+}
+
+a[data-toggle="tooltip"] {
+ color: #649345;
+ font-style: italic;
+ cursor: default;
+}
+
+.navbar-inverse {
+ background-color: #72ac4a;
+ border-color: #5b893c;
+}
+
+.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
+ color: #5b893c;
+}
+
+.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
+ background-color: #5b893c;
+ color: #ffffff;
+}
+
+/* not sure if using this ...*/
+.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form {
+ border-color: #72ac4a !important;
+}
+
+.btn-primary {
+ color: #ffffff;
+ background-color: #5b893c;
+ border-color: #5b893c;
+}
+
+.btn-primary:hover,
+.btn-primary:focus,
+.btn-primary:active,
+.btn-primary.active,
+.open .dropdown-toggle.btn-primary {
+ background-color: #72ac4a;
+ border-color: #5b893c;
+}
+
+.printTitle {
+ color: #5b893c !important;
+}
+
+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;
+}
+
+div.sidebarTitle {
+ color: #E50E51;
+}
+
+li.sidebarTitle {
+ margin-top:20px;
+ font-weight:normal;
+ font-size:130%;
+ color: #ED1951;
+ margin-bottom:10px;
+ margin-left: 5px;
+}
+
+.navbar-inverse .navbar-toggle:focus, .navbar-inverse .navbar-toggle:hover {
+ background-color: #E50E51;
+}
diff --git a/docs/feed.xml b/docs/feed.xml
new file mode 100644
index 0000000..d8d6ac9
--- /dev/null
+++ b/docs/feed.xml
@@ -0,0 +1,32 @@
+---
+search: exclude
+layout: none
+---
+
+
+
+
+ {{ site.title | xml_escape }}
+ {{ site.description | xml_escape }}
+ {{ site.url }}/
+
+ {{ site.time | date_to_rfc822 }}
+ {{ site.time | date_to_rfc822 }}
+ Jekyll v{{ jekyll.version }}
+ {% for post in site.posts limit:10 %}
+ -
+
{{ post.title | xml_escape }}
+ {{ post.content | xml_escape }}
+ {{ post.date | date_to_rfc822 }}
+ {{ post.url | prepend: site.url }}
+ {{ post.url | prepend: site.url }}
+ {% for tag in post.tags %}
+ {{ tag | xml_escape }}
+ {% endfor %}
+ {% for tag in page.tags %}
+ {{ cat | xml_escape }}
+ {% endfor %}
+
+ {% endfor %}
+
+
diff --git a/docs/fonts/FontAwesome.otf b/docs/fonts/FontAwesome.otf
new file mode 100644
index 0000000..81c9ad9
Binary files /dev/null and b/docs/fonts/FontAwesome.otf differ
diff --git a/docs/fonts/fontawesome-webfont.eot b/docs/fonts/fontawesome-webfont.eot
new file mode 100644
index 0000000..84677bc
Binary files /dev/null and b/docs/fonts/fontawesome-webfont.eot differ
diff --git a/docs/fonts/fontawesome-webfont.svg b/docs/fonts/fontawesome-webfont.svg
new file mode 100644
index 0000000..d907b25
--- /dev/null
+++ b/docs/fonts/fontawesome-webfont.svg
@@ -0,0 +1,520 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/fonts/fontawesome-webfont.ttf b/docs/fonts/fontawesome-webfont.ttf
new file mode 100644
index 0000000..96a3639
Binary files /dev/null and b/docs/fonts/fontawesome-webfont.ttf differ
diff --git a/docs/fonts/fontawesome-webfont.woff b/docs/fonts/fontawesome-webfont.woff
new file mode 100644
index 0000000..628b6a5
Binary files /dev/null and b/docs/fonts/fontawesome-webfont.woff differ
diff --git a/docs/fonts/glyphicons-halflings-regular.eot b/docs/fonts/glyphicons-halflings-regular.eot
new file mode 100644
index 0000000..b93a495
Binary files /dev/null and b/docs/fonts/glyphicons-halflings-regular.eot differ
diff --git a/docs/fonts/glyphicons-halflings-regular.svg b/docs/fonts/glyphicons-halflings-regular.svg
new file mode 100644
index 0000000..94fb549
--- /dev/null
+++ b/docs/fonts/glyphicons-halflings-regular.svg
@@ -0,0 +1,288 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/fonts/glyphicons-halflings-regular.ttf b/docs/fonts/glyphicons-halflings-regular.ttf
new file mode 100644
index 0000000..1413fc6
Binary files /dev/null and b/docs/fonts/glyphicons-halflings-regular.ttf differ
diff --git a/docs/fonts/glyphicons-halflings-regular.woff b/docs/fonts/glyphicons-halflings-regular.woff
new file mode 100644
index 0000000..9e61285
Binary files /dev/null and b/docs/fonts/glyphicons-halflings-regular.woff differ
diff --git a/docs/fonts/glyphicons-halflings-regular.woff2 b/docs/fonts/glyphicons-halflings-regular.woff2
new file mode 100644
index 0000000..64539b5
Binary files /dev/null and b/docs/fonts/glyphicons-halflings-regular.woff2 differ
diff --git a/docs/images/colab.svg b/docs/images/colab.svg
new file mode 100644
index 0000000..c08066e
--- /dev/null
+++ b/docs/images/colab.svg
@@ -0,0 +1 @@
+
Open in Colab Open in Colab
diff --git a/docs/images/company_logo.png b/docs/images/company_logo.png
new file mode 100644
index 0000000..4cc1ab8
Binary files /dev/null and b/docs/images/company_logo.png differ
diff --git a/docs/images/company_logo_big.png b/docs/images/company_logo_big.png
new file mode 100644
index 0000000..4cc1ab8
Binary files /dev/null and b/docs/images/company_logo_big.png differ
diff --git a/docs/images/doc_example.png b/docs/images/doc_example.png
new file mode 100644
index 0000000..d4aa732
Binary files /dev/null and b/docs/images/doc_example.png differ
diff --git a/docs/images/export_example.png b/docs/images/export_example.png
new file mode 100644
index 0000000..1c2829c
Binary files /dev/null and b/docs/images/export_example.png differ
diff --git a/docs/images/favicon.ico b/docs/images/favicon.ico
new file mode 100644
index 0000000..c35e955
Binary files /dev/null and b/docs/images/favicon.ico differ
diff --git a/docs/images/workflowarrow.png b/docs/images/workflowarrow.png
new file mode 100644
index 0000000..91a3e81
Binary files /dev/null and b/docs/images/workflowarrow.png differ
diff --git a/docs/index.html b/docs/index.html
new file mode 100644
index 0000000..efdf89f
--- /dev/null
+++ b/docs/index.html
@@ -0,0 +1,100 @@
+---
+
+title: Project name here
+
+
+keywords: fastai
+sidebar: home_sidebar
+
+summary: "Summary description here."
+description: "Summary description here."
+nb_path: "index.ipynb"
+---
+
+
+
+
+ {% raw %}
+
+
+
+
+ {% endraw %}
+
+
+
+
This file will become your README and also the index of your documentation.
+
+
+
+
+
+
+
+
pip install your_project_name
+
+
+
+
+
+
+
+
Fill me in please! Don't forget code examples:
+
+
+
+
+ {% raw %}
+
+
+ {% endraw %}
+
+
+
+
diff --git a/docs/js/customscripts.js b/docs/js/customscripts.js
new file mode 100644
index 0000000..27701a3
--- /dev/null
+++ b/docs/js/customscripts.js
@@ -0,0 +1,54 @@
+$('#mysidebar').height($(".nav").height());
+
+
+$( 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);
+ if (h > 800) {
+ $( "#mysidebar" ).attr("class", "nav affix");
+ }
+ // activate tooltips. although this is a bootstrap js function, it must be activated this way in your theme.
+ $('[data-toggle="tooltip"]').tooltip({
+ placement : 'top'
+ });
+
+ /**
+ * AnchorJS
+ */
+ anchors.add('h2,h3,h4,h5');
+
+});
+
+// needed for nav tabs on pages. See Formatting > Nav tabs for more details.
+// script from http://stackoverflow.com/questions/10523433/how-do-i-keep-the-current-tab-active-with-twitter-bootstrap-after-a-page-reload
+$(function() {
+ var json, tabsState;
+ $('a[data-toggle="pill"], a[data-toggle="tab"]').on('shown.bs.tab', function(e) {
+ var href, json, parentId, tabsState;
+
+ tabsState = localStorage.getItem("tabs-state");
+ json = JSON.parse(tabsState || "{}");
+ parentId = $(e.target).parents("ul.nav.nav-pills, ul.nav.nav-tabs").attr("id");
+ href = $(e.target).attr('href');
+ json[parentId] = href;
+
+ return localStorage.setItem("tabs-state", JSON.stringify(json));
+ });
+
+ tabsState = localStorage.getItem("tabs-state");
+ json = JSON.parse(tabsState || "{}");
+
+ $.each(json, function(containerId, href) {
+ return $("#" + containerId + " a[href=" + href + "]").tab('show');
+ });
+
+ $("ul.nav.nav-pills, ul.nav.nav-tabs").each(function() {
+ var $this = $(this);
+ if (!json[$this.attr("id")]) {
+ return $this.find("a[data-toggle=tab]:first, a[data-toggle=pill]:first").tab("show");
+ }
+ });
+});
diff --git a/docs/js/jekyll-search.js b/docs/js/jekyll-search.js
new file mode 100644
index 0000000..d884a24
--- /dev/null
+++ b/docs/js/jekyll-search.js
@@ -0,0 +1 @@
+!function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o
=0}var self=this;self.matches=function(string,crit){return"string"!=typeof string?!1:(string=string.trim(),doMatch(string,crit))}}module.exports=new LiteralSearchStrategy},{}],4:[function(require,module){module.exports=function(){function findMatches(store,crit,strategy){for(var data=store.get(),i=0;i{title} ',noResultsText:"No results found",limit:10,fuzzy:!1};self.init=function(_opt){validateOptions(_opt),assignOptions(_opt),isJSON(opt.dataSource)?initWithJSON(opt.dataSource):initWithURL(opt.dataSource)}}var Searcher=require("./Searcher"),Templater=require("./Templater"),Store=require("./Store"),JSONLoader=require("./JSONLoader"),searcher=new Searcher,templater=new Templater,store=new Store,jsonLoader=new JSONLoader;window.SimpleJekyllSearch=new SimpleJekyllSearch}(window,document)},{"./JSONLoader":1,"./Searcher":4,"./Store":5,"./Templater":6}]},{},[7]);
diff --git a/docs/js/jquery.ba-throttle-debounce.min.js b/docs/js/jquery.ba-throttle-debounce.min.js
new file mode 100644
index 0000000..0720550
--- /dev/null
+++ b/docs/js/jquery.ba-throttle-debounce.min.js
@@ -0,0 +1,9 @@
+/*
+ * jQuery throttle / debounce - v1.1 - 3/7/2010
+ * http://benalman.com/projects/jquery-throttle-debounce-plugin/
+ *
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function(b,c){var $=b.jQuery||b.Cowboy||(b.Cowboy={}),a;$.throttle=a=function(e,f,j,i){var h,d=0;if(typeof f!=="boolean"){i=j;j=f;f=c}function g(){var o=this,m=+new Date()-d,n=arguments;function l(){d=+new Date();j.apply(o,n)}function k(){h=c}if(i&&!h){l()}h&&clearTimeout(h);if(i===c&&m>e){l()}else{if(f!==true){h=setTimeout(i?k:l,i===c?e-m:e)}}}if($.guid){g.guid=j.guid=j.guid||$.guid++}return g};$.debounce=function(d,e,f){return f===c?a(d,e,false):a(d,f,e!==false)}})(this);
\ No newline at end of file
diff --git a/docs/js/jquery.navgoco.min.js b/docs/js/jquery.navgoco.min.js
new file mode 100755
index 0000000..4ba4475
--- /dev/null
+++ b/docs/js/jquery.navgoco.min.js
@@ -0,0 +1,8 @@
+/*
+ * jQuery Navgoco Menus Plugin v0.2.1 (2014-04-11)
+ * https://github.com/tefra/navgoco
+ *
+ * Copyright (c) 2014 Chris T (@tefra)
+ * BSD - https://github.com/tefra/navgoco/blob/master/LICENSE-BSD
+ */
+!function(a){"use strict";var b=function(b,c,d){return this.el=b,this.$el=a(b),this.options=c,this.uuid=this.$el.attr("id")?this.$el.attr("id"):d,this.state={},this.init(),this};b.prototype={init:function(){var b=this;b._load(),b.$el.find("ul").each(function(c){var d=a(this);d.attr("data-index",c),b.options.save&&b.state.hasOwnProperty(c)?(d.parent().addClass(b.options.openClass),d.show()):d.parent().hasClass(b.options.openClass)?(d.show(),b.state[c]=1):d.hide()});var c=a(" ").prepend(b.options.caretHtml),d=b.$el.find("li > a");b._trigger(c,!1),b._trigger(d,!0),b.$el.find("li:has(ul) > a").prepend(c)},_trigger:function(b,c){var d=this;b.on("click",function(b){b.stopPropagation();var e=c?a(this).next():a(this).parent().next(),f=!1;if(c){var g=a(this).attr("href");f=void 0===g||""===g||"#"===g}if(e=e.length>0?e:!1,d.options.onClickBefore.call(this,b,e),!c||e&&f)b.preventDefault(),d._toggle(e,e.is(":hidden")),d._save();else if(d.options.accordion){var h=d.state=d._parents(a(this));d.$el.find("ul").filter(":visible").each(function(){var b=a(this),c=b.attr("data-index");h.hasOwnProperty(c)||d._toggle(b,!1)}),d._save()}d.options.onClickAfter.call(this,b,e)})},_toggle:function(b,c){var d=this,e=b.attr("data-index"),f=b.parent();if(d.options.onToggleBefore.call(this,b,c),c){if(f.addClass(d.options.openClass),b.slideDown(d.options.slide),d.state[e]=1,d.options.accordion){var g=d.state=d._parents(b);g[e]=d.state[e]=1,d.$el.find("ul").filter(":visible").each(function(){var b=a(this),c=b.attr("data-index");g.hasOwnProperty(c)||d._toggle(b,!1)})}}else f.removeClass(d.options.openClass),b.slideUp(d.options.slide),d.state[e]=0;d.options.onToggleAfter.call(this,b,c)},_parents:function(b,c){var d={},e=b.parent(),f=e.parents("ul");return f.each(function(){var b=a(this),e=b.attr("data-index");return e?void(d[e]=c?b:1):!1}),d},_save:function(){if(this.options.save){var b={};for(var d in this.state)1===this.state[d]&&(b[d]=1);c[this.uuid]=this.state=b,a.cookie(this.options.cookie.name,JSON.stringify(c),this.options.cookie)}},_load:function(){if(this.options.save){if(null===c){var b=a.cookie(this.options.cookie.name);c=b?JSON.parse(b):{}}this.state=c.hasOwnProperty(this.uuid)?c[this.uuid]:{}}},toggle:function(b){var c=this,d=arguments.length;if(1>=d)c.$el.find("ul").each(function(){var d=a(this);c._toggle(d,b)});else{var e,f={},g=Array.prototype.slice.call(arguments,1);d--;for(var h=0;d>h;h++){e=g[h];var i=c.$el.find('ul[data-index="'+e+'"]').first();if(i&&(f[e]=i,b)){var j=c._parents(i,!0);for(var k in j)f.hasOwnProperty(k)||(f[k]=j[k])}}for(e in f)c._toggle(f[e],b)}c._save()},destroy:function(){a.removeData(this.$el),this.$el.find("li:has(ul) > a").unbind("click"),this.$el.find("li:has(ul) > a > span").unbind("click")}},a.fn.navgoco=function(c){if("string"==typeof c&&"_"!==c.charAt(0)&&"init"!==c)var d=!0,e=Array.prototype.slice.call(arguments,1);else c=a.extend({},a.fn.navgoco.defaults,c||{}),a.cookie||(c.save=!1);return this.each(function(f){var g=a(this),h=g.data("navgoco");h||(h=new b(this,d?a.fn.navgoco.defaults:c,f),g.data("navgoco",h)),d&&h[c].apply(h,e)})};var c=null;a.fn.navgoco.defaults={caretHtml:"",accordion:!1,openClass:"open",save:!0,cookie:{name:"navgoco",expires:!1,path:"/"},slide:{duration:400,easing:"swing"},onClickBefore:a.noop,onClickAfter:a.noop,onToggleBefore:a.noop,onToggleAfter:a.noop}}(jQuery);
\ No newline at end of file
diff --git a/docs/js/jquery.shuffle.min.js b/docs/js/jquery.shuffle.min.js
new file mode 100644
index 0000000..d103127
--- /dev/null
+++ b/docs/js/jquery.shuffle.min.js
@@ -0,0 +1,1588 @@
+/*!
+ * Shuffle.js by @Vestride
+ * Categorize, sort, and filter a responsive grid of items.
+ * Dependencies: jQuery 1.9+, Modernizr 2.6.2+
+ * @license MIT license
+ * @version 3.0.0
+ */
+
+/* Modernizr 2.6.2 (Custom Build) | MIT & BSD
+ * Build: http://modernizr.com/download/#-csstransforms-csstransforms3d-csstransitions-cssclasses-prefixed-teststyles-testprop-testallprops-prefixes-domprefixes
+ */
+window.Modernizr=function(a,b,c){function z(a){j.cssText=a}function A(a,b){return z(m.join(a+";")+(b||""))}function B(a,b){return typeof a===b}function C(a,b){return!!~(""+a).indexOf(b)}function D(a,b){for(var d in a){var e=a[d];if(!C(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:B(f,"function")?f.bind(d||b):f}return!1}function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+o.join(d+" ")+d).split(" ");return B(b,"string")||B(b,"undefined")?D(e,b):(e=(a+" "+p.join(d+" ")+d).split(" "),E(e,b,c))}var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k,l={}.toString,m=" -webkit- -moz- -o- -ms- ".split(" "),n="Webkit Moz O ms",o=n.split(" "),p=n.toLowerCase().split(" "),q={},r={},s={},t=[],u=t.slice,v,w=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["",'"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},x={}.hasOwnProperty,y;!B(x,"undefined")&&!B(x.call,"undefined")?y=function(a,b){return x.call(a,b)}:y=function(a,b){return b in a&&B(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=u.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(u.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(u.call(arguments)))};return e}),q.csstransforms=function(){return!!F("transform")},q.csstransforms3d=function(){var a=!!F("perspective");return a&&"webkitPerspective"in g.style&&w("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},q.csstransitions=function(){return F("transition")};for(var G in q)y(q,G)&&(v=G.toLowerCase(),e[v]=q[G](),t.push((e[v]?"":"no-")+v));return e.addTest=function(a,b){if(typeof a=="object")for(var d in a)y(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},z(""),i=k=null,e._version=d,e._prefixes=m,e._domPrefixes=p,e._cssomPrefixes=o,e.testProp=function(a){return D([a])},e.testAllProps=F,e.testStyles=w,e.prefixed=function(a,b,c){return b?F(a,b,c):F(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+t.join(" "):""),e}(this,this.document);
+
+(function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ define(['jquery', 'modernizr'], factory);
+ } else {
+ window.Shuffle = factory(window.jQuery, window.Modernizr);
+ }
+})(function($, Modernizr, undefined) {
+
+'use strict';
+
+
+// Validate Modernizr exists.
+// Shuffle requires `csstransitions`, `csstransforms`, `csstransforms3d`,
+// and `prefixed` to exist on the Modernizr object.
+if (typeof Modernizr !== 'object') {
+ throw new Error('Shuffle.js requires Modernizr.\n' +
+ 'http://vestride.github.io/Shuffle/#dependencies');
+}
+
+
+/**
+ * Returns css prefixed properties like `-webkit-transition` or `box-sizing`
+ * from `transition` or `boxSizing`, respectively.
+ * @param {(string|boolean)} prop Property to be prefixed.
+ * @return {string} The prefixed css property.
+ */
+function dashify( prop ) {
+ if (!prop) {
+ return '';
+ }
+
+ // Replace upper case with dash-lowercase,
+ // then fix ms- prefixes because they're not capitalized.
+ return prop.replace(/([A-Z])/g, function( str, m1 ) {
+ return '-' + m1.toLowerCase();
+ }).replace(/^ms-/,'-ms-');
+}
+
+// Constant, prefixed variables.
+var TRANSITION = Modernizr.prefixed('transition');
+var TRANSITION_DELAY = Modernizr.prefixed('transitionDelay');
+var TRANSITION_DURATION = Modernizr.prefixed('transitionDuration');
+
+// Note(glen): Stock Android 4.1.x browser will fail here because it wrongly
+// says it supports non-prefixed transitions.
+// https://github.com/Modernizr/Modernizr/issues/897
+var TRANSITIONEND = {
+ 'WebkitTransition' : 'webkitTransitionEnd',
+ 'transition' : 'transitionend'
+}[ TRANSITION ];
+
+var TRANSFORM = Modernizr.prefixed('transform');
+var CSS_TRANSFORM = dashify(TRANSFORM);
+
+// Constants
+var CAN_TRANSITION_TRANSFORMS = Modernizr.csstransforms && Modernizr.csstransitions;
+var HAS_TRANSFORMS_3D = Modernizr.csstransforms3d;
+var SHUFFLE = 'shuffle';
+var COLUMN_THRESHOLD = 0.3;
+
+// Configurable. You can change these constants to fit your application.
+// The default scale and concealed scale, however, have to be different values.
+var ALL_ITEMS = 'all';
+var FILTER_ATTRIBUTE_KEY = 'groups';
+var DEFAULT_SCALE = 1;
+var CONCEALED_SCALE = 0.001;
+
+
+// Underscore's throttle function.
+function throttle(func, wait, options) {
+ var context, args, result;
+ var timeout = null;
+ var previous = 0;
+ options = options || {};
+ var later = function() {
+ previous = options.leading === false ? 0 : $.now();
+ timeout = null;
+ result = func.apply(context, args);
+ context = args = null;
+ };
+ return function() {
+ var now = $.now();
+ if (!previous && options.leading === false) {
+ previous = now;
+ }
+ var remaining = wait - (now - previous);
+ context = this;
+ args = arguments;
+ if (remaining <= 0 || remaining > wait) {
+ clearTimeout(timeout);
+ timeout = null;
+ previous = now;
+ result = func.apply(context, args);
+ context = args = null;
+ } else if (!timeout && options.trailing !== false) {
+ timeout = setTimeout(later, remaining);
+ }
+ return result;
+ };
+}
+
+function each(obj, iterator, context) {
+ for (var i = 0, length = obj.length; i < length; i++) {
+ if (iterator.call(context, obj[i], i, obj) === {}) {
+ return;
+ }
+ }
+}
+
+function defer(fn, context, wait) {
+ return setTimeout( $.proxy( fn, context ), wait );
+}
+
+function arrayMax( array ) {
+ return Math.max.apply( Math, array );
+}
+
+function arrayMin( array ) {
+ return Math.min.apply( Math, array );
+}
+
+
+/**
+ * Always returns a numeric value, given a value.
+ * @param {*} value Possibly numeric value.
+ * @return {number} `value` or zero if `value` isn't numeric.
+ * @private
+ */
+function getNumber(value) {
+ return $.isNumeric(value) ? value : 0;
+}
+
+
+/**
+ * Represents a coordinate pair.
+ * @param {number} [x=0] X.
+ * @param {number} [y=0] Y.
+ */
+var Point = function(x, y) {
+ this.x = getNumber( x );
+ this.y = getNumber( y );
+};
+
+
+/**
+ * Whether two points are equal.
+ * @param {Point} a Point A.
+ * @param {Point} b Point B.
+ * @return {boolean}
+ */
+Point.equals = function(a, b) {
+ return a.x === b.x && a.y === b.y;
+};
+
+
+// Used for unique instance variables
+var id = 0;
+var $window = $( window );
+
+
+/**
+ * Categorize, sort, and filter a responsive grid of items.
+ *
+ * @param {Element} element An element which is the parent container for the grid items.
+ * @param {Object} [options=Shuffle.options] Options object.
+ * @constructor
+ */
+var Shuffle = function( element, options ) {
+ options = options || {};
+ $.extend( this, Shuffle.options, options, Shuffle.settings );
+
+ this.$el = $(element);
+ this.element = element;
+ this.unique = 'shuffle_' + id++;
+
+ this._fire( Shuffle.EventType.LOADING );
+ this._init();
+
+ // Dispatch the done event asynchronously so that people can bind to it after
+ // Shuffle has been initialized.
+ defer(function() {
+ this.initialized = true;
+ this._fire( Shuffle.EventType.DONE );
+ }, this, 16);
+};
+
+
+/**
+ * Events the container element emits with the .shuffle namespace.
+ * For example, "done.shuffle".
+ * @enum {string}
+ */
+Shuffle.EventType = {
+ LOADING: 'loading',
+ DONE: 'done',
+ LAYOUT: 'layout',
+ REMOVED: 'removed'
+};
+
+
+/** @enum {string} */
+Shuffle.ClassName = {
+ BASE: SHUFFLE,
+ SHUFFLE_ITEM: 'shuffle-item',
+ FILTERED: 'filtered',
+ CONCEALED: 'concealed'
+};
+
+
+// Overrideable options
+Shuffle.options = {
+ group: ALL_ITEMS, // Initial filter group.
+ speed: 250, // Transition/animation speed (milliseconds).
+ easing: 'ease-out', // CSS easing function to use.
+ itemSelector: '', // e.g. '.picture-item'.
+ sizer: null, // Sizer element. Use an element to determine the size of columns and gutters.
+ gutterWidth: 0, // A static number or function that tells the plugin how wide the gutters between columns are (in pixels).
+ columnWidth: 0, // A static number or function that returns a number which tells the plugin how wide the columns are (in pixels).
+ delimeter: null, // If your group is not json, and is comma delimeted, you could set delimeter to ','.
+ buffer: 0, // Useful for percentage based heights when they might not always be exactly the same (in pixels).
+ initialSort: null, // Shuffle can be initialized with a sort object. It is the same object given to the sort method.
+ throttle: throttle, // By default, shuffle will throttle resize events. This can be changed or removed.
+ throttleTime: 300, // How often shuffle can be called on resize (in milliseconds).
+ sequentialFadeDelay: 150, // Delay between each item that fades in when adding items.
+ supported: CAN_TRANSITION_TRANSFORMS // Whether to use transforms or absolute positioning.
+};
+
+
+// Not overrideable
+Shuffle.settings = {
+ useSizer: false,
+ itemCss : { // default CSS for each item
+ position: 'absolute',
+ top: 0,
+ left: 0,
+ visibility: 'visible'
+ },
+ revealAppendedDelay: 300,
+ lastSort: {},
+ lastFilter: ALL_ITEMS,
+ enabled: true,
+ destroyed: false,
+ initialized: false,
+ _animations: [],
+ styleQueue: []
+};
+
+
+// Expose for testing.
+Shuffle.Point = Point;
+
+
+/**
+ * Static methods.
+ */
+
+/**
+ * If the browser has 3d transforms available, build a string with those,
+ * otherwise use 2d transforms.
+ * @param {Point} point X and Y positions.
+ * @param {number} scale Scale amount.
+ * @return {string} A normalized string which can be used with the transform style.
+ * @private
+ */
+Shuffle._getItemTransformString = function(point, scale) {
+ if ( HAS_TRANSFORMS_3D ) {
+ return 'translate3d(' + point.x + 'px, ' + point.y + 'px, 0) scale3d(' + scale + ', ' + scale + ', 1)';
+ } else {
+ return 'translate(' + point.x + 'px, ' + point.y + 'px) scale(' + scale + ')';
+ }
+};
+
+
+/**
+ * Retrieve the computed style for an element, parsed as a float. This should
+ * not be used for width or height values because jQuery mangles them and they
+ * are not precise enough.
+ * @param {Element} element Element to get style for.
+ * @param {string} style Style property.
+ * @return {number} The parsed computed value or zero if that fails because IE
+ * will return 'auto' when the element doesn't have margins instead of
+ * the computed style.
+ * @private
+ */
+Shuffle._getNumberStyle = function( element, style ) {
+ return Shuffle._getFloat( $( element ).css( style ) );
+};
+
+
+/**
+ * Parse a string as an integer.
+ * @param {string} value String integer.
+ * @return {number} The string as an integer or zero.
+ * @private
+ */
+Shuffle._getInt = function(value) {
+ return getNumber( parseInt( value, 10 ) );
+};
+
+/**
+ * Parse a string as an float.
+ * @param {string} value String float.
+ * @return {number} The string as an float or zero.
+ * @private
+ */
+Shuffle._getFloat = function(value) {
+ return getNumber( parseFloat( value ) );
+};
+
+
+/**
+ * Returns the outer width of an element, optionally including its margins.
+ * The `offsetWidth` property must be used because having a scale transform
+ * on the element affects the bounding box. Sadly, Firefox doesn't return an
+ * integer value for offsetWidth (yet).
+ * @param {Element} element The element.
+ * @param {boolean} [includeMargins] Whether to include margins. Default is false.
+ * @return {number} The width.
+ */
+Shuffle._getOuterWidth = function( element, includeMargins ) {
+ var width = element.offsetWidth;
+
+ // Use jQuery here because it uses getComputedStyle internally and is
+ // cross-browser. Using the style property of the element will only work
+ // if there are inline styles.
+ if ( includeMargins ) {
+ var marginLeft = Shuffle._getNumberStyle( element, 'marginLeft');
+ var marginRight = Shuffle._getNumberStyle( element, 'marginRight');
+ width += marginLeft + marginRight;
+ }
+
+ return width;
+};
+
+
+/**
+ * Returns the outer height of an element, optionally including its margins.
+ * @param {Element} element The element.
+ * @param {boolean} [includeMargins] Whether to include margins. Default is false.
+ * @return {number} The height.
+ */
+Shuffle._getOuterHeight = function( element, includeMargins ) {
+ var height = element.offsetHeight;
+
+ if ( includeMargins ) {
+ var marginTop = Shuffle._getNumberStyle( element, 'marginTop');
+ var marginBottom = Shuffle._getNumberStyle( element, 'marginBottom');
+ height += marginTop + marginBottom;
+ }
+
+ return height;
+};
+
+
+/**
+ * Change a property or execute a function which will not have a transition
+ * @param {Element} element DOM element that won't be transitioned
+ * @param {Function} callback A function which will be called while transition
+ * is set to 0ms.
+ * @param {Object} [context] Optional context for the callback function.
+ * @private
+ */
+Shuffle._skipTransition = function( element, callback, context ) {
+ var duration = element.style[ TRANSITION_DURATION ];
+
+ // Set the duration to zero so it happens immediately
+ element.style[ TRANSITION_DURATION ] = '0ms'; // ms needed for firefox!
+
+ callback.call( context );
+
+ // Force reflow
+ var reflow = element.offsetWidth;
+ // Avoid jshint warnings: unused variables and expressions.
+ reflow = null;
+
+ // Put the duration back
+ element.style[ TRANSITION_DURATION ] = duration;
+};
+
+
+/**
+ * Instance methods.
+ */
+
+Shuffle.prototype._init = function() {
+ this.$items = this._getItems();
+
+ this.sizer = this._getElementOption( this.sizer );
+
+ if ( this.sizer ) {
+ this.useSizer = true;
+ }
+
+ // Add class and invalidate styles
+ this.$el.addClass( Shuffle.ClassName.BASE );
+
+ // Set initial css for each item
+ this._initItems();
+
+ // Bind resize events
+ // http://stackoverflow.com/questions/1852751/window-resize-event-firing-in-internet-explorer
+ $window.on('resize.' + SHUFFLE + '.' + this.unique, this._getResizeFunction());
+
+ // Get container css all in one request. Causes reflow
+ var containerCSS = this.$el.css(['position', 'overflow']);
+ var containerWidth = Shuffle._getOuterWidth( this.element );
+
+ // Add styles to the container if it doesn't have them.
+ this._validateStyles( containerCSS );
+
+ // We already got the container's width above, no need to cause another reflow getting it again...
+ // Calculate the number of columns there will be
+ this._setColumns( containerWidth );
+
+ // Kick off!
+ this.shuffle( this.group, this.initialSort );
+
+ // The shuffle items haven't had transitions set on them yet
+ // so the user doesn't see the first layout. Set them now that the first layout is done.
+ if ( this.supported ) {
+ defer(function() {
+ this._setTransitions();
+ this.element.style[ TRANSITION ] = 'height ' + this.speed + 'ms ' + this.easing;
+ }, this);
+ }
+};
+
+
+/**
+ * Returns a throttled and proxied function for the resize handler.
+ * @return {Function}
+ * @private
+ */
+Shuffle.prototype._getResizeFunction = function() {
+ var resizeFunction = $.proxy( this._onResize, this );
+ return this.throttle ?
+ this.throttle( resizeFunction, this.throttleTime ) :
+ resizeFunction;
+};
+
+
+/**
+ * Retrieve an element from an option.
+ * @param {string|jQuery|Element} option The option to check.
+ * @return {?Element} The plain element or null.
+ * @private
+ */
+Shuffle.prototype._getElementOption = function( option ) {
+ // If column width is a string, treat is as a selector and search for the
+ // sizer element within the outermost container
+ if ( typeof option === 'string' ) {
+ return this.$el.find( option )[0] || null;
+
+ // Check for an element
+ } else if ( option && option.nodeType && option.nodeType === 1 ) {
+ return option;
+
+ // Check for jQuery object
+ } else if ( option && option.jquery ) {
+ return option[0];
+ }
+
+ return null;
+};
+
+
+/**
+ * Ensures the shuffle container has the css styles it needs applied to it.
+ * @param {Object} styles Key value pairs for position and overflow.
+ * @private
+ */
+Shuffle.prototype._validateStyles = function(styles) {
+ // Position cannot be static.
+ if ( styles.position === 'static' ) {
+ this.element.style.position = 'relative';
+ }
+
+ // Overflow has to be hidden
+ if ( styles.overflow !== 'hidden' ) {
+ this.element.style.overflow = 'hidden';
+ }
+};
+
+
+/**
+ * Filter the elements by a category.
+ * @param {string} [category] Category to filter by. If it's given, the last
+ * category will be used to filter the items.
+ * @param {ArrayLike} [$collection] Optionally filter a collection. Defaults to
+ * all the items.
+ * @return {jQuery} Filtered items.
+ * @private
+ */
+Shuffle.prototype._filter = function( category, $collection ) {
+ category = category || this.lastFilter;
+ $collection = $collection || this.$items;
+
+ var set = this._getFilteredSets( category, $collection );
+
+ // Individually add/remove concealed/filtered classes
+ this._toggleFilterClasses( set.filtered, set.concealed );
+
+ // Save the last filter in case elements are appended.
+ this.lastFilter = category;
+
+ // This is saved mainly because providing a filter function (like searching)
+ // will overwrite the `lastFilter` property every time its called.
+ if ( typeof category === 'string' ) {
+ this.group = category;
+ }
+
+ return set.filtered;
+};
+
+
+/**
+ * Returns an object containing the filtered and concealed elements.
+ * @param {string|Function} category Category or function to filter by.
+ * @param {ArrayLike.} $items A collection of items to filter.
+ * @return {!{filtered: jQuery, concealed: jQuery}}
+ * @private
+ */
+Shuffle.prototype._getFilteredSets = function( category, $items ) {
+ var $filtered = $();
+ var $concealed = $();
+
+ // category === 'all', add filtered class to everything
+ if ( category === ALL_ITEMS ) {
+ $filtered = $items;
+
+ // Loop through each item and use provided function to determine
+ // whether to hide it or not.
+ } else {
+ each($items, function( el ) {
+ var $item = $(el);
+ if ( this._doesPassFilter( category, $item ) ) {
+ $filtered = $filtered.add( $item );
+ } else {
+ $concealed = $concealed.add( $item );
+ }
+ }, this);
+ }
+
+ return {
+ filtered: $filtered,
+ concealed: $concealed
+ };
+};
+
+
+/**
+ * Test an item to see if it passes a category.
+ * @param {string|Function} category Category or function to filter by.
+ * @param {jQuery} $item A single item, wrapped with jQuery.
+ * @return {boolean} Whether it passes the category/filter.
+ * @private
+ */
+Shuffle.prototype._doesPassFilter = function( category, $item ) {
+ if ( $.isFunction( category ) ) {
+ return category.call( $item[0], $item, this );
+
+ // Check each element's data-groups attribute against the given category.
+ } else {
+ var groups = $item.data( FILTER_ATTRIBUTE_KEY );
+ var keys = this.delimeter && !$.isArray( groups ) ?
+ groups.split( this.delimeter ) :
+ groups;
+ return $.inArray(category, keys) > -1;
+ }
+};
+
+
+/**
+ * Toggles the filtered and concealed class names.
+ * @param {jQuery} $filtered Filtered set.
+ * @param {jQuery} $concealed Concealed set.
+ * @private
+ */
+Shuffle.prototype._toggleFilterClasses = function( $filtered, $concealed ) {
+ $filtered
+ .removeClass( Shuffle.ClassName.CONCEALED )
+ .addClass( Shuffle.ClassName.FILTERED );
+ $concealed
+ .removeClass( Shuffle.ClassName.FILTERED )
+ .addClass( Shuffle.ClassName.CONCEALED );
+};
+
+
+/**
+ * Set the initial css for each item
+ * @param {jQuery} [$items] Optionally specifiy at set to initialize
+ */
+Shuffle.prototype._initItems = function( $items ) {
+ $items = $items || this.$items;
+ $items.addClass([
+ Shuffle.ClassName.SHUFFLE_ITEM,
+ Shuffle.ClassName.FILTERED
+ ].join(' '));
+ $items.css( this.itemCss ).data('point', new Point()).data('scale', DEFAULT_SCALE);
+};
+
+
+/**
+ * Updates the filtered item count.
+ * @private
+ */
+Shuffle.prototype._updateItemCount = function() {
+ this.visibleItems = this._getFilteredItems().length;
+};
+
+
+/**
+ * Sets css transform transition on a an element.
+ * @param {Element} element Element to set transition on.
+ * @private
+ */
+Shuffle.prototype._setTransition = function( element ) {
+ element.style[ TRANSITION ] = CSS_TRANSFORM + ' ' + this.speed + 'ms ' +
+ this.easing + ', opacity ' + this.speed + 'ms ' + this.easing;
+};
+
+
+/**
+ * Sets css transform transition on a group of elements.
+ * @param {ArrayLike.} $items Elements to set transitions on.
+ * @private
+ */
+Shuffle.prototype._setTransitions = function( $items ) {
+ $items = $items || this.$items;
+ each($items, function( el ) {
+ this._setTransition( el );
+ }, this);
+};
+
+
+/**
+ * Sets a transition delay on a collection of elements, making each delay
+ * greater than the last.
+ * @param {ArrayLike.} $collection Array to iterate over.
+ */
+Shuffle.prototype._setSequentialDelay = function( $collection ) {
+ if ( !this.supported ) {
+ return;
+ }
+
+ // $collection can be an array of dom elements or jquery object
+ each($collection, function( el, i ) {
+ // This works because the transition-property: transform, opacity;
+ el.style[ TRANSITION_DELAY ] = '0ms,' + ((i + 1) * this.sequentialFadeDelay) + 'ms';
+ }, this);
+};
+
+
+Shuffle.prototype._getItems = function() {
+ return this.$el.children( this.itemSelector );
+};
+
+
+Shuffle.prototype._getFilteredItems = function() {
+ return this.$items.filter('.' + Shuffle.ClassName.FILTERED);
+};
+
+
+Shuffle.prototype._getConcealedItems = function() {
+ return this.$items.filter('.' + Shuffle.ClassName.CONCEALED);
+};
+
+
+/**
+ * Returns the column size, based on column width and sizer options.
+ * @param {number} containerWidth Size of the parent container.
+ * @param {number} gutterSize Size of the gutters.
+ * @return {number}
+ * @private
+ */
+Shuffle.prototype._getColumnSize = function( containerWidth, gutterSize ) {
+ var size;
+
+ // If the columnWidth property is a function, then the grid is fluid
+ if ( $.isFunction( this.columnWidth ) ) {
+ size = this.columnWidth(containerWidth);
+
+ // columnWidth option isn't a function, are they using a sizing element?
+ } else if ( this.useSizer ) {
+ size = Shuffle._getOuterWidth(this.sizer);
+
+ // if not, how about the explicitly set option?
+ } else if ( this.columnWidth ) {
+ size = this.columnWidth;
+
+ // or use the size of the first item
+ } else if ( this.$items.length > 0 ) {
+ size = Shuffle._getOuterWidth(this.$items[0], true);
+
+ // if there's no items, use size of container
+ } else {
+ size = containerWidth;
+ }
+
+ // Don't let them set a column width of zero.
+ if ( size === 0 ) {
+ size = containerWidth;
+ }
+
+ return size + gutterSize;
+};
+
+
+/**
+ * Returns the gutter size, based on gutter width and sizer options.
+ * @param {number} containerWidth Size of the parent container.
+ * @return {number}
+ * @private
+ */
+Shuffle.prototype._getGutterSize = function( containerWidth ) {
+ var size;
+ if ( $.isFunction( this.gutterWidth ) ) {
+ size = this.gutterWidth(containerWidth);
+ } else if ( this.useSizer ) {
+ size = Shuffle._getNumberStyle(this.sizer, 'marginLeft');
+ } else {
+ size = this.gutterWidth;
+ }
+
+ return size;
+};
+
+
+/**
+ * Calculate the number of columns to be used. Gets css if using sizer element.
+ * @param {number} [theContainerWidth] Optionally specify a container width if it's already available.
+ */
+Shuffle.prototype._setColumns = function( theContainerWidth ) {
+ var containerWidth = theContainerWidth || Shuffle._getOuterWidth( this.element );
+ var gutter = this._getGutterSize( containerWidth );
+ var columnWidth = this._getColumnSize( containerWidth, gutter );
+ var calculatedColumns = (containerWidth + gutter) / columnWidth;
+
+ // Widths given from getComputedStyle are not precise enough...
+ if ( Math.abs(Math.round(calculatedColumns) - calculatedColumns) < COLUMN_THRESHOLD ) {
+ // e.g. calculatedColumns = 11.998876
+ calculatedColumns = Math.round( calculatedColumns );
+ }
+
+ this.cols = Math.max( Math.floor(calculatedColumns), 1 );
+ this.containerWidth = containerWidth;
+ this.colWidth = columnWidth;
+};
+
+/**
+ * Adjust the height of the grid
+ */
+Shuffle.prototype._setContainerSize = function() {
+ this.$el.css( 'height', this._getContainerSize() );
+};
+
+
+/**
+ * Based on the column heights, it returns the biggest one.
+ * @return {number}
+ * @private
+ */
+Shuffle.prototype._getContainerSize = function() {
+ return arrayMax( this.positions );
+};
+
+
+/**
+ * Fire events with .shuffle namespace
+ */
+Shuffle.prototype._fire = function( name, args ) {
+ this.$el.trigger( name + '.' + SHUFFLE, args && args.length ? args : [ this ] );
+};
+
+
+/**
+ * Zeros out the y columns array, which is used to determine item placement.
+ * @private
+ */
+Shuffle.prototype._resetCols = function() {
+ var i = this.cols;
+ this.positions = [];
+ while (i--) {
+ this.positions.push( 0 );
+ }
+};
+
+
+/**
+ * Loops through each item that should be shown and calculates the x, y position.
+ * @param {Array.} items Array of items that will be shown/layed out in order in their array.
+ * Because jQuery collection are always ordered in DOM order, we can't pass a jq collection.
+ * @param {boolean} [isOnlyPosition=false] If true this will position the items with zero opacity.
+ */
+Shuffle.prototype._layout = function( items, isOnlyPosition ) {
+ each(items, function( item ) {
+ this._layoutItem( item, !!isOnlyPosition );
+ }, this);
+
+ // `_layout` always happens after `_shrink`, so it's safe to process the style
+ // queue here with styles from the shrink method.
+ this._processStyleQueue();
+
+ // Adjust the height of the container.
+ this._setContainerSize();
+};
+
+
+/**
+ * Calculates the position of the item and pushes it onto the style queue.
+ * @param {Element} item Element which is being positioned.
+ * @param {boolean} isOnlyPosition Whether to position the item, but with zero
+ * opacity so that it can fade in later.
+ * @private
+ */
+Shuffle.prototype._layoutItem = function( item, isOnlyPosition ) {
+ var $item = $(item);
+ var itemData = $item.data();
+ var currPos = itemData.point;
+ var currScale = itemData.scale;
+ var itemSize = {
+ width: Shuffle._getOuterWidth( item, true ),
+ height: Shuffle._getOuterHeight( item, true )
+ };
+ var pos = this._getItemPosition( itemSize );
+
+ // If the item will not change its position, do not add it to the render
+ // queue. Transitions don't fire when setting a property to the same value.
+ if ( Point.equals(currPos, pos) && currScale === DEFAULT_SCALE ) {
+ return;
+ }
+
+ // Save data for shrink
+ itemData.point = pos;
+ itemData.scale = DEFAULT_SCALE;
+
+ this.styleQueue.push({
+ $item: $item,
+ point: pos,
+ scale: DEFAULT_SCALE,
+ opacity: isOnlyPosition ? 0 : 1,
+ skipTransition: isOnlyPosition,
+ callfront: function() {
+ if ( !isOnlyPosition ) {
+ $item.css( 'visibility', 'visible' );
+ }
+ },
+ callback: function() {
+ if ( isOnlyPosition ) {
+ $item.css( 'visibility', 'hidden' );
+ }
+ }
+ });
+};
+
+
+/**
+ * Determine the location of the next item, based on its size.
+ * @param {{width: number, height: number}} itemSize Object with width and height.
+ * @return {Point}
+ * @private
+ */
+Shuffle.prototype._getItemPosition = function( itemSize ) {
+ var columnSpan = this._getColumnSpan( itemSize.width, this.colWidth, this.cols );
+
+ var setY = this._getColumnSet( columnSpan, this.cols );
+
+ // Finds the index of the smallest number in the set.
+ var shortColumnIndex = this._getShortColumn( setY, this.buffer );
+
+ // Position the item
+ var point = new Point(
+ Math.round( this.colWidth * shortColumnIndex ),
+ Math.round( setY[shortColumnIndex] ));
+
+ // Update the columns array with the new values for each column.
+ // e.g. before the update the columns could be [250, 0, 0, 0] for an item
+ // which spans 2 columns. After it would be [250, itemHeight, itemHeight, 0].
+ var setHeight = setY[shortColumnIndex] + itemSize.height;
+ var setSpan = this.cols + 1 - setY.length;
+ for ( var i = 0; i < setSpan; i++ ) {
+ this.positions[ shortColumnIndex + i ] = setHeight;
+ }
+
+ return point;
+};
+
+
+/**
+ * Determine the number of columns an items spans.
+ * @param {number} itemWidth Width of the item.
+ * @param {number} columnWidth Width of the column (includes gutter).
+ * @param {number} columns Total number of columns
+ * @return {number}
+ * @private
+ */
+Shuffle.prototype._getColumnSpan = function( itemWidth, columnWidth, columns ) {
+ var columnSpan = itemWidth / columnWidth;
+
+ // If the difference between the rounded column span number and the
+ // calculated column span number is really small, round the number to
+ // make it fit.
+ if ( Math.abs(Math.round( columnSpan ) - columnSpan ) < COLUMN_THRESHOLD ) {
+ // e.g. columnSpan = 4.0089945390298745
+ columnSpan = Math.round( columnSpan );
+ }
+
+ // Ensure the column span is not more than the amount of columns in the whole layout.
+ return Math.min( Math.ceil( columnSpan ), columns );
+};
+
+
+/**
+ * Retrieves the column set to use for placement.
+ * @param {number} columnSpan The number of columns this current item spans.
+ * @param {number} columns The total columns in the grid.
+ * @return {Array.} An array of numbers represeting the column set.
+ * @private
+ */
+Shuffle.prototype._getColumnSet = function( columnSpan, columns ) {
+ // The item spans only one column.
+ if ( columnSpan === 1 ) {
+ return this.positions;
+
+ // The item spans more than one column, figure out how many different
+ // places it could fit horizontally.
+ // The group count is the number of places within the positions this block
+ // could fit, ignoring the current positions of items.
+ // Imagine a 2 column brick as the second item in a 4 column grid with
+ // 10px height each. Find the places it would fit:
+ // [10, 0, 0, 0]
+ // | | |
+ // * * *
+ //
+ // Then take the places which fit and get the bigger of the two:
+ // max([10, 0]), max([0, 0]), max([0, 0]) = [10, 0, 0]
+ //
+ // Next, find the first smallest number (the short column).
+ // [10, 0, 0]
+ // |
+ // *
+ //
+ // And that's where it should be placed!
+ } else {
+ var groupCount = columns + 1 - columnSpan;
+ var groupY = [];
+
+ // For how many possible positions for this item there are.
+ for ( var i = 0; i < groupCount; i++ ) {
+ // Find the bigger value for each place it could fit.
+ groupY[i] = arrayMax( this.positions.slice( i, i + columnSpan ) );
+ }
+
+ return groupY;
+ }
+};
+
+
+/**
+ * Find index of short column, the first from the left where this item will go.
+ *
+ * @param {Array.} positions The array to search for the smallest number.
+ * @param {number} buffer Optional buffer which is very useful when the height
+ * is a percentage of the width.
+ * @return {number} Index of the short column.
+ * @private
+ */
+Shuffle.prototype._getShortColumn = function( positions, buffer ) {
+ var minPosition = arrayMin( positions );
+ for (var i = 0, len = positions.length; i < len; i++) {
+ if ( positions[i] >= minPosition - buffer && positions[i] <= minPosition + buffer ) {
+ return i;
+ }
+ }
+ return 0;
+};
+
+
+/**
+ * Hides the elements that don't match our filter.
+ * @param {jQuery} $collection jQuery collection to shrink.
+ * @private
+ */
+Shuffle.prototype._shrink = function( $collection ) {
+ var $concealed = $collection || this._getConcealedItems();
+
+ each($concealed, function( item ) {
+ var $item = $(item);
+ var itemData = $item.data();
+
+ // Continuing would add a transitionend event listener to the element, but
+ // that listener would not execute because the transform and opacity would
+ // stay the same.
+ if ( itemData.scale === CONCEALED_SCALE ) {
+ return;
+ }
+
+ itemData.scale = CONCEALED_SCALE;
+
+ this.styleQueue.push({
+ $item: $item,
+ point: itemData.point,
+ scale : CONCEALED_SCALE,
+ opacity: 0,
+ callback: function() {
+ $item.css( 'visibility', 'hidden' );
+ }
+ });
+ }, this);
+};
+
+
+/**
+ * Resize handler.
+ * @private
+ */
+Shuffle.prototype._onResize = function() {
+ // If shuffle is disabled, destroyed, don't do anything
+ if ( !this.enabled || this.destroyed || this.isTransitioning ) {
+ return;
+ }
+
+ // Will need to check height in the future if it's layed out horizontaly
+ var containerWidth = Shuffle._getOuterWidth( this.element );
+
+ // containerWidth hasn't changed, don't do anything
+ if ( containerWidth === this.containerWidth ) {
+ return;
+ }
+
+ this.update();
+};
+
+
+/**
+ * Returns styles for either jQuery animate or transition.
+ * @param {Object} opts Transition options.
+ * @return {!Object} Transforms for transitions, left/top for animate.
+ * @private
+ */
+Shuffle.prototype._getStylesForTransition = function( opts ) {
+ var styles = {
+ opacity: opts.opacity
+ };
+
+ if ( this.supported ) {
+ styles[ TRANSFORM ] = Shuffle._getItemTransformString( opts.point, opts.scale );
+ } else {
+ styles.left = opts.point.x;
+ styles.top = opts.point.y;
+ }
+
+ return styles;
+};
+
+
+/**
+ * Transitions an item in the grid
+ *
+ * @param {Object} opts options.
+ * @param {jQuery} opts.$item jQuery object representing the current item.
+ * @param {Point} opts.point A point object with the x and y coordinates.
+ * @param {number} opts.scale Amount to scale the item.
+ * @param {number} opts.opacity Opacity of the item.
+ * @param {Function} opts.callback Complete function for the animation.
+ * @param {Function} opts.callfront Function to call before transitioning.
+ * @private
+ */
+Shuffle.prototype._transition = function( opts ) {
+ var styles = this._getStylesForTransition( opts );
+ this._startItemAnimation( opts.$item, styles, opts.callfront || $.noop, opts.callback || $.noop );
+};
+
+
+Shuffle.prototype._startItemAnimation = function( $item, styles, callfront, callback ) {
+ // Transition end handler removes its listener.
+ function handleTransitionEnd( evt ) {
+ // Make sure this event handler has not bubbled up from a child.
+ if ( evt.target === evt.currentTarget ) {
+ $( evt.target ).off( TRANSITIONEND, handleTransitionEnd );
+ callback();
+ }
+ }
+
+ callfront();
+
+ // Transitions are not set until shuffle has loaded to avoid the initial transition.
+ if ( !this.initialized ) {
+ $item.css( styles );
+ callback();
+ return;
+ }
+
+ // Use CSS Transforms if we have them
+ if ( this.supported ) {
+ $item.css( styles );
+ $item.on( TRANSITIONEND, handleTransitionEnd );
+
+ // Use jQuery to animate left/top
+ } else {
+ // Save the deferred object which jQuery returns.
+ var anim = $item.stop( true ).animate( styles, this.speed, 'swing', callback );
+ // Push the animation to the list of pending animations.
+ this._animations.push( anim.promise() );
+ }
+};
+
+
+/**
+ * Execute the styles gathered in the style queue. This applies styles to elements,
+ * triggering transitions.
+ * @param {boolean} noLayout Whether to trigger a layout event.
+ * @private
+ */
+Shuffle.prototype._processStyleQueue = function( noLayout ) {
+ var $transitions = $();
+
+ // Iterate over the queue and keep track of ones that use transitions.
+ each(this.styleQueue, function( transitionObj ) {
+ if ( transitionObj.skipTransition ) {
+ this._styleImmediately( transitionObj );
+ } else {
+ $transitions = $transitions.add( transitionObj.$item );
+ this._transition( transitionObj );
+ }
+ }, this);
+
+
+ if ( $transitions.length > 0 && this.initialized ) {
+ // Set flag that shuffle is currently in motion.
+ this.isTransitioning = true;
+
+ if ( this.supported ) {
+ this._whenCollectionDone( $transitions, TRANSITIONEND, this._movementFinished );
+
+ // The _transition function appends a promise to the animations array.
+ // When they're all complete, do things.
+ } else {
+ this._whenAnimationsDone( this._movementFinished );
+ }
+
+ // A call to layout happened, but none of the newly filtered items will
+ // change position. Asynchronously fire the callback here.
+ } else if ( !noLayout ) {
+ defer( this._layoutEnd, this );
+ }
+
+ // Remove everything in the style queue
+ this.styleQueue.length = 0;
+};
+
+
+/**
+ * Apply styles without a transition.
+ * @param {Object} opts Transitions options object.
+ * @private
+ */
+Shuffle.prototype._styleImmediately = function( opts ) {
+ Shuffle._skipTransition(opts.$item[0], function() {
+ opts.$item.css( this._getStylesForTransition( opts ) );
+ }, this);
+};
+
+Shuffle.prototype._movementFinished = function() {
+ this.isTransitioning = false;
+ this._layoutEnd();
+};
+
+Shuffle.prototype._layoutEnd = function() {
+ this._fire( Shuffle.EventType.LAYOUT );
+};
+
+Shuffle.prototype._addItems = function( $newItems, addToEnd, isSequential ) {
+ // Add classes and set initial positions.
+ this._initItems( $newItems );
+
+ // Add transition to each item.
+ this._setTransitions( $newItems );
+
+ // Update the list of
+ this.$items = this._getItems();
+
+ // Shrink all items (without transitions).
+ this._shrink( $newItems );
+ each(this.styleQueue, function( transitionObj ) {
+ transitionObj.skipTransition = true;
+ });
+
+ // Apply shrink positions, but do not cause a layout event.
+ this._processStyleQueue( true );
+
+ if ( addToEnd ) {
+ this._addItemsToEnd( $newItems, isSequential );
+ } else {
+ this.shuffle( this.lastFilter );
+ }
+};
+
+
+Shuffle.prototype._addItemsToEnd = function( $newItems, isSequential ) {
+ // Get ones that passed the current filter
+ var $passed = this._filter( null, $newItems );
+ var passed = $passed.get();
+
+ // How many filtered elements?
+ this._updateItemCount();
+
+ this._layout( passed, true );
+
+ if ( isSequential && this.supported ) {
+ this._setSequentialDelay( passed );
+ }
+
+ this._revealAppended( passed );
+};
+
+
+/**
+ * Triggers appended elements to fade in.
+ * @param {ArrayLike.} $newFilteredItems Collection of elements.
+ * @private
+ */
+Shuffle.prototype._revealAppended = function( newFilteredItems ) {
+ defer(function() {
+ each(newFilteredItems, function( el ) {
+ var $item = $( el );
+ this._transition({
+ $item: $item,
+ opacity: 1,
+ point: $item.data('point'),
+ scale: DEFAULT_SCALE
+ });
+ }, this);
+
+ this._whenCollectionDone($(newFilteredItems), TRANSITIONEND, function() {
+ $(newFilteredItems).css( TRANSITION_DELAY, '0ms' );
+ this._movementFinished();
+ });
+ }, this, this.revealAppendedDelay);
+};
+
+
+/**
+ * Execute a function when an event has been triggered for every item in a collection.
+ * @param {jQuery} $collection Collection of elements.
+ * @param {string} eventName Event to listen for.
+ * @param {Function} callback Callback to execute when they're done.
+ * @private
+ */
+Shuffle.prototype._whenCollectionDone = function( $collection, eventName, callback ) {
+ var done = 0;
+ var items = $collection.length;
+ var self = this;
+
+ function handleEventName( evt ) {
+ if ( evt.target === evt.currentTarget ) {
+ $( evt.target ).off( eventName, handleEventName );
+ done++;
+
+ // Execute callback if all items have emitted the correct event.
+ if ( done === items ) {
+ callback.call( self );
+ }
+ }
+ }
+
+ // Bind the event to all items.
+ $collection.on( eventName, handleEventName );
+};
+
+
+/**
+ * Execute a callback after jQuery `animate` for a collection has finished.
+ * @param {Function} callback Callback to execute when they're done.
+ * @private
+ */
+Shuffle.prototype._whenAnimationsDone = function( callback ) {
+ $.when.apply( null, this._animations ).always( $.proxy( function() {
+ this._animations.length = 0;
+ callback.call( this );
+ }, this ));
+};
+
+
+/**
+ * Public Methods
+ */
+
+/**
+ * The magic. This is what makes the plugin 'shuffle'
+ * @param {string|Function} [category] Category to filter by. Can be a function
+ * @param {Object} [sortObj] A sort object which can sort the filtered set
+ */
+Shuffle.prototype.shuffle = function( category, sortObj ) {
+ if ( !this.enabled || this.isTransitioning ) {
+ return;
+ }
+
+ if ( !category ) {
+ category = ALL_ITEMS;
+ }
+
+ this._filter( category );
+
+ // How many filtered elements?
+ this._updateItemCount();
+
+ // Shrink each concealed item
+ this._shrink();
+
+ // Update transforms on .filtered elements so they will animate to their new positions
+ this.sort( sortObj );
+};
+
+
+/**
+ * Gets the .filtered elements, sorts them, and passes them to layout.
+ * @param {Object} opts the options object for the sorted plugin
+ */
+Shuffle.prototype.sort = function( opts ) {
+ if ( this.enabled && !this.isTransitioning ) {
+ this._resetCols();
+
+ var sortOptions = opts || this.lastSort;
+ var items = this._getFilteredItems().sorted( sortOptions );
+
+ this._layout( items );
+
+ this.lastSort = sortOptions;
+ }
+};
+
+
+/**
+ * Reposition everything.
+ * @param {boolean} isOnlyLayout If true, column and gutter widths won't be
+ * recalculated.
+ */
+Shuffle.prototype.update = function( isOnlyLayout ) {
+ if ( this.enabled && !this.isTransitioning ) {
+
+ if ( !isOnlyLayout ) {
+ // Get updated colCount
+ this._setColumns();
+ }
+
+ // Layout items
+ this.sort();
+ }
+};
+
+
+/**
+ * Use this instead of `update()` if you don't need the columns and gutters updated
+ * Maybe an image inside `shuffle` loaded (and now has a height), which means calculations
+ * could be off.
+ */
+Shuffle.prototype.layout = function() {
+ this.update( true );
+};
+
+
+/**
+ * New items have been appended to shuffle. Fade them in sequentially
+ * @param {jQuery} $newItems jQuery collection of new items
+ * @param {boolean} [addToEnd=false] If true, new items will be added to the end / bottom
+ * of the items. If not true, items will be mixed in with the current sort order.
+ * @param {boolean} [isSequential=true] If false, new items won't sequentially fade in
+ */
+Shuffle.prototype.appended = function( $newItems, addToEnd, isSequential ) {
+ this._addItems( $newItems, addToEnd === true, isSequential !== false );
+};
+
+
+/**
+ * Disables shuffle from updating dimensions and layout on resize
+ */
+Shuffle.prototype.disable = function() {
+ this.enabled = false;
+};
+
+
+/**
+ * Enables shuffle again
+ * @param {boolean} [isUpdateLayout=true] if undefined, shuffle will update columns and gutters
+ */
+Shuffle.prototype.enable = function( isUpdateLayout ) {
+ this.enabled = true;
+ if ( isUpdateLayout !== false ) {
+ this.update();
+ }
+};
+
+
+/**
+ * Remove 1 or more shuffle items
+ * @param {jQuery} $collection A jQuery object containing one or more element in shuffle
+ * @return {Shuffle} The shuffle object
+ */
+Shuffle.prototype.remove = function( $collection ) {
+
+ // If this isn't a jquery object, exit
+ if ( !$collection.length || !$collection.jquery ) {
+ return;
+ }
+
+ function handleRemoved() {
+ // Remove the collection in the callback
+ $collection.remove();
+
+ // Update things now that elements have been removed.
+ this.$items = this._getItems();
+ this._updateItemCount();
+
+ this._fire( Shuffle.EventType.REMOVED, [ $collection, this ] );
+
+ // Let it get garbage collected
+ $collection = null;
+ }
+
+ // Hide collection first.
+ this._toggleFilterClasses( $(), $collection );
+ this._shrink( $collection );
+
+ this.sort();
+
+ this.$el.one( Shuffle.EventType.LAYOUT + '.' + SHUFFLE, $.proxy( handleRemoved, this ) );
+};
+
+
+/**
+ * Destroys shuffle, removes events, styles, and classes
+ */
+Shuffle.prototype.destroy = function() {
+ // If there is more than one shuffle instance on the page,
+ // removing the resize handler from the window would remove them
+ // all. This is why a unique value is needed.
+ $window.off('.' + this.unique);
+
+ // Reset container styles
+ this.$el
+ .removeClass( SHUFFLE )
+ .removeAttr('style')
+ .removeData( SHUFFLE );
+
+ // Reset individual item styles
+ this.$items
+ .removeAttr('style')
+ .removeData('point')
+ .removeData('scale')
+ .removeClass([
+ Shuffle.ClassName.CONCEALED,
+ Shuffle.ClassName.FILTERED,
+ Shuffle.ClassName.SHUFFLE_ITEM
+ ].join(' '));
+
+ // Null DOM references
+ this.$items = null;
+ this.$el = null;
+ this.sizer = null;
+ this.element = null;
+
+ // Set a flag so if a debounced resize has been triggered,
+ // it can first check if it is actually destroyed and not doing anything
+ this.destroyed = true;
+};
+
+
+// Plugin definition
+$.fn.shuffle = function( opts ) {
+ var args = Array.prototype.slice.call( arguments, 1 );
+ return this.each(function() {
+ var $this = $( this );
+ var shuffle = $this.data( SHUFFLE );
+
+ // If we don't have a stored shuffle, make a new one and save it
+ if ( !shuffle ) {
+ shuffle = new Shuffle( this, opts );
+ $this.data( SHUFFLE, shuffle );
+ } else if ( typeof opts === 'string' && shuffle[ opts ] ) {
+ shuffle[ opts ].apply( shuffle, args );
+ }
+ });
+};
+
+
+// http://stackoverflow.com/a/962890/373422
+function randomize( array ) {
+ var tmp, current;
+ var top = array.length;
+
+ if ( !top ) {
+ return array;
+ }
+
+ while ( --top ) {
+ current = Math.floor( Math.random() * (top + 1) );
+ tmp = array[ current ];
+ array[ current ] = array[ top ];
+ array[ top ] = tmp;
+ }
+
+ return array;
+}
+
+
+// You can return `undefined` from the `by` function to revert to DOM order
+// This plugin does NOT return a jQuery object. It returns a plain array because
+// jQuery sorts everything in DOM order.
+$.fn.sorted = function(options) {
+ var opts = $.extend({}, $.fn.sorted.defaults, options);
+ var arr = this.get();
+ var revert = false;
+
+ if ( !arr.length ) {
+ return [];
+ }
+
+ if ( opts.randomize ) {
+ return randomize( arr );
+ }
+
+ // Sort the elements by the opts.by function.
+ // If we don't have opts.by, default to DOM order
+ if ( $.isFunction( opts.by ) ) {
+ arr.sort(function(a, b) {
+
+ // Exit early if we already know we want to revert
+ if ( revert ) {
+ return 0;
+ }
+
+ var valA = opts.by($(a));
+ var valB = opts.by($(b));
+
+ // If both values are undefined, use the DOM order
+ if ( valA === undefined && valB === undefined ) {
+ revert = true;
+ return 0;
+ }
+
+ if ( valA < valB || valA === 'sortFirst' || valB === 'sortLast' ) {
+ return -1;
+ }
+
+ if ( valA > valB || valA === 'sortLast' || valB === 'sortFirst' ) {
+ return 1;
+ }
+
+ return 0;
+ });
+ }
+
+ // Revert to the original array if necessary
+ if ( revert ) {
+ return this.get();
+ }
+
+ if ( opts.reverse ) {
+ arr.reverse();
+ }
+
+ return arr;
+};
+
+
+$.fn.sorted.defaults = {
+ reverse: false, // Use array.reverse() to reverse the results
+ by: null, // Sorting function
+ randomize: false // If true, this will skip the sorting and return a randomized order in the array
+};
+
+return Shuffle;
+
+});
\ No newline at end of file
diff --git a/docs/js/toc.js b/docs/js/toc.js
new file mode 100644
index 0000000..b5244bb
--- /dev/null
+++ b/docs/js/toc.js
@@ -0,0 +1,90 @@
+// https://github.com/ghiculescu/jekyll-table-of-contents
+// this library modified by fastai to:
+// - update the location.href with the correct anchor when a toc item is clicked on
+(function($){
+ $.fn.toc = function(options) {
+ var defaults = {
+ noBackToTopLinks: false,
+ title: '',
+ minimumHeaders: 3,
+ headers: 'h1, h2, h3, h4',
+ listType: 'ol', // values: [ol|ul]
+ showEffect: 'show', // values: [show|slideDown|fadeIn|none]
+ showSpeed: 'slow' // set to 0 to deactivate effect
+ },
+ settings = $.extend(defaults, options);
+
+ var headers = $(settings.headers).filter(function() {
+ // get all headers with an ID
+ var previousSiblingName = $(this).prev().attr( "name" );
+ if (!this.id && previousSiblingName) {
+ this.id = $(this).attr( "id", previousSiblingName.replace(/\./g, "-") );
+ }
+ return this.id;
+ }), output = $(this);
+ if (!headers.length || headers.length < settings.minimumHeaders || !output.length) {
+ return;
+ }
+
+ if (0 === settings.showSpeed) {
+ settings.showEffect = 'none';
+ }
+
+ var render = {
+ show: function() { output.hide().html(html).show(settings.showSpeed); },
+ slideDown: function() { output.hide().html(html).slideDown(settings.showSpeed); },
+ fadeIn: function() { output.hide().html(html).fadeIn(settings.showSpeed); },
+ none: function() { output.html(html); }
+ };
+
+ var get_level = function(ele) { return parseInt(ele.nodeName.replace("H", ""), 10); }
+ var highest_level = headers.map(function(_, ele) { return get_level(ele); }).get().sort()[0];
+ //var return_to_top = ' ';
+ // other nice icons that can be used instead: glyphicon-upload glyphicon-hand-up glyphicon-chevron-up glyphicon-menu-up glyphicon-triangle-top
+ var level = get_level(headers[0]),
+ this_level,
+ html = settings.title + " <"+settings.listType+">";
+ headers.on('click', function() {
+ if (!settings.noBackToTopLinks) {
+ var pos = $(window).scrollTop();
+ window.location.hash = this.id;
+ $(window).scrollTop(pos);
+ }
+ })
+ .addClass('clickable-header')
+ .each(function(_, header) {
+ base_url = window.location.href;
+ base_url = base_url.replace(/#.*$/, "");
+ this_level = get_level(header);
+ //if (!settings.noBackToTopLinks && this_level > 1) {
+ // $(header).addClass('top-level-header').before(return_to_top);
+ //}
+ txt = header.textContent.split('ΒΆ')[0].split(/\[(test|source)\]/)[0];
+ if (!txt) {return;}
+ if (this_level === level) // same level as before; same indenting
+ html += "" + txt + " ";
+ else if (this_level <= level){ // higher level than before; end parent ol
+ for(i = this_level; i < level; i++) {
+ html += " "+settings.listType+">"
+ }
+ html += "" + txt + " ";
+ }
+ else if (this_level > level) { // lower level than before; expand the previous to contain a ol
+ for(i = this_level; i > level; i--) {
+ html += "<"+settings.listType+">"+((i-level == 2) ? "" : " ")
+ }
+ html += "" + txt + " ";
+ }
+ level = this_level; // update for the next one
+ });
+ html += ""+settings.listType+">";
+ if (!settings.noBackToTopLinks) {
+ $(document).on('click', '.back-to-top', function() {
+ $(window).scrollTop(0);
+ window.location.hash = '';
+ });
+ }
+
+ render[settings.showEffect]();
+ };
+})(jQuery);
diff --git a/docs/licenses/LICENSE b/docs/licenses/LICENSE
new file mode 100644
index 0000000..21e88dc
--- /dev/null
+++ b/docs/licenses/LICENSE
@@ -0,0 +1,24 @@
+/* This license pertains to the docs template, except for the Navgoco jQuery component. */
+
+The MIT License (MIT)
+
+Original theme: Copyright (c) 2016 Tom Johnson
+Modifications: Copyright (c) 2017 onwards fast.ai, Inc
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/docs/licenses/LICENSE-BSD-NAVGOCO.txt b/docs/licenses/LICENSE-BSD-NAVGOCO.txt
new file mode 100644
index 0000000..7fdefc3
--- /dev/null
+++ b/docs/licenses/LICENSE-BSD-NAVGOCO.txt
@@ -0,0 +1,27 @@
+/* This license pertains to the Navgoco jQuery component used for the sidebar. */
+
+Copyright (c) 2013, Christodoulos Tsoulloftas, http://www.komposta.net
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of the nor the names of its
+ contributors may be used to endorse or promote products derived from this
+ software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+OF THE POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/docs/sidebar.json b/docs/sidebar.json
new file mode 100644
index 0000000..a39dad9
--- /dev/null
+++ b/docs/sidebar.json
@@ -0,0 +1,6 @@
+{
+ "ThinkPython2": {
+ "Overview": "/",
+ "module name here": "core.html"
+ }
+}
\ No newline at end of file
diff --git a/docs/sitemap.xml b/docs/sitemap.xml
new file mode 100644
index 0000000..38a04d6
--- /dev/null
+++ b/docs/sitemap.xml
@@ -0,0 +1,24 @@
+---
+layout: none
+search: exclude
+---
+
+
+
+ {% for post in site.posts %}
+ {% unless post.search == "exclude" %}
+
+ {{site.url}}{{post.url}}
+
+ {% endunless %}
+ {% endfor %}
+
+
+ {% for page in site.pages %}
+ {% unless page.search == "exclude" %}
+
+ {{site.url}}{{ page.url}}
+
+ {% endunless %}
+ {% endfor %}
+
\ No newline at end of file
diff --git a/docs/tooltips.json b/docs/tooltips.json
new file mode 100644
index 0000000..cee21d3
--- /dev/null
+++ b/docs/tooltips.json
@@ -0,0 +1,19 @@
+---
+layout: null
+search: exclude
+---
+
+{
+"entries":
+[
+{% for page in site.tooltips %}
+{
+"doc_id": "{{ page.doc_id }}",
+"body": "{{ page.content | strip_newlines | replace: '\', '\\\\' | replace: '"', '\\"' }}"
+} {% unless forloop.last %},{% endunless %}
+{% endfor %}
+]
+}
+
+
+
diff --git a/index.ipynb b/index.ipynb
new file mode 100644
index 0000000..74d4e32
--- /dev/null
+++ b/index.ipynb
@@ -0,0 +1,93 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "#hide"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Project name here\n",
+ "\n",
+ "> Summary description here."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "This file will become your README and also the index of your documentation."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Install"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "`pip install your_project_name`"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## How to use"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Fill me in please! Don't forget code examples:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "2"
+ ]
+ },
+ "execution_count": null,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "1+1"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3",
+ "language": "python",
+ "name": "python3"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/settings.ini b/settings.ini
new file mode 100644
index 0000000..f7e5b1a
--- /dev/null
+++ b/settings.ini
@@ -0,0 +1,72 @@
+[DEFAULT]
+# All sections below are required unless otherwise specified
+lib_name = ThinkPython2
+user = hamelsmu
+author = hamelsmu
+author_email = hamel.husain@gmail.com
+copyright = hamelsmu
+description = A python library
+keywords = python
+version = 0.0.1
+min_python = 3.6
+audience = Developers
+language = English
+# Add licenses and see current list in `setup.py`
+license = apache2
+# From 1-7: Planning Pre-Alpha Alpha Beta Production Mature Inactive
+status = 2
+
+# Optional. Same format as setuptools requirements
+# requirements =
+# Optional. Same format as setuptools console_scripts
+# console_scripts =
+# Optional. Same format as setuptools dependency-links
+# dep_links =
+
+###
+# You probably won't need to change anything under here,
+# unless you have some special requirements
+###
+
+branch = master
+
+# Set to True if you want to create a more fancy sidebar.json than the default
+custom_sidebar = False
+
+# Name of version control provider to show in docs navbar
+host = github
+
+# For Enterprise Git add variable repo_name and company name
+# repo_name = analytics
+# company_name = nike
+
+# Change to, e.g. "nbs", to put your notebooks in nbs dir instead of repo root
+nbs_path = .
+doc_path = docs
+
+# Anything shown as '%(...)s' is substituted with that setting automatically
+doc_host = https://%(user)s.github.io
+#For Enterprise Git pages use:
+#doc_host = https://pages.github.%(company_name)s.com.
+
+doc_baseurl = /%(lib_name)s/
+# For Enterprise Github pages docs use:
+# doc_baseurl = /%(repo_name)s/%(lib_name)s/
+
+git_url = https://github.com/%(user)s/%(lib_name)s/tree/%(branch)s/
+# For Enterprise Github use:
+#git_url = https://github.%(company_name)s.com/%(repo_name)s/%(lib_name)s/tree/%(branch)s/
+
+lib_path = %(lib_name)s
+title = %(lib_name)s
+
+#Optional advanced parameters
+#Monospace docstings: adds tags around the doc strings, preserving newlines/indentation.
+#monospace_docstrings = False
+#Test flags: introduce here the test flags you want to use separated by |
+#tst_flags =
+#Cell spacing: if you want cell blocks in code separated by more than one new line
+#cell_spacing =
+#Custom jekyll styles: if you want more jekyll styles than tip/important/warning, set them here
+#jekyll_styles = note,warning,tip,important
+
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..de97dee
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,47 @@
+from pkg_resources import parse_version
+from configparser import ConfigParser
+import setuptools
+assert parse_version(setuptools.__version__)>=parse_version('36.2')
+
+# note: all settings are in settings.ini; edit there, not here
+config = ConfigParser(delimiters=['='])
+config.read('settings.ini')
+cfg = config['DEFAULT']
+
+cfg_keys = 'version description keywords author author_email'.split()
+expected = cfg_keys + "lib_name user branch license status min_python audience language".split()
+for o in expected: assert o in cfg, "missing expected setting: {}".format(o)
+setup_cfg = {o:cfg[o] for o in cfg_keys}
+
+licenses = {
+ 'apache2': ('Apache Software License 2.0','OSI Approved :: Apache Software License'),
+}
+statuses = [ '1 - Planning', '2 - Pre-Alpha', '3 - Alpha',
+ '4 - Beta', '5 - Production/Stable', '6 - Mature', '7 - Inactive' ]
+py_versions = '2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8'.split()
+
+requirements = cfg.get('requirements','').split()
+lic = licenses[cfg['license']]
+min_python = cfg['min_python']
+
+setuptools.setup(
+ name = cfg['lib_name'],
+ license = lic[0],
+ classifiers = [
+ 'Development Status :: ' + statuses[int(cfg['status'])],
+ 'Intended Audience :: ' + cfg['audience'].title(),
+ 'License :: ' + lic[1],
+ 'Natural Language :: ' + cfg['language'].title(),
+ ] + ['Programming Language :: Python :: '+o for o in py_versions[py_versions.index(min_python):]],
+ url = cfg['git_url'],
+ packages = setuptools.find_packages(),
+ include_package_data = True,
+ install_requires = requirements,
+ dependency_links = cfg.get('dep_links','').split(),
+ python_requires = '>=' + cfg['min_python'],
+ long_description = open('README.md').read(),
+ long_description_content_type = 'text/markdown',
+ zip_safe = False,
+ entry_points = { 'console_scripts': cfg.get('console_scripts','').split() },
+ **setup_cfg)
+